UPSTREAM Revert Android "ARM: convert build of appended dtb zImage to list of dtbs"
Dan Willemsen [Thu, 1 Aug 2013 06:41:39 +0000 (23:41 -0700)]
This reverts commit 5e9468632ea81e7d17fc9bd4457acbaffda7b370.

Signed-off-by: Dan Willemsen <dwillemsen@nvidia.com>

arch/arm/Kconfig
arch/arm/Makefile
arch/arm/boot/.gitignore
arch/arm/boot/Makefile
arch/arm/boot/dts/Makefile
scripts/Makefile.lib

index 6ac20c6..920f1dc 100644 (file)
@@ -2005,16 +2005,16 @@ 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
+         Enabling this option will cause a concatenated zImage and DTB to
+         be built by default (instead of a standalone zImage.)  The image
+         will built in arch/arm/boot/zImage-dtb.<dtb name>
 
-config BUILD_ARM_APPENDED_DTB_IMAGE_NAMES
-       string "Default dtb names"
+config BUILD_ARM_APPENDED_DTB_IMAGE_NAME
+       string "Default dtb name"
        depends on BUILD_ARM_APPENDED_DTB_IMAGE
        help
-         Space separated list of names of dtbs to append when
-         building a concatenated zImage-dtb.
+         name of the dtb to append when building a concatenated
+         zImage/dtb.
 
 # Compressed boot loader in ROM.  Yes, we really want to ask about
 # TEXT and BSS so we preserve their values in the config files.
index 276b9cb..a5d9cef 100644 (file)
@@ -269,7 +269,7 @@ libs-y                              := arch/arm/lib/ $(libs-y)
 ifeq ($(CONFIG_XIP_KERNEL),y)
 KBUILD_IMAGE := xipImage
 else ifeq ($(CONFIG_BUILD_ARM_APPENDED_DTB_IMAGE),y)
-KBUILD_IMAGE := zImage-dtb
+KBUILD_IMAGE := zImage-dtb.$(CONFIG_BUILD_ARM_APPENDED_DTB_IMAGE_NAME)
 else
 KBUILD_IMAGE := zImage
 endif
@@ -301,9 +301,6 @@ zinstall uinstall install: vmlinux
 dtbs: scripts
        $(Q)$(MAKE) $(build)=$(boot)/dts MACHINE=$(MACHINE) dtbs
 
-zImage-dtb: vmlinux scripts dtbs
-       $(Q)$(MAKE) $(build)=$(boot) MACHINE=$(MACHINE) $(boot)/$@
-
 # We use MRPROPER_FILES and CLEAN_FILES now
 archclean:
        $(Q)$(MAKE) $(clean)=$(boot)
index ad7a025..3c79f85 100644 (file)
@@ -4,4 +4,3 @@ xipImage
 bootpImage
 uImage
 *.dtb
-zImage-dtb
\ No newline at end of file
index 3310df3..84aa2ca 100644 (file)
@@ -27,14 +27,6 @@ export ZRELADDR INITRD_PHYS PARAMS_PHYS
 
 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)
 
 $(obj)/xipImage: vmlinux FORCE
@@ -63,10 +55,6 @@ $(obj)/zImage:       $(obj)/compressed/vmlinux FORCE
        $(call if_changed,objcopy)
        @$(kecho) '  Kernel: $@ is ready'
 
-$(obj)/zImage-dtb:     $(obj)/zImage $(DTB_OBJS) FORCE
-       $(call if_changed,cat)
-       @echo '  Kernel: $@ is ready'
-
 endif
 
 ifneq ($(LOADADDR),)
index 19108a3..9dfc46e 100644 (file)
@@ -212,20 +212,13 @@ dtb-$(CONFIG_ARCH_VT8500) += vt8500-bv07.dtb \
        wm8850-w70v2.dtb
 dtb-$(CONFIG_ARCH_ZYNQ) += zynq-zc702.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
-targets += $(DTB_LIST)
+targets += $(dtb-y)
 endif
 
 # *.dtb used to be generated in the directory above. Clean out the
 # old build results so people don't accidentally use them.
-dtbs: $(addprefix $(obj)/, $(DTB_LIST))
+dtbs: $(addprefix $(obj)/, $(dtb-y))
        $(Q)rm -f $(obj)/../*.dtb
 
 clean-files := *.dtb
index ef2142a..bd161ef 100644 (file)
@@ -273,11 +273,17 @@ $(obj)/%.dtb: $(src)/%.dts FORCE
 
 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)
+$(obj)/%.dtb: $(src)/%.dts FORCE
+       $(call if_changed_dep,dtc)
+
+dtc-tmp = $(subst $(comma),_,$(dot-target).dts)
+
+quiet_cmd_dtc_cpp = DTC+CPP $@
+cmd_dtc_cpp = $(CPP) $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ; \
+       $(objtree)/scripts/dtc/dtc -O dtb -o $@ -b 0 $(DTC_FLAGS) $(dtc-tmp)
+
+$(obj)/%.dtb: $(src)/%.dtsp FORCE
+       $(call if_changed_dep,dtc_cpp)
 
 # Bzip2
 # ---------------------------------------------------------------------------