[PATCH 3.1-rc1] ARM: entry: fix wrong parameter used in do_thumb_abort
Janusz Krzysztofik
jkrzyszt at tis.icnet.pl
Wed Aug 24 07:07:20 EDT 2011
Commit be020f8618ca, "ARM: entry: abort-macro: specify registers to be
used for macros", while replacing register numbers with macro parameter
names, mismatched the parameter used for r1. For me, this resulted in
user space, built for EABI with -march=armv4t -mtune=arm920t -mthumb-
interwork -mthumb, broken on my OMAP1510 based Amstrad Delta (old ABI
with -mno-thumb still worked for me though).
Fix this by using correct parameter, fsr, instead of mismatched psr,
used by callers for another purpose.
Tested on OMAP1510 Amstrad Delta
Signed-off-by: Janusz Krzysztofik <jkrzyszt at tis.icnet.pl>
---
arch/arm/mm/abort-macro.S | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/arch/arm/mm/abort-macro.S b/arch/arm/mm/abort-macro.S
index 52162d5..2cbf68e 100644
--- a/arch/arm/mm/abort-macro.S
+++ b/arch/arm/mm/abort-macro.S
@@ -17,7 +17,7 @@
cmp \tmp, # 0x5600 @ Is it ldrsb?
orreq \tmp, \tmp, #1 << 11 @ Set L-bit if yes
tst \tmp, #1 << 11 @ L = 0 -> write
- orreq \psr, \psr, #1 << 11 @ yes.
+ orreq \fsr, \fsr, #1 << 11 @ yes.
b do_DataAbort
not_thumb:
.endm
--
1.7.3.4
More information about the linux-arm-kernel
mailing list