All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] kbuild: move dtb-y and CONFIG_OF_ALL_DTBS to Kbuild core to fix some issues
@ 2017-11-05  5:30 ` Masahiro Yamada
  0 siblings, 0 replies; 44+ messages in thread
From: Masahiro Yamada @ 2017-11-05  5:30 UTC (permalink / raw)
  To: Rob Herring, devicetree
  Cc: linux-kbuild, Mark Rutland, Pantelis Antoniou, linux-arm-kernel,
	Arnd Bergmann, linux-kernel, Michal Marek, Sam Ravnborg,
	Masahiro Yamada


This series applies on top of my previous cleanup patch:
https://patchwork.kernel.org/patch/10038167/

This series must go to the same branch, so I am sending this to DT ML.



Masahiro Yamada (2):
  MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
  kbuild: handle dtb-y and CONFIG_OF_ALL_DTBS natively in Makefile.lib

 arch/arc/boot/dts/Makefile                       |  7 ++-
 arch/arm/boot/dts/Makefile                       |  5 --
 arch/arm64/boot/dts/Makefile                     | 58 ++++++++++--------------
 arch/arm64/boot/dts/actions/Makefile             |  3 --
 arch/arm64/boot/dts/al/Makefile                  |  3 --
 arch/arm64/boot/dts/allwinner/Makefile           |  3 --
 arch/arm64/boot/dts/altera/Makefile              |  3 --
 arch/arm64/boot/dts/amd/Makefile                 |  3 --
 arch/arm64/boot/dts/amlogic/Makefile             |  3 --
 arch/arm64/boot/dts/apm/Makefile                 |  3 --
 arch/arm64/boot/dts/arm/Makefile                 |  3 --
 arch/arm64/boot/dts/broadcom/Makefile            |  6 +--
 arch/arm64/boot/dts/broadcom/northstar2/Makefile |  3 --
 arch/arm64/boot/dts/broadcom/stingray/Makefile   |  3 --
 arch/arm64/boot/dts/cavium/Makefile              |  3 --
 arch/arm64/boot/dts/exynos/Makefile              |  3 --
 arch/arm64/boot/dts/freescale/Makefile           |  3 --
 arch/arm64/boot/dts/hisilicon/Makefile           |  3 --
 arch/arm64/boot/dts/lg/Makefile                  |  3 --
 arch/arm64/boot/dts/marvell/Makefile             |  3 --
 arch/arm64/boot/dts/mediatek/Makefile            |  3 --
 arch/arm64/boot/dts/nvidia/Makefile              |  2 -
 arch/arm64/boot/dts/qcom/Makefile                |  3 --
 arch/arm64/boot/dts/realtek/Makefile             |  3 --
 arch/arm64/boot/dts/renesas/Makefile             |  2 -
 arch/arm64/boot/dts/rockchip/Makefile            |  3 --
 arch/arm64/boot/dts/socionext/Makefile           |  2 -
 arch/arm64/boot/dts/sprd/Makefile                |  3 --
 arch/arm64/boot/dts/xilinx/Makefile              |  3 --
 arch/arm64/boot/dts/zte/Makefile                 |  3 --
 arch/h8300/boot/dts/Makefile                     |  5 --
 arch/metag/boot/dts/Makefile                     |  5 --
 arch/mips/boot/dts/Makefile                      | 32 ++++++-------
 arch/mips/boot/dts/brcm/Makefile                 |  3 --
 arch/mips/boot/dts/cavium-octeon/Makefile        |  2 -
 arch/mips/boot/dts/img/Makefile                  |  2 -
 arch/mips/boot/dts/ingenic/Makefile              |  2 -
 arch/mips/boot/dts/lantiq/Makefile               |  2 -
 arch/mips/boot/dts/mti/Makefile                  |  2 -
 arch/mips/boot/dts/netlogic/Makefile             |  2 -
 arch/mips/boot/dts/ni/Makefile                   |  2 -
 arch/mips/boot/dts/pic32/Makefile                |  2 -
 arch/mips/boot/dts/qca/Makefile                  |  2 -
 arch/mips/boot/dts/ralink/Makefile               |  2 -
 arch/mips/boot/dts/xilfpga/Makefile              |  2 -
 arch/xtensa/boot/dts/Makefile                    |  7 ++-
 scripts/Makefile.dtbinst                         |  6 +--
 scripts/Makefile.lib                             |  5 ++
 48 files changed, 53 insertions(+), 183 deletions(-)

-- 
2.7.4

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [PATCH 0/2] kbuild: move dtb-y and CONFIG_OF_ALL_DTBS to Kbuild core to fix some issues
@ 2017-11-05  5:30 ` Masahiro Yamada
  0 siblings, 0 replies; 44+ messages in thread
From: Masahiro Yamada @ 2017-11-05  5:30 UTC (permalink / raw)
  To: Rob Herring, devicetree-u79uwXL29TY76Z2rM5mHXA
  Cc: linux-kbuild-u79uwXL29TY76Z2rM5mHXA, Mark Rutland,
	Pantelis Antoniou,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, Arnd Bergmann,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA, Michal Marek, Sam Ravnborg,
	Masahiro Yamada


This series applies on top of my previous cleanup patch:
https://patchwork.kernel.org/patch/10038167/

This series must go to the same branch, so I am sending this to DT ML.



Masahiro Yamada (2):
  MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
  kbuild: handle dtb-y and CONFIG_OF_ALL_DTBS natively in Makefile.lib

 arch/arc/boot/dts/Makefile                       |  7 ++-
 arch/arm/boot/dts/Makefile                       |  5 --
 arch/arm64/boot/dts/Makefile                     | 58 ++++++++++--------------
 arch/arm64/boot/dts/actions/Makefile             |  3 --
 arch/arm64/boot/dts/al/Makefile                  |  3 --
 arch/arm64/boot/dts/allwinner/Makefile           |  3 --
 arch/arm64/boot/dts/altera/Makefile              |  3 --
 arch/arm64/boot/dts/amd/Makefile                 |  3 --
 arch/arm64/boot/dts/amlogic/Makefile             |  3 --
 arch/arm64/boot/dts/apm/Makefile                 |  3 --
 arch/arm64/boot/dts/arm/Makefile                 |  3 --
 arch/arm64/boot/dts/broadcom/Makefile            |  6 +--
 arch/arm64/boot/dts/broadcom/northstar2/Makefile |  3 --
 arch/arm64/boot/dts/broadcom/stingray/Makefile   |  3 --
 arch/arm64/boot/dts/cavium/Makefile              |  3 --
 arch/arm64/boot/dts/exynos/Makefile              |  3 --
 arch/arm64/boot/dts/freescale/Makefile           |  3 --
 arch/arm64/boot/dts/hisilicon/Makefile           |  3 --
 arch/arm64/boot/dts/lg/Makefile                  |  3 --
 arch/arm64/boot/dts/marvell/Makefile             |  3 --
 arch/arm64/boot/dts/mediatek/Makefile            |  3 --
 arch/arm64/boot/dts/nvidia/Makefile              |  2 -
 arch/arm64/boot/dts/qcom/Makefile                |  3 --
 arch/arm64/boot/dts/realtek/Makefile             |  3 --
 arch/arm64/boot/dts/renesas/Makefile             |  2 -
 arch/arm64/boot/dts/rockchip/Makefile            |  3 --
 arch/arm64/boot/dts/socionext/Makefile           |  2 -
 arch/arm64/boot/dts/sprd/Makefile                |  3 --
 arch/arm64/boot/dts/xilinx/Makefile              |  3 --
 arch/arm64/boot/dts/zte/Makefile                 |  3 --
 arch/h8300/boot/dts/Makefile                     |  5 --
 arch/metag/boot/dts/Makefile                     |  5 --
 arch/mips/boot/dts/Makefile                      | 32 ++++++-------
 arch/mips/boot/dts/brcm/Makefile                 |  3 --
 arch/mips/boot/dts/cavium-octeon/Makefile        |  2 -
 arch/mips/boot/dts/img/Makefile                  |  2 -
 arch/mips/boot/dts/ingenic/Makefile              |  2 -
 arch/mips/boot/dts/lantiq/Makefile               |  2 -
 arch/mips/boot/dts/mti/Makefile                  |  2 -
 arch/mips/boot/dts/netlogic/Makefile             |  2 -
 arch/mips/boot/dts/ni/Makefile                   |  2 -
 arch/mips/boot/dts/pic32/Makefile                |  2 -
 arch/mips/boot/dts/qca/Makefile                  |  2 -
 arch/mips/boot/dts/ralink/Makefile               |  2 -
 arch/mips/boot/dts/xilfpga/Makefile              |  2 -
 arch/xtensa/boot/dts/Makefile                    |  7 ++-
 scripts/Makefile.dtbinst                         |  6 +--
 scripts/Makefile.lib                             |  5 ++
 48 files changed, 53 insertions(+), 183 deletions(-)

-- 
2.7.4

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [PATCH 0/2] kbuild: move dtb-y and CONFIG_OF_ALL_DTBS to Kbuild core to fix some issues
@ 2017-11-05  5:30 ` Masahiro Yamada
  0 siblings, 0 replies; 44+ messages in thread
From: Masahiro Yamada @ 2017-11-05  5:30 UTC (permalink / raw)
  To: linux-arm-kernel


This series applies on top of my previous cleanup patch:
https://patchwork.kernel.org/patch/10038167/

This series must go to the same branch, so I am sending this to DT ML.



Masahiro Yamada (2):
  MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
  kbuild: handle dtb-y and CONFIG_OF_ALL_DTBS natively in Makefile.lib

 arch/arc/boot/dts/Makefile                       |  7 ++-
 arch/arm/boot/dts/Makefile                       |  5 --
 arch/arm64/boot/dts/Makefile                     | 58 ++++++++++--------------
 arch/arm64/boot/dts/actions/Makefile             |  3 --
 arch/arm64/boot/dts/al/Makefile                  |  3 --
 arch/arm64/boot/dts/allwinner/Makefile           |  3 --
 arch/arm64/boot/dts/altera/Makefile              |  3 --
 arch/arm64/boot/dts/amd/Makefile                 |  3 --
 arch/arm64/boot/dts/amlogic/Makefile             |  3 --
 arch/arm64/boot/dts/apm/Makefile                 |  3 --
 arch/arm64/boot/dts/arm/Makefile                 |  3 --
 arch/arm64/boot/dts/broadcom/Makefile            |  6 +--
 arch/arm64/boot/dts/broadcom/northstar2/Makefile |  3 --
 arch/arm64/boot/dts/broadcom/stingray/Makefile   |  3 --
 arch/arm64/boot/dts/cavium/Makefile              |  3 --
 arch/arm64/boot/dts/exynos/Makefile              |  3 --
 arch/arm64/boot/dts/freescale/Makefile           |  3 --
 arch/arm64/boot/dts/hisilicon/Makefile           |  3 --
 arch/arm64/boot/dts/lg/Makefile                  |  3 --
 arch/arm64/boot/dts/marvell/Makefile             |  3 --
 arch/arm64/boot/dts/mediatek/Makefile            |  3 --
 arch/arm64/boot/dts/nvidia/Makefile              |  2 -
 arch/arm64/boot/dts/qcom/Makefile                |  3 --
 arch/arm64/boot/dts/realtek/Makefile             |  3 --
 arch/arm64/boot/dts/renesas/Makefile             |  2 -
 arch/arm64/boot/dts/rockchip/Makefile            |  3 --
 arch/arm64/boot/dts/socionext/Makefile           |  2 -
 arch/arm64/boot/dts/sprd/Makefile                |  3 --
 arch/arm64/boot/dts/xilinx/Makefile              |  3 --
 arch/arm64/boot/dts/zte/Makefile                 |  3 --
 arch/h8300/boot/dts/Makefile                     |  5 --
 arch/metag/boot/dts/Makefile                     |  5 --
 arch/mips/boot/dts/Makefile                      | 32 ++++++-------
 arch/mips/boot/dts/brcm/Makefile                 |  3 --
 arch/mips/boot/dts/cavium-octeon/Makefile        |  2 -
 arch/mips/boot/dts/img/Makefile                  |  2 -
 arch/mips/boot/dts/ingenic/Makefile              |  2 -
 arch/mips/boot/dts/lantiq/Makefile               |  2 -
 arch/mips/boot/dts/mti/Makefile                  |  2 -
 arch/mips/boot/dts/netlogic/Makefile             |  2 -
 arch/mips/boot/dts/ni/Makefile                   |  2 -
 arch/mips/boot/dts/pic32/Makefile                |  2 -
 arch/mips/boot/dts/qca/Makefile                  |  2 -
 arch/mips/boot/dts/ralink/Makefile               |  2 -
 arch/mips/boot/dts/xilfpga/Makefile              |  2 -
 arch/xtensa/boot/dts/Makefile                    |  7 ++-
 scripts/Makefile.dtbinst                         |  6 +--
 scripts/Makefile.lib                             |  5 ++
 48 files changed, 53 insertions(+), 183 deletions(-)

-- 
2.7.4

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
  2017-11-05  5:30 ` Masahiro Yamada
@ 2017-11-05  5:30   ` Masahiro Yamada
  -1 siblings, 0 replies; 44+ messages in thread
From: Masahiro Yamada @ 2017-11-05  5:30 UTC (permalink / raw)
  To: Rob Herring, devicetree
  Cc: linux-kbuild, Mark Rutland, Pantelis Antoniou, linux-arm-kernel,
	Arnd Bergmann, linux-kernel, Michal Marek, Sam Ravnborg,
	Masahiro Yamada

arch/mips/boot/dts/brcm/bcm96358nb4ser.dts does not exist, so
we cannot build bcm96358nb4ser.dtb .

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
---

 arch/mips/boot/dts/brcm/Makefile | 1 -
 1 file changed, 1 deletion(-)

diff --git a/arch/mips/boot/dts/brcm/Makefile b/arch/mips/boot/dts/brcm/Makefile
index 69a69d1..ad76130 100644
--- a/arch/mips/boot/dts/brcm/Makefile
+++ b/arch/mips/boot/dts/brcm/Makefile
@@ -22,7 +22,6 @@ dtb-$(CONFIG_DT_NONE) += \
 	bcm63268-comtrend-vr-3032u.dtb \
 	bcm93384wvg.dtb \
 	bcm93384wvg_viper.dtb \
-	bcm96358nb4ser.dtb \
 	bcm96368mvwg.dtb \
 	bcm9ejtagprb.dtb \
 	bcm97125cbmb.dtb \
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
@ 2017-11-05  5:30   ` Masahiro Yamada
  0 siblings, 0 replies; 44+ messages in thread
From: Masahiro Yamada @ 2017-11-05  5:30 UTC (permalink / raw)
  To: linux-arm-kernel

arch/mips/boot/dts/brcm/bcm96358nb4ser.dts does not exist, so
we cannot build bcm96358nb4ser.dtb .

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
---

 arch/mips/boot/dts/brcm/Makefile | 1 -
 1 file changed, 1 deletion(-)

diff --git a/arch/mips/boot/dts/brcm/Makefile b/arch/mips/boot/dts/brcm/Makefile
index 69a69d1..ad76130 100644
--- a/arch/mips/boot/dts/brcm/Makefile
+++ b/arch/mips/boot/dts/brcm/Makefile
@@ -22,7 +22,6 @@ dtb-$(CONFIG_DT_NONE) += \
 	bcm63268-comtrend-vr-3032u.dtb \
 	bcm93384wvg.dtb \
 	bcm93384wvg_viper.dtb \
-	bcm96358nb4ser.dtb \
 	bcm96368mvwg.dtb \
 	bcm9ejtagprb.dtb \
 	bcm97125cbmb.dtb \
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [PATCH 2/2] kbuild: handle dtb-y and CONFIG_OF_ALL_DTBS natively in Makefile.lib
  2017-11-05  5:30 ` Masahiro Yamada
@ 2017-11-05  5:30   ` Masahiro Yamada
  -1 siblings, 0 replies; 44+ messages in thread
From: Masahiro Yamada @ 2017-11-05  5:30 UTC (permalink / raw)
  To: Rob Herring, devicetree
  Cc: linux-kbuild, Mark Rutland, Pantelis Antoniou, linux-arm-kernel,
	Arnd Bergmann, linux-kernel, Michal Marek, Sam Ravnborg,
	Masahiro Yamada

If CONFIG_OF_ALL_DTBS is enabled, "make ARCH=arm64 dtbs" compiles each
DTB twice; one from arch/arm64/boot/dts/*/Makefile and the other from
the dtb-$(CONFIG_OF_ALL_DTBS) line in arch/arm64/boot/dts/Makefile.
It could be a race problem when building DTBS in parallel.

Another minor issue is CONFIG_OF_ALL_DTBS covers only *.dts in vendor
sub-directories, so this broke when Broadcom added one more hierarchy
in arch/arm64/boot/dts/broadcom/<soc>/.

One idea to fix the issues in a clean way is to move DTB handling
to Kbuild core scripts.  Makefile.dtbinst already recognizes dtb-y
natively, so it should not hurt to do so.

Add $(dtb-y) to extra-y, and $(dtb-) as well if CONFIG_OF_ALL_DTBS is
enabled.  All clutter things in Makefiles go away.

As a bonus clean-up, I also removed dts-dirs.  Just use subdir-y
directly to traverse sub-directories.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
---

 arch/arc/boot/dts/Makefile                       |  7 ++-
 arch/arm/boot/dts/Makefile                       |  5 --
 arch/arm64/boot/dts/Makefile                     | 58 ++++++++++--------------
 arch/arm64/boot/dts/actions/Makefile             |  3 --
 arch/arm64/boot/dts/al/Makefile                  |  3 --
 arch/arm64/boot/dts/allwinner/Makefile           |  3 --
 arch/arm64/boot/dts/altera/Makefile              |  3 --
 arch/arm64/boot/dts/amd/Makefile                 |  3 --
 arch/arm64/boot/dts/amlogic/Makefile             |  3 --
 arch/arm64/boot/dts/apm/Makefile                 |  3 --
 arch/arm64/boot/dts/arm/Makefile                 |  3 --
 arch/arm64/boot/dts/broadcom/Makefile            |  6 +--
 arch/arm64/boot/dts/broadcom/northstar2/Makefile |  3 --
 arch/arm64/boot/dts/broadcom/stingray/Makefile   |  3 --
 arch/arm64/boot/dts/cavium/Makefile              |  3 --
 arch/arm64/boot/dts/exynos/Makefile              |  3 --
 arch/arm64/boot/dts/freescale/Makefile           |  3 --
 arch/arm64/boot/dts/hisilicon/Makefile           |  3 --
 arch/arm64/boot/dts/lg/Makefile                  |  3 --
 arch/arm64/boot/dts/marvell/Makefile             |  3 --
 arch/arm64/boot/dts/mediatek/Makefile            |  3 --
 arch/arm64/boot/dts/nvidia/Makefile              |  2 -
 arch/arm64/boot/dts/qcom/Makefile                |  3 --
 arch/arm64/boot/dts/realtek/Makefile             |  3 --
 arch/arm64/boot/dts/renesas/Makefile             |  2 -
 arch/arm64/boot/dts/rockchip/Makefile            |  3 --
 arch/arm64/boot/dts/socionext/Makefile           |  2 -
 arch/arm64/boot/dts/sprd/Makefile                |  3 --
 arch/arm64/boot/dts/xilinx/Makefile              |  3 --
 arch/arm64/boot/dts/zte/Makefile                 |  3 --
 arch/h8300/boot/dts/Makefile                     |  5 --
 arch/metag/boot/dts/Makefile                     |  5 --
 arch/mips/boot/dts/Makefile                      | 32 ++++++-------
 arch/mips/boot/dts/brcm/Makefile                 |  2 -
 arch/mips/boot/dts/cavium-octeon/Makefile        |  2 -
 arch/mips/boot/dts/img/Makefile                  |  2 -
 arch/mips/boot/dts/ingenic/Makefile              |  2 -
 arch/mips/boot/dts/lantiq/Makefile               |  2 -
 arch/mips/boot/dts/mti/Makefile                  |  2 -
 arch/mips/boot/dts/netlogic/Makefile             |  2 -
 arch/mips/boot/dts/ni/Makefile                   |  2 -
 arch/mips/boot/dts/pic32/Makefile                |  2 -
 arch/mips/boot/dts/qca/Makefile                  |  2 -
 arch/mips/boot/dts/ralink/Makefile               |  2 -
 arch/mips/boot/dts/xilfpga/Makefile              |  2 -
 arch/xtensa/boot/dts/Makefile                    |  7 ++-
 scripts/Makefile.dtbinst                         |  6 +--
 scripts/Makefile.lib                             |  5 ++
 48 files changed, 53 insertions(+), 182 deletions(-)

diff --git a/arch/arc/boot/dts/Makefile b/arch/arc/boot/dts/Makefile
index 1257db1..9ece28b 100644
--- a/arch/arc/boot/dts/Makefile
+++ b/arch/arc/boot/dts/Makefile
@@ -10,7 +10,6 @@ dtb-y := $(builtindtb-y).dtb
 
 .SECONDARY: $(obj)/$(builtindtb-y).dtb.S
 
-dtstree		:= $(srctree)/$(src)
-dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
-
-always := $(dtb-y)
+# for CONFIG_OF_ALL_DTBS test
+dtstree	:= $(srctree)/$(src)
+dtb-	:= $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 5eeefbc..4b650d6 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -1069,8 +1069,3 @@ dtb-$(CONFIG_ARCH_ASPEED) += aspeed-bmc-opp-palmetto.dtb \
 	aspeed-bmc-opp-romulus.dtb \
 	aspeed-ast2500-evb.dtb
 endif
-
-dtstree		:= $(srctree)/$(src)
-dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
-
-always		:= $(dtb-y)
diff --git a/arch/arm64/boot/dts/Makefile b/arch/arm64/boot/dts/Makefile
index 8e19512..a7ecb42 100644
--- a/arch/arm64/boot/dts/Makefile
+++ b/arch/arm64/boot/dts/Makefile
@@ -1,33 +1,25 @@
-dts-dirs += actions
-dts-dirs += al
-dts-dirs += allwinner
-dts-dirs += altera
-dts-dirs += amd
-dts-dirs += amlogic
-dts-dirs += apm
-dts-dirs += arm
-dts-dirs += broadcom
-dts-dirs += cavium
-dts-dirs += exynos
-dts-dirs += freescale
-dts-dirs += hisilicon
-dts-dirs += marvell
-dts-dirs += mediatek
-dts-dirs += nvidia
-dts-dirs += qcom
-dts-dirs += realtek
-dts-dirs += renesas
-dts-dirs += rockchip
-dts-dirs += socionext
-dts-dirs += sprd
-dts-dirs += xilinx
-dts-dirs += lg
-dts-dirs += zte
-
-subdir-y	:= $(dts-dirs)
-
-dtstree		:= $(srctree)/$(src)
-
-dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(foreach d,$(dts-dirs), $(wildcard $(dtstree)/$(d)/*.dts)))
-
-always		:= $(dtb-y)
+subdir-y += actions
+subdir-y += al
+subdir-y += allwinner
+subdir-y += altera
+subdir-y += amd
+subdir-y += amlogic
+subdir-y += apm
+subdir-y += arm
+subdir-y += broadcom
+subdir-y += cavium
+subdir-y += exynos
+subdir-y += freescale
+subdir-y += hisilicon
+subdir-y += marvell
+subdir-y += mediatek
+subdir-y += nvidia
+subdir-y += qcom
+subdir-y += realtek
+subdir-y += renesas
+subdir-y += rockchip
+subdir-y += socionext
+subdir-y += sprd
+subdir-y += xilinx
+subdir-y += lg
+subdir-y += zte
diff --git a/arch/arm64/boot/dts/actions/Makefile b/arch/arm64/boot/dts/actions/Makefile
index 89bb1b5..cc46612 100644
--- a/arch/arm64/boot/dts/actions/Makefile
+++ b/arch/arm64/boot/dts/actions/Makefile
@@ -1,4 +1 @@
 dtb-$(CONFIG_ARCH_ACTIONS) += s900-bubblegum-96.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/al/Makefile b/arch/arm64/boot/dts/al/Makefile
index 8606a57..036e387 100644
--- a/arch/arm64/boot/dts/al/Makefile
+++ b/arch/arm64/boot/dts/al/Makefile
@@ -1,4 +1 @@
 dtb-$(CONFIG_ARCH_ALPINE)	+= alpine-v2-evp.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile
index 871ed768..4dab590 100644
--- a/arch/arm64/boot/dts/allwinner/Makefile
+++ b/arch/arm64/boot/dts/allwinner/Makefile
@@ -8,6 +8,3 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-orangepi-pc2.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-orangepi-prime.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-orangepi-zero-plus2.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-nanopi-neo2.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/altera/Makefile b/arch/arm64/boot/dts/altera/Makefile
index 7511b51..68ba088 100644
--- a/arch/arm64/boot/dts/altera/Makefile
+++ b/arch/arm64/boot/dts/altera/Makefile
@@ -1,4 +1 @@
 dtb-$(CONFIG_ARCH_STRATIX10) += socfpga_stratix10_socdk.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/amd/Makefile b/arch/arm64/boot/dts/amd/Makefile
index cb1c779..465cea6 100644
--- a/arch/arm64/boot/dts/amd/Makefile
+++ b/arch/arm64/boot/dts/amd/Makefile
@@ -1,6 +1,3 @@
 dtb-$(CONFIG_ARCH_SEATTLE) += amd-overdrive.dtb \
 			amd-overdrive-rev-b0.dtb amd-overdrive-rev-b1.dtb \
 			husky.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile
index d864403..4eb8f82 100644
--- a/arch/arm64/boot/dts/amlogic/Makefile
+++ b/arch/arm64/boot/dts/amlogic/Makefile
@@ -19,6 +19,3 @@ dtb-$(CONFIG_ARCH_MESON) += meson-gxm-nexbox-a1.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxm-q200.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxm-q201.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxm-rbox-pro.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/apm/Makefile b/arch/arm64/boot/dts/apm/Makefile
index 4334978..b96cd38 100644
--- a/arch/arm64/boot/dts/apm/Makefile
+++ b/arch/arm64/boot/dts/apm/Makefile
@@ -1,5 +1,2 @@
 dtb-$(CONFIG_ARCH_XGENE) += apm-mustang.dtb
 dtb-$(CONFIG_ARCH_XGENE) += apm-merlin.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/arm/Makefile b/arch/arm64/boot/dts/arm/Makefile
index 01c342f..7ca6a6e 100644
--- a/arch/arm64/boot/dts/arm/Makefile
+++ b/arch/arm64/boot/dts/arm/Makefile
@@ -2,6 +2,3 @@ dtb-$(CONFIG_ARCH_VEXPRESS) += foundation-v8.dtb foundation-v8-gicv3.dtb
 dtb-$(CONFIG_ARCH_VEXPRESS) += juno.dtb juno-r1.dtb juno-r2.dtb
 dtb-$(CONFIG_ARCH_VEXPRESS) += rtsm_ve-aemv8a.dtb
 dtb-$(CONFIG_ARCH_VEXPRESS) += vexpress-v2f-1xv7-ca53x2.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/broadcom/Makefile b/arch/arm64/boot/dts/broadcom/Makefile
index d720d0d..da268c6 100644
--- a/arch/arm64/boot/dts/broadcom/Makefile
+++ b/arch/arm64/boot/dts/broadcom/Makefile
@@ -1,6 +1,4 @@
 dtb-$(CONFIG_ARCH_BCM2835) += bcm2837-rpi-3-b.dtb
 
-dts-dirs	+= northstar2
-dts-dirs	+= stingray
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
+subdir-y	+= northstar2
+subdir-y	+= stingray
diff --git a/arch/arm64/boot/dts/broadcom/northstar2/Makefile b/arch/arm64/boot/dts/broadcom/northstar2/Makefile
index c589b9b..8373600 100644
--- a/arch/arm64/boot/dts/broadcom/northstar2/Makefile
+++ b/arch/arm64/boot/dts/broadcom/northstar2/Makefile
@@ -1,5 +1,2 @@
 dtb-$(CONFIG_ARCH_BCM_IPROC) += ns2-svk.dtb
 dtb-$(CONFIG_ARCH_BCM_IPROC) += ns2-xmc.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/broadcom/stingray/Makefile b/arch/arm64/boot/dts/broadcom/stingray/Makefile
index 8edcc52..ea5516b 100644
--- a/arch/arm64/boot/dts/broadcom/stingray/Makefile
+++ b/arch/arm64/boot/dts/broadcom/stingray/Makefile
@@ -1,5 +1,2 @@
 dtb-$(CONFIG_ARCH_BCM_IPROC) += bcm958742k.dtb
 dtb-$(CONFIG_ARCH_BCM_IPROC) += bcm958742t.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/cavium/Makefile b/arch/arm64/boot/dts/cavium/Makefile
index c63145e..f7c0ca8 100644
--- a/arch/arm64/boot/dts/cavium/Makefile
+++ b/arch/arm64/boot/dts/cavium/Makefile
@@ -1,5 +1,2 @@
 dtb-$(CONFIG_ARCH_THUNDER) += thunder-88xx.dtb
 dtb-$(CONFIG_ARCH_THUNDER2) += thunder2-99xx.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/exynos/Makefile b/arch/arm64/boot/dts/exynos/Makefile
index 4633adf..14031e1 100644
--- a/arch/arm64/boot/dts/exynos/Makefile
+++ b/arch/arm64/boot/dts/exynos/Makefile
@@ -2,6 +2,3 @@ dtb-$(CONFIG_ARCH_EXYNOS) += \
 	exynos5433-tm2.dtb	\
 	exynos5433-tm2e.dtb	\
 	exynos7-espresso.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile
index fe18e3d..f1b5363 100644
--- a/arch/arm64/boot/dts/freescale/Makefile
+++ b/arch/arm64/boot/dts/freescale/Makefile
@@ -12,6 +12,3 @@ dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls2080a-rdb.dtb
 dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls2080a-simu.dtb
 dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls2088a-qds.dtb
 dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls2088a-rdb.dtb
- 
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/hisilicon/Makefile b/arch/arm64/boot/dts/hisilicon/Makefile
index cb25d7a..942c9ab 100644
--- a/arch/arm64/boot/dts/hisilicon/Makefile
+++ b/arch/arm64/boot/dts/hisilicon/Makefile
@@ -4,6 +4,3 @@ dtb-$(CONFIG_ARCH_HISI) += hi6220-hikey.dtb
 dtb-$(CONFIG_ARCH_HISI) += hip05-d02.dtb
 dtb-$(CONFIG_ARCH_HISI) += hip06-d03.dtb
 dtb-$(CONFIG_ARCH_HISI) += hip07-d05.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/lg/Makefile b/arch/arm64/boot/dts/lg/Makefile
index c0bbe06..de5dc19 100644
--- a/arch/arm64/boot/dts/lg/Makefile
+++ b/arch/arm64/boot/dts/lg/Makefile
@@ -1,5 +1,2 @@
 dtb-$(CONFIG_ARCH_LG1K) += lg1312-ref.dtb
 dtb-$(CONFIG_ARCH_LG1K) += lg1313-ref.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/marvell/Makefile b/arch/arm64/boot/dts/marvell/Makefile
index b471235..7a42e0d 100644
--- a/arch/arm64/boot/dts/marvell/Makefile
+++ b/arch/arm64/boot/dts/marvell/Makefile
@@ -9,6 +9,3 @@ dtb-$(CONFIG_ARCH_MVEBU) += armada-7040-db.dtb
 dtb-$(CONFIG_ARCH_MVEBU) += armada-8040-db.dtb
 dtb-$(CONFIG_ARCH_MVEBU) += armada-8040-mcbin.dtb
 dtb-$(CONFIG_ARCH_MVEBU) += armada-8080-db.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/mediatek/Makefile b/arch/arm64/boot/dts/mediatek/Makefile
index 80d1743..f225012 100644
--- a/arch/arm64/boot/dts/mediatek/Makefile
+++ b/arch/arm64/boot/dts/mediatek/Makefile
@@ -4,6 +4,3 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += mt6795-evb.dtb
 dtb-$(CONFIG_ARCH_MEDIATEK) += mt6797-evb.dtb
 dtb-$(CONFIG_ARCH_MEDIATEK) += mt7622-rfb1.dtb
 dtb-$(CONFIG_ARCH_MEDIATEK) += mt8173-evb.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/nvidia/Makefile b/arch/arm64/boot/dts/nvidia/Makefile
index a9d5196..1b69cfd 100644
--- a/arch/arm64/boot/dts/nvidia/Makefile
+++ b/arch/arm64/boot/dts/nvidia/Makefile
@@ -4,5 +4,3 @@ dtb-$(CONFIG_ARCH_TEGRA_210_SOC) += tegra210-p2371-2180.dtb
 dtb-$(CONFIG_ARCH_TEGRA_210_SOC) += tegra210-p2571.dtb
 dtb-$(CONFIG_ARCH_TEGRA_210_SOC) += tegra210-smaug.dtb
 dtb-$(CONFIG_ARCH_TEGRA_186_SOC) += tegra186-p2771-0000.dtb
-
-always		:= $(dtb-y)
diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile
index 65af6f9..7a65ef1 100644
--- a/arch/arm64/boot/dts/qcom/Makefile
+++ b/arch/arm64/boot/dts/qcom/Makefile
@@ -5,6 +5,3 @@ dtb-$(CONFIG_ARCH_QCOM)	+= msm8916-mtp.dtb
 dtb-$(CONFIG_ARCH_QCOM)	+= msm8992-bullhead-rev-101.dtb
 dtb-$(CONFIG_ARCH_QCOM)	+= msm8994-angler-rev-101.dtb
 dtb-$(CONFIG_ARCH_QCOM)	+= msm8996-mtp.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/realtek/Makefile b/arch/arm64/boot/dts/realtek/Makefile
index 88cb515..6e2ae59 100644
--- a/arch/arm64/boot/dts/realtek/Makefile
+++ b/arch/arm64/boot/dts/realtek/Makefile
@@ -1,4 +1 @@
 dtb-$(CONFIG_ARCH_REALTEK) += rtd1295-zidoo-x9s.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/renesas/Makefile b/arch/arm64/boot/dts/renesas/Makefile
index 960dade..5e0bb28 100644
--- a/arch/arm64/boot/dts/renesas/Makefile
+++ b/arch/arm64/boot/dts/renesas/Makefile
@@ -3,5 +3,3 @@ dtb-$(CONFIG_ARCH_R8A7795) += r8a7795-salvator-xs.dtb
 dtb-$(CONFIG_ARCH_R8A7795) += r8a7795-es1-salvator-x.dtb r8a7795-es1-h3ulcb.dtb
 dtb-$(CONFIG_ARCH_R8A7796) += r8a7796-salvator-x.dtb r8a7796-m3ulcb.dtb
 dtb-$(CONFIG_ARCH_R8A77995) += r8a77995-draak.dtb
-
-always		:= $(dtb-y)
diff --git a/arch/arm64/boot/dts/rockchip/Makefile b/arch/arm64/boot/dts/rockchip/Makefile
index 6b6bb1d..573a041 100644
--- a/arch/arm64/boot/dts/rockchip/Makefile
+++ b/arch/arm64/boot/dts/rockchip/Makefile
@@ -10,6 +10,3 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-firefly.dtb
 dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-gru-kevin.dtb
 dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-puma-haikou.dtb
 dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-sapphire-excavator.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/socionext/Makefile b/arch/arm64/boot/dts/socionext/Makefile
index 5eed3ce..a042316 100644
--- a/arch/arm64/boot/dts/socionext/Makefile
+++ b/arch/arm64/boot/dts/socionext/Makefile
@@ -4,5 +4,3 @@ dtb-$(CONFIG_ARCH_UNIPHIER) += \
 	uniphier-ld20-global.dtb \
 	uniphier-ld20-ref.dtb \
 	uniphier-pxs3-ref.dtb
-
-always		:= $(dtb-y)
diff --git a/arch/arm64/boot/dts/sprd/Makefile b/arch/arm64/boot/dts/sprd/Makefile
index c91b62e..38cefdb 100644
--- a/arch/arm64/boot/dts/sprd/Makefile
+++ b/arch/arm64/boot/dts/sprd/Makefile
@@ -1,5 +1,2 @@
 dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb \
 			sp9860g-1h10.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/xilinx/Makefile b/arch/arm64/boot/dts/xilinx/Makefile
index 74e1956..a2d6708 100644
--- a/arch/arm64/boot/dts/xilinx/Makefile
+++ b/arch/arm64/boot/dts/xilinx/Makefile
@@ -1,4 +1 @@
 dtb-$(CONFIG_ARCH_ZYNQMP) += zynqmp-ep108.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/zte/Makefile b/arch/arm64/boot/dts/zte/Makefile
index 71e0708..14a1cdf 100644
--- a/arch/arm64/boot/dts/zte/Makefile
+++ b/arch/arm64/boot/dts/zte/Makefile
@@ -1,5 +1,2 @@
 dtb-$(CONFIG_ARCH_ZX) += zx296718-evb.dtb
 dtb-$(CONFIG_ARCH_ZX) += zx296718-pcbox.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/h8300/boot/dts/Makefile b/arch/h8300/boot/dts/Makefile
index 6f3fe47..ae31884 100644
--- a/arch/h8300/boot/dts/Makefile
+++ b/arch/h8300/boot/dts/Makefile
@@ -7,8 +7,3 @@ obj-y += $(BUILTIN_DTB)
 dtb-$(CONFIG_H8300H_SIM) := h8300h_sim.dtb
 dtb-$(CONFIG_H8S_SIM) := h8s_sim.dtb
 dtb-$(CONFIG_H8S_EDOSK2674) := edosk2674.dtb
-
-dtstree		:= $(srctree)/$(src)
-dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
-
-always	    := $(dtb-y)
diff --git a/arch/metag/boot/dts/Makefile b/arch/metag/boot/dts/Makefile
index 83d5b88..0060147 100644
--- a/arch/metag/boot/dts/Makefile
+++ b/arch/metag/boot/dts/Makefile
@@ -12,9 +12,4 @@ endif
 dtb-$(CONFIG_METAG_BUILTIN_DTB)	+= $(builtindtb-y).dtb
 obj-$(CONFIG_METAG_BUILTIN_DTB)	+= $(builtindtb-y).dtb.o
 
-dtstree		:= $(srctree)/$(src)
-dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
-
 .SECONDARY: $(obj)/$(builtindtb-y).dtb.S
-
-always += $(dtb-y)
diff --git a/arch/mips/boot/dts/Makefile b/arch/mips/boot/dts/Makefile
index 7891ffa..b2b0d88 100644
--- a/arch/mips/boot/dts/Makefile
+++ b/arch/mips/boot/dts/Makefile
@@ -1,20 +1,14 @@
-dts-dirs	+= brcm
-dts-dirs	+= cavium-octeon
-dts-dirs	+= img
-dts-dirs	+= ingenic
-dts-dirs	+= lantiq
-dts-dirs	+= mti
-dts-dirs	+= netlogic
-dts-dirs	+= ni
-dts-dirs	+= pic32
-dts-dirs	+= qca
-dts-dirs	+= ralink
-dts-dirs	+= xilfpga
+subdir-y	+= brcm
+subdir-y	+= cavium-octeon
+subdir-y	+= img
+subdir-y	+= ingenic
+subdir-y	+= lantiq
+subdir-y	+= mti
+subdir-y	+= netlogic
+subdir-y	+= ni
+subdir-y	+= pic32
+subdir-y	+= qca
+subdir-y	+= ralink
+subdir-y	+= xilfpga
 
-obj-y		:= $(addsuffix /, $(dts-dirs))
-
-dtstree		:= $(srctree)/$(src)
-dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(foreach d,$(dts-dirs), $(wildcard $(dtstree)/$(d)/*.dts)))
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
+obj-$(BUILTIN_DTB)	:= $(addsuffix /, $(subdir-y))
diff --git a/arch/mips/boot/dts/brcm/Makefile b/arch/mips/boot/dts/brcm/Makefile
index ad76130..bacb131 100644
--- a/arch/mips/boot/dts/brcm/Makefile
+++ b/arch/mips/boot/dts/brcm/Makefile
@@ -37,5 +37,3 @@ obj-y				+= $(patsubst %.dtb, %.dtb.o, $(dtb-y))
 
 # Force kbuild to make empty built-in.o if necessary
 obj-				+= dummy.o
-
-always				:= $(dtb-y)
diff --git a/arch/mips/boot/dts/cavium-octeon/Makefile b/arch/mips/boot/dts/cavium-octeon/Makefile
index a6fb331..e9592a9 100644
--- a/arch/mips/boot/dts/cavium-octeon/Makefile
+++ b/arch/mips/boot/dts/cavium-octeon/Makefile
@@ -4,5 +4,3 @@ obj-y				+= $(patsubst %.dtb, %.dtb.o, $(dtb-y))
 
 # Force kbuild to make empty built-in.o if necessary
 obj-				+= dummy.o
-
-always				:= $(dtb-y)
diff --git a/arch/mips/boot/dts/img/Makefile b/arch/mips/boot/dts/img/Makefile
index 135f987..a46d773 100644
--- a/arch/mips/boot/dts/img/Makefile
+++ b/arch/mips/boot/dts/img/Makefile
@@ -5,5 +5,3 @@ obj-$(CONFIG_MACH_PISTACHIO)	+= pistachio_marduk.dtb.o
 
 # Force kbuild to make empty built-in.o if necessary
 obj-				+= dummy.o
-
-always				:= $(dtb-y)
diff --git a/arch/mips/boot/dts/ingenic/Makefile b/arch/mips/boot/dts/ingenic/Makefile
index e3d0ec1..ddd0faf 100644
--- a/arch/mips/boot/dts/ingenic/Makefile
+++ b/arch/mips/boot/dts/ingenic/Makefile
@@ -5,5 +5,3 @@ obj-y				+= $(patsubst %.dtb, %.dtb.o, $(dtb-y))
 
 # Force kbuild to make empty built-in.o if necessary
 obj-				+= dummy.o
-
-always				:= $(dtb-y)
diff --git a/arch/mips/boot/dts/lantiq/Makefile b/arch/mips/boot/dts/lantiq/Makefile
index 5976f08..586b1c9 100644
--- a/arch/mips/boot/dts/lantiq/Makefile
+++ b/arch/mips/boot/dts/lantiq/Makefile
@@ -4,5 +4,3 @@ obj-y				+= $(patsubst %.dtb, %.dtb.o, $(dtb-y))
 
 # Force kbuild to make empty built-in.o if necessary
 obj-				+= dummy.o
-
-always				:= $(dtb-y)
diff --git a/arch/mips/boot/dts/mti/Makefile b/arch/mips/boot/dts/mti/Makefile
index 9a1a6dc..faf7ac4 100644
--- a/arch/mips/boot/dts/mti/Makefile
+++ b/arch/mips/boot/dts/mti/Makefile
@@ -5,5 +5,3 @@ obj-y				+= $(patsubst %.dtb, %.dtb.o, $(dtb-y))
 
 # Force kbuild to make empty built-in.o if necessary
 obj-				+= dummy.o
-
-always				:= $(dtb-y)
diff --git a/arch/mips/boot/dts/netlogic/Makefile b/arch/mips/boot/dts/netlogic/Makefile
index 6b2cf49..77ffb30 100644
--- a/arch/mips/boot/dts/netlogic/Makefile
+++ b/arch/mips/boot/dts/netlogic/Makefile
@@ -8,5 +8,3 @@ obj-y				+= $(patsubst %.dtb, %.dtb.o, $(dtb-y))
 
 # Force kbuild to make empty built-in.o if necessary
 obj-				+= dummy.o
-
-always				:= $(dtb-y)
diff --git a/arch/mips/boot/dts/ni/Makefile b/arch/mips/boot/dts/ni/Makefile
index 094da72..6cd9c60 100644
--- a/arch/mips/boot/dts/ni/Makefile
+++ b/arch/mips/boot/dts/ni/Makefile
@@ -2,5 +2,3 @@ dtb-$(CONFIG_FIT_IMAGE_FDT_NI169445)	+= 169445.dtb
 
 # Force kbuild to make empty built-in.o if necessary
 obj-					+= dummy.o
-
-always					:= $(dtb-y)
diff --git a/arch/mips/boot/dts/pic32/Makefile b/arch/mips/boot/dts/pic32/Makefile
index 0ee591b..5a08e48 100644
--- a/arch/mips/boot/dts/pic32/Makefile
+++ b/arch/mips/boot/dts/pic32/Makefile
@@ -7,5 +7,3 @@ obj-y				+= $(patsubst %.dtb, %.dtb.o, $(dtb-y))
 
 # Force kbuild to make empty built-in.o if necessary
 obj-				+= dummy.o
-
-always				:= $(dtb-y)
diff --git a/arch/mips/boot/dts/qca/Makefile b/arch/mips/boot/dts/qca/Makefile
index 87cf351c..181db5d 100644
--- a/arch/mips/boot/dts/qca/Makefile
+++ b/arch/mips/boot/dts/qca/Makefile
@@ -7,5 +7,3 @@ dtb-$(CONFIG_ATH79)			+= ar9331_tl_mr3020.dtb
 
 # Force kbuild to make empty built-in.o if necessary
 obj-				+= dummy.o
-
-always				:= $(dtb-y)
diff --git a/arch/mips/boot/dts/ralink/Makefile b/arch/mips/boot/dts/ralink/Makefile
index e0e3a9d..7b64654 100644
--- a/arch/mips/boot/dts/ralink/Makefile
+++ b/arch/mips/boot/dts/ralink/Makefile
@@ -9,5 +9,3 @@ obj-y				+= $(patsubst %.dtb, %.dtb.o, $(dtb-y))
 
 # Force kbuild to make empty built-in.o if necessary
 obj-				+= dummy.o
-
-always				:= $(dtb-y)
diff --git a/arch/mips/boot/dts/xilfpga/Makefile b/arch/mips/boot/dts/xilfpga/Makefile
index 8b9ea11..77c8096 100644
--- a/arch/mips/boot/dts/xilfpga/Makefile
+++ b/arch/mips/boot/dts/xilfpga/Makefile
@@ -4,5 +4,3 @@ obj-y				+= $(patsubst %.dtb, %.dtb.o, $(dtb-y))
 
 # Force kbuild to make empty built-in.o if necessary
 obj-				+= dummy.o
-
-always				:= $(dtb-y)
diff --git a/arch/xtensa/boot/dts/Makefile b/arch/xtensa/boot/dts/Makefile
index c62dd6c..f8052ba 100644
--- a/arch/xtensa/boot/dts/Makefile
+++ b/arch/xtensa/boot/dts/Makefile
@@ -12,7 +12,6 @@ ifneq ($(CONFIG_BUILTIN_DTB),"")
 obj-$(CONFIG_OF) += $(BUILTIN_DTB)
 endif
 
-dtstree := $(srctree)/$(src)
-dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
-
-always += $(dtb-y)
+# for CONFIG_OF_ALL_DTBS test
+dtstree	:= $(srctree)/$(src)
+dtb-	:= $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
diff --git a/scripts/Makefile.dtbinst b/scripts/Makefile.dtbinst
index 993fb85..8e8fdfd 100644
--- a/scripts/Makefile.dtbinst
+++ b/scripts/Makefile.dtbinst
@@ -5,8 +5,6 @@
 # INSTALL_DTBS_PATH directory or the default location:
 #
 #   $INSTALL_PATH/dtbs/$KERNELRELEASE
-#
-# Traverse through subdirectories listed in $(dts-dirs).
 # ==========================================================================
 
 src := $(obj)
@@ -20,8 +18,8 @@ include include/config/auto.conf
 include scripts/Kbuild.include
 include $(src)/Makefile
 
-dtbinst-files	:= $(dtb-y)
-dtbinst-dirs	:= $(dts-dirs)
+dtbinst-files	:= $(sort $(dtb-y) $(if $(CONFIG_OF_ALL_DTBS), $(dtb-)))
+dtbinst-dirs	:= $(subdir-y) $(subdir-m)
 
 # Helper targets for Installing DTBs into the boot directory
 quiet_cmd_dtb_install =	INSTALL $<
diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
index 5e975fe..09ec69d2 100644
--- a/scripts/Makefile.lib
+++ b/scripts/Makefile.lib
@@ -69,6 +69,11 @@ obj-dirs := $(dir $(multi-objs) $(obj-y))
 real-objs-y := $(foreach m, $(filter-out $(subdir-obj-y), $(obj-y)), $(if $(strip $($(m:.o=-objs)) $($(m:.o=-y))),$($(m:.o=-objs)) $($(m:.o=-y)),$(m))) $(extra-y)
 real-objs-m := $(foreach m, $(obj-m), $(if $(strip $($(m:.o=-objs)) $($(m:.o=-y)) $($(m:.o=-m))),$($(m:.o=-objs)) $($(m:.o=-y)) $($(m:.o=-m)),$(m)))
 
+# DTB
+# If CONFIG_OF_ALL_DTBS is enabled, all DT blobs are built
+extra-y				+= $(dtb-y)
+extra-$(CONFIG_OF_ALL_DTBS)	+= $(dtb-)
+
 # Add subdir path
 
 extra-y		:= $(addprefix $(obj)/,$(extra-y))
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* [PATCH 2/2] kbuild: handle dtb-y and CONFIG_OF_ALL_DTBS natively in Makefile.lib
@ 2017-11-05  5:30   ` Masahiro Yamada
  0 siblings, 0 replies; 44+ messages in thread
From: Masahiro Yamada @ 2017-11-05  5:30 UTC (permalink / raw)
  To: linux-arm-kernel

If CONFIG_OF_ALL_DTBS is enabled, "make ARCH=arm64 dtbs" compiles each
DTB twice; one from arch/arm64/boot/dts/*/Makefile and the other from
the dtb-$(CONFIG_OF_ALL_DTBS) line in arch/arm64/boot/dts/Makefile.
It could be a race problem when building DTBS in parallel.

Another minor issue is CONFIG_OF_ALL_DTBS covers only *.dts in vendor
sub-directories, so this broke when Broadcom added one more hierarchy
in arch/arm64/boot/dts/broadcom/<soc>/.

One idea to fix the issues in a clean way is to move DTB handling
to Kbuild core scripts.  Makefile.dtbinst already recognizes dtb-y
natively, so it should not hurt to do so.

Add $(dtb-y) to extra-y, and $(dtb-) as well if CONFIG_OF_ALL_DTBS is
enabled.  All clutter things in Makefiles go away.

As a bonus clean-up, I also removed dts-dirs.  Just use subdir-y
directly to traverse sub-directories.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
---

 arch/arc/boot/dts/Makefile                       |  7 ++-
 arch/arm/boot/dts/Makefile                       |  5 --
 arch/arm64/boot/dts/Makefile                     | 58 ++++++++++--------------
 arch/arm64/boot/dts/actions/Makefile             |  3 --
 arch/arm64/boot/dts/al/Makefile                  |  3 --
 arch/arm64/boot/dts/allwinner/Makefile           |  3 --
 arch/arm64/boot/dts/altera/Makefile              |  3 --
 arch/arm64/boot/dts/amd/Makefile                 |  3 --
 arch/arm64/boot/dts/amlogic/Makefile             |  3 --
 arch/arm64/boot/dts/apm/Makefile                 |  3 --
 arch/arm64/boot/dts/arm/Makefile                 |  3 --
 arch/arm64/boot/dts/broadcom/Makefile            |  6 +--
 arch/arm64/boot/dts/broadcom/northstar2/Makefile |  3 --
 arch/arm64/boot/dts/broadcom/stingray/Makefile   |  3 --
 arch/arm64/boot/dts/cavium/Makefile              |  3 --
 arch/arm64/boot/dts/exynos/Makefile              |  3 --
 arch/arm64/boot/dts/freescale/Makefile           |  3 --
 arch/arm64/boot/dts/hisilicon/Makefile           |  3 --
 arch/arm64/boot/dts/lg/Makefile                  |  3 --
 arch/arm64/boot/dts/marvell/Makefile             |  3 --
 arch/arm64/boot/dts/mediatek/Makefile            |  3 --
 arch/arm64/boot/dts/nvidia/Makefile              |  2 -
 arch/arm64/boot/dts/qcom/Makefile                |  3 --
 arch/arm64/boot/dts/realtek/Makefile             |  3 --
 arch/arm64/boot/dts/renesas/Makefile             |  2 -
 arch/arm64/boot/dts/rockchip/Makefile            |  3 --
 arch/arm64/boot/dts/socionext/Makefile           |  2 -
 arch/arm64/boot/dts/sprd/Makefile                |  3 --
 arch/arm64/boot/dts/xilinx/Makefile              |  3 --
 arch/arm64/boot/dts/zte/Makefile                 |  3 --
 arch/h8300/boot/dts/Makefile                     |  5 --
 arch/metag/boot/dts/Makefile                     |  5 --
 arch/mips/boot/dts/Makefile                      | 32 ++++++-------
 arch/mips/boot/dts/brcm/Makefile                 |  2 -
 arch/mips/boot/dts/cavium-octeon/Makefile        |  2 -
 arch/mips/boot/dts/img/Makefile                  |  2 -
 arch/mips/boot/dts/ingenic/Makefile              |  2 -
 arch/mips/boot/dts/lantiq/Makefile               |  2 -
 arch/mips/boot/dts/mti/Makefile                  |  2 -
 arch/mips/boot/dts/netlogic/Makefile             |  2 -
 arch/mips/boot/dts/ni/Makefile                   |  2 -
 arch/mips/boot/dts/pic32/Makefile                |  2 -
 arch/mips/boot/dts/qca/Makefile                  |  2 -
 arch/mips/boot/dts/ralink/Makefile               |  2 -
 arch/mips/boot/dts/xilfpga/Makefile              |  2 -
 arch/xtensa/boot/dts/Makefile                    |  7 ++-
 scripts/Makefile.dtbinst                         |  6 +--
 scripts/Makefile.lib                             |  5 ++
 48 files changed, 53 insertions(+), 182 deletions(-)

diff --git a/arch/arc/boot/dts/Makefile b/arch/arc/boot/dts/Makefile
index 1257db1..9ece28b 100644
--- a/arch/arc/boot/dts/Makefile
+++ b/arch/arc/boot/dts/Makefile
@@ -10,7 +10,6 @@ dtb-y := $(builtindtb-y).dtb
 
 .SECONDARY: $(obj)/$(builtindtb-y).dtb.S
 
-dtstree		:= $(srctree)/$(src)
-dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
-
-always := $(dtb-y)
+# for CONFIG_OF_ALL_DTBS test
+dtstree	:= $(srctree)/$(src)
+dtb-	:= $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 5eeefbc..4b650d6 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -1069,8 +1069,3 @@ dtb-$(CONFIG_ARCH_ASPEED) += aspeed-bmc-opp-palmetto.dtb \
 	aspeed-bmc-opp-romulus.dtb \
 	aspeed-ast2500-evb.dtb
 endif
-
-dtstree		:= $(srctree)/$(src)
-dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
-
-always		:= $(dtb-y)
diff --git a/arch/arm64/boot/dts/Makefile b/arch/arm64/boot/dts/Makefile
index 8e19512..a7ecb42 100644
--- a/arch/arm64/boot/dts/Makefile
+++ b/arch/arm64/boot/dts/Makefile
@@ -1,33 +1,25 @@
-dts-dirs += actions
-dts-dirs += al
-dts-dirs += allwinner
-dts-dirs += altera
-dts-dirs += amd
-dts-dirs += amlogic
-dts-dirs += apm
-dts-dirs += arm
-dts-dirs += broadcom
-dts-dirs += cavium
-dts-dirs += exynos
-dts-dirs += freescale
-dts-dirs += hisilicon
-dts-dirs += marvell
-dts-dirs += mediatek
-dts-dirs += nvidia
-dts-dirs += qcom
-dts-dirs += realtek
-dts-dirs += renesas
-dts-dirs += rockchip
-dts-dirs += socionext
-dts-dirs += sprd
-dts-dirs += xilinx
-dts-dirs += lg
-dts-dirs += zte
-
-subdir-y	:= $(dts-dirs)
-
-dtstree		:= $(srctree)/$(src)
-
-dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(foreach d,$(dts-dirs), $(wildcard $(dtstree)/$(d)/*.dts)))
-
-always		:= $(dtb-y)
+subdir-y += actions
+subdir-y += al
+subdir-y += allwinner
+subdir-y += altera
+subdir-y += amd
+subdir-y += amlogic
+subdir-y += apm
+subdir-y += arm
+subdir-y += broadcom
+subdir-y += cavium
+subdir-y += exynos
+subdir-y += freescale
+subdir-y += hisilicon
+subdir-y += marvell
+subdir-y += mediatek
+subdir-y += nvidia
+subdir-y += qcom
+subdir-y += realtek
+subdir-y += renesas
+subdir-y += rockchip
+subdir-y += socionext
+subdir-y += sprd
+subdir-y += xilinx
+subdir-y += lg
+subdir-y += zte
diff --git a/arch/arm64/boot/dts/actions/Makefile b/arch/arm64/boot/dts/actions/Makefile
index 89bb1b5..cc46612 100644
--- a/arch/arm64/boot/dts/actions/Makefile
+++ b/arch/arm64/boot/dts/actions/Makefile
@@ -1,4 +1 @@
 dtb-$(CONFIG_ARCH_ACTIONS) += s900-bubblegum-96.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/al/Makefile b/arch/arm64/boot/dts/al/Makefile
index 8606a57..036e387 100644
--- a/arch/arm64/boot/dts/al/Makefile
+++ b/arch/arm64/boot/dts/al/Makefile
@@ -1,4 +1 @@
 dtb-$(CONFIG_ARCH_ALPINE)	+= alpine-v2-evp.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile
index 871ed768..4dab590 100644
--- a/arch/arm64/boot/dts/allwinner/Makefile
+++ b/arch/arm64/boot/dts/allwinner/Makefile
@@ -8,6 +8,3 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-orangepi-pc2.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-orangepi-prime.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-orangepi-zero-plus2.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-nanopi-neo2.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/altera/Makefile b/arch/arm64/boot/dts/altera/Makefile
index 7511b51..68ba088 100644
--- a/arch/arm64/boot/dts/altera/Makefile
+++ b/arch/arm64/boot/dts/altera/Makefile
@@ -1,4 +1 @@
 dtb-$(CONFIG_ARCH_STRATIX10) += socfpga_stratix10_socdk.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/amd/Makefile b/arch/arm64/boot/dts/amd/Makefile
index cb1c779..465cea6 100644
--- a/arch/arm64/boot/dts/amd/Makefile
+++ b/arch/arm64/boot/dts/amd/Makefile
@@ -1,6 +1,3 @@
 dtb-$(CONFIG_ARCH_SEATTLE) += amd-overdrive.dtb \
 			amd-overdrive-rev-b0.dtb amd-overdrive-rev-b1.dtb \
 			husky.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile
index d864403..4eb8f82 100644
--- a/arch/arm64/boot/dts/amlogic/Makefile
+++ b/arch/arm64/boot/dts/amlogic/Makefile
@@ -19,6 +19,3 @@ dtb-$(CONFIG_ARCH_MESON) += meson-gxm-nexbox-a1.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxm-q200.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxm-q201.dtb
 dtb-$(CONFIG_ARCH_MESON) += meson-gxm-rbox-pro.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/apm/Makefile b/arch/arm64/boot/dts/apm/Makefile
index 4334978..b96cd38 100644
--- a/arch/arm64/boot/dts/apm/Makefile
+++ b/arch/arm64/boot/dts/apm/Makefile
@@ -1,5 +1,2 @@
 dtb-$(CONFIG_ARCH_XGENE) += apm-mustang.dtb
 dtb-$(CONFIG_ARCH_XGENE) += apm-merlin.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/arm/Makefile b/arch/arm64/boot/dts/arm/Makefile
index 01c342f..7ca6a6e 100644
--- a/arch/arm64/boot/dts/arm/Makefile
+++ b/arch/arm64/boot/dts/arm/Makefile
@@ -2,6 +2,3 @@ dtb-$(CONFIG_ARCH_VEXPRESS) += foundation-v8.dtb foundation-v8-gicv3.dtb
 dtb-$(CONFIG_ARCH_VEXPRESS) += juno.dtb juno-r1.dtb juno-r2.dtb
 dtb-$(CONFIG_ARCH_VEXPRESS) += rtsm_ve-aemv8a.dtb
 dtb-$(CONFIG_ARCH_VEXPRESS) += vexpress-v2f-1xv7-ca53x2.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/broadcom/Makefile b/arch/arm64/boot/dts/broadcom/Makefile
index d720d0d..da268c6 100644
--- a/arch/arm64/boot/dts/broadcom/Makefile
+++ b/arch/arm64/boot/dts/broadcom/Makefile
@@ -1,6 +1,4 @@
 dtb-$(CONFIG_ARCH_BCM2835) += bcm2837-rpi-3-b.dtb
 
-dts-dirs	+= northstar2
-dts-dirs	+= stingray
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
+subdir-y	+= northstar2
+subdir-y	+= stingray
diff --git a/arch/arm64/boot/dts/broadcom/northstar2/Makefile b/arch/arm64/boot/dts/broadcom/northstar2/Makefile
index c589b9b..8373600 100644
--- a/arch/arm64/boot/dts/broadcom/northstar2/Makefile
+++ b/arch/arm64/boot/dts/broadcom/northstar2/Makefile
@@ -1,5 +1,2 @@
 dtb-$(CONFIG_ARCH_BCM_IPROC) += ns2-svk.dtb
 dtb-$(CONFIG_ARCH_BCM_IPROC) += ns2-xmc.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/broadcom/stingray/Makefile b/arch/arm64/boot/dts/broadcom/stingray/Makefile
index 8edcc52..ea5516b 100644
--- a/arch/arm64/boot/dts/broadcom/stingray/Makefile
+++ b/arch/arm64/boot/dts/broadcom/stingray/Makefile
@@ -1,5 +1,2 @@
 dtb-$(CONFIG_ARCH_BCM_IPROC) += bcm958742k.dtb
 dtb-$(CONFIG_ARCH_BCM_IPROC) += bcm958742t.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/cavium/Makefile b/arch/arm64/boot/dts/cavium/Makefile
index c63145e..f7c0ca8 100644
--- a/arch/arm64/boot/dts/cavium/Makefile
+++ b/arch/arm64/boot/dts/cavium/Makefile
@@ -1,5 +1,2 @@
 dtb-$(CONFIG_ARCH_THUNDER) += thunder-88xx.dtb
 dtb-$(CONFIG_ARCH_THUNDER2) += thunder2-99xx.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/exynos/Makefile b/arch/arm64/boot/dts/exynos/Makefile
index 4633adf..14031e1 100644
--- a/arch/arm64/boot/dts/exynos/Makefile
+++ b/arch/arm64/boot/dts/exynos/Makefile
@@ -2,6 +2,3 @@ dtb-$(CONFIG_ARCH_EXYNOS) += \
 	exynos5433-tm2.dtb	\
 	exynos5433-tm2e.dtb	\
 	exynos7-espresso.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile
index fe18e3d..f1b5363 100644
--- a/arch/arm64/boot/dts/freescale/Makefile
+++ b/arch/arm64/boot/dts/freescale/Makefile
@@ -12,6 +12,3 @@ dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls2080a-rdb.dtb
 dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls2080a-simu.dtb
 dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls2088a-qds.dtb
 dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls2088a-rdb.dtb
- 
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/hisilicon/Makefile b/arch/arm64/boot/dts/hisilicon/Makefile
index cb25d7a..942c9ab 100644
--- a/arch/arm64/boot/dts/hisilicon/Makefile
+++ b/arch/arm64/boot/dts/hisilicon/Makefile
@@ -4,6 +4,3 @@ dtb-$(CONFIG_ARCH_HISI) += hi6220-hikey.dtb
 dtb-$(CONFIG_ARCH_HISI) += hip05-d02.dtb
 dtb-$(CONFIG_ARCH_HISI) += hip06-d03.dtb
 dtb-$(CONFIG_ARCH_HISI) += hip07-d05.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/lg/Makefile b/arch/arm64/boot/dts/lg/Makefile
index c0bbe06..de5dc19 100644
--- a/arch/arm64/boot/dts/lg/Makefile
+++ b/arch/arm64/boot/dts/lg/Makefile
@@ -1,5 +1,2 @@
 dtb-$(CONFIG_ARCH_LG1K) += lg1312-ref.dtb
 dtb-$(CONFIG_ARCH_LG1K) += lg1313-ref.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/marvell/Makefile b/arch/arm64/boot/dts/marvell/Makefile
index b471235..7a42e0d 100644
--- a/arch/arm64/boot/dts/marvell/Makefile
+++ b/arch/arm64/boot/dts/marvell/Makefile
@@ -9,6 +9,3 @@ dtb-$(CONFIG_ARCH_MVEBU) += armada-7040-db.dtb
 dtb-$(CONFIG_ARCH_MVEBU) += armada-8040-db.dtb
 dtb-$(CONFIG_ARCH_MVEBU) += armada-8040-mcbin.dtb
 dtb-$(CONFIG_ARCH_MVEBU) += armada-8080-db.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/mediatek/Makefile b/arch/arm64/boot/dts/mediatek/Makefile
index 80d1743..f225012 100644
--- a/arch/arm64/boot/dts/mediatek/Makefile
+++ b/arch/arm64/boot/dts/mediatek/Makefile
@@ -4,6 +4,3 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += mt6795-evb.dtb
 dtb-$(CONFIG_ARCH_MEDIATEK) += mt6797-evb.dtb
 dtb-$(CONFIG_ARCH_MEDIATEK) += mt7622-rfb1.dtb
 dtb-$(CONFIG_ARCH_MEDIATEK) += mt8173-evb.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/nvidia/Makefile b/arch/arm64/boot/dts/nvidia/Makefile
index a9d5196..1b69cfd 100644
--- a/arch/arm64/boot/dts/nvidia/Makefile
+++ b/arch/arm64/boot/dts/nvidia/Makefile
@@ -4,5 +4,3 @@ dtb-$(CONFIG_ARCH_TEGRA_210_SOC) += tegra210-p2371-2180.dtb
 dtb-$(CONFIG_ARCH_TEGRA_210_SOC) += tegra210-p2571.dtb
 dtb-$(CONFIG_ARCH_TEGRA_210_SOC) += tegra210-smaug.dtb
 dtb-$(CONFIG_ARCH_TEGRA_186_SOC) += tegra186-p2771-0000.dtb
-
-always		:= $(dtb-y)
diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile
index 65af6f9..7a65ef1 100644
--- a/arch/arm64/boot/dts/qcom/Makefile
+++ b/arch/arm64/boot/dts/qcom/Makefile
@@ -5,6 +5,3 @@ dtb-$(CONFIG_ARCH_QCOM)	+= msm8916-mtp.dtb
 dtb-$(CONFIG_ARCH_QCOM)	+= msm8992-bullhead-rev-101.dtb
 dtb-$(CONFIG_ARCH_QCOM)	+= msm8994-angler-rev-101.dtb
 dtb-$(CONFIG_ARCH_QCOM)	+= msm8996-mtp.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/realtek/Makefile b/arch/arm64/boot/dts/realtek/Makefile
index 88cb515..6e2ae59 100644
--- a/arch/arm64/boot/dts/realtek/Makefile
+++ b/arch/arm64/boot/dts/realtek/Makefile
@@ -1,4 +1 @@
 dtb-$(CONFIG_ARCH_REALTEK) += rtd1295-zidoo-x9s.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/renesas/Makefile b/arch/arm64/boot/dts/renesas/Makefile
index 960dade..5e0bb28 100644
--- a/arch/arm64/boot/dts/renesas/Makefile
+++ b/arch/arm64/boot/dts/renesas/Makefile
@@ -3,5 +3,3 @@ dtb-$(CONFIG_ARCH_R8A7795) += r8a7795-salvator-xs.dtb
 dtb-$(CONFIG_ARCH_R8A7795) += r8a7795-es1-salvator-x.dtb r8a7795-es1-h3ulcb.dtb
 dtb-$(CONFIG_ARCH_R8A7796) += r8a7796-salvator-x.dtb r8a7796-m3ulcb.dtb
 dtb-$(CONFIG_ARCH_R8A77995) += r8a77995-draak.dtb
-
-always		:= $(dtb-y)
diff --git a/arch/arm64/boot/dts/rockchip/Makefile b/arch/arm64/boot/dts/rockchip/Makefile
index 6b6bb1d..573a041 100644
--- a/arch/arm64/boot/dts/rockchip/Makefile
+++ b/arch/arm64/boot/dts/rockchip/Makefile
@@ -10,6 +10,3 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-firefly.dtb
 dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-gru-kevin.dtb
 dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-puma-haikou.dtb
 dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-sapphire-excavator.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/socionext/Makefile b/arch/arm64/boot/dts/socionext/Makefile
index 5eed3ce..a042316 100644
--- a/arch/arm64/boot/dts/socionext/Makefile
+++ b/arch/arm64/boot/dts/socionext/Makefile
@@ -4,5 +4,3 @@ dtb-$(CONFIG_ARCH_UNIPHIER) += \
 	uniphier-ld20-global.dtb \
 	uniphier-ld20-ref.dtb \
 	uniphier-pxs3-ref.dtb
-
-always		:= $(dtb-y)
diff --git a/arch/arm64/boot/dts/sprd/Makefile b/arch/arm64/boot/dts/sprd/Makefile
index c91b62e..38cefdb 100644
--- a/arch/arm64/boot/dts/sprd/Makefile
+++ b/arch/arm64/boot/dts/sprd/Makefile
@@ -1,5 +1,2 @@
 dtb-$(CONFIG_ARCH_SPRD) += sc9836-openphone.dtb \
 			sp9860g-1h10.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/xilinx/Makefile b/arch/arm64/boot/dts/xilinx/Makefile
index 74e1956..a2d6708 100644
--- a/arch/arm64/boot/dts/xilinx/Makefile
+++ b/arch/arm64/boot/dts/xilinx/Makefile
@@ -1,4 +1 @@
 dtb-$(CONFIG_ARCH_ZYNQMP) += zynqmp-ep108.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/arm64/boot/dts/zte/Makefile b/arch/arm64/boot/dts/zte/Makefile
index 71e0708..14a1cdf 100644
--- a/arch/arm64/boot/dts/zte/Makefile
+++ b/arch/arm64/boot/dts/zte/Makefile
@@ -1,5 +1,2 @@
 dtb-$(CONFIG_ARCH_ZX) += zx296718-evb.dtb
 dtb-$(CONFIG_ARCH_ZX) += zx296718-pcbox.dtb
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
diff --git a/arch/h8300/boot/dts/Makefile b/arch/h8300/boot/dts/Makefile
index 6f3fe47..ae31884 100644
--- a/arch/h8300/boot/dts/Makefile
+++ b/arch/h8300/boot/dts/Makefile
@@ -7,8 +7,3 @@ obj-y += $(BUILTIN_DTB)
 dtb-$(CONFIG_H8300H_SIM) := h8300h_sim.dtb
 dtb-$(CONFIG_H8S_SIM) := h8s_sim.dtb
 dtb-$(CONFIG_H8S_EDOSK2674) := edosk2674.dtb
-
-dtstree		:= $(srctree)/$(src)
-dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
-
-always	    := $(dtb-y)
diff --git a/arch/metag/boot/dts/Makefile b/arch/metag/boot/dts/Makefile
index 83d5b88..0060147 100644
--- a/arch/metag/boot/dts/Makefile
+++ b/arch/metag/boot/dts/Makefile
@@ -12,9 +12,4 @@ endif
 dtb-$(CONFIG_METAG_BUILTIN_DTB)	+= $(builtindtb-y).dtb
 obj-$(CONFIG_METAG_BUILTIN_DTB)	+= $(builtindtb-y).dtb.o
 
-dtstree		:= $(srctree)/$(src)
-dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
-
 .SECONDARY: $(obj)/$(builtindtb-y).dtb.S
-
-always += $(dtb-y)
diff --git a/arch/mips/boot/dts/Makefile b/arch/mips/boot/dts/Makefile
index 7891ffa..b2b0d88 100644
--- a/arch/mips/boot/dts/Makefile
+++ b/arch/mips/boot/dts/Makefile
@@ -1,20 +1,14 @@
-dts-dirs	+= brcm
-dts-dirs	+= cavium-octeon
-dts-dirs	+= img
-dts-dirs	+= ingenic
-dts-dirs	+= lantiq
-dts-dirs	+= mti
-dts-dirs	+= netlogic
-dts-dirs	+= ni
-dts-dirs	+= pic32
-dts-dirs	+= qca
-dts-dirs	+= ralink
-dts-dirs	+= xilfpga
+subdir-y	+= brcm
+subdir-y	+= cavium-octeon
+subdir-y	+= img
+subdir-y	+= ingenic
+subdir-y	+= lantiq
+subdir-y	+= mti
+subdir-y	+= netlogic
+subdir-y	+= ni
+subdir-y	+= pic32
+subdir-y	+= qca
+subdir-y	+= ralink
+subdir-y	+= xilfpga
 
-obj-y		:= $(addsuffix /, $(dts-dirs))
-
-dtstree		:= $(srctree)/$(src)
-dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(foreach d,$(dts-dirs), $(wildcard $(dtstree)/$(d)/*.dts)))
-
-always		:= $(dtb-y)
-subdir-y	:= $(dts-dirs)
+obj-$(BUILTIN_DTB)	:= $(addsuffix /, $(subdir-y))
diff --git a/arch/mips/boot/dts/brcm/Makefile b/arch/mips/boot/dts/brcm/Makefile
index ad76130..bacb131 100644
--- a/arch/mips/boot/dts/brcm/Makefile
+++ b/arch/mips/boot/dts/brcm/Makefile
@@ -37,5 +37,3 @@ obj-y				+= $(patsubst %.dtb, %.dtb.o, $(dtb-y))
 
 # Force kbuild to make empty built-in.o if necessary
 obj-				+= dummy.o
-
-always				:= $(dtb-y)
diff --git a/arch/mips/boot/dts/cavium-octeon/Makefile b/arch/mips/boot/dts/cavium-octeon/Makefile
index a6fb331..e9592a9 100644
--- a/arch/mips/boot/dts/cavium-octeon/Makefile
+++ b/arch/mips/boot/dts/cavium-octeon/Makefile
@@ -4,5 +4,3 @@ obj-y				+= $(patsubst %.dtb, %.dtb.o, $(dtb-y))
 
 # Force kbuild to make empty built-in.o if necessary
 obj-				+= dummy.o
-
-always				:= $(dtb-y)
diff --git a/arch/mips/boot/dts/img/Makefile b/arch/mips/boot/dts/img/Makefile
index 135f987..a46d773 100644
--- a/arch/mips/boot/dts/img/Makefile
+++ b/arch/mips/boot/dts/img/Makefile
@@ -5,5 +5,3 @@ obj-$(CONFIG_MACH_PISTACHIO)	+= pistachio_marduk.dtb.o
 
 # Force kbuild to make empty built-in.o if necessary
 obj-				+= dummy.o
-
-always				:= $(dtb-y)
diff --git a/arch/mips/boot/dts/ingenic/Makefile b/arch/mips/boot/dts/ingenic/Makefile
index e3d0ec1..ddd0faf 100644
--- a/arch/mips/boot/dts/ingenic/Makefile
+++ b/arch/mips/boot/dts/ingenic/Makefile
@@ -5,5 +5,3 @@ obj-y				+= $(patsubst %.dtb, %.dtb.o, $(dtb-y))
 
 # Force kbuild to make empty built-in.o if necessary
 obj-				+= dummy.o
-
-always				:= $(dtb-y)
diff --git a/arch/mips/boot/dts/lantiq/Makefile b/arch/mips/boot/dts/lantiq/Makefile
index 5976f08..586b1c9 100644
--- a/arch/mips/boot/dts/lantiq/Makefile
+++ b/arch/mips/boot/dts/lantiq/Makefile
@@ -4,5 +4,3 @@ obj-y				+= $(patsubst %.dtb, %.dtb.o, $(dtb-y))
 
 # Force kbuild to make empty built-in.o if necessary
 obj-				+= dummy.o
-
-always				:= $(dtb-y)
diff --git a/arch/mips/boot/dts/mti/Makefile b/arch/mips/boot/dts/mti/Makefile
index 9a1a6dc..faf7ac4 100644
--- a/arch/mips/boot/dts/mti/Makefile
+++ b/arch/mips/boot/dts/mti/Makefile
@@ -5,5 +5,3 @@ obj-y				+= $(patsubst %.dtb, %.dtb.o, $(dtb-y))
 
 # Force kbuild to make empty built-in.o if necessary
 obj-				+= dummy.o
-
-always				:= $(dtb-y)
diff --git a/arch/mips/boot/dts/netlogic/Makefile b/arch/mips/boot/dts/netlogic/Makefile
index 6b2cf49..77ffb30 100644
--- a/arch/mips/boot/dts/netlogic/Makefile
+++ b/arch/mips/boot/dts/netlogic/Makefile
@@ -8,5 +8,3 @@ obj-y				+= $(patsubst %.dtb, %.dtb.o, $(dtb-y))
 
 # Force kbuild to make empty built-in.o if necessary
 obj-				+= dummy.o
-
-always				:= $(dtb-y)
diff --git a/arch/mips/boot/dts/ni/Makefile b/arch/mips/boot/dts/ni/Makefile
index 094da72..6cd9c60 100644
--- a/arch/mips/boot/dts/ni/Makefile
+++ b/arch/mips/boot/dts/ni/Makefile
@@ -2,5 +2,3 @@ dtb-$(CONFIG_FIT_IMAGE_FDT_NI169445)	+= 169445.dtb
 
 # Force kbuild to make empty built-in.o if necessary
 obj-					+= dummy.o
-
-always					:= $(dtb-y)
diff --git a/arch/mips/boot/dts/pic32/Makefile b/arch/mips/boot/dts/pic32/Makefile
index 0ee591b..5a08e48 100644
--- a/arch/mips/boot/dts/pic32/Makefile
+++ b/arch/mips/boot/dts/pic32/Makefile
@@ -7,5 +7,3 @@ obj-y				+= $(patsubst %.dtb, %.dtb.o, $(dtb-y))
 
 # Force kbuild to make empty built-in.o if necessary
 obj-				+= dummy.o
-
-always				:= $(dtb-y)
diff --git a/arch/mips/boot/dts/qca/Makefile b/arch/mips/boot/dts/qca/Makefile
index 87cf351c..181db5d 100644
--- a/arch/mips/boot/dts/qca/Makefile
+++ b/arch/mips/boot/dts/qca/Makefile
@@ -7,5 +7,3 @@ dtb-$(CONFIG_ATH79)			+= ar9331_tl_mr3020.dtb
 
 # Force kbuild to make empty built-in.o if necessary
 obj-				+= dummy.o
-
-always				:= $(dtb-y)
diff --git a/arch/mips/boot/dts/ralink/Makefile b/arch/mips/boot/dts/ralink/Makefile
index e0e3a9d..7b64654 100644
--- a/arch/mips/boot/dts/ralink/Makefile
+++ b/arch/mips/boot/dts/ralink/Makefile
@@ -9,5 +9,3 @@ obj-y				+= $(patsubst %.dtb, %.dtb.o, $(dtb-y))
 
 # Force kbuild to make empty built-in.o if necessary
 obj-				+= dummy.o
-
-always				:= $(dtb-y)
diff --git a/arch/mips/boot/dts/xilfpga/Makefile b/arch/mips/boot/dts/xilfpga/Makefile
index 8b9ea11..77c8096 100644
--- a/arch/mips/boot/dts/xilfpga/Makefile
+++ b/arch/mips/boot/dts/xilfpga/Makefile
@@ -4,5 +4,3 @@ obj-y				+= $(patsubst %.dtb, %.dtb.o, $(dtb-y))
 
 # Force kbuild to make empty built-in.o if necessary
 obj-				+= dummy.o
-
-always				:= $(dtb-y)
diff --git a/arch/xtensa/boot/dts/Makefile b/arch/xtensa/boot/dts/Makefile
index c62dd6c..f8052ba 100644
--- a/arch/xtensa/boot/dts/Makefile
+++ b/arch/xtensa/boot/dts/Makefile
@@ -12,7 +12,6 @@ ifneq ($(CONFIG_BUILTIN_DTB),"")
 obj-$(CONFIG_OF) += $(BUILTIN_DTB)
 endif
 
-dtstree := $(srctree)/$(src)
-dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
-
-always += $(dtb-y)
+# for CONFIG_OF_ALL_DTBS test
+dtstree	:= $(srctree)/$(src)
+dtb-	:= $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
diff --git a/scripts/Makefile.dtbinst b/scripts/Makefile.dtbinst
index 993fb85..8e8fdfd 100644
--- a/scripts/Makefile.dtbinst
+++ b/scripts/Makefile.dtbinst
@@ -5,8 +5,6 @@
 # INSTALL_DTBS_PATH directory or the default location:
 #
 #   $INSTALL_PATH/dtbs/$KERNELRELEASE
-#
-# Traverse through subdirectories listed in $(dts-dirs).
 # ==========================================================================
 
 src := $(obj)
@@ -20,8 +18,8 @@ include include/config/auto.conf
 include scripts/Kbuild.include
 include $(src)/Makefile
 
-dtbinst-files	:= $(dtb-y)
-dtbinst-dirs	:= $(dts-dirs)
+dtbinst-files	:= $(sort $(dtb-y) $(if $(CONFIG_OF_ALL_DTBS), $(dtb-)))
+dtbinst-dirs	:= $(subdir-y) $(subdir-m)
 
 # Helper targets for Installing DTBs into the boot directory
 quiet_cmd_dtb_install =	INSTALL $<
diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
index 5e975fe..09ec69d2 100644
--- a/scripts/Makefile.lib
+++ b/scripts/Makefile.lib
@@ -69,6 +69,11 @@ obj-dirs := $(dir $(multi-objs) $(obj-y))
 real-objs-y := $(foreach m, $(filter-out $(subdir-obj-y), $(obj-y)), $(if $(strip $($(m:.o=-objs)) $($(m:.o=-y))),$($(m:.o=-objs)) $($(m:.o=-y)),$(m))) $(extra-y)
 real-objs-m := $(foreach m, $(obj-m), $(if $(strip $($(m:.o=-objs)) $($(m:.o=-y)) $($(m:.o=-m))),$($(m:.o=-objs)) $($(m:.o=-y)) $($(m:.o=-m)),$(m)))
 
+# DTB
+# If CONFIG_OF_ALL_DTBS is enabled, all DT blobs are built
+extra-y				+= $(dtb-y)
+extra-$(CONFIG_OF_ALL_DTBS)	+= $(dtb-)
+
 # Add subdir path
 
 extra-y		:= $(addprefix $(obj)/,$(extra-y))
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 44+ messages in thread

* Re: [PATCH 2/2] kbuild: handle dtb-y and CONFIG_OF_ALL_DTBS natively in Makefile.lib
  2017-11-05  5:30   ` Masahiro Yamada
@ 2017-11-05  8:39     ` Sam Ravnborg
  -1 siblings, 0 replies; 44+ messages in thread
From: Sam Ravnborg @ 2017-11-05  8:39 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: Rob Herring, devicetree, linux-kbuild, Mark Rutland,
	Pantelis Antoniou, linux-arm-kernel, Arnd Bergmann, linux-kernel,
	Michal Marek

Hi Masahiro

Nice cleanup - looks good.

> --- a/arch/mips/boot/dts/brcm/Makefile
> +++ b/arch/mips/boot/dts/brcm/Makefile
> @@ -37,5 +37,3 @@ obj-y				+= $(patsubst %.dtb, %.dtb.o, $(dtb-y))
>  
>  # Force kbuild to make empty built-in.o if necessary
>  obj-				+= dummy.o

I noticed a few of these dummy.o in the patched files.
Looks like another candidate for cleaning up - in a separate patch.

	Sam

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [PATCH 2/2] kbuild: handle dtb-y and CONFIG_OF_ALL_DTBS natively in Makefile.lib
@ 2017-11-05  8:39     ` Sam Ravnborg
  0 siblings, 0 replies; 44+ messages in thread
From: Sam Ravnborg @ 2017-11-05  8:39 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Masahiro

Nice cleanup - looks good.

> --- a/arch/mips/boot/dts/brcm/Makefile
> +++ b/arch/mips/boot/dts/brcm/Makefile
> @@ -37,5 +37,3 @@ obj-y				+= $(patsubst %.dtb, %.dtb.o, $(dtb-y))
>  
>  # Force kbuild to make empty built-in.o if necessary
>  obj-				+= dummy.o

I noticed a few of these dummy.o in the patched files.
Looks like another candidate for cleaning up - in a separate patch.

	Sam

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: [PATCH 2/2] kbuild: handle dtb-y and CONFIG_OF_ALL_DTBS natively in Makefile.lib
  2017-11-05  5:30   ` Masahiro Yamada
  (?)
@ 2017-11-05 13:49     ` Arnd Bergmann
  -1 siblings, 0 replies; 44+ messages in thread
From: Arnd Bergmann @ 2017-11-05 13:49 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: Rob Herring, DTML, Linux Kbuild mailing list, Mark Rutland,
	Pantelis Antoniou, Linux ARM, Linux Kernel Mailing List,
	Michal Marek, Sam Ravnborg

On Sun, Nov 5, 2017 at 6:30 AM, Masahiro Yamada
<yamada.masahiro@socionext.com> wrote:
> If CONFIG_OF_ALL_DTBS is enabled, "make ARCH=arm64 dtbs" compiles each
> DTB twice; one from arch/arm64/boot/dts/*/Makefile and the other from
> the dtb-$(CONFIG_OF_ALL_DTBS) line in arch/arm64/boot/dts/Makefile.
> It could be a race problem when building DTBS in parallel.
>
> Another minor issue is CONFIG_OF_ALL_DTBS covers only *.dts in vendor
> sub-directories, so this broke when Broadcom added one more hierarchy
> in arch/arm64/boot/dts/broadcom/<soc>/.
>
> One idea to fix the issues in a clean way is to move DTB handling
> to Kbuild core scripts.  Makefile.dtbinst already recognizes dtb-y
> natively, so it should not hurt to do so.
>
> Add $(dtb-y) to extra-y, and $(dtb-) as well if CONFIG_OF_ALL_DTBS is
> enabled.  All clutter things in Makefiles go away.
>
> As a bonus clean-up, I also removed dts-dirs.  Just use subdir-y
> directly to traverse sub-directories.
>
> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>

Nice, that's much better than the hack I had.

Acked-by: Arnd Bergmann <arnd@arndb.de>

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: [PATCH 2/2] kbuild: handle dtb-y and CONFIG_OF_ALL_DTBS natively in Makefile.lib
@ 2017-11-05 13:49     ` Arnd Bergmann
  0 siblings, 0 replies; 44+ messages in thread
From: Arnd Bergmann @ 2017-11-05 13:49 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: Mark Rutland, DTML, Michal Marek, Linux Kbuild mailing list,
	Pantelis Antoniou, Linux Kernel Mailing List, Rob Herring,
	Sam Ravnborg, Linux ARM

On Sun, Nov 5, 2017 at 6:30 AM, Masahiro Yamada
<yamada.masahiro@socionext.com> wrote:
> If CONFIG_OF_ALL_DTBS is enabled, "make ARCH=arm64 dtbs" compiles each
> DTB twice; one from arch/arm64/boot/dts/*/Makefile and the other from
> the dtb-$(CONFIG_OF_ALL_DTBS) line in arch/arm64/boot/dts/Makefile.
> It could be a race problem when building DTBS in parallel.
>
> Another minor issue is CONFIG_OF_ALL_DTBS covers only *.dts in vendor
> sub-directories, so this broke when Broadcom added one more hierarchy
> in arch/arm64/boot/dts/broadcom/<soc>/.
>
> One idea to fix the issues in a clean way is to move DTB handling
> to Kbuild core scripts.  Makefile.dtbinst already recognizes dtb-y
> natively, so it should not hurt to do so.
>
> Add $(dtb-y) to extra-y, and $(dtb-) as well if CONFIG_OF_ALL_DTBS is
> enabled.  All clutter things in Makefiles go away.
>
> As a bonus clean-up, I also removed dts-dirs.  Just use subdir-y
> directly to traverse sub-directories.
>
> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>

Nice, that's much better than the hack I had.

Acked-by: Arnd Bergmann <arnd@arndb.de>

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [PATCH 2/2] kbuild: handle dtb-y and CONFIG_OF_ALL_DTBS natively in Makefile.lib
@ 2017-11-05 13:49     ` Arnd Bergmann
  0 siblings, 0 replies; 44+ messages in thread
From: Arnd Bergmann @ 2017-11-05 13:49 UTC (permalink / raw)
  To: linux-arm-kernel

On Sun, Nov 5, 2017 at 6:30 AM, Masahiro Yamada
<yamada.masahiro@socionext.com> wrote:
> If CONFIG_OF_ALL_DTBS is enabled, "make ARCH=arm64 dtbs" compiles each
> DTB twice; one from arch/arm64/boot/dts/*/Makefile and the other from
> the dtb-$(CONFIG_OF_ALL_DTBS) line in arch/arm64/boot/dts/Makefile.
> It could be a race problem when building DTBS in parallel.
>
> Another minor issue is CONFIG_OF_ALL_DTBS covers only *.dts in vendor
> sub-directories, so this broke when Broadcom added one more hierarchy
> in arch/arm64/boot/dts/broadcom/<soc>/.
>
> One idea to fix the issues in a clean way is to move DTB handling
> to Kbuild core scripts.  Makefile.dtbinst already recognizes dtb-y
> natively, so it should not hurt to do so.
>
> Add $(dtb-y) to extra-y, and $(dtb-) as well if CONFIG_OF_ALL_DTBS is
> enabled.  All clutter things in Makefiles go away.
>
> As a bonus clean-up, I also removed dts-dirs.  Just use subdir-y
> directly to traverse sub-directories.
>
> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>

Nice, that's much better than the hack I had.

Acked-by: Arnd Bergmann <arnd@arndb.de>

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
  2017-11-05  5:30   ` Masahiro Yamada
@ 2017-11-05 14:11     ` Masahiro Yamada
  -1 siblings, 0 replies; 44+ messages in thread
From: Masahiro Yamada @ 2017-11-05 14:11 UTC (permalink / raw)
  To: Rob Herring, devicetree
  Cc: Linux Kbuild mailing list, Mark Rutland, Pantelis Antoniou,
	linux-arm-kernel, Arnd Bergmann, Linux Kernel Mailing List,
	Michal Marek, Sam Ravnborg, Masahiro Yamada, Ralf Baechle,
	linux-mips, Kevin Cernekee, Florian Fainelli

+CC Ralf Baechle <ralf@linux-mips.org>
+CC linux-mips@linux-mips.org
+CC Kevin Cernekee <cernekee@gmail.com>
+CC Florian Fainelli <f.fainelli@gmail.com>


I missed to CC MIPS maintainers.


2017-11-05 14:30 GMT+09:00 Masahiro Yamada <yamada.masahiro@socionext.com>:
> arch/mips/boot/dts/brcm/bcm96358nb4ser.dts does not exist, so
> we cannot build bcm96358nb4ser.dtb .
>
> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
> ---
>
>  arch/mips/boot/dts/brcm/Makefile | 1 -
>  1 file changed, 1 deletion(-)
>
> diff --git a/arch/mips/boot/dts/brcm/Makefile b/arch/mips/boot/dts/brcm/Makefile
> index 69a69d1..ad76130 100644
> --- a/arch/mips/boot/dts/brcm/Makefile
> +++ b/arch/mips/boot/dts/brcm/Makefile
> @@ -22,7 +22,6 @@ dtb-$(CONFIG_DT_NONE) += \
>         bcm63268-comtrend-vr-3032u.dtb \
>         bcm93384wvg.dtb \
>         bcm93384wvg_viper.dtb \
> -       bcm96358nb4ser.dtb \
>         bcm96368mvwg.dtb \
>         bcm9ejtagprb.dtb \
>         bcm97125cbmb.dtb \
> --
> 2.7.4
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html



-- 
Best Regards
Masahiro Yamada

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
@ 2017-11-05 14:11     ` Masahiro Yamada
  0 siblings, 0 replies; 44+ messages in thread
From: Masahiro Yamada @ 2017-11-05 14:11 UTC (permalink / raw)
  To: linux-arm-kernel

+CC Ralf Baechle <ralf@linux-mips.org>
+CC linux-mips at linux-mips.org
+CC Kevin Cernekee <cernekee@gmail.com>
+CC Florian Fainelli <f.fainelli@gmail.com>


I missed to CC MIPS maintainers.


2017-11-05 14:30 GMT+09:00 Masahiro Yamada <yamada.masahiro@socionext.com>:
> arch/mips/boot/dts/brcm/bcm96358nb4ser.dts does not exist, so
> we cannot build bcm96358nb4ser.dtb .
>
> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
> ---
>
>  arch/mips/boot/dts/brcm/Makefile | 1 -
>  1 file changed, 1 deletion(-)
>
> diff --git a/arch/mips/boot/dts/brcm/Makefile b/arch/mips/boot/dts/brcm/Makefile
> index 69a69d1..ad76130 100644
> --- a/arch/mips/boot/dts/brcm/Makefile
> +++ b/arch/mips/boot/dts/brcm/Makefile
> @@ -22,7 +22,6 @@ dtb-$(CONFIG_DT_NONE) += \
>         bcm63268-comtrend-vr-3032u.dtb \
>         bcm93384wvg.dtb \
>         bcm93384wvg_viper.dtb \
> -       bcm96358nb4ser.dtb \
>         bcm96368mvwg.dtb \
>         bcm9ejtagprb.dtb \
>         bcm97125cbmb.dtb \
> --
> 2.7.4
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in
> the body of a message to majordomo at vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html



-- 
Best Regards
Masahiro Yamada

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
@ 2017-11-06 10:41       ` James Hogan
  0 siblings, 0 replies; 44+ messages in thread
From: James Hogan @ 2017-11-06 10:41 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: Rob Herring, devicetree, Linux Kbuild mailing list, Mark Rutland,
	Pantelis Antoniou, linux-arm-kernel, Arnd Bergmann,
	Linux Kernel Mailing List, Michal Marek, Sam Ravnborg,
	Ralf Baechle, linux-mips, Kevin Cernekee, Florian Fainelli

Hi,

On Sun, Nov 05, 2017 at 11:11:38PM +0900, Masahiro Yamada wrote:
> +CC Ralf Baechle <ralf@linux-mips.org>
> +CC linux-mips@linux-mips.org
> +CC Kevin Cernekee <cernekee@gmail.com>
> +CC Florian Fainelli <f.fainelli@gmail.com>
> 
> 
> I missed to CC MIPS maintainers.

Yes, please resend the patch so it lands in patchwork.linux-mips.org.

> 2017-11-05 14:30 GMT+09:00 Masahiro Yamada <yamada.masahiro@socionext.com>:
> > arch/mips/boot/dts/brcm/bcm96358nb4ser.dts does not exist, so
> > we cannot build bcm96358nb4ser.dtb .

This appears to be due to the file being renamed in commit 695835511f96
("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom").
Please can you update the commit message when you resend to mention the
cause of the problem.

You could also add the following if you like while you're at it:

Fixes: 695835511f96 ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom")
Cc: <stable@vger.kernel.org> # 4.9+

Thanks
James

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
@ 2017-11-06 10:41       ` James Hogan
  0 siblings, 0 replies; 44+ messages in thread
From: James Hogan @ 2017-11-06 10:41 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: Rob Herring, devicetree-u79uwXL29TY76Z2rM5mHXA,
	Linux Kbuild mailing list, Mark Rutland, Pantelis Antoniou,
	linux-arm-kernel, Arnd Bergmann, Linux Kernel Mailing List,
	Michal Marek, Sam Ravnborg, Ralf Baechle,
	linux-mips-6z/3iImG2C8G8FEW9MqTrA, Kevin Cernekee,
	Florian Fainelli

Hi,

On Sun, Nov 05, 2017 at 11:11:38PM +0900, Masahiro Yamada wrote:
> +CC Ralf Baechle <ralf-6z/3iImG2C8G8FEW9MqTrA@public.gmane.org>
> +CC linux-mips-6z/3iImG2C8G8FEW9MqTrA@public.gmane.org
> +CC Kevin Cernekee <cernekee-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
> +CC Florian Fainelli <f.fainelli-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
> 
> 
> I missed to CC MIPS maintainers.

Yes, please resend the patch so it lands in patchwork.linux-mips.org.

> 2017-11-05 14:30 GMT+09:00 Masahiro Yamada <yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>:
> > arch/mips/boot/dts/brcm/bcm96358nb4ser.dts does not exist, so
> > we cannot build bcm96358nb4ser.dtb .

This appears to be due to the file being renamed in commit 695835511f96
("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom").
Please can you update the commit message when you resend to mention the
cause of the problem.

You could also add the following if you like while you're at it:

Fixes: 695835511f96 ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom")
Cc: <stable-u79uwXL29TY76Z2rM5mHXA@public.gmane.org> # 4.9+

Thanks
James
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
@ 2017-11-06 10:41       ` James Hogan
  0 siblings, 0 replies; 44+ messages in thread
From: James Hogan @ 2017-11-06 10:41 UTC (permalink / raw)
  To: linux-arm-kernel

Hi,

On Sun, Nov 05, 2017 at 11:11:38PM +0900, Masahiro Yamada wrote:
> +CC Ralf Baechle <ralf@linux-mips.org>
> +CC linux-mips at linux-mips.org
> +CC Kevin Cernekee <cernekee@gmail.com>
> +CC Florian Fainelli <f.fainelli@gmail.com>
> 
> 
> I missed to CC MIPS maintainers.

Yes, please resend the patch so it lands in patchwork.linux-mips.org.

> 2017-11-05 14:30 GMT+09:00 Masahiro Yamada <yamada.masahiro@socionext.com>:
> > arch/mips/boot/dts/brcm/bcm96358nb4ser.dts does not exist, so
> > we cannot build bcm96358nb4ser.dtb .

This appears to be due to the file being renamed in commit 695835511f96
("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom").
Please can you update the commit message when you resend to mention the
cause of the problem.

You could also add the following if you like while you're at it:

Fixes: 695835511f96 ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom")
Cc: <stable@vger.kernel.org> # 4.9+

Thanks
James

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
  2017-11-06 10:41       ` James Hogan
@ 2017-11-06 11:00         ` Masahiro Yamada
  -1 siblings, 0 replies; 44+ messages in thread
From: Masahiro Yamada @ 2017-11-06 11:00 UTC (permalink / raw)
  To: James Hogan
  Cc: Rob Herring, devicetree, Linux Kbuild mailing list, Mark Rutland,
	Pantelis Antoniou, linux-arm-kernel, Arnd Bergmann,
	Linux Kernel Mailing List, Michal Marek, Sam Ravnborg,
	Ralf Baechle, linux-mips, Kevin Cernekee, Florian Fainelli

2017-11-06 19:41 GMT+09:00 James Hogan <jhogan@kernel.org>:
> Hi,
>
> On Sun, Nov 05, 2017 at 11:11:38PM +0900, Masahiro Yamada wrote:
>> +CC Ralf Baechle <ralf@linux-mips.org>
>> +CC linux-mips@linux-mips.org
>> +CC Kevin Cernekee <cernekee@gmail.com>
>> +CC Florian Fainelli <f.fainelli@gmail.com>
>>
>>
>> I missed to CC MIPS maintainers.
>
> Yes, please resend the patch so it lands in patchwork.linux-mips.org.


This is a part of clean-up series of DT building.

I want Acked-by from MIPS maintainers
so that the whole series can go to a different tree.
(DT or Kbuild).


Sam addressed more clean-up candidates in MIPS Makefiles
https://patchwork.kernel.org/patch/10041879/

So, I will probably end up with touching those Makefiles more.

All patches must go to the same tree.


>> 2017-11-05 14:30 GMT+09:00 Masahiro Yamada <yamada.masahiro@socionext.com>:
>> > arch/mips/boot/dts/brcm/bcm96358nb4ser.dts does not exist, so
>> > we cannot build bcm96358nb4ser.dtb .
>
> This appears to be due to the file being renamed in commit 695835511f96
> ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom").
> Please can you update the commit message when you resend to mention the
> cause of the problem.
>
> You could also add the following if you like while you're at it:
>
> Fixes: 695835511f96 ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom")
> Cc: <stable@vger.kernel.org> # 4.9+
>


Will do.  Thanks!


-- 
Best Regards
Masahiro Yamada

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
@ 2017-11-06 11:00         ` Masahiro Yamada
  0 siblings, 0 replies; 44+ messages in thread
From: Masahiro Yamada @ 2017-11-06 11:00 UTC (permalink / raw)
  To: linux-arm-kernel

2017-11-06 19:41 GMT+09:00 James Hogan <jhogan@kernel.org>:
> Hi,
>
> On Sun, Nov 05, 2017 at 11:11:38PM +0900, Masahiro Yamada wrote:
>> +CC Ralf Baechle <ralf@linux-mips.org>
>> +CC linux-mips at linux-mips.org
>> +CC Kevin Cernekee <cernekee@gmail.com>
>> +CC Florian Fainelli <f.fainelli@gmail.com>
>>
>>
>> I missed to CC MIPS maintainers.
>
> Yes, please resend the patch so it lands in patchwork.linux-mips.org.


This is a part of clean-up series of DT building.

I want Acked-by from MIPS maintainers
so that the whole series can go to a different tree.
(DT or Kbuild).


Sam addressed more clean-up candidates in MIPS Makefiles
https://patchwork.kernel.org/patch/10041879/

So, I will probably end up with touching those Makefiles more.

All patches must go to the same tree.


>> 2017-11-05 14:30 GMT+09:00 Masahiro Yamada <yamada.masahiro@socionext.com>:
>> > arch/mips/boot/dts/brcm/bcm96358nb4ser.dts does not exist, so
>> > we cannot build bcm96358nb4ser.dtb .
>
> This appears to be due to the file being renamed in commit 695835511f96
> ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom").
> Please can you update the commit message when you resend to mention the
> cause of the problem.
>
> You could also add the following if you like while you're at it:
>
> Fixes: 695835511f96 ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom")
> Cc: <stable@vger.kernel.org> # 4.9+
>


Will do.  Thanks!


-- 
Best Regards
Masahiro Yamada

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
  2017-11-06 11:00         ` Masahiro Yamada
@ 2017-11-08 16:51           ` Rob Herring
  -1 siblings, 0 replies; 44+ messages in thread
From: Rob Herring @ 2017-11-08 16:51 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: James Hogan, devicetree, Linux Kbuild mailing list, Mark Rutland,
	Pantelis Antoniou, linux-arm-kernel, Arnd Bergmann,
	Linux Kernel Mailing List, Michal Marek, Sam Ravnborg,
	Ralf Baechle, Linux-MIPS, Kevin Cernekee, Florian Fainelli

On Mon, Nov 6, 2017 at 5:00 AM, Masahiro Yamada
<yamada.masahiro@socionext.com> wrote:
> 2017-11-06 19:41 GMT+09:00 James Hogan <jhogan@kernel.org>:
>> Hi,
>>
>> On Sun, Nov 05, 2017 at 11:11:38PM +0900, Masahiro Yamada wrote:
>>> +CC Ralf Baechle <ralf@linux-mips.org>
>>> +CC linux-mips@linux-mips.org
>>> +CC Kevin Cernekee <cernekee@gmail.com>
>>> +CC Florian Fainelli <f.fainelli@gmail.com>
>>>
>>>
>>> I missed to CC MIPS maintainers.
>>
>> Yes, please resend the patch so it lands in patchwork.linux-mips.org.
>
>
> This is a part of clean-up series of DT building.
>
> I want Acked-by from MIPS maintainers
> so that the whole series can go to a different tree.
> (DT or Kbuild).
>
>
> Sam addressed more clean-up candidates in MIPS Makefiles
> https://patchwork.kernel.org/patch/10041879/
>
> So, I will probably end up with touching those Makefiles more.
>
> All patches must go to the same tree.
>
>
>>> 2017-11-05 14:30 GMT+09:00 Masahiro Yamada <yamada.masahiro@socionext.com>:
>>> > arch/mips/boot/dts/brcm/bcm96358nb4ser.dts does not exist, so
>>> > we cannot build bcm96358nb4ser.dtb .
>>
>> This appears to be due to the file being renamed in commit 695835511f96
>> ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom").
>> Please can you update the commit message when you resend to mention the
>> cause of the problem.
>>
>> You could also add the following if you like while you're at it:
>>
>> Fixes: 695835511f96 ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom")
>> Cc: <stable@vger.kernel.org> # 4.9+

I think this one can be applied independently and we'd want it to if
we tag for stable. So I think it can go thru the MIPS tree.

Rob

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
@ 2017-11-08 16:51           ` Rob Herring
  0 siblings, 0 replies; 44+ messages in thread
From: Rob Herring @ 2017-11-08 16:51 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Nov 6, 2017 at 5:00 AM, Masahiro Yamada
<yamada.masahiro@socionext.com> wrote:
> 2017-11-06 19:41 GMT+09:00 James Hogan <jhogan@kernel.org>:
>> Hi,
>>
>> On Sun, Nov 05, 2017 at 11:11:38PM +0900, Masahiro Yamada wrote:
>>> +CC Ralf Baechle <ralf@linux-mips.org>
>>> +CC linux-mips at linux-mips.org
>>> +CC Kevin Cernekee <cernekee@gmail.com>
>>> +CC Florian Fainelli <f.fainelli@gmail.com>
>>>
>>>
>>> I missed to CC MIPS maintainers.
>>
>> Yes, please resend the patch so it lands in patchwork.linux-mips.org.
>
>
> This is a part of clean-up series of DT building.
>
> I want Acked-by from MIPS maintainers
> so that the whole series can go to a different tree.
> (DT or Kbuild).
>
>
> Sam addressed more clean-up candidates in MIPS Makefiles
> https://patchwork.kernel.org/patch/10041879/
>
> So, I will probably end up with touching those Makefiles more.
>
> All patches must go to the same tree.
>
>
>>> 2017-11-05 14:30 GMT+09:00 Masahiro Yamada <yamada.masahiro@socionext.com>:
>>> > arch/mips/boot/dts/brcm/bcm96358nb4ser.dts does not exist, so
>>> > we cannot build bcm96358nb4ser.dtb .
>>
>> This appears to be due to the file being renamed in commit 695835511f96
>> ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom").
>> Please can you update the commit message when you resend to mention the
>> cause of the problem.
>>
>> You could also add the following if you like while you're at it:
>>
>> Fixes: 695835511f96 ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom")
>> Cc: <stable@vger.kernel.org> # 4.9+

I think this one can be applied independently and we'd want it to if
we tag for stable. So I think it can go thru the MIPS tree.

Rob

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: [PATCH 2/2] kbuild: handle dtb-y and CONFIG_OF_ALL_DTBS natively in Makefile.lib
@ 2017-11-08 17:23       ` Rob Herring
  0 siblings, 0 replies; 44+ messages in thread
From: Rob Herring @ 2017-11-08 17:23 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Masahiro Yamada, DTML, Linux Kbuild mailing list, Mark Rutland,
	Pantelis Antoniou, Linux ARM, Linux Kernel Mailing List,
	Michal Marek, Sam Ravnborg

On Sun, Nov 5, 2017 at 7:49 AM, Arnd Bergmann <arnd@arndb.de> wrote:
> On Sun, Nov 5, 2017 at 6:30 AM, Masahiro Yamada
> <yamada.masahiro@socionext.com> wrote:
>> If CONFIG_OF_ALL_DTBS is enabled, "make ARCH=arm64 dtbs" compiles each
>> DTB twice; one from arch/arm64/boot/dts/*/Makefile and the other from
>> the dtb-$(CONFIG_OF_ALL_DTBS) line in arch/arm64/boot/dts/Makefile.
>> It could be a race problem when building DTBS in parallel.
>>
>> Another minor issue is CONFIG_OF_ALL_DTBS covers only *.dts in vendor
>> sub-directories, so this broke when Broadcom added one more hierarchy
>> in arch/arm64/boot/dts/broadcom/<soc>/.
>>
>> One idea to fix the issues in a clean way is to move DTB handling
>> to Kbuild core scripts.  Makefile.dtbinst already recognizes dtb-y
>> natively, so it should not hurt to do so.
>>
>> Add $(dtb-y) to extra-y, and $(dtb-) as well if CONFIG_OF_ALL_DTBS is
>> enabled.  All clutter things in Makefiles go away.
>>
>> As a bonus clean-up, I also removed dts-dirs.  Just use subdir-y
>> directly to traverse sub-directories.
>>
>> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
>
> Nice, that's much better than the hack I had.
>
> Acked-by: Arnd Bergmann <arnd@arndb.de>

I applied this, but it has a few conflicts with SPDX tags from Greg
and some board additions in arm-soc. Please take a look.

Rob

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: [PATCH 2/2] kbuild: handle dtb-y and CONFIG_OF_ALL_DTBS natively in Makefile.lib
@ 2017-11-08 17:23       ` Rob Herring
  0 siblings, 0 replies; 44+ messages in thread
From: Rob Herring @ 2017-11-08 17:23 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Masahiro Yamada, DTML, Linux Kbuild mailing list, Mark Rutland,
	Pantelis Antoniou, Linux ARM, Linux Kernel Mailing List,
	Michal Marek, Sam Ravnborg

On Sun, Nov 5, 2017 at 7:49 AM, Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org> wrote:
> On Sun, Nov 5, 2017 at 6:30 AM, Masahiro Yamada
> <yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org> wrote:
>> If CONFIG_OF_ALL_DTBS is enabled, "make ARCH=arm64 dtbs" compiles each
>> DTB twice; one from arch/arm64/boot/dts/*/Makefile and the other from
>> the dtb-$(CONFIG_OF_ALL_DTBS) line in arch/arm64/boot/dts/Makefile.
>> It could be a race problem when building DTBS in parallel.
>>
>> Another minor issue is CONFIG_OF_ALL_DTBS covers only *.dts in vendor
>> sub-directories, so this broke when Broadcom added one more hierarchy
>> in arch/arm64/boot/dts/broadcom/<soc>/.
>>
>> One idea to fix the issues in a clean way is to move DTB handling
>> to Kbuild core scripts.  Makefile.dtbinst already recognizes dtb-y
>> natively, so it should not hurt to do so.
>>
>> Add $(dtb-y) to extra-y, and $(dtb-) as well if CONFIG_OF_ALL_DTBS is
>> enabled.  All clutter things in Makefiles go away.
>>
>> As a bonus clean-up, I also removed dts-dirs.  Just use subdir-y
>> directly to traverse sub-directories.
>>
>> Signed-off-by: Masahiro Yamada <yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>
>
> Nice, that's much better than the hack I had.
>
> Acked-by: Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org>

I applied this, but it has a few conflicts with SPDX tags from Greg
and some board additions in arm-soc. Please take a look.

Rob
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [PATCH 2/2] kbuild: handle dtb-y and CONFIG_OF_ALL_DTBS natively in Makefile.lib
@ 2017-11-08 17:23       ` Rob Herring
  0 siblings, 0 replies; 44+ messages in thread
From: Rob Herring @ 2017-11-08 17:23 UTC (permalink / raw)
  To: linux-arm-kernel

On Sun, Nov 5, 2017 at 7:49 AM, Arnd Bergmann <arnd@arndb.de> wrote:
> On Sun, Nov 5, 2017 at 6:30 AM, Masahiro Yamada
> <yamada.masahiro@socionext.com> wrote:
>> If CONFIG_OF_ALL_DTBS is enabled, "make ARCH=arm64 dtbs" compiles each
>> DTB twice; one from arch/arm64/boot/dts/*/Makefile and the other from
>> the dtb-$(CONFIG_OF_ALL_DTBS) line in arch/arm64/boot/dts/Makefile.
>> It could be a race problem when building DTBS in parallel.
>>
>> Another minor issue is CONFIG_OF_ALL_DTBS covers only *.dts in vendor
>> sub-directories, so this broke when Broadcom added one more hierarchy
>> in arch/arm64/boot/dts/broadcom/<soc>/.
>>
>> One idea to fix the issues in a clean way is to move DTB handling
>> to Kbuild core scripts.  Makefile.dtbinst already recognizes dtb-y
>> natively, so it should not hurt to do so.
>>
>> Add $(dtb-y) to extra-y, and $(dtb-) as well if CONFIG_OF_ALL_DTBS is
>> enabled.  All clutter things in Makefiles go away.
>>
>> As a bonus clean-up, I also removed dts-dirs.  Just use subdir-y
>> directly to traverse sub-directories.
>>
>> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
>
> Nice, that's much better than the hack I had.
>
> Acked-by: Arnd Bergmann <arnd@arndb.de>

I applied this, but it has a few conflicts with SPDX tags from Greg
and some board additions in arm-soc. Please take a look.

Rob

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
  2017-11-08 16:51           ` Rob Herring
@ 2017-11-09  0:11             ` Masahiro Yamada
  -1 siblings, 0 replies; 44+ messages in thread
From: Masahiro Yamada @ 2017-11-09  0:11 UTC (permalink / raw)
  To: Rob Herring
  Cc: James Hogan, devicetree, Linux Kbuild mailing list, Mark Rutland,
	Pantelis Antoniou, linux-arm-kernel, Arnd Bergmann,
	Linux Kernel Mailing List, Michal Marek, Sam Ravnborg,
	Ralf Baechle, Linux-MIPS, Kevin Cernekee, Florian Fainelli

2017-11-09 1:51 GMT+09:00 Rob Herring <robh+dt@kernel.org>:
> On Mon, Nov 6, 2017 at 5:00 AM, Masahiro Yamada
> <yamada.masahiro@socionext.com> wrote:
>> 2017-11-06 19:41 GMT+09:00 James Hogan <jhogan@kernel.org>:
>>> Hi,
>>>
>>> On Sun, Nov 05, 2017 at 11:11:38PM +0900, Masahiro Yamada wrote:
>>>> +CC Ralf Baechle <ralf@linux-mips.org>
>>>> +CC linux-mips@linux-mips.org
>>>> +CC Kevin Cernekee <cernekee@gmail.com>
>>>> +CC Florian Fainelli <f.fainelli@gmail.com>
>>>>
>>>>
>>>> I missed to CC MIPS maintainers.
>>>
>>> Yes, please resend the patch so it lands in patchwork.linux-mips.org.
>>
>>
>> This is a part of clean-up series of DT building.
>>
>> I want Acked-by from MIPS maintainers
>> so that the whole series can go to a different tree.
>> (DT or Kbuild).
>>
>>
>> Sam addressed more clean-up candidates in MIPS Makefiles
>> https://patchwork.kernel.org/patch/10041879/
>>
>> So, I will probably end up with touching those Makefiles more.
>>
>> All patches must go to the same tree.
>>
>>
>>>> 2017-11-05 14:30 GMT+09:00 Masahiro Yamada <yamada.masahiro@socionext.com>:
>>>> > arch/mips/boot/dts/brcm/bcm96358nb4ser.dts does not exist, so
>>>> > we cannot build bcm96358nb4ser.dtb .
>>>
>>> This appears to be due to the file being renamed in commit 695835511f96
>>> ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom").
>>> Please can you update the commit message when you resend to mention the
>>> cause of the problem.
>>>
>>> You could also add the following if you like while you're at it:
>>>
>>> Fixes: 695835511f96 ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom")
>>> Cc: <stable@vger.kernel.org> # 4.9+
>
> I think this one can be applied independently and we'd want it to if
> we tag for stable. So I think it can go thru the MIPS tree.
>


As I said to MIPS folks, this patch must go before 2/2.

You picked up only 2/2, so your dt/kbuild branch is broken.


make ARCH=mips allyesconfig
&& make ARCH=mips CROSS_COMPILE=mips-linux- dtbs


will produce the following error.


make[2]: *** No rule to make target
'arch/mips/boot/dts/brcm/bcm96358nb4ser.dtb', needed by '__build'.
Stop.
scripts/Makefile.build:570: recipe for target 'arch/mips/boot/dts/brcm' failed
make[1]: *** [arch/mips/boot/dts/brcm] Error 2
arch/mips/Makefile:413: recipe for target 'dtbs' failed
make: *** [dtbs] Error 2


-- 
Best Regards
Masahiro Yamada

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
@ 2017-11-09  0:11             ` Masahiro Yamada
  0 siblings, 0 replies; 44+ messages in thread
From: Masahiro Yamada @ 2017-11-09  0:11 UTC (permalink / raw)
  To: linux-arm-kernel

2017-11-09 1:51 GMT+09:00 Rob Herring <robh+dt@kernel.org>:
> On Mon, Nov 6, 2017 at 5:00 AM, Masahiro Yamada
> <yamada.masahiro@socionext.com> wrote:
>> 2017-11-06 19:41 GMT+09:00 James Hogan <jhogan@kernel.org>:
>>> Hi,
>>>
>>> On Sun, Nov 05, 2017 at 11:11:38PM +0900, Masahiro Yamada wrote:
>>>> +CC Ralf Baechle <ralf@linux-mips.org>
>>>> +CC linux-mips at linux-mips.org
>>>> +CC Kevin Cernekee <cernekee@gmail.com>
>>>> +CC Florian Fainelli <f.fainelli@gmail.com>
>>>>
>>>>
>>>> I missed to CC MIPS maintainers.
>>>
>>> Yes, please resend the patch so it lands in patchwork.linux-mips.org.
>>
>>
>> This is a part of clean-up series of DT building.
>>
>> I want Acked-by from MIPS maintainers
>> so that the whole series can go to a different tree.
>> (DT or Kbuild).
>>
>>
>> Sam addressed more clean-up candidates in MIPS Makefiles
>> https://patchwork.kernel.org/patch/10041879/
>>
>> So, I will probably end up with touching those Makefiles more.
>>
>> All patches must go to the same tree.
>>
>>
>>>> 2017-11-05 14:30 GMT+09:00 Masahiro Yamada <yamada.masahiro@socionext.com>:
>>>> > arch/mips/boot/dts/brcm/bcm96358nb4ser.dts does not exist, so
>>>> > we cannot build bcm96358nb4ser.dtb .
>>>
>>> This appears to be due to the file being renamed in commit 695835511f96
>>> ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom").
>>> Please can you update the commit message when you resend to mention the
>>> cause of the problem.
>>>
>>> You could also add the following if you like while you're at it:
>>>
>>> Fixes: 695835511f96 ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom")
>>> Cc: <stable@vger.kernel.org> # 4.9+
>
> I think this one can be applied independently and we'd want it to if
> we tag for stable. So I think it can go thru the MIPS tree.
>


As I said to MIPS folks, this patch must go before 2/2.

You picked up only 2/2, so your dt/kbuild branch is broken.


make ARCH=mips allyesconfig
&& make ARCH=mips CROSS_COMPILE=mips-linux- dtbs


will produce the following error.


make[2]: *** No rule to make target
'arch/mips/boot/dts/brcm/bcm96358nb4ser.dtb', needed by '__build'.
Stop.
scripts/Makefile.build:570: recipe for target 'arch/mips/boot/dts/brcm' failed
make[1]: *** [arch/mips/boot/dts/brcm] Error 2
arch/mips/Makefile:413: recipe for target 'dtbs' failed
make: *** [dtbs] Error 2


-- 
Best Regards
Masahiro Yamada

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
@ 2017-11-09  0:38               ` Masahiro Yamada
  0 siblings, 0 replies; 44+ messages in thread
From: Masahiro Yamada @ 2017-11-09  0:38 UTC (permalink / raw)
  To: Rob Herring
  Cc: James Hogan, devicetree, Linux Kbuild mailing list, Mark Rutland,
	Pantelis Antoniou, linux-arm-kernel, Arnd Bergmann,
	Linux Kernel Mailing List, Michal Marek, Sam Ravnborg,
	Ralf Baechle, Linux-MIPS, Kevin Cernekee, Florian Fainelli

2017-11-09 9:11 GMT+09:00 Masahiro Yamada <yamada.masahiro@socionext.com>:
> 2017-11-09 1:51 GMT+09:00 Rob Herring <robh+dt@kernel.org>:
>> On Mon, Nov 6, 2017 at 5:00 AM, Masahiro Yamada
>> <yamada.masahiro@socionext.com> wrote:
>>> 2017-11-06 19:41 GMT+09:00 James Hogan <jhogan@kernel.org>:
>>>> Hi,
>>>>
>>>> On Sun, Nov 05, 2017 at 11:11:38PM +0900, Masahiro Yamada wrote:
>>>>> +CC Ralf Baechle <ralf@linux-mips.org>
>>>>> +CC linux-mips@linux-mips.org
>>>>> +CC Kevin Cernekee <cernekee@gmail.com>
>>>>> +CC Florian Fainelli <f.fainelli@gmail.com>
>>>>>
>>>>>
>>>>> I missed to CC MIPS maintainers.
>>>>
>>>> Yes, please resend the patch so it lands in patchwork.linux-mips.org.
>>>
>>>
>>> This is a part of clean-up series of DT building.
>>>
>>> I want Acked-by from MIPS maintainers
>>> so that the whole series can go to a different tree.
>>> (DT or Kbuild).
>>>
>>>
>>> Sam addressed more clean-up candidates in MIPS Makefiles
>>> https://patchwork.kernel.org/patch/10041879/
>>>
>>> So, I will probably end up with touching those Makefiles more.
>>>
>>> All patches must go to the same tree.
>>>
>>>
>>>>> 2017-11-05 14:30 GMT+09:00 Masahiro Yamada <yamada.masahiro@socionext.com>:
>>>>> > arch/mips/boot/dts/brcm/bcm96358nb4ser.dts does not exist, so
>>>>> > we cannot build bcm96358nb4ser.dtb .
>>>>
>>>> This appears to be due to the file being renamed in commit 695835511f96
>>>> ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom").
>>>> Please can you update the commit message when you resend to mention the
>>>> cause of the problem.
>>>>
>>>> You could also add the following if you like while you're at it:
>>>>
>>>> Fixes: 695835511f96 ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom")
>>>> Cc: <stable@vger.kernel.org> # 4.9+
>>
>> I think this one can be applied independently and we'd want it to if
>> we tag for stable. So I think it can go thru the MIPS tree.
>>
>
>
> As I said to MIPS folks, this patch must go before 2/2.
>
> You picked up only 2/2, so your dt/kbuild branch is broken.
>
>
> make ARCH=mips allyesconfig
> && make ARCH=mips CROSS_COMPILE=mips-linux- dtbs
>
>
> will produce the following error.
>
>
> make[2]: *** No rule to make target
> 'arch/mips/boot/dts/brcm/bcm96358nb4ser.dtb', needed by '__build'.
> Stop.
> scripts/Makefile.build:570: recipe for target 'arch/mips/boot/dts/brcm' failed
> make[1]: *** [arch/mips/boot/dts/brcm] Error 2
> arch/mips/Makefile:413: recipe for target 'dtbs' failed
> make: *** [dtbs] Error 2
>


Looking into it, probably
bmips_dtb_defconfig was already broken regardless my patches.

But, I am not comfortable with breaking all{yes,mod}config
because they are often used for build test.


I hope you can apply this in the order as I sent,
with the following tag.

Fixes: 695835511f96 ("MIPS: BMIPS: rename bcm96358nb4ser to
bcm6358-neufbox4-sercom")
Cc: <stable@vger.kernel.org> # 4.9+

-- 
Best Regards
Masahiro Yamada

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
@ 2017-11-09  0:38               ` Masahiro Yamada
  0 siblings, 0 replies; 44+ messages in thread
From: Masahiro Yamada @ 2017-11-09  0:38 UTC (permalink / raw)
  To: Rob Herring
  Cc: James Hogan, devicetree-u79uwXL29TY76Z2rM5mHXA,
	Linux Kbuild mailing list, Mark Rutland, Pantelis Antoniou,
	linux-arm-kernel, Arnd Bergmann, Linux Kernel Mailing List,
	Michal Marek, Sam Ravnborg, Ralf Baechle, Linux-MIPS,
	Kevin Cernekee, Florian Fainelli

2017-11-09 9:11 GMT+09:00 Masahiro Yamada <yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>:
> 2017-11-09 1:51 GMT+09:00 Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>:
>> On Mon, Nov 6, 2017 at 5:00 AM, Masahiro Yamada
>> <yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org> wrote:
>>> 2017-11-06 19:41 GMT+09:00 James Hogan <jhogan-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>:
>>>> Hi,
>>>>
>>>> On Sun, Nov 05, 2017 at 11:11:38PM +0900, Masahiro Yamada wrote:
>>>>> +CC Ralf Baechle <ralf-6z/3iImG2C8G8FEW9MqTrA@public.gmane.org>
>>>>> +CC linux-mips-6z/3iImG2C8G8FEW9MqTrA@public.gmane.org
>>>>> +CC Kevin Cernekee <cernekee-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
>>>>> +CC Florian Fainelli <f.fainelli-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
>>>>>
>>>>>
>>>>> I missed to CC MIPS maintainers.
>>>>
>>>> Yes, please resend the patch so it lands in patchwork.linux-mips.org.
>>>
>>>
>>> This is a part of clean-up series of DT building.
>>>
>>> I want Acked-by from MIPS maintainers
>>> so that the whole series can go to a different tree.
>>> (DT or Kbuild).
>>>
>>>
>>> Sam addressed more clean-up candidates in MIPS Makefiles
>>> https://patchwork.kernel.org/patch/10041879/
>>>
>>> So, I will probably end up with touching those Makefiles more.
>>>
>>> All patches must go to the same tree.
>>>
>>>
>>>>> 2017-11-05 14:30 GMT+09:00 Masahiro Yamada <yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>:
>>>>> > arch/mips/boot/dts/brcm/bcm96358nb4ser.dts does not exist, so
>>>>> > we cannot build bcm96358nb4ser.dtb .
>>>>
>>>> This appears to be due to the file being renamed in commit 695835511f96
>>>> ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom").
>>>> Please can you update the commit message when you resend to mention the
>>>> cause of the problem.
>>>>
>>>> You could also add the following if you like while you're at it:
>>>>
>>>> Fixes: 695835511f96 ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom")
>>>> Cc: <stable-u79uwXL29TY76Z2rM5mHXA@public.gmane.org> # 4.9+
>>
>> I think this one can be applied independently and we'd want it to if
>> we tag for stable. So I think it can go thru the MIPS tree.
>>
>
>
> As I said to MIPS folks, this patch must go before 2/2.
>
> You picked up only 2/2, so your dt/kbuild branch is broken.
>
>
> make ARCH=mips allyesconfig
> && make ARCH=mips CROSS_COMPILE=mips-linux- dtbs
>
>
> will produce the following error.
>
>
> make[2]: *** No rule to make target
> 'arch/mips/boot/dts/brcm/bcm96358nb4ser.dtb', needed by '__build'.
> Stop.
> scripts/Makefile.build:570: recipe for target 'arch/mips/boot/dts/brcm' failed
> make[1]: *** [arch/mips/boot/dts/brcm] Error 2
> arch/mips/Makefile:413: recipe for target 'dtbs' failed
> make: *** [dtbs] Error 2
>


Looking into it, probably
bmips_dtb_defconfig was already broken regardless my patches.

But, I am not comfortable with breaking all{yes,mod}config
because they are often used for build test.


I hope you can apply this in the order as I sent,
with the following tag.

Fixes: 695835511f96 ("MIPS: BMIPS: rename bcm96358nb4ser to
bcm6358-neufbox4-sercom")
Cc: <stable-u79uwXL29TY76Z2rM5mHXA@public.gmane.org> # 4.9+

-- 
Best Regards
Masahiro Yamada
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
@ 2017-11-09  0:38               ` Masahiro Yamada
  0 siblings, 0 replies; 44+ messages in thread
From: Masahiro Yamada @ 2017-11-09  0:38 UTC (permalink / raw)
  To: linux-arm-kernel

2017-11-09 9:11 GMT+09:00 Masahiro Yamada <yamada.masahiro@socionext.com>:
> 2017-11-09 1:51 GMT+09:00 Rob Herring <robh+dt@kernel.org>:
>> On Mon, Nov 6, 2017 at 5:00 AM, Masahiro Yamada
>> <yamada.masahiro@socionext.com> wrote:
>>> 2017-11-06 19:41 GMT+09:00 James Hogan <jhogan@kernel.org>:
>>>> Hi,
>>>>
>>>> On Sun, Nov 05, 2017 at 11:11:38PM +0900, Masahiro Yamada wrote:
>>>>> +CC Ralf Baechle <ralf@linux-mips.org>
>>>>> +CC linux-mips at linux-mips.org
>>>>> +CC Kevin Cernekee <cernekee@gmail.com>
>>>>> +CC Florian Fainelli <f.fainelli@gmail.com>
>>>>>
>>>>>
>>>>> I missed to CC MIPS maintainers.
>>>>
>>>> Yes, please resend the patch so it lands in patchwork.linux-mips.org.
>>>
>>>
>>> This is a part of clean-up series of DT building.
>>>
>>> I want Acked-by from MIPS maintainers
>>> so that the whole series can go to a different tree.
>>> (DT or Kbuild).
>>>
>>>
>>> Sam addressed more clean-up candidates in MIPS Makefiles
>>> https://patchwork.kernel.org/patch/10041879/
>>>
>>> So, I will probably end up with touching those Makefiles more.
>>>
>>> All patches must go to the same tree.
>>>
>>>
>>>>> 2017-11-05 14:30 GMT+09:00 Masahiro Yamada <yamada.masahiro@socionext.com>:
>>>>> > arch/mips/boot/dts/brcm/bcm96358nb4ser.dts does not exist, so
>>>>> > we cannot build bcm96358nb4ser.dtb .
>>>>
>>>> This appears to be due to the file being renamed in commit 695835511f96
>>>> ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom").
>>>> Please can you update the commit message when you resend to mention the
>>>> cause of the problem.
>>>>
>>>> You could also add the following if you like while you're at it:
>>>>
>>>> Fixes: 695835511f96 ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom")
>>>> Cc: <stable@vger.kernel.org> # 4.9+
>>
>> I think this one can be applied independently and we'd want it to if
>> we tag for stable. So I think it can go thru the MIPS tree.
>>
>
>
> As I said to MIPS folks, this patch must go before 2/2.
>
> You picked up only 2/2, so your dt/kbuild branch is broken.
>
>
> make ARCH=mips allyesconfig
> && make ARCH=mips CROSS_COMPILE=mips-linux- dtbs
>
>
> will produce the following error.
>
>
> make[2]: *** No rule to make target
> 'arch/mips/boot/dts/brcm/bcm96358nb4ser.dtb', needed by '__build'.
> Stop.
> scripts/Makefile.build:570: recipe for target 'arch/mips/boot/dts/brcm' failed
> make[1]: *** [arch/mips/boot/dts/brcm] Error 2
> arch/mips/Makefile:413: recipe for target 'dtbs' failed
> make: *** [dtbs] Error 2
>


Looking into it, probably
bmips_dtb_defconfig was already broken regardless my patches.

But, I am not comfortable with breaking all{yes,mod}config
because they are often used for build test.


I hope you can apply this in the order as I sent,
with the following tag.

Fixes: 695835511f96 ("MIPS: BMIPS: rename bcm96358nb4ser to
bcm6358-neufbox4-sercom")
Cc: <stable@vger.kernel.org> # 4.9+

-- 
Best Regards
Masahiro Yamada

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
@ 2017-11-09  8:06           ` James Hogan
  0 siblings, 0 replies; 44+ messages in thread
From: James Hogan @ 2017-11-09  8:06 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: Rob Herring, devicetree, Linux Kbuild mailing list, Mark Rutland,
	Pantelis Antoniou, linux-arm-kernel, Arnd Bergmann,
	Linux Kernel Mailing List, Michal Marek, Sam Ravnborg,
	Ralf Baechle, linux-mips, Kevin Cernekee, Florian Fainelli

[-- Attachment #1: Type: text/plain, Size: 815 bytes --]

On Mon, Nov 06, 2017 at 08:00:49PM +0900, Masahiro Yamada wrote:
> 2017-11-06 19:41 GMT+09:00 James Hogan <jhogan@kernel.org>:
> > Hi,
> >
> > On Sun, Nov 05, 2017 at 11:11:38PM +0900, Masahiro Yamada wrote:
> >> +CC Ralf Baechle <ralf@linux-mips.org>
> >> +CC linux-mips@linux-mips.org
> >> +CC Kevin Cernekee <cernekee@gmail.com>
> >> +CC Florian Fainelli <f.fainelli@gmail.com>
> >>
> >>
> >> I missed to CC MIPS maintainers.
> >
> > Yes, please resend the patch so it lands in patchwork.linux-mips.org.
> 
> 
> This is a part of clean-up series of DT building.
> 
> I want Acked-by from MIPS maintainers
> so that the whole series can go to a different tree.
> (DT or Kbuild).

Well FWIW, as acting MIPS maintainer right now:

Acked-by: James Hogan <jhogan@kernel.org>

Cheers
James

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
@ 2017-11-09  8:06           ` James Hogan
  0 siblings, 0 replies; 44+ messages in thread
From: James Hogan @ 2017-11-09  8:06 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: Rob Herring, devicetree-u79uwXL29TY76Z2rM5mHXA,
	Linux Kbuild mailing list, Mark Rutland, Pantelis Antoniou,
	linux-arm-kernel, Arnd Bergmann, Linux Kernel Mailing List,
	Michal Marek, Sam Ravnborg, Ralf Baechle,
	linux-mips-6z/3iImG2C8G8FEW9MqTrA, Kevin Cernekee,
	Florian Fainelli

[-- Attachment #1: Type: text/plain, Size: 983 bytes --]

On Mon, Nov 06, 2017 at 08:00:49PM +0900, Masahiro Yamada wrote:
> 2017-11-06 19:41 GMT+09:00 James Hogan <jhogan-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>:
> > Hi,
> >
> > On Sun, Nov 05, 2017 at 11:11:38PM +0900, Masahiro Yamada wrote:
> >> +CC Ralf Baechle <ralf-6z/3iImG2C8G8FEW9MqTrA@public.gmane.org>
> >> +CC linux-mips-6z/3iImG2C8G8FEW9MqTrA@public.gmane.org
> >> +CC Kevin Cernekee <cernekee-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
> >> +CC Florian Fainelli <f.fainelli-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
> >>
> >>
> >> I missed to CC MIPS maintainers.
> >
> > Yes, please resend the patch so it lands in patchwork.linux-mips.org.
> 
> 
> This is a part of clean-up series of DT building.
> 
> I want Acked-by from MIPS maintainers
> so that the whole series can go to a different tree.
> (DT or Kbuild).

Well FWIW, as acting MIPS maintainer right now:

Acked-by: James Hogan <jhogan-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>

Cheers
James

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
@ 2017-11-09  8:06           ` James Hogan
  0 siblings, 0 replies; 44+ messages in thread
From: James Hogan @ 2017-11-09  8:06 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: Rob Herring, devicetree, Linux Kbuild mailing list, Mark Rutland,
	Pantelis Antoniou, linux-arm-kernel, Arnd Bergmann,
	Linux Kernel Mailing List, Michal Marek, Sam Ravnborg,
	Ralf Baechle, linux-mips, Kevin Cernekee, Florian Fainelli

[-- Attachment #1: Type: text/plain, Size: 815 bytes --]

On Mon, Nov 06, 2017 at 08:00:49PM +0900, Masahiro Yamada wrote:
> 2017-11-06 19:41 GMT+09:00 James Hogan <jhogan@kernel.org>:
> > Hi,
> >
> > On Sun, Nov 05, 2017 at 11:11:38PM +0900, Masahiro Yamada wrote:
> >> +CC Ralf Baechle <ralf@linux-mips.org>
> >> +CC linux-mips@linux-mips.org
> >> +CC Kevin Cernekee <cernekee@gmail.com>
> >> +CC Florian Fainelli <f.fainelli@gmail.com>
> >>
> >>
> >> I missed to CC MIPS maintainers.
> >
> > Yes, please resend the patch so it lands in patchwork.linux-mips.org.
> 
> 
> This is a part of clean-up series of DT building.
> 
> I want Acked-by from MIPS maintainers
> so that the whole series can go to a different tree.
> (DT or Kbuild).

Well FWIW, as acting MIPS maintainer right now:

Acked-by: James Hogan <jhogan@kernel.org>

Cheers
James

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
@ 2017-11-09  8:06           ` James Hogan
  0 siblings, 0 replies; 44+ messages in thread
From: James Hogan @ 2017-11-09  8:06 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Nov 06, 2017 at 08:00:49PM +0900, Masahiro Yamada wrote:
> 2017-11-06 19:41 GMT+09:00 James Hogan <jhogan@kernel.org>:
> > Hi,
> >
> > On Sun, Nov 05, 2017 at 11:11:38PM +0900, Masahiro Yamada wrote:
> >> +CC Ralf Baechle <ralf@linux-mips.org>
> >> +CC linux-mips at linux-mips.org
> >> +CC Kevin Cernekee <cernekee@gmail.com>
> >> +CC Florian Fainelli <f.fainelli@gmail.com>
> >>
> >>
> >> I missed to CC MIPS maintainers.
> >
> > Yes, please resend the patch so it lands in patchwork.linux-mips.org.
> 
> 
> This is a part of clean-up series of DT building.
> 
> I want Acked-by from MIPS maintainers
> so that the whole series can go to a different tree.
> (DT or Kbuild).

Well FWIW, as acting MIPS maintainer right now:

Acked-by: James Hogan <jhogan@kernel.org>

Cheers
James
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20171109/e05c7ad1/attachment.sig>

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: [PATCH 2/2] kbuild: handle dtb-y and CONFIG_OF_ALL_DTBS natively in Makefile.lib
@ 2017-11-09 12:19       ` James Hogan
  0 siblings, 0 replies; 44+ messages in thread
From: James Hogan @ 2017-11-09 12:19 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: Rob Herring, devicetree, linux-kbuild, Mark Rutland,
	Pantelis Antoniou, ARM Kernel List, Arnd Bergmann, LKML,
	Michal Marek, Sam Ravnborg, Linux MIPS Mailing List,
	Ralf Baechle, David Daney, James Hogan, linux-next

(resend using a working From address)

<yamada.masahiro@socionext.com> wrote:
> If CONFIG_OF_ALL_DTBS is enabled, "make ARCH=arm64 dtbs" compiles each
> DTB twice; one from arch/arm64/boot/dts/*/Makefile and the other from
> the dtb-$(CONFIG_OF_ALL_DTBS) line in arch/arm64/boot/dts/Makefile.
> It could be a race problem when building DTBS in parallel.
>
> Another minor issue is CONFIG_OF_ALL_DTBS covers only *.dts in vendor
> sub-directories, so this broke when Broadcom added one more hierarchy
> in arch/arm64/boot/dts/broadcom/<soc>/.
>
> One idea to fix the issues in a clean way is to move DTB handling
> to Kbuild core scripts.  Makefile.dtbinst already recognizes dtb-y
> natively, so it should not hurt to do so.
>
> Add $(dtb-y) to extra-y, and $(dtb-) as well if CONFIG_OF_ALL_DTBS is
> enabled.  All clutter things in Makefiles go away.
>
> As a bonus clean-up, I also removed dts-dirs.  Just use subdir-y
> directly to traverse sub-directories.
>
> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>

 ...

> diff --git a/arch/mips/boot/dts/Makefile b/arch/mips/boot/dts/Makefile
> index 7891ffa..b2b0d88 100644
> --- a/arch/mips/boot/dts/Makefile
> +++ b/arch/mips/boot/dts/Makefile
> @@ -1,20 +1,14 @@
> -dts-dirs       += brcm
> -dts-dirs       += cavium-octeon
> -dts-dirs       += img
> -dts-dirs       += ingenic
> -dts-dirs       += lantiq
> -dts-dirs       += mti
> -dts-dirs       += netlogic
> -dts-dirs       += ni
> -dts-dirs       += pic32
> -dts-dirs       += qca
> -dts-dirs       += ralink
> -dts-dirs       += xilfpga
> +subdir-y       += brcm
> +subdir-y       += cavium-octeon
> +subdir-y       += img
> +subdir-y       += ingenic
> +subdir-y       += lantiq
> +subdir-y       += mti
> +subdir-y       += netlogic
> +subdir-y       += ni
> +subdir-y       += pic32
> +subdir-y       += qca
> +subdir-y       += ralink
> +subdir-y       += xilfpga
>
> -obj-y          := $(addsuffix /, $(dts-dirs))
> -
> -dtstree                := $(srctree)/$(src)
> -dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(foreach d,$(dts-dirs), $(wildcard $(dtstree)/$(d)/*.dts)))
> -
> -always         := $(dtb-y)
> -subdir-y       := $(dts-dirs)
> +obj-$(BUILTIN_DTB)     := $(addsuffix /, $(subdir-y))

I wonder if that should be CONFIG_BUILTIN_DTB?

This is causing failures in linux-next with MIPS
cavium_octeon_defconfig like below, and changing this line to
CONFIG_BUILTIN_DTB seems to fix it.

arch/mips/cavium-octeon/setup.o: In function `__octeon_is_model_runtime__':
/work/mips/linux/main/./arch/mips/include/asm/octeon/octeon-model.h:368:
undefined reference to `__dtb_octeon_3xxx_begin'
arch/mips/cavium-octeon/setup.o: In function `device_tree_init':
/work/mips/linux/main/arch/mips/cavium-octeon/setup.c:1188: undefined
reference to `__dtb_octeon_3xxx_begin'
/work/mips/linux/main/arch/mips/cavium-octeon/setup.c:1184: undefined
reference to `__dtb_octeon_68xx_begin'
/work/mips/linux/main/arch/mips/cavium-octeon/setup.c:1184: undefined
reference to `__dtb_octeon_68xx_begin'

Thanks
James


-- 
James Hogan

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: [PATCH 2/2] kbuild: handle dtb-y and CONFIG_OF_ALL_DTBS natively in Makefile.lib
@ 2017-11-09 12:19       ` James Hogan
  0 siblings, 0 replies; 44+ messages in thread
From: James Hogan @ 2017-11-09 12:19 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: Rob Herring, devicetree-u79uwXL29TY76Z2rM5mHXA,
	linux-kbuild-u79uwXL29TY76Z2rM5mHXA, Mark Rutland,
	Pantelis Antoniou, ARM Kernel List, Arnd Bergmann, LKML,
	Michal Marek, Sam Ravnborg, Linux MIPS Mailing List,
	Ralf Baechle, David Daney, James Hogan,
	linux-next-u79uwXL29TY76Z2rM5mHXA

(resend using a working From address)

<yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org> wrote:
> If CONFIG_OF_ALL_DTBS is enabled, "make ARCH=arm64 dtbs" compiles each
> DTB twice; one from arch/arm64/boot/dts/*/Makefile and the other from
> the dtb-$(CONFIG_OF_ALL_DTBS) line in arch/arm64/boot/dts/Makefile.
> It could be a race problem when building DTBS in parallel.
>
> Another minor issue is CONFIG_OF_ALL_DTBS covers only *.dts in vendor
> sub-directories, so this broke when Broadcom added one more hierarchy
> in arch/arm64/boot/dts/broadcom/<soc>/.
>
> One idea to fix the issues in a clean way is to move DTB handling
> to Kbuild core scripts.  Makefile.dtbinst already recognizes dtb-y
> natively, so it should not hurt to do so.
>
> Add $(dtb-y) to extra-y, and $(dtb-) as well if CONFIG_OF_ALL_DTBS is
> enabled.  All clutter things in Makefiles go away.
>
> As a bonus clean-up, I also removed dts-dirs.  Just use subdir-y
> directly to traverse sub-directories.
>
> Signed-off-by: Masahiro Yamada <yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>

 ...

> diff --git a/arch/mips/boot/dts/Makefile b/arch/mips/boot/dts/Makefile
> index 7891ffa..b2b0d88 100644
> --- a/arch/mips/boot/dts/Makefile
> +++ b/arch/mips/boot/dts/Makefile
> @@ -1,20 +1,14 @@
> -dts-dirs       += brcm
> -dts-dirs       += cavium-octeon
> -dts-dirs       += img
> -dts-dirs       += ingenic
> -dts-dirs       += lantiq
> -dts-dirs       += mti
> -dts-dirs       += netlogic
> -dts-dirs       += ni
> -dts-dirs       += pic32
> -dts-dirs       += qca
> -dts-dirs       += ralink
> -dts-dirs       += xilfpga
> +subdir-y       += brcm
> +subdir-y       += cavium-octeon
> +subdir-y       += img
> +subdir-y       += ingenic
> +subdir-y       += lantiq
> +subdir-y       += mti
> +subdir-y       += netlogic
> +subdir-y       += ni
> +subdir-y       += pic32
> +subdir-y       += qca
> +subdir-y       += ralink
> +subdir-y       += xilfpga
>
> -obj-y          := $(addsuffix /, $(dts-dirs))
> -
> -dtstree                := $(srctree)/$(src)
> -dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(foreach d,$(dts-dirs), $(wildcard $(dtstree)/$(d)/*.dts)))
> -
> -always         := $(dtb-y)
> -subdir-y       := $(dts-dirs)
> +obj-$(BUILTIN_DTB)     := $(addsuffix /, $(subdir-y))

I wonder if that should be CONFIG_BUILTIN_DTB?

This is causing failures in linux-next with MIPS
cavium_octeon_defconfig like below, and changing this line to
CONFIG_BUILTIN_DTB seems to fix it.

arch/mips/cavium-octeon/setup.o: In function `__octeon_is_model_runtime__':
/work/mips/linux/main/./arch/mips/include/asm/octeon/octeon-model.h:368:
undefined reference to `__dtb_octeon_3xxx_begin'
arch/mips/cavium-octeon/setup.o: In function `device_tree_init':
/work/mips/linux/main/arch/mips/cavium-octeon/setup.c:1188: undefined
reference to `__dtb_octeon_3xxx_begin'
/work/mips/linux/main/arch/mips/cavium-octeon/setup.c:1184: undefined
reference to `__dtb_octeon_68xx_begin'
/work/mips/linux/main/arch/mips/cavium-octeon/setup.c:1184: undefined
reference to `__dtb_octeon_68xx_begin'

Thanks
James


-- 
James Hogan
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [PATCH 2/2] kbuild: handle dtb-y and CONFIG_OF_ALL_DTBS natively in Makefile.lib
@ 2017-11-09 12:19       ` James Hogan
  0 siblings, 0 replies; 44+ messages in thread
From: James Hogan @ 2017-11-09 12:19 UTC (permalink / raw)
  To: linux-arm-kernel

(resend using a working From address)

<yamada.masahiro@socionext.com> wrote:
> If CONFIG_OF_ALL_DTBS is enabled, "make ARCH=arm64 dtbs" compiles each
> DTB twice; one from arch/arm64/boot/dts/*/Makefile and the other from
> the dtb-$(CONFIG_OF_ALL_DTBS) line in arch/arm64/boot/dts/Makefile.
> It could be a race problem when building DTBS in parallel.
>
> Another minor issue is CONFIG_OF_ALL_DTBS covers only *.dts in vendor
> sub-directories, so this broke when Broadcom added one more hierarchy
> in arch/arm64/boot/dts/broadcom/<soc>/.
>
> One idea to fix the issues in a clean way is to move DTB handling
> to Kbuild core scripts.  Makefile.dtbinst already recognizes dtb-y
> natively, so it should not hurt to do so.
>
> Add $(dtb-y) to extra-y, and $(dtb-) as well if CONFIG_OF_ALL_DTBS is
> enabled.  All clutter things in Makefiles go away.
>
> As a bonus clean-up, I also removed dts-dirs.  Just use subdir-y
> directly to traverse sub-directories.
>
> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>

 ...

> diff --git a/arch/mips/boot/dts/Makefile b/arch/mips/boot/dts/Makefile
> index 7891ffa..b2b0d88 100644
> --- a/arch/mips/boot/dts/Makefile
> +++ b/arch/mips/boot/dts/Makefile
> @@ -1,20 +1,14 @@
> -dts-dirs       += brcm
> -dts-dirs       += cavium-octeon
> -dts-dirs       += img
> -dts-dirs       += ingenic
> -dts-dirs       += lantiq
> -dts-dirs       += mti
> -dts-dirs       += netlogic
> -dts-dirs       += ni
> -dts-dirs       += pic32
> -dts-dirs       += qca
> -dts-dirs       += ralink
> -dts-dirs       += xilfpga
> +subdir-y       += brcm
> +subdir-y       += cavium-octeon
> +subdir-y       += img
> +subdir-y       += ingenic
> +subdir-y       += lantiq
> +subdir-y       += mti
> +subdir-y       += netlogic
> +subdir-y       += ni
> +subdir-y       += pic32
> +subdir-y       += qca
> +subdir-y       += ralink
> +subdir-y       += xilfpga
>
> -obj-y          := $(addsuffix /, $(dts-dirs))
> -
> -dtstree                := $(srctree)/$(src)
> -dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(foreach d,$(dts-dirs), $(wildcard $(dtstree)/$(d)/*.dts)))
> -
> -always         := $(dtb-y)
> -subdir-y       := $(dts-dirs)
> +obj-$(BUILTIN_DTB)     := $(addsuffix /, $(subdir-y))

I wonder if that should be CONFIG_BUILTIN_DTB?

This is causing failures in linux-next with MIPS
cavium_octeon_defconfig like below, and changing this line to
CONFIG_BUILTIN_DTB seems to fix it.

arch/mips/cavium-octeon/setup.o: In function `__octeon_is_model_runtime__':
/work/mips/linux/main/./arch/mips/include/asm/octeon/octeon-model.h:368:
undefined reference to `__dtb_octeon_3xxx_begin'
arch/mips/cavium-octeon/setup.o: In function `device_tree_init':
/work/mips/linux/main/arch/mips/cavium-octeon/setup.c:1188: undefined
reference to `__dtb_octeon_3xxx_begin'
/work/mips/linux/main/arch/mips/cavium-octeon/setup.c:1184: undefined
reference to `__dtb_octeon_68xx_begin'
/work/mips/linux/main/arch/mips/cavium-octeon/setup.c:1184: undefined
reference to `__dtb_octeon_68xx_begin'

Thanks
James


-- 
James Hogan

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: [PATCH 2/2] kbuild: handle dtb-y and CONFIG_OF_ALL_DTBS natively in Makefile.lib
@ 2017-11-09 12:23         ` Masahiro Yamada
  0 siblings, 0 replies; 44+ messages in thread
From: Masahiro Yamada @ 2017-11-09 12:23 UTC (permalink / raw)
  To: James Hogan, Rob Herring
  Cc: devicetree, Linux Kbuild mailing list, Mark Rutland,
	Pantelis Antoniou, ARM Kernel List, Arnd Bergmann, LKML,
	Michal Marek, Sam Ravnborg, Linux MIPS Mailing List,
	Ralf Baechle, David Daney, James Hogan, Linux-Next Mailing List

Hi James,


2017-11-09 21:19 GMT+09:00 James Hogan <james@albanarts.com>:
> (resend using a working From address)
>
> <yamada.masahiro@socionext.com> wrote:
>> If CONFIG_OF_ALL_DTBS is enabled, "make ARCH=arm64 dtbs" compiles each
>> DTB twice; one from arch/arm64/boot/dts/*/Makefile and the other from
>> the dtb-$(CONFIG_OF_ALL_DTBS) line in arch/arm64/boot/dts/Makefile.
>> It could be a race problem when building DTBS in parallel.
>>
>> Another minor issue is CONFIG_OF_ALL_DTBS covers only *.dts in vendor
>> sub-directories, so this broke when Broadcom added one more hierarchy
>> in arch/arm64/boot/dts/broadcom/<soc>/.
>>
>> One idea to fix the issues in a clean way is to move DTB handling
>> to Kbuild core scripts.  Makefile.dtbinst already recognizes dtb-y
>> natively, so it should not hurt to do so.
>>
>> Add $(dtb-y) to extra-y, and $(dtb-) as well if CONFIG_OF_ALL_DTBS is
>> enabled.  All clutter things in Makefiles go away.
>>
>> As a bonus clean-up, I also removed dts-dirs.  Just use subdir-y
>> directly to traverse sub-directories.
>>
>> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
>
>  ...
>
>> diff --git a/arch/mips/boot/dts/Makefile b/arch/mips/boot/dts/Makefile
>> index 7891ffa..b2b0d88 100644
>> --- a/arch/mips/boot/dts/Makefile
>> +++ b/arch/mips/boot/dts/Makefile
>> @@ -1,20 +1,14 @@
>> -dts-dirs       += brcm
>> -dts-dirs       += cavium-octeon
>> -dts-dirs       += img
>> -dts-dirs       += ingenic
>> -dts-dirs       += lantiq
>> -dts-dirs       += mti
>> -dts-dirs       += netlogic
>> -dts-dirs       += ni
>> -dts-dirs       += pic32
>> -dts-dirs       += qca
>> -dts-dirs       += ralink
>> -dts-dirs       += xilfpga
>> +subdir-y       += brcm
>> +subdir-y       += cavium-octeon
>> +subdir-y       += img
>> +subdir-y       += ingenic
>> +subdir-y       += lantiq
>> +subdir-y       += mti
>> +subdir-y       += netlogic
>> +subdir-y       += ni
>> +subdir-y       += pic32
>> +subdir-y       += qca
>> +subdir-y       += ralink
>> +subdir-y       += xilfpga
>>
>> -obj-y          := $(addsuffix /, $(dts-dirs))
>> -
>> -dtstree                := $(srctree)/$(src)
>> -dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(foreach d,$(dts-dirs), $(wildcard $(dtstree)/$(d)/*.dts)))
>> -
>> -always         := $(dtb-y)
>> -subdir-y       := $(dts-dirs)
>> +obj-$(BUILTIN_DTB)     := $(addsuffix /, $(subdir-y))
>
> I wonder if that should be CONFIG_BUILTIN_DTB?
>
> This is causing failures in linux-next with MIPS
> cavium_octeon_defconfig like below, and changing this line to
> CONFIG_BUILTIN_DTB seems to fix it.

Good catch!


Rob,
Can you fix it to CONFIG_BUILTIN_DTB?

Thanks!



> arch/mips/cavium-octeon/setup.o: In function `__octeon_is_model_runtime__':
> /work/mips/linux/main/./arch/mips/include/asm/octeon/octeon-model.h:368:
> undefined reference to `__dtb_octeon_3xxx_begin'
> arch/mips/cavium-octeon/setup.o: In function `device_tree_init':
> /work/mips/linux/main/arch/mips/cavium-octeon/setup.c:1188: undefined
> reference to `__dtb_octeon_3xxx_begin'
> /work/mips/linux/main/arch/mips/cavium-octeon/setup.c:1184: undefined
> reference to `__dtb_octeon_68xx_begin'
> /work/mips/linux/main/arch/mips/cavium-octeon/setup.c:1184: undefined
> reference to `__dtb_octeon_68xx_begin'
>
> Thanks
> James
>
>


-- 
Best Regards
Masahiro Yamada

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: [PATCH 2/2] kbuild: handle dtb-y and CONFIG_OF_ALL_DTBS natively in Makefile.lib
@ 2017-11-09 12:23         ` Masahiro Yamada
  0 siblings, 0 replies; 44+ messages in thread
From: Masahiro Yamada @ 2017-11-09 12:23 UTC (permalink / raw)
  To: James Hogan, Rob Herring
  Cc: devicetree-u79uwXL29TY76Z2rM5mHXA, Linux Kbuild mailing list,
	Mark Rutland, Pantelis Antoniou, ARM Kernel List, Arnd Bergmann,
	LKML, Michal Marek, Sam Ravnborg, Linux MIPS Mailing List,
	Ralf Baechle, David Daney, James Hogan, Linux-Next Mailing List

Hi James,


2017-11-09 21:19 GMT+09:00 James Hogan <james-IP01RNCDaiKakBO8gow8eQ@public.gmane.org>:
> (resend using a working From address)
>
> <yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org> wrote:
>> If CONFIG_OF_ALL_DTBS is enabled, "make ARCH=arm64 dtbs" compiles each
>> DTB twice; one from arch/arm64/boot/dts/*/Makefile and the other from
>> the dtb-$(CONFIG_OF_ALL_DTBS) line in arch/arm64/boot/dts/Makefile.
>> It could be a race problem when building DTBS in parallel.
>>
>> Another minor issue is CONFIG_OF_ALL_DTBS covers only *.dts in vendor
>> sub-directories, so this broke when Broadcom added one more hierarchy
>> in arch/arm64/boot/dts/broadcom/<soc>/.
>>
>> One idea to fix the issues in a clean way is to move DTB handling
>> to Kbuild core scripts.  Makefile.dtbinst already recognizes dtb-y
>> natively, so it should not hurt to do so.
>>
>> Add $(dtb-y) to extra-y, and $(dtb-) as well if CONFIG_OF_ALL_DTBS is
>> enabled.  All clutter things in Makefiles go away.
>>
>> As a bonus clean-up, I also removed dts-dirs.  Just use subdir-y
>> directly to traverse sub-directories.
>>
>> Signed-off-by: Masahiro Yamada <yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>
>
>  ...
>
>> diff --git a/arch/mips/boot/dts/Makefile b/arch/mips/boot/dts/Makefile
>> index 7891ffa..b2b0d88 100644
>> --- a/arch/mips/boot/dts/Makefile
>> +++ b/arch/mips/boot/dts/Makefile
>> @@ -1,20 +1,14 @@
>> -dts-dirs       += brcm
>> -dts-dirs       += cavium-octeon
>> -dts-dirs       += img
>> -dts-dirs       += ingenic
>> -dts-dirs       += lantiq
>> -dts-dirs       += mti
>> -dts-dirs       += netlogic
>> -dts-dirs       += ni
>> -dts-dirs       += pic32
>> -dts-dirs       += qca
>> -dts-dirs       += ralink
>> -dts-dirs       += xilfpga
>> +subdir-y       += brcm
>> +subdir-y       += cavium-octeon
>> +subdir-y       += img
>> +subdir-y       += ingenic
>> +subdir-y       += lantiq
>> +subdir-y       += mti
>> +subdir-y       += netlogic
>> +subdir-y       += ni
>> +subdir-y       += pic32
>> +subdir-y       += qca
>> +subdir-y       += ralink
>> +subdir-y       += xilfpga
>>
>> -obj-y          := $(addsuffix /, $(dts-dirs))
>> -
>> -dtstree                := $(srctree)/$(src)
>> -dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(foreach d,$(dts-dirs), $(wildcard $(dtstree)/$(d)/*.dts)))
>> -
>> -always         := $(dtb-y)
>> -subdir-y       := $(dts-dirs)
>> +obj-$(BUILTIN_DTB)     := $(addsuffix /, $(subdir-y))
>
> I wonder if that should be CONFIG_BUILTIN_DTB?
>
> This is causing failures in linux-next with MIPS
> cavium_octeon_defconfig like below, and changing this line to
> CONFIG_BUILTIN_DTB seems to fix it.

Good catch!


Rob,
Can you fix it to CONFIG_BUILTIN_DTB?

Thanks!



> arch/mips/cavium-octeon/setup.o: In function `__octeon_is_model_runtime__':
> /work/mips/linux/main/./arch/mips/include/asm/octeon/octeon-model.h:368:
> undefined reference to `__dtb_octeon_3xxx_begin'
> arch/mips/cavium-octeon/setup.o: In function `device_tree_init':
> /work/mips/linux/main/arch/mips/cavium-octeon/setup.c:1188: undefined
> reference to `__dtb_octeon_3xxx_begin'
> /work/mips/linux/main/arch/mips/cavium-octeon/setup.c:1184: undefined
> reference to `__dtb_octeon_68xx_begin'
> /work/mips/linux/main/arch/mips/cavium-octeon/setup.c:1184: undefined
> reference to `__dtb_octeon_68xx_begin'
>
> Thanks
> James
>
>


-- 
Best Regards
Masahiro Yamada
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [PATCH 2/2] kbuild: handle dtb-y and CONFIG_OF_ALL_DTBS natively in Makefile.lib
@ 2017-11-09 12:23         ` Masahiro Yamada
  0 siblings, 0 replies; 44+ messages in thread
From: Masahiro Yamada @ 2017-11-09 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

Hi James,


2017-11-09 21:19 GMT+09:00 James Hogan <james@albanarts.com>:
> (resend using a working From address)
>
> <yamada.masahiro@socionext.com> wrote:
>> If CONFIG_OF_ALL_DTBS is enabled, "make ARCH=arm64 dtbs" compiles each
>> DTB twice; one from arch/arm64/boot/dts/*/Makefile and the other from
>> the dtb-$(CONFIG_OF_ALL_DTBS) line in arch/arm64/boot/dts/Makefile.
>> It could be a race problem when building DTBS in parallel.
>>
>> Another minor issue is CONFIG_OF_ALL_DTBS covers only *.dts in vendor
>> sub-directories, so this broke when Broadcom added one more hierarchy
>> in arch/arm64/boot/dts/broadcom/<soc>/.
>>
>> One idea to fix the issues in a clean way is to move DTB handling
>> to Kbuild core scripts.  Makefile.dtbinst already recognizes dtb-y
>> natively, so it should not hurt to do so.
>>
>> Add $(dtb-y) to extra-y, and $(dtb-) as well if CONFIG_OF_ALL_DTBS is
>> enabled.  All clutter things in Makefiles go away.
>>
>> As a bonus clean-up, I also removed dts-dirs.  Just use subdir-y
>> directly to traverse sub-directories.
>>
>> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
>
>  ...
>
>> diff --git a/arch/mips/boot/dts/Makefile b/arch/mips/boot/dts/Makefile
>> index 7891ffa..b2b0d88 100644
>> --- a/arch/mips/boot/dts/Makefile
>> +++ b/arch/mips/boot/dts/Makefile
>> @@ -1,20 +1,14 @@
>> -dts-dirs       += brcm
>> -dts-dirs       += cavium-octeon
>> -dts-dirs       += img
>> -dts-dirs       += ingenic
>> -dts-dirs       += lantiq
>> -dts-dirs       += mti
>> -dts-dirs       += netlogic
>> -dts-dirs       += ni
>> -dts-dirs       += pic32
>> -dts-dirs       += qca
>> -dts-dirs       += ralink
>> -dts-dirs       += xilfpga
>> +subdir-y       += brcm
>> +subdir-y       += cavium-octeon
>> +subdir-y       += img
>> +subdir-y       += ingenic
>> +subdir-y       += lantiq
>> +subdir-y       += mti
>> +subdir-y       += netlogic
>> +subdir-y       += ni
>> +subdir-y       += pic32
>> +subdir-y       += qca
>> +subdir-y       += ralink
>> +subdir-y       += xilfpga
>>
>> -obj-y          := $(addsuffix /, $(dts-dirs))
>> -
>> -dtstree                := $(srctree)/$(src)
>> -dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(foreach d,$(dts-dirs), $(wildcard $(dtstree)/$(d)/*.dts)))
>> -
>> -always         := $(dtb-y)
>> -subdir-y       := $(dts-dirs)
>> +obj-$(BUILTIN_DTB)     := $(addsuffix /, $(subdir-y))
>
> I wonder if that should be CONFIG_BUILTIN_DTB?
>
> This is causing failures in linux-next with MIPS
> cavium_octeon_defconfig like below, and changing this line to
> CONFIG_BUILTIN_DTB seems to fix it.

Good catch!


Rob,
Can you fix it to CONFIG_BUILTIN_DTB?

Thanks!



> arch/mips/cavium-octeon/setup.o: In function `__octeon_is_model_runtime__':
> /work/mips/linux/main/./arch/mips/include/asm/octeon/octeon-model.h:368:
> undefined reference to `__dtb_octeon_3xxx_begin'
> arch/mips/cavium-octeon/setup.o: In function `device_tree_init':
> /work/mips/linux/main/arch/mips/cavium-octeon/setup.c:1188: undefined
> reference to `__dtb_octeon_3xxx_begin'
> /work/mips/linux/main/arch/mips/cavium-octeon/setup.c:1184: undefined
> reference to `__dtb_octeon_68xx_begin'
> /work/mips/linux/main/arch/mips/cavium-octeon/setup.c:1184: undefined
> reference to `__dtb_octeon_68xx_begin'
>
> Thanks
> James
>
>


-- 
Best Regards
Masahiro Yamada

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: [PATCH 2/2] kbuild: handle dtb-y and CONFIG_OF_ALL_DTBS natively in Makefile.lib
  2017-11-09 12:23         ` Masahiro Yamada
@ 2017-11-09 20:34           ` Rob Herring
  -1 siblings, 0 replies; 44+ messages in thread
From: Rob Herring @ 2017-11-09 20:34 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: James Hogan, devicetree, Linux Kbuild mailing list, Mark Rutland,
	Pantelis Antoniou, ARM Kernel List, Arnd Bergmann, LKML,
	Michal Marek, Sam Ravnborg, Linux MIPS Mailing List,
	Ralf Baechle, David Daney, James Hogan, Linux-Next Mailing List

On Thu, Nov 9, 2017 at 6:23 AM, Masahiro Yamada
<yamada.masahiro@socionext.com> wrote:
> Hi James,
>
>
> 2017-11-09 21:19 GMT+09:00 James Hogan <james@albanarts.com>:
>> (resend using a working From address)
>>
>> <yamada.masahiro@socionext.com> wrote:
>>> If CONFIG_OF_ALL_DTBS is enabled, "make ARCH=arm64 dtbs" compiles each
>>> DTB twice; one from arch/arm64/boot/dts/*/Makefile and the other from
>>> the dtb-$(CONFIG_OF_ALL_DTBS) line in arch/arm64/boot/dts/Makefile.
>>> It could be a race problem when building DTBS in parallel.
>>>
>>> Another minor issue is CONFIG_OF_ALL_DTBS covers only *.dts in vendor
>>> sub-directories, so this broke when Broadcom added one more hierarchy
>>> in arch/arm64/boot/dts/broadcom/<soc>/.
>>>
>>> One idea to fix the issues in a clean way is to move DTB handling
>>> to Kbuild core scripts.  Makefile.dtbinst already recognizes dtb-y
>>> natively, so it should not hurt to do so.
>>>
>>> Add $(dtb-y) to extra-y, and $(dtb-) as well if CONFIG_OF_ALL_DTBS is
>>> enabled.  All clutter things in Makefiles go away.
>>>
>>> As a bonus clean-up, I also removed dts-dirs.  Just use subdir-y
>>> directly to traverse sub-directories.
>>>
>>> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
>>
>>  ...
>>
>>> diff --git a/arch/mips/boot/dts/Makefile b/arch/mips/boot/dts/Makefile
>>> index 7891ffa..b2b0d88 100644
>>> --- a/arch/mips/boot/dts/Makefile
>>> +++ b/arch/mips/boot/dts/Makefile
>>> @@ -1,20 +1,14 @@
>>> -dts-dirs       += brcm
>>> -dts-dirs       += cavium-octeon
>>> -dts-dirs       += img
>>> -dts-dirs       += ingenic
>>> -dts-dirs       += lantiq
>>> -dts-dirs       += mti
>>> -dts-dirs       += netlogic
>>> -dts-dirs       += ni
>>> -dts-dirs       += pic32
>>> -dts-dirs       += qca
>>> -dts-dirs       += ralink
>>> -dts-dirs       += xilfpga
>>> +subdir-y       += brcm
>>> +subdir-y       += cavium-octeon
>>> +subdir-y       += img
>>> +subdir-y       += ingenic
>>> +subdir-y       += lantiq
>>> +subdir-y       += mti
>>> +subdir-y       += netlogic
>>> +subdir-y       += ni
>>> +subdir-y       += pic32
>>> +subdir-y       += qca
>>> +subdir-y       += ralink
>>> +subdir-y       += xilfpga
>>>
>>> -obj-y          := $(addsuffix /, $(dts-dirs))
>>> -
>>> -dtstree                := $(srctree)/$(src)
>>> -dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(foreach d,$(dts-dirs), $(wildcard $(dtstree)/$(d)/*.dts)))
>>> -
>>> -always         := $(dtb-y)
>>> -subdir-y       := $(dts-dirs)
>>> +obj-$(BUILTIN_DTB)     := $(addsuffix /, $(subdir-y))
>>
>> I wonder if that should be CONFIG_BUILTIN_DTB?
>>
>> This is causing failures in linux-next with MIPS
>> cavium_octeon_defconfig like below, and changing this line to
>> CONFIG_BUILTIN_DTB seems to fix it.
>
> Good catch!
>
>
> Rob,
> Can you fix it to CONFIG_BUILTIN_DTB?

Fixed.

Rob

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [PATCH 2/2] kbuild: handle dtb-y and CONFIG_OF_ALL_DTBS natively in Makefile.lib
@ 2017-11-09 20:34           ` Rob Herring
  0 siblings, 0 replies; 44+ messages in thread
From: Rob Herring @ 2017-11-09 20:34 UTC (permalink / raw)
  To: linux-arm-kernel

On Thu, Nov 9, 2017 at 6:23 AM, Masahiro Yamada
<yamada.masahiro@socionext.com> wrote:
> Hi James,
>
>
> 2017-11-09 21:19 GMT+09:00 James Hogan <james@albanarts.com>:
>> (resend using a working From address)
>>
>> <yamada.masahiro@socionext.com> wrote:
>>> If CONFIG_OF_ALL_DTBS is enabled, "make ARCH=arm64 dtbs" compiles each
>>> DTB twice; one from arch/arm64/boot/dts/*/Makefile and the other from
>>> the dtb-$(CONFIG_OF_ALL_DTBS) line in arch/arm64/boot/dts/Makefile.
>>> It could be a race problem when building DTBS in parallel.
>>>
>>> Another minor issue is CONFIG_OF_ALL_DTBS covers only *.dts in vendor
>>> sub-directories, so this broke when Broadcom added one more hierarchy
>>> in arch/arm64/boot/dts/broadcom/<soc>/.
>>>
>>> One idea to fix the issues in a clean way is to move DTB handling
>>> to Kbuild core scripts.  Makefile.dtbinst already recognizes dtb-y
>>> natively, so it should not hurt to do so.
>>>
>>> Add $(dtb-y) to extra-y, and $(dtb-) as well if CONFIG_OF_ALL_DTBS is
>>> enabled.  All clutter things in Makefiles go away.
>>>
>>> As a bonus clean-up, I also removed dts-dirs.  Just use subdir-y
>>> directly to traverse sub-directories.
>>>
>>> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
>>
>>  ...
>>
>>> diff --git a/arch/mips/boot/dts/Makefile b/arch/mips/boot/dts/Makefile
>>> index 7891ffa..b2b0d88 100644
>>> --- a/arch/mips/boot/dts/Makefile
>>> +++ b/arch/mips/boot/dts/Makefile
>>> @@ -1,20 +1,14 @@
>>> -dts-dirs       += brcm
>>> -dts-dirs       += cavium-octeon
>>> -dts-dirs       += img
>>> -dts-dirs       += ingenic
>>> -dts-dirs       += lantiq
>>> -dts-dirs       += mti
>>> -dts-dirs       += netlogic
>>> -dts-dirs       += ni
>>> -dts-dirs       += pic32
>>> -dts-dirs       += qca
>>> -dts-dirs       += ralink
>>> -dts-dirs       += xilfpga
>>> +subdir-y       += brcm
>>> +subdir-y       += cavium-octeon
>>> +subdir-y       += img
>>> +subdir-y       += ingenic
>>> +subdir-y       += lantiq
>>> +subdir-y       += mti
>>> +subdir-y       += netlogic
>>> +subdir-y       += ni
>>> +subdir-y       += pic32
>>> +subdir-y       += qca
>>> +subdir-y       += ralink
>>> +subdir-y       += xilfpga
>>>
>>> -obj-y          := $(addsuffix /, $(dts-dirs))
>>> -
>>> -dtstree                := $(srctree)/$(src)
>>> -dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(foreach d,$(dts-dirs), $(wildcard $(dtstree)/$(d)/*.dts)))
>>> -
>>> -always         := $(dtb-y)
>>> -subdir-y       := $(dts-dirs)
>>> +obj-$(BUILTIN_DTB)     := $(addsuffix /, $(subdir-y))
>>
>> I wonder if that should be CONFIG_BUILTIN_DTB?
>>
>> This is causing failures in linux-next with MIPS
>> cavium_octeon_defconfig like below, and changing this line to
>> CONFIG_BUILTIN_DTB seems to fix it.
>
> Good catch!
>
>
> Rob,
> Can you fix it to CONFIG_BUILTIN_DTB?

Fixed.

Rob

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
@ 2017-11-09 23:06                 ` Rob Herring
  0 siblings, 0 replies; 44+ messages in thread
From: Rob Herring @ 2017-11-09 23:06 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: James Hogan, devicetree, Linux Kbuild mailing list, Mark Rutland,
	Pantelis Antoniou, linux-arm-kernel, Arnd Bergmann,
	Linux Kernel Mailing List, Michal Marek, Sam Ravnborg,
	Ralf Baechle, Linux-MIPS, Kevin Cernekee, Florian Fainelli

On Wed, Nov 8, 2017 at 6:38 PM, Masahiro Yamada
<yamada.masahiro@socionext.com> wrote:
> 2017-11-09 9:11 GMT+09:00 Masahiro Yamada <yamada.masahiro@socionext.com>:
>> 2017-11-09 1:51 GMT+09:00 Rob Herring <robh+dt@kernel.org>:
>>> On Mon, Nov 6, 2017 at 5:00 AM, Masahiro Yamada
>>> <yamada.masahiro@socionext.com> wrote:
>>>> 2017-11-06 19:41 GMT+09:00 James Hogan <jhogan@kernel.org>:
>>>>> Hi,
>>>>>
>>>>> On Sun, Nov 05, 2017 at 11:11:38PM +0900, Masahiro Yamada wrote:
>>>>>> +CC Ralf Baechle <ralf@linux-mips.org>
>>>>>> +CC linux-mips@linux-mips.org
>>>>>> +CC Kevin Cernekee <cernekee@gmail.com>
>>>>>> +CC Florian Fainelli <f.fainelli@gmail.com>
>>>>>>
>>>>>>
>>>>>> I missed to CC MIPS maintainers.
>>>>>
>>>>> Yes, please resend the patch so it lands in patchwork.linux-mips.org.
>>>>
>>>>
>>>> This is a part of clean-up series of DT building.
>>>>
>>>> I want Acked-by from MIPS maintainers
>>>> so that the whole series can go to a different tree.
>>>> (DT or Kbuild).
>>>>
>>>>
>>>> Sam addressed more clean-up candidates in MIPS Makefiles
>>>> https://patchwork.kernel.org/patch/10041879/
>>>>
>>>> So, I will probably end up with touching those Makefiles more.
>>>>
>>>> All patches must go to the same tree.
>>>>
>>>>
>>>>>> 2017-11-05 14:30 GMT+09:00 Masahiro Yamada <yamada.masahiro@socionext.com>:
>>>>>> > arch/mips/boot/dts/brcm/bcm96358nb4ser.dts does not exist, so
>>>>>> > we cannot build bcm96358nb4ser.dtb .
>>>>>
>>>>> This appears to be due to the file being renamed in commit 695835511f96
>>>>> ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom").
>>>>> Please can you update the commit message when you resend to mention the
>>>>> cause of the problem.
>>>>>
>>>>> You could also add the following if you like while you're at it:
>>>>>
>>>>> Fixes: 695835511f96 ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom")
>>>>> Cc: <stable@vger.kernel.org> # 4.9+
>>>
>>> I think this one can be applied independently and we'd want it to if
>>> we tag for stable. So I think it can go thru the MIPS tree.
>>>
>>
>>
>> As I said to MIPS folks, this patch must go before 2/2.
>>
>> You picked up only 2/2, so your dt/kbuild branch is broken.
>>
>>
>> make ARCH=mips allyesconfig
>> && make ARCH=mips CROSS_COMPILE=mips-linux- dtbs
>>
>>
>> will produce the following error.
>>
>>
>> make[2]: *** No rule to make target
>> 'arch/mips/boot/dts/brcm/bcm96358nb4ser.dtb', needed by '__build'.
>> Stop.
>> scripts/Makefile.build:570: recipe for target 'arch/mips/boot/dts/brcm' failed
>> make[1]: *** [arch/mips/boot/dts/brcm] Error 2
>> arch/mips/Makefile:413: recipe for target 'dtbs' failed
>> make: *** [dtbs] Error 2
>>
>
>
> Looking into it, probably
> bmips_dtb_defconfig was already broken regardless my patches.
>
> But, I am not comfortable with breaking all{yes,mod}config
> because they are often used for build test.
>
>
> I hope you can apply this in the order as I sent,
> with the following tag.
>
> Fixes: 695835511f96 ("MIPS: BMIPS: rename bcm96358nb4ser to
> bcm6358-neufbox4-sercom")
> Cc: <stable@vger.kernel.org> # 4.9+

Okay, now applied.

Rob

^ permalink raw reply	[flat|nested] 44+ messages in thread

* Re: [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
@ 2017-11-09 23:06                 ` Rob Herring
  0 siblings, 0 replies; 44+ messages in thread
From: Rob Herring @ 2017-11-09 23:06 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: James Hogan, devicetree-u79uwXL29TY76Z2rM5mHXA,
	Linux Kbuild mailing list, Mark Rutland, Pantelis Antoniou,
	linux-arm-kernel, Arnd Bergmann, Linux Kernel Mailing List,
	Michal Marek, Sam Ravnborg, Ralf Baechle, Linux-MIPS,
	Kevin Cernekee, Florian Fainelli

On Wed, Nov 8, 2017 at 6:38 PM, Masahiro Yamada
<yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org> wrote:
> 2017-11-09 9:11 GMT+09:00 Masahiro Yamada <yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>:
>> 2017-11-09 1:51 GMT+09:00 Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>:
>>> On Mon, Nov 6, 2017 at 5:00 AM, Masahiro Yamada
>>> <yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org> wrote:
>>>> 2017-11-06 19:41 GMT+09:00 James Hogan <jhogan-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>:
>>>>> Hi,
>>>>>
>>>>> On Sun, Nov 05, 2017 at 11:11:38PM +0900, Masahiro Yamada wrote:
>>>>>> +CC Ralf Baechle <ralf-6z/3iImG2C8G8FEW9MqTrA@public.gmane.org>
>>>>>> +CC linux-mips-6z/3iImG2C8G8FEW9MqTrA@public.gmane.org
>>>>>> +CC Kevin Cernekee <cernekee-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
>>>>>> +CC Florian Fainelli <f.fainelli-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
>>>>>>
>>>>>>
>>>>>> I missed to CC MIPS maintainers.
>>>>>
>>>>> Yes, please resend the patch so it lands in patchwork.linux-mips.org.
>>>>
>>>>
>>>> This is a part of clean-up series of DT building.
>>>>
>>>> I want Acked-by from MIPS maintainers
>>>> so that the whole series can go to a different tree.
>>>> (DT or Kbuild).
>>>>
>>>>
>>>> Sam addressed more clean-up candidates in MIPS Makefiles
>>>> https://patchwork.kernel.org/patch/10041879/
>>>>
>>>> So, I will probably end up with touching those Makefiles more.
>>>>
>>>> All patches must go to the same tree.
>>>>
>>>>
>>>>>> 2017-11-05 14:30 GMT+09:00 Masahiro Yamada <yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>:
>>>>>> > arch/mips/boot/dts/brcm/bcm96358nb4ser.dts does not exist, so
>>>>>> > we cannot build bcm96358nb4ser.dtb .
>>>>>
>>>>> This appears to be due to the file being renamed in commit 695835511f96
>>>>> ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom").
>>>>> Please can you update the commit message when you resend to mention the
>>>>> cause of the problem.
>>>>>
>>>>> You could also add the following if you like while you're at it:
>>>>>
>>>>> Fixes: 695835511f96 ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom")
>>>>> Cc: <stable-u79uwXL29TY76Z2rM5mHXA@public.gmane.org> # 4.9+
>>>
>>> I think this one can be applied independently and we'd want it to if
>>> we tag for stable. So I think it can go thru the MIPS tree.
>>>
>>
>>
>> As I said to MIPS folks, this patch must go before 2/2.
>>
>> You picked up only 2/2, so your dt/kbuild branch is broken.
>>
>>
>> make ARCH=mips allyesconfig
>> && make ARCH=mips CROSS_COMPILE=mips-linux- dtbs
>>
>>
>> will produce the following error.
>>
>>
>> make[2]: *** No rule to make target
>> 'arch/mips/boot/dts/brcm/bcm96358nb4ser.dtb', needed by '__build'.
>> Stop.
>> scripts/Makefile.build:570: recipe for target 'arch/mips/boot/dts/brcm' failed
>> make[1]: *** [arch/mips/boot/dts/brcm] Error 2
>> arch/mips/Makefile:413: recipe for target 'dtbs' failed
>> make: *** [dtbs] Error 2
>>
>
>
> Looking into it, probably
> bmips_dtb_defconfig was already broken regardless my patches.
>
> But, I am not comfortable with breaking all{yes,mod}config
> because they are often used for build test.
>
>
> I hope you can apply this in the order as I sent,
> with the following tag.
>
> Fixes: 695835511f96 ("MIPS: BMIPS: rename bcm96358nb4ser to
> bcm6358-neufbox4-sercom")
> Cc: <stable-u79uwXL29TY76Z2rM5mHXA@public.gmane.org> # 4.9+

Okay, now applied.

Rob
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 44+ messages in thread

* [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
@ 2017-11-09 23:06                 ` Rob Herring
  0 siblings, 0 replies; 44+ messages in thread
From: Rob Herring @ 2017-11-09 23:06 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, Nov 8, 2017 at 6:38 PM, Masahiro Yamada
<yamada.masahiro@socionext.com> wrote:
> 2017-11-09 9:11 GMT+09:00 Masahiro Yamada <yamada.masahiro@socionext.com>:
>> 2017-11-09 1:51 GMT+09:00 Rob Herring <robh+dt@kernel.org>:
>>> On Mon, Nov 6, 2017 at 5:00 AM, Masahiro Yamada
>>> <yamada.masahiro@socionext.com> wrote:
>>>> 2017-11-06 19:41 GMT+09:00 James Hogan <jhogan@kernel.org>:
>>>>> Hi,
>>>>>
>>>>> On Sun, Nov 05, 2017 at 11:11:38PM +0900, Masahiro Yamada wrote:
>>>>>> +CC Ralf Baechle <ralf@linux-mips.org>
>>>>>> +CC linux-mips at linux-mips.org
>>>>>> +CC Kevin Cernekee <cernekee@gmail.com>
>>>>>> +CC Florian Fainelli <f.fainelli@gmail.com>
>>>>>>
>>>>>>
>>>>>> I missed to CC MIPS maintainers.
>>>>>
>>>>> Yes, please resend the patch so it lands in patchwork.linux-mips.org.
>>>>
>>>>
>>>> This is a part of clean-up series of DT building.
>>>>
>>>> I want Acked-by from MIPS maintainers
>>>> so that the whole series can go to a different tree.
>>>> (DT or Kbuild).
>>>>
>>>>
>>>> Sam addressed more clean-up candidates in MIPS Makefiles
>>>> https://patchwork.kernel.org/patch/10041879/
>>>>
>>>> So, I will probably end up with touching those Makefiles more.
>>>>
>>>> All patches must go to the same tree.
>>>>
>>>>
>>>>>> 2017-11-05 14:30 GMT+09:00 Masahiro Yamada <yamada.masahiro@socionext.com>:
>>>>>> > arch/mips/boot/dts/brcm/bcm96358nb4ser.dts does not exist, so
>>>>>> > we cannot build bcm96358nb4ser.dtb .
>>>>>
>>>>> This appears to be due to the file being renamed in commit 695835511f96
>>>>> ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom").
>>>>> Please can you update the commit message when you resend to mention the
>>>>> cause of the problem.
>>>>>
>>>>> You could also add the following if you like while you're at it:
>>>>>
>>>>> Fixes: 695835511f96 ("MIPS: BMIPS: rename bcm96358nb4ser to bcm6358-neufbox4-sercom")
>>>>> Cc: <stable@vger.kernel.org> # 4.9+
>>>
>>> I think this one can be applied independently and we'd want it to if
>>> we tag for stable. So I think it can go thru the MIPS tree.
>>>
>>
>>
>> As I said to MIPS folks, this patch must go before 2/2.
>>
>> You picked up only 2/2, so your dt/kbuild branch is broken.
>>
>>
>> make ARCH=mips allyesconfig
>> && make ARCH=mips CROSS_COMPILE=mips-linux- dtbs
>>
>>
>> will produce the following error.
>>
>>
>> make[2]: *** No rule to make target
>> 'arch/mips/boot/dts/brcm/bcm96358nb4ser.dtb', needed by '__build'.
>> Stop.
>> scripts/Makefile.build:570: recipe for target 'arch/mips/boot/dts/brcm' failed
>> make[1]: *** [arch/mips/boot/dts/brcm] Error 2
>> arch/mips/Makefile:413: recipe for target 'dtbs' failed
>> make: *** [dtbs] Error 2
>>
>
>
> Looking into it, probably
> bmips_dtb_defconfig was already broken regardless my patches.
>
> But, I am not comfortable with breaking all{yes,mod}config
> because they are often used for build test.
>
>
> I hope you can apply this in the order as I sent,
> with the following tag.
>
> Fixes: 695835511f96 ("MIPS: BMIPS: rename bcm96358nb4ser to
> bcm6358-neufbox4-sercom")
> Cc: <stable@vger.kernel.org> # 4.9+

Okay, now applied.

Rob

^ permalink raw reply	[flat|nested] 44+ messages in thread

end of thread, other threads:[~2017-11-09 23:06 UTC | newest]

Thread overview: 44+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-11-05  5:30 [PATCH 0/2] kbuild: move dtb-y and CONFIG_OF_ALL_DTBS to Kbuild core to fix some issues Masahiro Yamada
2017-11-05  5:30 ` Masahiro Yamada
2017-11-05  5:30 ` Masahiro Yamada
2017-11-05  5:30 ` [PATCH 1/2] MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry Masahiro Yamada
2017-11-05  5:30   ` Masahiro Yamada
2017-11-05 14:11   ` Masahiro Yamada
2017-11-05 14:11     ` Masahiro Yamada
2017-11-06 10:41     ` James Hogan
2017-11-06 10:41       ` James Hogan
2017-11-06 10:41       ` James Hogan
2017-11-06 11:00       ` Masahiro Yamada
2017-11-06 11:00         ` Masahiro Yamada
2017-11-08 16:51         ` Rob Herring
2017-11-08 16:51           ` Rob Herring
2017-11-09  0:11           ` Masahiro Yamada
2017-11-09  0:11             ` Masahiro Yamada
2017-11-09  0:38             ` Masahiro Yamada
2017-11-09  0:38               ` Masahiro Yamada
2017-11-09  0:38               ` Masahiro Yamada
2017-11-09 23:06               ` Rob Herring
2017-11-09 23:06                 ` Rob Herring
2017-11-09 23:06                 ` Rob Herring
2017-11-09  8:06         ` James Hogan
2017-11-09  8:06           ` James Hogan
2017-11-09  8:06           ` James Hogan
2017-11-09  8:06           ` James Hogan
2017-11-05  5:30 ` [PATCH 2/2] kbuild: handle dtb-y and CONFIG_OF_ALL_DTBS natively in Makefile.lib Masahiro Yamada
2017-11-05  5:30   ` Masahiro Yamada
2017-11-05  8:39   ` Sam Ravnborg
2017-11-05  8:39     ` Sam Ravnborg
2017-11-05 13:49   ` Arnd Bergmann
2017-11-05 13:49     ` Arnd Bergmann
2017-11-05 13:49     ` Arnd Bergmann
2017-11-08 17:23     ` Rob Herring
2017-11-08 17:23       ` Rob Herring
2017-11-08 17:23       ` Rob Herring
     [not found]   ` <CAAG0J98rRS+Sw8k_87gmTqYdNWByk=9zWVbWnC348vd63H4N9w@mail.gmail.com>
2017-11-09 12:19     ` James Hogan
2017-11-09 12:19       ` James Hogan
2017-11-09 12:19       ` James Hogan
2017-11-09 12:23       ` Masahiro Yamada
2017-11-09 12:23         ` Masahiro Yamada
2017-11-09 12:23         ` Masahiro Yamada
2017-11-09 20:34         ` Rob Herring
2017-11-09 20:34           ` Rob Herring

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.