summaryrefslogtreecommitdiffstats
path: root/patches/linux-3.12-rc4/0026-HACK-make-printhex-and-printch-work-on-efm32-with-XI.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/linux-3.12-rc4/0026-HACK-make-printhex-and-printch-work-on-efm32-with-XI.patch')
-rw-r--r--patches/linux-3.12-rc4/0026-HACK-make-printhex-and-printch-work-on-efm32-with-XI.patch30
1 files changed, 30 insertions, 0 deletions
diff --git a/patches/linux-3.12-rc4/0026-HACK-make-printhex-and-printch-work-on-efm32-with-XI.patch b/patches/linux-3.12-rc4/0026-HACK-make-printhex-and-printch-work-on-efm32-with-XI.patch
new file mode 100644
index 0000000..f00e428
--- /dev/null
+++ b/patches/linux-3.12-rc4/0026-HACK-make-printhex-and-printch-work-on-efm32-with-XI.patch
@@ -0,0 +1,30 @@
+From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= <u.kleine-koenig@pengutronix.de>
+Date: Wed, 17 Apr 2013 11:52:22 +0200
+Subject: [PATCH] HACK! make printhex and printch work on efm32 with XIP
+
+On XIP the kernel image is readonly, so is the hexbuf array. Use some
+SRAM instead.
+---
+ arch/arm/kernel/debug.S | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/arch/arm/kernel/debug.S b/arch/arm/kernel/debug.S
+index 14f7c3b..e18cb30 100644
+--- a/arch/arm/kernel/debug.S
++++ b/arch/arm/kernel/debug.S
+@@ -56,6 +56,7 @@ ENDPROC(printhex4)
+ ENTRY(printhex2)
+ mov r1, #2
+ printhex: adr r2, hexbuf
++ ldr r2, =0x2001f000
+ add r3, r2, r1
+ mov r1, #0
+ strb r1, [r3]
+@@ -121,6 +122,7 @@ ENDPROC(printascii)
+
+ ENTRY(printch)
+ adr r1, hexbuf
++ ldr r1, =0x2001f000
+ strb r0, [r1]
+ mov r0, #0x03 @ SYS_WRITEC
+ ARM( svc #0x123456 )