aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Dooks <ben.dooks@codethink.co.uk>2013-02-06 18:25:36 +0000
committerVictor Kamensky <victor.kamensky@linaro.org>2014-03-13 14:46:07 -0700
commit1eff66bbede9cab18f5cafcb376ebebdc6a3f95c (patch)
tree289a9ba9674894e6e37a67dcc21ee6712cf16681
parent47287dde86da7a2fceb0973b99b20399d13cd38d (diff)
downloadlinux-linaro-stable-1eff66bbede9cab18f5cafcb376ebebdc6a3f95c.tar.gz
ARM: pl01x debug code endian fix
The PL01X debug code needs to take into account which endian mode the processor is running in. If it is big-endian, ensure the data is swapped appropriately. Note, we could do this slightly more efficiently if we have an macro to do the necessary swap for the bits used by test. Reviewed-by: Will Deacon <will.deacon@arm.com> Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk> (cherry picked from commit 76e3faf156fa95b6465e747d702b94faf67117fc) Signed-off-by: Victor Kamensky <victor.kamensky@linaro.org> Conflicts: arch/arm/include/debug/pl01x.S
-rw-r--r--arch/arm/include/asm/hardware/debug-pl01x.S2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm/include/asm/hardware/debug-pl01x.S b/arch/arm/include/asm/hardware/debug-pl01x.S
index f9fd083eff63..6489d1ffe3c8 100644
--- a/arch/arm/include/asm/hardware/debug-pl01x.S
+++ b/arch/arm/include/asm/hardware/debug-pl01x.S
@@ -18,12 +18,14 @@
.macro waituart,rd,rx
1001: ldr \rd, [\rx, #UART01x_FR]
+ ARM_BE8( rev \rd, \rd )
tst \rd, #UART01x_FR_TXFF
bne 1001b
.endm
.macro busyuart,rd,rx
1001: ldr \rd, [\rx, #UART01x_FR]
+ ARM_BE8( rev \rd, \rd )
tst \rd, #UART01x_FR_BUSY
bne 1001b
.endm