mirror of
https://github.com/u-boot/u-boot.git
synced 2025-04-23 22:14:54 +00:00
kbuild: Allow DTB overlays to built into .dtbo.S files
[linux commit 941214a512d8, modified for U-Boot by removing the include of vmlinux.lds.h and replacing STRUCT_ALIGNMENT by 16.] DTB files can be built into the kernel by converting them to assembly files then assembling them into object files. We extend this here for DTB overlays with the .dtso extensions. We change the start and end delimiting tag prefix to make it clear that this data came from overlay files. Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
This commit is contained in:
parent
3b7653db7b
commit
06518fdf24
1 changed files with 19 additions and 1 deletions
|
@ -305,7 +305,7 @@ endif
|
|||
DTC_FLAGS += $(DTC_FLAGS_$(basetarget))
|
||||
|
||||
# Generate an assembly file to wrap the output of the device tree compiler
|
||||
quiet_cmd_dt_S_dtb= DTB $@
|
||||
quiet_cmd_dt_S_dtb= DTBS $@
|
||||
# Modified for U-Boot
|
||||
cmd_dt_S_dtb= \
|
||||
( \
|
||||
|
@ -322,6 +322,24 @@ cmd_dt_S_dtb= \
|
|||
$(obj)/%.dtb.S: $(obj)/%.dtb
|
||||
$(call cmd,dt_S_dtb)
|
||||
|
||||
# Generate an assembly file to wrap the output of the device tree compiler
|
||||
quiet_cmd_dt_S_dtbo= DTBOS $@
|
||||
# Modified for U-Boot
|
||||
cmd_dt_S_dtbo= \
|
||||
{ \
|
||||
echo '.section .dtb.init.rodata,"a"'; \
|
||||
echo '.balign 16'; \
|
||||
echo '.global __dtbo_$(subst -,_,$(*F))_begin'; \
|
||||
echo '__dtbo_$(subst -,_,$(*F))_begin:'; \
|
||||
echo '.incbin "$<" '; \
|
||||
echo '__dtbo_$(subst -,_,$(*F))_end:'; \
|
||||
echo '.global __dtbo_$(subst -,_,$(*F))_end'; \
|
||||
echo '.balign 16'; \
|
||||
} > $@
|
||||
|
||||
$(obj)/%.dtbo.S: $(obj)/%.dtbo
|
||||
$(call cmd,dt_S_dtbo)
|
||||
|
||||
ifeq ($(CONFIG_OF_LIBFDT_OVERLAY),y)
|
||||
DTC_FLAGS += -@
|
||||
endif
|
||||
|
|
Loading…
Add table
Reference in a new issue