summaryrefslogtreecommitdiffstats
path: root/arch/arm/include
diff options
context:
space:
mode:
authorBen Dooks <ben.dooks@codethink.co.uk>2013-02-06 18:25:36 +0000
committerBen Dooks <ben.dooks@codethink.co.uk>2013-10-19 20:46:33 +0100
commit76e3faf156fa95b6465e747d702b94faf67117fc (patch)
treef49451bd0eba176be3fa8ffc7c20e7fb6fc6b63c /arch/arm/include
parent97bcb0fea590d3d704f985bec08f342d28992634 (diff)
downloadop-kernel-dev-76e3faf156fa95b6465e747d702b94faf67117fc.zip
op-kernel-dev-76e3faf156fa95b6465e747d702b94faf67117fc.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>
Diffstat (limited to 'arch/arm/include')
-rw-r--r--arch/arm/include/debug/pl01x.S2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm/include/debug/pl01x.S b/arch/arm/include/debug/pl01x.S
index 37c6895b..92ef808 100644
--- a/arch/arm/include/debug/pl01x.S
+++ b/arch/arm/include/debug/pl01x.S
@@ -25,12 +25,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
OpenPOWER on IntegriCloud