This patch series enables Thumb-2 support for omap3 and omap4. It is not currently well tested, and is known to be faulty for certain power management operations including power-off suspend when CONFIG_THUMB2_KERNEL is enabled.
Note that from the patch series, this subset are temporary workarounds and not likely to be merged upstream:
ARM: Add local symbols in relocate_kernel.S to work around gas bugs ARM: omap3: Work around assembler errors in sleep34xx.S ARM: Avoid discarding sections that might have SMP_ON_UP fixups
Full description follows.
Cheers ---Dave
The following changes since commit 9e9711855260b246ba31e79bf420a350bc652ab2:
ARM: ptrace: remove single-step emulation code (2011-02-12 14:06:02 -0500)
are available in the git repository at: git://git.linaro.org/people/dmart/linux-2.6-arm.git for-linaro-2.6.37/dirty/arm/omap-thumb2+merged
Dave Martin (10): ARM: omap4: Provide do_wfi() for Thumb-2 ARM: omap4: Convert END() to ENDPROC() for correct linkage with CONFIG_THUMB2_KERNEL ARM: omap3: Remove hand-encoded SMC instructions ARM: omap3: Thumb-2 compatibility for sram34xx.S ARM: omap3: Thumb-2 compatibility for sleep34xx.S ARM: Thumb-2: Symbol manipulation macros for function body copying ARM: Correct WFE() in asm/spinlock.h for Thumb-2 ARM: Add local symbols in relocate_kernel.S to work around gas bugs ARM: omap3: Work around assembler errors in sleep34xx.S ARM: Avoid discarding sections that might have SMP_ON_UP fixups
Jean Pihet (2): omap: use fncpy to copy the PM code functions to SRAM OMAP: fix fncpy API call
Ming Lei (1): arm: fix oops in sched_clock_poll
arch/arm/include/asm/fncpy.h | 94 +++++++++++++++++++++++ arch/arm/include/asm/spinlock.h | 18 ++++- arch/arm/kernel/relocate_kernel.S | 12 ++- arch/arm/kernel/sched_clock.c | 4 +- arch/arm/kernel/vmlinux.lds.S | 18 +++++ arch/arm/mach-omap1/pm.h | 6 +- arch/arm/mach-omap1/sleep.S | 3 + arch/arm/mach-omap1/sram.S | 1 + arch/arm/mach-omap2/include/mach/omap4-common.h | 4 + arch/arm/mach-omap2/omap-headsmp.S | 2 +- arch/arm/mach-omap2/omap44xx-smc.S | 8 +- arch/arm/mach-omap2/pm.h | 2 +- arch/arm/mach-omap2/sleep24xx.S | 2 + arch/arm/mach-omap2/sleep34xx.S | 63 +++++++++++----- arch/arm/mach-omap2/sram242x.S | 3 + arch/arm/mach-omap2/sram243x.S | 3 + arch/arm/mach-omap2/sram34xx.S | 29 +++++-- arch/arm/plat-omap/include/plat/sram.h | 14 +++- arch/arm/plat-omap/sram.c | 14 ++- 19 files changed, 253 insertions(+), 47 deletions(-) create mode 100644 arch/arm/include/asm/fncpy.h