summaryrefslogtreecommitdiff
path: root/arch/arm
diff options
context:
space:
mode:
authorBen Dooks <ben.dooks@codethink.co.uk>2015-03-25 11:27:46 (GMT)
committerDinh Nguyen <dinguyen@opensource.altera.com>2015-05-11 18:59:23 (GMT)
commit6ef4e47926b2008c6a1736fe4e3b2817e3b95463 (patch)
tree1c4f816d531cd9d844ee1ae95ef346dd7e4c0f39 /arch/arm
parent5ebe6afaf0057ac3eaeb98defd5456894b446d22 (diff)
downloadlinux-6ef4e47926b2008c6a1736fe4e3b2817e3b95463.tar.xz
ARM: debug: fix big endian operation for 8250 word mode
If the 8250 debug code is used in word mode on an big endian host then the writes need to be change into little endian for the bus. Note, we have to re-convert the value back as the debug code will inspect the value after writing it to see if a newline has been written. Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk> Signed-off-by: Dinh Nguyen <dinguyen@opensource.altera.com>
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/include/debug/8250.S3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/arm/include/debug/8250.S b/arch/arm/include/debug/8250.S
index 7a2baf9..7f7446f 100644
--- a/arch/arm/include/debug/8250.S
+++ b/arch/arm/include/debug/8250.S
@@ -16,11 +16,14 @@
#ifdef CONFIG_DEBUG_UART_8250_WORD
.macro store, rd, rx:vararg
+ ARM_BE8(rev \rd, \rd)
str \rd, \rx
+ ARM_BE8(rev \rd, \rd)
.endm
.macro load, rd, rx:vararg
ldr \rd, \rx
+ ARM_BE8(rev \rd, \rd)
.endm
#else
.macro store, rd, rx:vararg