diff mbox

[U-Boot,19/21] Blackfin: serial: move early debug strings into .rodata section

Message ID 1309843537-1268-1-git-send-email-vapier@gentoo.org
State Accepted
Commit e8e35efc8f2a16cf72ddc475df4ff26d76f03d1e
Delegated to: Mike Frysinger
Headers show

Commit Message

Mike Frysinger July 5, 2011, 5:25 a.m. UTC
Rewrite the assembly serial_early_puts() helper to place the strings
in the .rodata section rather than embedding them directly in the
.text section.  Using .text is a little simpler, but it doesn't let
people execute out of internal L1 sram (since core reads don't work
on those regions).

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
---
 arch/blackfin/cpu/serial.h |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)
diff mbox

Patch

diff --git a/arch/blackfin/cpu/serial.h b/arch/blackfin/cpu/serial.h
index f649e40..8a076dd 100644
--- a/arch/blackfin/cpu/serial.h
+++ b/arch/blackfin/cpu/serial.h
@@ -288,16 +288,16 @@  static inline void serial_early_puts(const char *s)
  */
 #ifdef CONFIG_DEBUG_EARLY_SERIAL
 # define serial_early_puts(str) \
-	call _get_pc; \
-	jump 1f; \
+	.section .rodata; \
+	7: \
 	.ascii "Early:"; \
 	.ascii __FILE__; \
 	.ascii ": "; \
 	.ascii str; \
 	.asciz "\n"; \
-	.align 4; \
-1: \
-	R0 += 2; \
+	.previous; \
+	R0.L = 7b; \
+	R0.H = 7b; \
 	call _serial_puts;
 #else
 # define serial_early_puts(str)