[PATCH v3 1/9] powerpc: build .dtb files in dts directory

Rob Herring robh at kernel.org
Thu Sep 27 23:39:28 AEST 2018


On Mon, Sep 10, 2018 at 10:04 AM Rob Herring <robh at kernel.org> wrote:
>
> Align powerpc with other architectures which build the dtb files in the
> same directory as the dts files. This is also in line with most other
> build targets which are located in the same directory as the source.
> This move will help enable the 'dtbs' target which builds all the dtbs
> regardless of kernel config.
>
> This transition could break some scripts if they expect dtb files in the
> old location.
>
> Cc: Benjamin Herrenschmidt <benh at kernel.crashing.org>
> Cc: Paul Mackerras <paulus at samba.org>
> Cc: Michael Ellerman <mpe at ellerman.id.au>
> Cc: linuxppc-dev at lists.ozlabs.org
> Signed-off-by: Rob Herring <robh at kernel.org>
> ---
> v3:
>  - Remove duplicate mpc5200 dtbs from image-y targets. The dtb target already
>    comes from the cuImage.<platform> target.

Do the PPC folks have any comments on this?

Rob

>
>  arch/powerpc/Makefile          |  2 +-
>  arch/powerpc/boot/Makefile     | 55 ++++++++++++++++------------------
>  arch/powerpc/boot/dts/Makefile |  1 +
>  3 files changed, 28 insertions(+), 30 deletions(-)
>  create mode 100644 arch/powerpc/boot/dts/Makefile
>
> diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile
> index 11a1acba164a..53ea887eb34e 100644
> --- a/arch/powerpc/Makefile
> +++ b/arch/powerpc/Makefile
> @@ -294,7 +294,7 @@ bootwrapper_install:
>         $(Q)$(MAKE) $(build)=$(boot) $(patsubst %,$(boot)/%,$@)
>
>  %.dtb: scripts
> -       $(Q)$(MAKE) $(build)=$(boot) $(patsubst %,$(boot)/%,$@)
> +       $(Q)$(MAKE) $(build)=$(boot)/dts $(patsubst %,$(boot)/dts/%,$@)
>
>  # Used to create 'merged defconfigs'
>  # To use it $(call) it with the first argument as the base defconfig
> diff --git a/arch/powerpc/boot/Makefile b/arch/powerpc/boot/Makefile
> index 0fb96c26136f..bca5c23767df 100644
> --- a/arch/powerpc/boot/Makefile
> +++ b/arch/powerpc/boot/Makefile
> @@ -304,9 +304,9 @@ image-$(CONFIG_PPC_ADDER875)                += cuImage.adder875-uboot \
>                                            dtbImage.adder875-redboot
>
>  # Board ports in arch/powerpc/platform/52xx/Kconfig
> -image-$(CONFIG_PPC_LITE5200)           += cuImage.lite5200 lite5200.dtb
> -image-$(CONFIG_PPC_LITE5200)           += cuImage.lite5200b lite5200b.dtb
> -image-$(CONFIG_PPC_MEDIA5200)          += cuImage.media5200 media5200.dtb
> +image-$(CONFIG_PPC_LITE5200)           += cuImage.lite5200
> +image-$(CONFIG_PPC_LITE5200)           += cuImage.lite5200b
> +image-$(CONFIG_PPC_MEDIA5200)          += cuImage.media5200
>
>  # Board ports in arch/powerpc/platform/82xx/Kconfig
>  image-$(CONFIG_MPC8272_ADS)            += cuImage.mpc8272ads
> @@ -381,11 +381,11 @@ $(addprefix $(obj)/, $(sort $(filter zImage.%, $(image-y)))): vmlinux $(wrapperb
>         $(call if_changed,wrap,$(subst $(obj)/zImage.,,$@))
>
>  # dtbImage% - a dtbImage is a zImage with an embedded device tree blob
> -$(obj)/dtbImage.initrd.%: vmlinux $(wrapperbits) $(obj)/%.dtb FORCE
> -       $(call if_changed,wrap,$*,,$(obj)/$*.dtb,$(obj)/ramdisk.image.gz)
> +$(obj)/dtbImage.initrd.%: vmlinux $(wrapperbits) $(obj)/dts/%.dtb FORCE
> +       $(call if_changed,wrap,$*,,$(obj)/dts/$*.dtb,$(obj)/ramdisk.image.gz)
>
> -$(obj)/dtbImage.%: vmlinux $(wrapperbits) $(obj)/%.dtb FORCE
> -       $(call if_changed,wrap,$*,,$(obj)/$*.dtb)
> +$(obj)/dtbImage.%: vmlinux $(wrapperbits) $(obj)/dts/%.dtb FORCE
> +       $(call if_changed,wrap,$*,,$(obj)/dts/$*.dtb)
>
>  # This cannot be in the root of $(src) as the zImage rule always adds a $(obj)
>  # prefix
> @@ -395,36 +395,33 @@ $(obj)/vmlinux.strip: vmlinux
>  $(obj)/uImage: vmlinux $(wrapperbits) FORCE
>         $(call if_changed,wrap,uboot)
>
> -$(obj)/uImage.initrd.%: vmlinux $(obj)/%.dtb $(wrapperbits) FORCE
> -       $(call if_changed,wrap,uboot-$*,,$(obj)/$*.dtb,$(obj)/ramdisk.image.gz)
> +$(obj)/uImage.initrd.%: vmlinux $(obj)/dts/%.dtb $(wrapperbits) FORCE
> +       $(call if_changed,wrap,uboot-$*,,$(obj)/dts/$*.dtb,$(obj)/ramdisk.image.gz)
>
> -$(obj)/uImage.%: vmlinux $(obj)/%.dtb $(wrapperbits) FORCE
> -       $(call if_changed,wrap,uboot-$*,,$(obj)/$*.dtb)
> +$(obj)/uImage.%: vmlinux $(obj)/dts/%.dtb $(wrapperbits) FORCE
> +       $(call if_changed,wrap,uboot-$*,,$(obj)/dts/$*.dtb)
>
> -$(obj)/cuImage.initrd.%: vmlinux $(obj)/%.dtb $(wrapperbits) FORCE
> -       $(call if_changed,wrap,cuboot-$*,,$(obj)/$*.dtb,$(obj)/ramdisk.image.gz)
> +$(obj)/cuImage.initrd.%: vmlinux $(obj)/dts/%.dtb $(wrapperbits) FORCE
> +       $(call if_changed,wrap,cuboot-$*,,$(obj)/dts/$*.dtb,$(obj)/ramdisk.image.gz)
>
> -$(obj)/cuImage.%: vmlinux $(obj)/%.dtb $(wrapperbits) FORCE
> -       $(call if_changed,wrap,cuboot-$*,,$(obj)/$*.dtb)
> +$(obj)/cuImage.%: vmlinux $(obj)/dts/%.dtb $(wrapperbits) FORCE
> +       $(call if_changed,wrap,cuboot-$*,,$(obj)/dts/$*.dtb)
>
> -$(obj)/simpleImage.initrd.%: vmlinux $(obj)/%.dtb $(wrapperbits) FORCE
> -       $(call if_changed,wrap,simpleboot-$*,,$(obj)/$*.dtb,$(obj)/ramdisk.image.gz)
> +$(obj)/simpleImage.initrd.%: vmlinux $(obj)/dts/%.dtb $(wrapperbits) FORCE
> +       $(call if_changed,wrap,simpleboot-$*,,$(obj)/dts/$*.dtb,$(obj)/ramdisk.image.gz)
>
> -$(obj)/simpleImage.%: vmlinux $(obj)/%.dtb $(wrapperbits) FORCE
> -       $(call if_changed,wrap,simpleboot-$*,,$(obj)/$*.dtb)
> +$(obj)/simpleImage.%: vmlinux $(obj)/dts/%.dtb $(wrapperbits) FORCE
> +       $(call if_changed,wrap,simpleboot-$*,,$(obj)/dts/$*.dtb)
>
> -$(obj)/treeImage.initrd.%: vmlinux $(obj)/%.dtb $(wrapperbits) FORCE
> -       $(call if_changed,wrap,treeboot-$*,,$(obj)/$*.dtb,$(obj)/ramdisk.image.gz)
> +$(obj)/treeImage.initrd.%: vmlinux $(obj)/dts/%.dtb $(wrapperbits) FORCE
> +       $(call if_changed,wrap,treeboot-$*,,$(obj)/dts/$*.dtb,$(obj)/ramdisk.image.gz)
>
> -$(obj)/treeImage.%: vmlinux $(obj)/%.dtb $(wrapperbits) FORCE
> -       $(call if_changed,wrap,treeboot-$*,,$(obj)/$*.dtb)
> +$(obj)/treeImage.%: vmlinux $(obj)/dts/%.dtb $(wrapperbits) FORCE
> +       $(call if_changed,wrap,treeboot-$*,,$(obj)/dts/$*.dtb)
>
> -# Rule to build device tree blobs
> -$(obj)/%.dtb: $(src)/dts/%.dts FORCE
> -       $(call if_changed_dep,dtc)
> -
> -$(obj)/%.dtb: $(src)/dts/fsl/%.dts FORCE
> -       $(call if_changed_dep,dtc)
> +# Needed for the above targets to work with dts/fsl/ files
> +$(obj)/dts/%.dtb: $(obj)/dts/fsl/%.dtb
> +       @cp $< $@
>
>  # If there isn't a platform selected then just strip the vmlinux.
>  ifeq (,$(image-y))
> diff --git a/arch/powerpc/boot/dts/Makefile b/arch/powerpc/boot/dts/Makefile
> new file mode 100644
> index 000000000000..f66554cd5c45
> --- /dev/null
> +++ b/arch/powerpc/boot/dts/Makefile
> @@ -0,0 +1 @@
> +# SPDX-License-Identifier: GPL-2.0
> --
> 2.17.1


More information about the Linuxppc-dev mailing list