ANDROID: ARM: convert build of appended dtb zImage to list of dtbs
Allow CONFIG_BUILD_ARM_APPENDED_DTB_IMAGE_NAMES to specify a space separated list of dtbs to append to the zImage, and name the resulting file zImage-dtb Change-Id: Ied5d0bafbd1d01fc1f109c15c4283de7029903c9 Signed-off-by: Colin Cross <ccross@android.com> [rishabhb: resolved minor conflicts] Signed-off-by: Rishabh Bhatnagar <rishabhb@codeaurora.org>
This commit is contained in:
committed by
Bryan Huntsman
parent
aaa665cc99
commit
b35d0bce0e
@@ -1848,6 +1848,21 @@ config DEPRECATED_PARAM_STRUCT
|
|||||||
This was deprecated in 2001 and announced to live on for 5 years.
|
This was deprecated in 2001 and announced to live on for 5 years.
|
||||||
Some old boot loaders still use this way.
|
Some old boot loaders still use this way.
|
||||||
|
|
||||||
|
config BUILD_ARM_APPENDED_DTB_IMAGE
|
||||||
|
bool "Build a concatenated zImage/dtb by default"
|
||||||
|
depends on OF
|
||||||
|
help
|
||||||
|
Enabling this option will cause a concatenated zImage and list of
|
||||||
|
DTBs to be built by default (instead of a standalone zImage.)
|
||||||
|
The image will built in arch/arm/boot/zImage-dtb
|
||||||
|
|
||||||
|
config BUILD_ARM_APPENDED_DTB_IMAGE_NAMES
|
||||||
|
string "Default dtb names"
|
||||||
|
depends on BUILD_ARM_APPENDED_DTB_IMAGE
|
||||||
|
help
|
||||||
|
Space separated list of names of dtbs to append when
|
||||||
|
building a concatenated zImage-dtb.
|
||||||
|
|
||||||
# Compressed boot loader in ROM. Yes, we really want to ask about
|
# Compressed boot loader in ROM. Yes, we really want to ask about
|
||||||
# TEXT and BSS so we preserve their values in the config files.
|
# TEXT and BSS so we preserve their values in the config files.
|
||||||
config ZBOOT_ROM_TEXT
|
config ZBOOT_ROM_TEXT
|
||||||
|
|||||||
@@ -307,6 +307,8 @@ libs-y := arch/arm/lib/ $(libs-y)
|
|||||||
boot := arch/arm/boot
|
boot := arch/arm/boot
|
||||||
ifeq ($(CONFIG_XIP_KERNEL),y)
|
ifeq ($(CONFIG_XIP_KERNEL),y)
|
||||||
KBUILD_IMAGE := $(boot)/xipImage
|
KBUILD_IMAGE := $(boot)/xipImage
|
||||||
|
else ifeq ($(CONFIG_BUILD_ARM_APPENDED_DTB_IMAGE),y)
|
||||||
|
KBUILD_IMAGE := $(boot)/zImage-dtb
|
||||||
else
|
else
|
||||||
KBUILD_IMAGE := $(boot)/zImage
|
KBUILD_IMAGE := $(boot)/zImage
|
||||||
endif
|
endif
|
||||||
@@ -360,6 +362,9 @@ ifeq ($(CONFIG_VDSO),y)
|
|||||||
$(Q)$(MAKE) $(build)=arch/arm/vdso $@
|
$(Q)$(MAKE) $(build)=arch/arm/vdso $@
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
zImage-dtb: vmlinux scripts dtbs
|
||||||
|
$(Q)$(MAKE) $(build)=$(boot) MACHINE=$(MACHINE) $(boot)/$@
|
||||||
|
|
||||||
# We use MRPROPER_FILES and CLEAN_FILES now
|
# We use MRPROPER_FILES and CLEAN_FILES now
|
||||||
archclean:
|
archclean:
|
||||||
$(Q)$(MAKE) $(clean)=$(boot)
|
$(Q)$(MAKE) $(clean)=$(boot)
|
||||||
|
|||||||
2
arch/arm/boot/.gitignore
vendored
2
arch/arm/boot/.gitignore
vendored
@@ -3,3 +3,5 @@ zImage
|
|||||||
xipImage
|
xipImage
|
||||||
bootpImage
|
bootpImage
|
||||||
uImage
|
uImage
|
||||||
|
*.dtb
|
||||||
|
zImage-dtb
|
||||||
|
|||||||
@@ -29,6 +29,14 @@ export ZRELADDR INITRD_PHYS PARAMS_PHYS
|
|||||||
|
|
||||||
targets := Image zImage xipImage bootpImage uImage
|
targets := Image zImage xipImage bootpImage uImage
|
||||||
|
|
||||||
|
DTB_NAMES := $(subst $\",,$(CONFIG_BUILD_ARM_APPENDED_DTB_IMAGE_NAMES))
|
||||||
|
ifneq ($(DTB_NAMES),)
|
||||||
|
DTB_LIST := $(addsuffix .dtb,$(DTB_NAMES))
|
||||||
|
else
|
||||||
|
DTB_LIST := $(dtb-y)
|
||||||
|
endif
|
||||||
|
DTB_OBJS := $(addprefix $(obj)/dts/,$(DTB_LIST))
|
||||||
|
|
||||||
ifeq ($(CONFIG_XIP_KERNEL),y)
|
ifeq ($(CONFIG_XIP_KERNEL),y)
|
||||||
|
|
||||||
cmd_deflate_xip_data = $(CONFIG_SHELL) -c \
|
cmd_deflate_xip_data = $(CONFIG_SHELL) -c \
|
||||||
@@ -66,6 +74,10 @@ $(obj)/compressed/vmlinux: $(obj)/Image FORCE
|
|||||||
$(obj)/zImage: $(obj)/compressed/vmlinux FORCE
|
$(obj)/zImage: $(obj)/compressed/vmlinux FORCE
|
||||||
$(call if_changed,objcopy)
|
$(call if_changed,objcopy)
|
||||||
|
|
||||||
|
$(obj)/zImage-dtb: $(obj)/zImage $(DTB_OBJS) FORCE
|
||||||
|
$(call if_changed,cat)
|
||||||
|
@echo ' Kernel: $@ is ready'
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifneq ($(LOADADDR),)
|
ifneq ($(LOADADDR),)
|
||||||
|
|||||||
@@ -1163,3 +1163,16 @@ dtb-$(CONFIG_ARCH_ASPEED) += \
|
|||||||
aspeed-bmc-opp-witherspoon.dtb \
|
aspeed-bmc-opp-witherspoon.dtb \
|
||||||
aspeed-bmc-opp-zaius.dtb \
|
aspeed-bmc-opp-zaius.dtb \
|
||||||
aspeed-bmc-quanta-q71l.dtb
|
aspeed-bmc-quanta-q71l.dtb
|
||||||
|
|
||||||
|
DTB_NAMES := $(subst $\",,$(CONFIG_BUILD_ARM_APPENDED_DTB_IMAGE_NAMES))
|
||||||
|
ifneq ($(DTB_NAMES),)
|
||||||
|
DTB_LIST := $(addsuffix .dtb,$(DTB_NAMES))
|
||||||
|
else
|
||||||
|
DTB_LIST := $(dtb-y)
|
||||||
|
endif
|
||||||
|
|
||||||
|
targets += dtbs dtbs_install
|
||||||
|
targets += $(DTB_LIST)
|
||||||
|
|
||||||
|
always := $(DTB_LIST)
|
||||||
|
clean-files := *.dtb
|
||||||
|
|||||||
@@ -292,6 +292,12 @@ $(obj)/%.dtb: $(src)/%.dts $(DTC) FORCE
|
|||||||
|
|
||||||
dtc-tmp = $(subst $(comma),_,$(dot-target).dts.tmp)
|
dtc-tmp = $(subst $(comma),_,$(dot-target).dts.tmp)
|
||||||
|
|
||||||
|
# cat
|
||||||
|
# ---------------------------------------------------------------------------
|
||||||
|
# Concatentate multiple files together
|
||||||
|
quiet_cmd_cat = CAT $@
|
||||||
|
cmd_cat = (cat $(filter-out FORCE,$^) > $@) || (rm -f $@; false)
|
||||||
|
|
||||||
# Bzip2
|
# Bzip2
|
||||||
# ---------------------------------------------------------------------------
|
# ---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user