maemo.org Bugzilla – Bug 10333
Thumb feature is not enable in the PR1.2 ROM
Last modified: 2011-01-18 15:30:44 UTC
You need to log in before you can comment on or make changes to this bug.
SOFTWARE VERSION: RX-51_2009SE_10.2010.19-1.002_PR_COMBINED_002_ARM.bin EXACT STEPS LEADING TO PROBLEM: 1. cat /proc/cpuinfo 2. notice that thumb* is not listed in the features list or try running any thumb2 code on device. EXPECTED OUTCOME: I would have expected that thumb2 code be supported ACTUAL OUTCOME: Thumb2 code doesn't run Is there a reason why thumb was disabled?
Just to clarify, Thumb2 does seem to be supported on PR1.1 and does appear in the /proc/cpuinfo for PR1.1 ROM
/proc/cpuinfo lists thumb as a cpu feature on 5.0:(2.2009.51-1). Also, fennec compiled to thumb2 code runs on the older ROM, but not on the newer ROM.
http://repository.maemo.org/pool/fremantle/free/k/kernel/kernel_2.6.28-20101501+0m5.diff.gz + * Fixes: NB#145909 - remove thumb support from kernel ...that's to say it appears to be intentional; someone more familiar with it may have specifics
In addition to some other things, having working thumb support would require a much newer toolchain that has a workaround for the ARM errata mentioned here: http://sourceware.org/ml/binutils/2009-05/msg00297.html And that of course doesn't fix any thumb code compiled with an earlier toolchain (like the current one), generated by some JIT engine, written manually etc. You can find components using thumb functions with something like this: readelf -s $file | grep -v "00000001" | grep FUNC |grep ": [0-9a-f]*[13579bdf] " Any such things should be fixed not to use thumb as that will cause crashes in N900 (in any of the releases, not just PR1.2). None of the Fremantle releases have contained any user-space thumb code. If there's no check for this in extras repository builder, there should be. And for example SBOX_BLOCK_ARGS environment variable[1] can be used to block use of such arguments on builds. [1] See your /scratchbox/doc/variables.txt document. (In reply to comment #2) > /proc/cpuinfo lists thumb as a cpu feature on 5.0:(2.2009.51-1). Also, fennec > compiled to thumb2 code runs on the older ROM. Not reliably.
Closing as INVALID to reflect the internal status. See comment 4 for explanation.