[U-Boot] [PATCH 3/3] SMDK6400: Fix build error for smdk6400 nand_spl support

seedshope
2011-01-07T15:53:53Z

From: seedshope <bocui107@gmail.com>

Modify u-boot.lds from nand_spl/board/samsung/smdk6400.

start.o: In function `clbss_l':
nand_spl/board/samsung/smdk6400/start.S:357: undefined reference to `coloured_LED_init'
nand_spl/board/samsung/smdk6400/start.S:358: undefined reference to `red_LED_on'
start.o: In function `_rel_dyn_start_ofs':
nand_spl/board/samsung/smdk6400/start.S:366: undefined reference to `__rel_dyn_start'
start.o: In function `_rel_dyn_end_ofs':
nand_spl/board/samsung/smdk6400/start.S:366: undefined reference to `__rel_dyn_end'
start.o: In function `_dynsym_start_ofs':
nand_spl/board/samsung/smdk6400/start.S:366: undefined reference to `__dynsym_start'

Signed-off-by: seedshope <bocui107@googlemail.com>

diff --git a/arch/arm/cpu/arm1176/start.S b/arch/arm/cpu/arm1176/start.S
index 237dcfe..bde0357 100644
--- a/arch/arm/cpu/arm1176/start.S
+++ b/arch/arm/cpu/arm1176/start.S
@@ -353,10 +353,11 @@ clbss_l:str r2, [r0] /* clear loop... */
add r0, r0, #4
cmp r0, r1
bne clbss_l
-
+#ifndef CONFIG_NAND_SPL
bl coloured_LED_init
bl red_LED_on
#endif
+#endif

/*
* We are done. Do not return, instead branch to second part of board
diff --git a/nand_spl/board/samsung/smdk6400/u-boot.lds b/nand_spl/board/samsung/smdk6400/u-boot.lds
index 3ac6aa1..c179db3 100644
--- a/nand_spl/board/samsung/smdk6400/u-boot.lds
+++ b/nand_spl/board/samsung/smdk6400/u-boot.lds
@@ -54,8 +54,23 @@ SECTIONS
.u_boot_cmd : { *(.u_boot_cmd) }
__u_boot_cmd_end = .;

- . = ALIGN(4);
- __bss_start = .;
- .bss : { *(.bss) . = ALIGN(4); }
- _end = .;
+ . = ALIGN(4);
+
+ .rel.dyn : {
+ __rel_dyn_start = .;
+ *(.rel*)
+ __rel_dyn_end = .;
+ }
+
+ .dynsym : {
+ __dynsym_start = .;
+ *(.dynsym)
+ }
+
+ .bss __rel_dyn_start (OVERLAY) : {
+ __bss_start = .;
+ *(.bss)
+ . = ALIGN(4);
+ _end = .;
+ }
}
--
1.7.1