Re: [PATCH] MIPS: DTS: Only build subdir of current platform

From: Guenter Roeck
Date: Wed May 27 2020 - 19:11:00 EST


On Thu, May 21, 2020 at 10:15:06AM +0800, Tiezhu Yang wrote:
> Add config check in Makefile to only build the subdir of current platform.
>
> E.g. without this patch:
>
> AR arch/mips/built-in.a
> AR arch/mips/boot/dts/brcm/built-in.a
> AR arch/mips/boot/dts/cavium-octeon/built-in.a
> AR arch/mips/boot/dts/img/built-in.a
> AR arch/mips/boot/dts/ingenic/built-in.a
> AR arch/mips/boot/dts/lantiq/built-in.a
> DTC arch/mips/boot/dts/loongson/loongson3_4core_rs780e.dtb
> DTB arch/mips/boot/dts/loongson/loongson3_4core_rs780e.dtb.S
> AS arch/mips/boot/dts/loongson/loongson3_4core_rs780e.dtb.o
> DTC arch/mips/boot/dts/loongson/loongson3_8core_rs780e.dtb
> DTB arch/mips/boot/dts/loongson/loongson3_8core_rs780e.dtb.S
> AS arch/mips/boot/dts/loongson/loongson3_8core_rs780e.dtb.o
> AR arch/mips/boot/dts/loongson/built-in.a
> AR arch/mips/boot/dts/mscc/built-in.a
> AR arch/mips/boot/dts/mti/built-in.a
> AR arch/mips/boot/dts/netlogic/built-in.a
> AR arch/mips/boot/dts/ni/built-in.a
> AR arch/mips/boot/dts/pic32/built-in.a
> AR arch/mips/boot/dts/qca/built-in.a
> AR arch/mips/boot/dts/ralink/built-in.a
> AR arch/mips/boot/dts/xilfpga/built-in.a
> AR arch/mips/boot/dts/built-in.a
>
> With this patch:
>
> AR arch/mips/built-in.a
> DTC arch/mips/boot/dts/loongson/loongson3_4core_rs780e.dtb
> DTB arch/mips/boot/dts/loongson/loongson3_4core_rs780e.dtb.S
> AS arch/mips/boot/dts/loongson/loongson3_4core_rs780e.dtb.o
> DTC arch/mips/boot/dts/loongson/loongson3_8core_rs780e.dtb
> DTB arch/mips/boot/dts/loongson/loongson3_8core_rs780e.dtb.S
> AS arch/mips/boot/dts/loongson/loongson3_8core_rs780e.dtb.o
> AR arch/mips/boot/dts/loongson/built-in.a
> AR arch/mips/boot/dts/built-in.a
>
> Signed-off-by: Tiezhu Yang <yangtiezhu@xxxxxxxxxxx>

With this patch applied, boston.dtb is no longer built with
64r6el_defconfig, even though 64r6el_defconfig enables
CONFIG_FIT_IMAGE_FDT_BOSTON=y. This is because the img
subdirectory is now only included if CONFIG_MACH_PISTACHIO=y,
but that is not the case with 64r6el_defconfig.

Please revisit.

Guenter

> ---
> arch/mips/boot/dts/Makefile | 28 ++++++++++++++--------------
> 1 file changed, 14 insertions(+), 14 deletions(-)
>
> diff --git a/arch/mips/boot/dts/Makefile b/arch/mips/boot/dts/Makefile
> index d429a69..dce32d1 100644
> --- a/arch/mips/boot/dts/Makefile
> +++ b/arch/mips/boot/dts/Makefile
> @@ -1,17 +1,17 @@
> # SPDX-License-Identifier: GPL-2.0
> -subdir-y += brcm
> -subdir-y += cavium-octeon
> -subdir-y += img
> -subdir-y += ingenic
> -subdir-y += lantiq
> -subdir-y += loongson
> -subdir-y += mscc
> -subdir-y += mti
> -subdir-y += netlogic
> -subdir-y += ni
> -subdir-y += pic32
> -subdir-y += qca
> -subdir-y += ralink
> -subdir-y += xilfpga
> +subdir-$(CONFIG_BMIPS_GENERIC) += brcm
> +subdir-$(CONFIG_CAVIUM_OCTEON_SOC) += cavium-octeon
> +subdir-$(CONFIG_MACH_PISTACHIO) += img
> +subdir-$(CONFIG_MACH_INGENIC) += ingenic
> +subdir-$(CONFIG_LANTIQ) += lantiq
> +subdir-$(CONFIG_MACH_LOONGSON64) += loongson
> +subdir-$(CONFIG_MSCC_OCELOT) += mscc
> +subdir-$(CONFIG_MIPS_MALTA) += mti
> +subdir-$(CONFIG_NLM_XLP_BOARD) += netlogic
> +subdir-$(CONFIG_FIT_IMAGE_FDT_NI169445) += ni
> +subdir-$(CONFIG_MACH_PIC32) += pic32
> +subdir-$(CONFIG_ATH79) += qca
> +subdir-$(CONFIG_RALINK) += ralink
> +subdir-$(CONFIG_FIT_IMAGE_FDT_XILFPGA) += xilfpga
>
> obj-$(CONFIG_BUILTIN_DTB) := $(addsuffix /, $(subdir-y))
> --
> 2.1.0
>