By putting the fdt blob into a distinctive area we can ensure that it appears
at the start of the data section and is word-aligned.

Note: It does not seem to be possible to get objcopy to honour its
--section-alignment flag, which would otherwise provide an easier fix
for this problem.

Signed-off-by: Simon Glass <s...@chromium.org>
---

 arch/arm/cpu/armv7/u-boot.lds |    5 +++++
 dts/Makefile                  |    2 +-
 2 files changed, 6 insertions(+), 1 deletions(-)

diff --git a/arch/arm/cpu/armv7/u-boot.lds b/arch/arm/cpu/armv7/u-boot.lds
index 40ecf78..793e51b 100644
--- a/arch/arm/cpu/armv7/u-boot.lds
+++ b/arch/arm/cpu/armv7/u-boot.lds
@@ -43,6 +43,11 @@ SECTIONS
 
        . = ALIGN(4);
        .data : {
+               /*
+                * Sadly objcopy seems to ignore --section-alignment.
+                * Put any embedded device tree first so it is aligned.
+                */
+               *(.dts.data)
                *(.data)
        }
 
diff --git a/dts/Makefile b/dts/Makefile
index 5792afd..83547d4 100644
--- a/dts/Makefile
+++ b/dts/Makefile
@@ -79,7 +79,7 @@ $(obj)dt.o: $(DT_BIN)
        \
        cd $(dir ${DT_BIN}) && \
        $(OBJCOPY) -I binary -O $${oformat} -B $${oarch} \
-               $(notdir ${DT_BIN}) $@
+               --prefix-sections=.dts $(notdir ${DT_BIN}) $@
        rm $(DT_BIN)
 
 OBJS-$(CONFIG_OF_EMBED)        := dt.o
-- 
1.7.7.3

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to