To be consistent with other architectures and to avoid unnecessary makefile duplication, move all MIPS device-trees to arch/mips/boot/dts and build them with a common makefile. Per Olof's suggestion in v1, device-trees are grouped into per-vendor subdirectories, based on the kbuild changes introduced by Robert Richter's series for arm64 DTS vendor subdirectories [0]. The makefiles for MIPS must be adjusted slightly from what is used for arm{,64} since most MIPS platforms require builtin device-tree binaries. This introduces two bits of ugliness: a) *.dtb.o files are still generated by 'make dtbs' since there is no longer a 'dtbs' target for the .../boot/dts makefile, and b) the dummy.o trick to force kbuild to make an empty built-in.o. I'd be interested in any suggestions to avoid these, since I"m by no means a makefile/kbuild expert. Patch 1 sets up the makefiles for building the DTs in arch/mips/boot/dts and introduces the config option BUILTIN_DTB for platforms that require it. Patch 2 introduces the 'dtbs' and 'dtbs_install' makefile targets. Patch 3 moves the DTs out of the platform directores. I've build tested this on all affected platforms (Octeon, Lantiq, SEAD3, Netlogic, and Ralink) as well as Malta. For platforms where builtin DTBs are optional (Netlogic and Ralink), I built with and without the builtin DTBs. Based on 3.17-rc5. Changes from v2: - added 'dtbs_install' target - squashed move of dts files into a single patch - rebased on 3.17-rc5 + Robert's dts vendor subdir support Changes from v1: - moved to per-vendor subdirectories - rebased on 3.17-rc2 [0] https://lkml.org/lkml/2014/9/5/64 Andrew Bresticker (3): MIPS: Create common infrastructure for building built-in device-trees MIPS: Add support for building and installing device-tree binaries MIPS: Move device-trees to arch/mips/boot/dts arch/mips/Kconfig | 5 +++++ arch/mips/Makefile | 16 ++++++++++++++++ arch/mips/boot/.gitignore | 1 + arch/mips/boot/dts/Makefile | 10 ++++++++++ arch/mips/boot/dts/cavium-octeon/Makefile | 9 +++++++++ arch/mips/{ => boot/dts}/cavium-octeon/octeon_3xxx.dts | 0 arch/mips/{ => boot/dts}/cavium-octeon/octeon_68xx.dts | 0 arch/mips/boot/dts/lantiq/Makefile | 9 +++++++++ arch/mips/{lantiq/dts => boot/dts/lantiq}/danube.dtsi | 0 arch/mips/{lantiq/dts => boot/dts/lantiq}/easy50712.dts | 0 arch/mips/boot/dts/mti/Makefile | 9 +++++++++ arch/mips/{mti-sead3 => boot/dts/mti}/sead3.dts | 0 arch/mips/boot/dts/netlogic/Makefile | 12 ++++++++++++ .../mips/{netlogic/dts => boot/dts/netlogic}/xlp_evp.dts | 0 .../mips/{netlogic/dts => boot/dts/netlogic}/xlp_fvp.dts | 0 .../mips/{netlogic/dts => boot/dts/netlogic}/xlp_gvp.dts | 0 .../mips/{netlogic/dts => boot/dts/netlogic}/xlp_svp.dts | 0 arch/mips/boot/dts/ralink/Makefile | 12 ++++++++++++ arch/mips/{ralink/dts => boot/dts/ralink}/mt7620a.dtsi | 0 .../{ralink/dts => boot/dts/ralink}/mt7620a_eval.dts | 0 arch/mips/{ralink/dts => boot/dts/ralink}/rt2880.dtsi | 0 .../mips/{ralink/dts => boot/dts/ralink}/rt2880_eval.dts | 0 arch/mips/{ralink/dts => boot/dts/ralink}/rt3050.dtsi | 0 .../mips/{ralink/dts => boot/dts/ralink}/rt3052_eval.dts | 0 arch/mips/{ralink/dts => boot/dts/ralink}/rt3883.dtsi | 0 .../mips/{ralink/dts => boot/dts/ralink}/rt3883_eval.dts | 0 arch/mips/cavium-octeon/.gitignore | 2 -- arch/mips/cavium-octeon/Makefile | 10 ---------- arch/mips/lantiq/Kconfig | 1 + arch/mips/lantiq/Makefile | 2 -- arch/mips/lantiq/dts/Makefile | 1 - arch/mips/mti-sead3/Makefile | 4 ---- arch/mips/netlogic/Kconfig | 4 ++++ arch/mips/netlogic/Makefile | 1 - arch/mips/netlogic/dts/Makefile | 4 ---- arch/mips/ralink/Kconfig | 4 ++++ arch/mips/ralink/Makefile | 2 -- arch/mips/ralink/dts/Makefile | 4 ---- 38 files changed, 92 insertions(+), 30 deletions(-) create mode 100644 arch/mips/boot/dts/Makefile create mode 100644 arch/mips/boot/dts/cavium-octeon/Makefile rename arch/mips/{ => boot/dts}/cavium-octeon/octeon_3xxx.dts (100%) rename arch/mips/{ => boot/dts}/cavium-octeon/octeon_68xx.dts (100%) create mode 100644 arch/mips/boot/dts/lantiq/Makefile rename arch/mips/{lantiq/dts => boot/dts/lantiq}/danube.dtsi (100%) rename arch/mips/{lantiq/dts => boot/dts/lantiq}/easy50712.dts (100%) create mode 100644 arch/mips/boot/dts/mti/Makefile rename arch/mips/{mti-sead3 => boot/dts/mti}/sead3.dts (100%) create mode 100644 arch/mips/boot/dts/netlogic/Makefile rename arch/mips/{netlogic/dts => boot/dts/netlogic}/xlp_evp.dts (100%) rename arch/mips/{netlogic/dts => boot/dts/netlogic}/xlp_fvp.dts (100%) rename arch/mips/{netlogic/dts => boot/dts/netlogic}/xlp_gvp.dts (100%) rename arch/mips/{netlogic/dts => boot/dts/netlogic}/xlp_svp.dts (100%) create mode 100644 arch/mips/boot/dts/ralink/Makefile rename arch/mips/{ralink/dts => boot/dts/ralink}/mt7620a.dtsi (100%) rename arch/mips/{ralink/dts => boot/dts/ralink}/mt7620a_eval.dts (100%) rename arch/mips/{ralink/dts => boot/dts/ralink}/rt2880.dtsi (100%) rename arch/mips/{ralink/dts => boot/dts/ralink}/rt2880_eval.dts (100%) rename arch/mips/{ralink/dts => boot/dts/ralink}/rt3050.dtsi (100%) rename arch/mips/{ralink/dts => boot/dts/ralink}/rt3052_eval.dts (100%) rename arch/mips/{ralink/dts => boot/dts/ralink}/rt3883.dtsi (100%) rename arch/mips/{ralink/dts => boot/dts/ralink}/rt3883_eval.dts (100%) delete mode 100644 arch/mips/cavium-octeon/.gitignore delete mode 100644 arch/mips/lantiq/dts/Makefile delete mode 100644 arch/mips/netlogic/dts/Makefile delete mode 100644 arch/mips/ralink/dts/Makefile -- 2.1.0.rc2.206.gedb03e5 -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html