diff options
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/Makefile.lib | 18 | ||||
-rwxr-xr-x | scripts/gen-dtb-s | 14 |
2 files changed, 17 insertions, 15 deletions
diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib index 0a6302ba68..b546c42bd9 100644 --- a/scripts/Makefile.lib +++ b/scripts/Makefile.lib @@ -210,21 +210,9 @@ cmd_gzip = (cat $(filter-out FORCE,$^) | gzip -n -f -9 > $@) || \ # Generate an assembly file to wrap the output of the device tree compiler quiet_cmd_dt_S_dtb = DTB $@ -cmd_dt_S_dtb= \ -( \ - echo '\#include <asm-generic/barebox.lds.h>'; \ - echo '.section .dtb.rodata.$(subst -,_,$(*F)),"a"'; \ - echo '.balign STRUCT_ALIGNMENT'; \ - echo '.global __dtb_$(subst -,_,$(*F))_start'; \ - echo '__dtb_$(subst -,_,$(*F))_start:'; \ - echo '.incbin "$<" '; \ - echo '__dtb_$(subst -,_,$(*F))_end:'; \ - echo '.global __dtb_$(subst -,_,$(*F))_end'; \ - echo '.balign STRUCT_ALIGNMENT'; \ -) > $@ - -$(obj)/%.dtb.S: $(obj)/%.dtb - $(call cmd,dt_S_dtb) +cmd_dt_S_dtb = $(srctree)/scripts/gen-dtb-s $(subst -,_,$(*F)) $< > $@ +$(obj)/%.dtb.S: $(obj)/%.dtb $(srctree)/scripts/gen-dtb-s FORCE + $(call if_changed,dt_S_dtb) quiet_cmd_dtc = DTC $@ cmd_dtc = $(CPP) $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ; \ diff --git a/scripts/gen-dtb-s b/scripts/gen-dtb-s new file mode 100755 index 0000000000..44136b0369 --- /dev/null +++ b/scripts/gen-dtb-s @@ -0,0 +1,14 @@ +#!/bin/bash + +name=$1 +dtb=$2 + +echo "#include <asm-generic/barebox.lds.h>" +echo ".section .dtb.rodata.${name},\"a\"" +echo ".balign STRUCT_ALIGNMENT" +echo ".global __dtb_${name}_start" +echo "__dtb_${name}_start:" +echo ".incbin \"$dtb\"" +echo "__dtb_${name}_end:" +echo ".global __dtb_${name}_end" +echo ".balign STRUCT_ALIGNMENT" |