summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorimp <imp@FreeBSD.org>2014-02-28 18:29:09 +0000
committerimp <imp@FreeBSD.org>2014-02-28 18:29:09 +0000
commit7c37cf4f64a8b60173836f7982a52d237f80331d (patch)
treea108ed945633a610d53d8813406306de44eca8c0
parent65a6006c96564a609fd04df91eb0f897570e8040 (diff)
downloadFreeBSD-src-7c37cf4f64a8b60173836f7982a52d237f80331d.zip
FreeBSD-src-7c37cf4f64a8b60173836f7982a52d237f80331d.tar.gz
Integrate device-tree upstream files into the build process:
(1) Invoke cpp to bring in files via #include (although the old /include/ stuff is supported still). (2) bring in files from either vendor tree or freebsd-custom files when building. (3) move all dts* files from sys/boot/fdt/dts to sys/boot/fdt/dts/${MACHINE} as appropriate. (4) encode all the magic to do the build in sys/tools/fdt/make_dtb.sh so that the different places in the tree use the exact same logic. (5) switch back to gpl dtc by default. the bsdl one in the tree has significant issues not easily addressed by those unfamiliar with the code.
-rw-r--r--Makefile.inc110
-rw-r--r--share/mk/bsd.own.mk2
-rw-r--r--sys/boot/fdt/dts/arm/am335x-evm.dts (renamed from sys/boot/fdt/dts/am335x-evm.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/am335x.dtsi (renamed from sys/boot/fdt/dts/am335x.dtsi)0
-rw-r--r--sys/boot/fdt/dts/arm/bcm2835.dtsi (renamed from sys/boot/fdt/dts/bcm2835.dtsi)0
-rw-r--r--sys/boot/fdt/dts/arm/beaglebone-black.dts (renamed from sys/boot/fdt/dts/beaglebone-black.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/beaglebone.dts (renamed from sys/boot/fdt/dts/beaglebone.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/cubieboard.dts (renamed from sys/boot/fdt/dts/cubieboard.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/cubieboard2.dts (renamed from sys/boot/fdt/dts/cubieboard2.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/db78100.dts (renamed from sys/boot/fdt/dts/db78100.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/db78460.dts (renamed from sys/boot/fdt/dts/db78460.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/db88f5182.dts (renamed from sys/boot/fdt/dts/db88f5182.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/db88f5281.dts (renamed from sys/boot/fdt/dts/db88f5281.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/db88f6281.dts (renamed from sys/boot/fdt/dts/db88f6281.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/digi-ccwmx53.dts (renamed from sys/boot/fdt/dts/digi-ccwmx53.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/dockstar.dts (renamed from sys/boot/fdt/dts/dockstar.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/dreamplug-1001.dts (renamed from sys/boot/fdt/dts/dreamplug-1001.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/dreamplug-1001N.dts (renamed from sys/boot/fdt/dts/dreamplug-1001N.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/ea3250.dts (renamed from sys/boot/fdt/dts/ea3250.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/efikamx.dts (renamed from sys/boot/fdt/dts/efikamx.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/exynos5250-arndale.dts (renamed from sys/boot/fdt/dts/exynos5250-arndale.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/exynos5250.dtsi (renamed from sys/boot/fdt/dts/exynos5250.dtsi)0
-rw-r--r--sys/boot/fdt/dts/arm/imx51x.dtsi (renamed from sys/boot/fdt/dts/imx51x.dtsi)0
-rw-r--r--sys/boot/fdt/dts/arm/imx53-qsb.dts (renamed from sys/boot/fdt/dts/imx53-qsb.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/imx53x.dtsi (renamed from sys/boot/fdt/dts/imx53x.dtsi)0
-rw-r--r--sys/boot/fdt/dts/arm/imx6.dtsi (renamed from sys/boot/fdt/dts/imx6.dtsi)0
-rw-r--r--sys/boot/fdt/dts/arm/p1020rdb.dts (renamed from sys/boot/fdt/dts/p1020rdb.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/p2020ds.dts (renamed from sys/boot/fdt/dts/p2020ds.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/p2041rdb.dts (renamed from sys/boot/fdt/dts/p2041rdb.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/p2041si.dtsi (renamed from sys/boot/fdt/dts/p2041si.dtsi)0
-rw-r--r--sys/boot/fdt/dts/arm/p3041ds.dts (renamed from sys/boot/fdt/dts/p3041ds.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/p3041si.dtsi (renamed from sys/boot/fdt/dts/p3041si.dtsi)0
-rw-r--r--sys/boot/fdt/dts/arm/p5020ds.dts (renamed from sys/boot/fdt/dts/p5020ds.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/p5020si.dtsi (renamed from sys/boot/fdt/dts/p5020si.dtsi)0
-rw-r--r--sys/boot/fdt/dts/arm/pandaboard.dts (renamed from sys/boot/fdt/dts/pandaboard.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/rk3188-radxa.dts (renamed from sys/boot/fdt/dts/rk3188-radxa.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/rk3188.dtsi (renamed from sys/boot/fdt/dts/rk3188.dtsi)0
-rw-r--r--sys/boot/fdt/dts/arm/rpi.dts (renamed from sys/boot/fdt/dts/rpi.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/sheevaplug.dts (renamed from sys/boot/fdt/dts/sheevaplug.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/tegra20-paz00.dts (renamed from sys/boot/fdt/dts/tegra20-paz00.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/tegra20.dtsi (renamed from sys/boot/fdt/dts/tegra20.dtsi)0
-rw-r--r--sys/boot/fdt/dts/arm/trimslice.dts (renamed from sys/boot/fdt/dts/trimslice.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/ts7800.dts (renamed from sys/boot/fdt/dts/ts7800.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/versatilepb.dts (renamed from sys/boot/fdt/dts/versatilepb.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/vybrid-colibri-vf50.dts (renamed from sys/boot/fdt/dts/vybrid-colibri-vf50.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/vybrid-cosmic.dts (renamed from sys/boot/fdt/dts/vybrid-cosmic.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/vybrid-quartz.dts (renamed from sys/boot/fdt/dts/vybrid-quartz.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/vybrid.dtsi (renamed from sys/boot/fdt/dts/vybrid.dtsi)0
-rw-r--r--sys/boot/fdt/dts/arm/wandboard-dual.dts (renamed from sys/boot/fdt/dts/wandboard-dual.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/wandboard-quad.dts (renamed from sys/boot/fdt/dts/wandboard-quad.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/wandboard-solo.dts (renamed from sys/boot/fdt/dts/wandboard-solo.dts)0
-rw-r--r--sys/boot/fdt/dts/arm/zedboard.dts (renamed from sys/boot/fdt/dts/zedboard.dts)0
-rw-r--r--sys/boot/fdt/dts/mips/beri-netfpga.dts (renamed from sys/boot/fdt/dts/beri-netfpga.dts)0
-rw-r--r--sys/boot/fdt/dts/mips/beri-sim.dts (renamed from sys/boot/fdt/dts/beri-sim.dts)0
-rw-r--r--sys/boot/fdt/dts/mips/beripad-de4.dts (renamed from sys/boot/fdt/dts/beripad-de4.dts)0
-rw-r--r--sys/boot/fdt/dts/mips/xlp-basic.dts (renamed from sys/boot/fdt/dts/xlp-basic.dts)0
-rw-r--r--sys/boot/fdt/dts/powerpc/mpc8555cds.dts (renamed from sys/boot/fdt/dts/mpc8555cds.dts)0
-rw-r--r--sys/boot/fdt/dts/powerpc/mpc8572ds.dts (renamed from sys/boot/fdt/dts/mpc8572ds.dts)0
-rw-r--r--sys/conf/files7
-rwxr-xr-xsys/tools/fdt/make_dtb.sh11
60 files changed, 21 insertions, 9 deletions
diff --git a/Makefile.inc1 b/Makefile.inc1
index 00d0a9f..2f22759 100644
--- a/Makefile.inc1
+++ b/Makefile.inc1
@@ -1262,7 +1262,7 @@ _dtrace_tools= cddl/usr.bin/sgsmsg cddl/lib/libctf lib/libelf \
lib/libdwarf cddl/usr.bin/ctfconvert cddl/usr.bin/ctfmerge
.endif
-# Default to building the BSDL DTC, but build the GPL one if users explicitly
+# Default to building the GPL DTC, but build the BSDL one if users explicitly
# request it.
_dtc= usr.bin/dtc
.if ${MK_GPL_DTC} != "no"
@@ -1853,7 +1853,7 @@ builddtb:
echo "ERROR: FDT_DTS_FILE must be specified!"; \
exit 1; \
fi; \
- if [ ! -f ${.CURDIR}/sys/boot/fdt/dts/${FDT_DTS_FILE} ]; then \
+ if [ ! -f ${.CURDIR}/sys/boot/fdt/dts/${MACHINE}/${FDT_DTS_FILE} ]; then \
echo "ERROR: Specified DTS file (${FDT_DTS_FILE}) does not \
exist!"; \
exit 1; \
@@ -1863,9 +1863,9 @@ builddtb:
directory"; \
fi
@PATH=${TMPPATH} \
- dtc -O dtb -o \
- ${DTBOUTPUTPATH}/`echo ${FDT_DTS_FILE} | cut -d. -f1`.dtb -b 0 \
- -p 1024 ${.CURDIR}/sys/boot/fdt/dts/${FDT_DTS_FILE}
+ ${.CURDIR}/sys/tools/fdt/make_dtb.sh ${.CURDIR}/sys \
+ ${FDT_DTS_FILE} \
+ ${DTBOUTPUTPATH}/`basename ${FDT_DTS_FILE} .dts`
###############
diff --git a/share/mk/bsd.own.mk b/share/mk/bsd.own.mk
index f4fd644..71f2e1e 100644
--- a/share/mk/bsd.own.mk
+++ b/share/mk/bsd.own.mk
@@ -287,6 +287,7 @@ __DEFAULT_YES_OPTIONS = \
GNU \
GPIB \
GPIO \
+ GPL_DTC \
GROFF \
HTML \
ICONV \
@@ -368,7 +369,6 @@ __DEFAULT_NO_OPTIONS = \
CLANG_EXTRAS \
CTF \
DEBUG_FILES \
- GPL_DTC \
HESIOD \
INSTALL_AS_USER \
LLDB \
diff --git a/sys/boot/fdt/dts/am335x-evm.dts b/sys/boot/fdt/dts/arm/am335x-evm.dts
index 30239f6..30239f6 100644
--- a/sys/boot/fdt/dts/am335x-evm.dts
+++ b/sys/boot/fdt/dts/arm/am335x-evm.dts
diff --git a/sys/boot/fdt/dts/am335x.dtsi b/sys/boot/fdt/dts/arm/am335x.dtsi
index 35cecf2..35cecf2 100644
--- a/sys/boot/fdt/dts/am335x.dtsi
+++ b/sys/boot/fdt/dts/arm/am335x.dtsi
diff --git a/sys/boot/fdt/dts/bcm2835.dtsi b/sys/boot/fdt/dts/arm/bcm2835.dtsi
index bb30248..bb30248 100644
--- a/sys/boot/fdt/dts/bcm2835.dtsi
+++ b/sys/boot/fdt/dts/arm/bcm2835.dtsi
diff --git a/sys/boot/fdt/dts/beaglebone-black.dts b/sys/boot/fdt/dts/arm/beaglebone-black.dts
index 5da633f..5da633f 100644
--- a/sys/boot/fdt/dts/beaglebone-black.dts
+++ b/sys/boot/fdt/dts/arm/beaglebone-black.dts
diff --git a/sys/boot/fdt/dts/beaglebone.dts b/sys/boot/fdt/dts/arm/beaglebone.dts
index 12be0d6..12be0d6 100644
--- a/sys/boot/fdt/dts/beaglebone.dts
+++ b/sys/boot/fdt/dts/arm/beaglebone.dts
diff --git a/sys/boot/fdt/dts/cubieboard.dts b/sys/boot/fdt/dts/arm/cubieboard.dts
index 81bce0c..81bce0c 100644
--- a/sys/boot/fdt/dts/cubieboard.dts
+++ b/sys/boot/fdt/dts/arm/cubieboard.dts
diff --git a/sys/boot/fdt/dts/cubieboard2.dts b/sys/boot/fdt/dts/arm/cubieboard2.dts
index 324ca26..324ca26 100644
--- a/sys/boot/fdt/dts/cubieboard2.dts
+++ b/sys/boot/fdt/dts/arm/cubieboard2.dts
diff --git a/sys/boot/fdt/dts/db78100.dts b/sys/boot/fdt/dts/arm/db78100.dts
index 8a9e91c..8a9e91c 100644
--- a/sys/boot/fdt/dts/db78100.dts
+++ b/sys/boot/fdt/dts/arm/db78100.dts
diff --git a/sys/boot/fdt/dts/db78460.dts b/sys/boot/fdt/dts/arm/db78460.dts
index 1407f62..1407f62 100644
--- a/sys/boot/fdt/dts/db78460.dts
+++ b/sys/boot/fdt/dts/arm/db78460.dts
diff --git a/sys/boot/fdt/dts/db88f5182.dts b/sys/boot/fdt/dts/arm/db88f5182.dts
index 6ce7b65..6ce7b65 100644
--- a/sys/boot/fdt/dts/db88f5182.dts
+++ b/sys/boot/fdt/dts/arm/db88f5182.dts
diff --git a/sys/boot/fdt/dts/db88f5281.dts b/sys/boot/fdt/dts/arm/db88f5281.dts
index 61212eb..61212eb 100644
--- a/sys/boot/fdt/dts/db88f5281.dts
+++ b/sys/boot/fdt/dts/arm/db88f5281.dts
diff --git a/sys/boot/fdt/dts/db88f6281.dts b/sys/boot/fdt/dts/arm/db88f6281.dts
index 55a27fc..55a27fc 100644
--- a/sys/boot/fdt/dts/db88f6281.dts
+++ b/sys/boot/fdt/dts/arm/db88f6281.dts
diff --git a/sys/boot/fdt/dts/digi-ccwmx53.dts b/sys/boot/fdt/dts/arm/digi-ccwmx53.dts
index 898ffbb..898ffbb 100644
--- a/sys/boot/fdt/dts/digi-ccwmx53.dts
+++ b/sys/boot/fdt/dts/arm/digi-ccwmx53.dts
diff --git a/sys/boot/fdt/dts/dockstar.dts b/sys/boot/fdt/dts/arm/dockstar.dts
index 595894a..595894a 100644
--- a/sys/boot/fdt/dts/dockstar.dts
+++ b/sys/boot/fdt/dts/arm/dockstar.dts
diff --git a/sys/boot/fdt/dts/dreamplug-1001.dts b/sys/boot/fdt/dts/arm/dreamplug-1001.dts
index 92ca1b0..92ca1b0 100644
--- a/sys/boot/fdt/dts/dreamplug-1001.dts
+++ b/sys/boot/fdt/dts/arm/dreamplug-1001.dts
diff --git a/sys/boot/fdt/dts/dreamplug-1001N.dts b/sys/boot/fdt/dts/arm/dreamplug-1001N.dts
index 230a65f..230a65f 100644
--- a/sys/boot/fdt/dts/dreamplug-1001N.dts
+++ b/sys/boot/fdt/dts/arm/dreamplug-1001N.dts
diff --git a/sys/boot/fdt/dts/ea3250.dts b/sys/boot/fdt/dts/arm/ea3250.dts
index 2c466e3..2c466e3 100644
--- a/sys/boot/fdt/dts/ea3250.dts
+++ b/sys/boot/fdt/dts/arm/ea3250.dts
diff --git a/sys/boot/fdt/dts/efikamx.dts b/sys/boot/fdt/dts/arm/efikamx.dts
index 22b455b..22b455b 100644
--- a/sys/boot/fdt/dts/efikamx.dts
+++ b/sys/boot/fdt/dts/arm/efikamx.dts
diff --git a/sys/boot/fdt/dts/exynos5250-arndale.dts b/sys/boot/fdt/dts/arm/exynos5250-arndale.dts
index 67cadcb..67cadcb 100644
--- a/sys/boot/fdt/dts/exynos5250-arndale.dts
+++ b/sys/boot/fdt/dts/arm/exynos5250-arndale.dts
diff --git a/sys/boot/fdt/dts/exynos5250.dtsi b/sys/boot/fdt/dts/arm/exynos5250.dtsi
index 860fcd0..860fcd0 100644
--- a/sys/boot/fdt/dts/exynos5250.dtsi
+++ b/sys/boot/fdt/dts/arm/exynos5250.dtsi
diff --git a/sys/boot/fdt/dts/imx51x.dtsi b/sys/boot/fdt/dts/arm/imx51x.dtsi
index cc06f0f..cc06f0f 100644
--- a/sys/boot/fdt/dts/imx51x.dtsi
+++ b/sys/boot/fdt/dts/arm/imx51x.dtsi
diff --git a/sys/boot/fdt/dts/imx53-qsb.dts b/sys/boot/fdt/dts/arm/imx53-qsb.dts
index 1184cb3..1184cb3 100644
--- a/sys/boot/fdt/dts/imx53-qsb.dts
+++ b/sys/boot/fdt/dts/arm/imx53-qsb.dts
diff --git a/sys/boot/fdt/dts/imx53x.dtsi b/sys/boot/fdt/dts/arm/imx53x.dtsi
index eafabcb..eafabcb 100644
--- a/sys/boot/fdt/dts/imx53x.dtsi
+++ b/sys/boot/fdt/dts/arm/imx53x.dtsi
diff --git a/sys/boot/fdt/dts/imx6.dtsi b/sys/boot/fdt/dts/arm/imx6.dtsi
index da81d79..da81d79 100644
--- a/sys/boot/fdt/dts/imx6.dtsi
+++ b/sys/boot/fdt/dts/arm/imx6.dtsi
diff --git a/sys/boot/fdt/dts/p1020rdb.dts b/sys/boot/fdt/dts/arm/p1020rdb.dts
index ec5118c..ec5118c 100644
--- a/sys/boot/fdt/dts/p1020rdb.dts
+++ b/sys/boot/fdt/dts/arm/p1020rdb.dts
diff --git a/sys/boot/fdt/dts/p2020ds.dts b/sys/boot/fdt/dts/arm/p2020ds.dts
index 7823429..7823429 100644
--- a/sys/boot/fdt/dts/p2020ds.dts
+++ b/sys/boot/fdt/dts/arm/p2020ds.dts
diff --git a/sys/boot/fdt/dts/p2041rdb.dts b/sys/boot/fdt/dts/arm/p2041rdb.dts
index aa5af07..aa5af07 100644
--- a/sys/boot/fdt/dts/p2041rdb.dts
+++ b/sys/boot/fdt/dts/arm/p2041rdb.dts
diff --git a/sys/boot/fdt/dts/p2041si.dtsi b/sys/boot/fdt/dts/arm/p2041si.dtsi
index 9db01fa..9db01fa 100644
--- a/sys/boot/fdt/dts/p2041si.dtsi
+++ b/sys/boot/fdt/dts/arm/p2041si.dtsi
diff --git a/sys/boot/fdt/dts/p3041ds.dts b/sys/boot/fdt/dts/arm/p3041ds.dts
index 70787e4..70787e4 100644
--- a/sys/boot/fdt/dts/p3041ds.dts
+++ b/sys/boot/fdt/dts/arm/p3041ds.dts
diff --git a/sys/boot/fdt/dts/p3041si.dtsi b/sys/boot/fdt/dts/arm/p3041si.dtsi
index 3335e48..3335e48 100644
--- a/sys/boot/fdt/dts/p3041si.dtsi
+++ b/sys/boot/fdt/dts/arm/p3041si.dtsi
diff --git a/sys/boot/fdt/dts/p5020ds.dts b/sys/boot/fdt/dts/arm/p5020ds.dts
index cb07045..cb07045 100644
--- a/sys/boot/fdt/dts/p5020ds.dts
+++ b/sys/boot/fdt/dts/arm/p5020ds.dts
diff --git a/sys/boot/fdt/dts/p5020si.dtsi b/sys/boot/fdt/dts/arm/p5020si.dtsi
index 27699cb..27699cb 100644
--- a/sys/boot/fdt/dts/p5020si.dtsi
+++ b/sys/boot/fdt/dts/arm/p5020si.dtsi
diff --git a/sys/boot/fdt/dts/pandaboard.dts b/sys/boot/fdt/dts/arm/pandaboard.dts
index 5544dc5..5544dc5 100644
--- a/sys/boot/fdt/dts/pandaboard.dts
+++ b/sys/boot/fdt/dts/arm/pandaboard.dts
diff --git a/sys/boot/fdt/dts/rk3188-radxa.dts b/sys/boot/fdt/dts/arm/rk3188-radxa.dts
index 7fc8ec5..7fc8ec5 100644
--- a/sys/boot/fdt/dts/rk3188-radxa.dts
+++ b/sys/boot/fdt/dts/arm/rk3188-radxa.dts
diff --git a/sys/boot/fdt/dts/rk3188.dtsi b/sys/boot/fdt/dts/arm/rk3188.dtsi
index ca04159..ca04159 100644
--- a/sys/boot/fdt/dts/rk3188.dtsi
+++ b/sys/boot/fdt/dts/arm/rk3188.dtsi
diff --git a/sys/boot/fdt/dts/rpi.dts b/sys/boot/fdt/dts/arm/rpi.dts
index 318591a..318591a 100644
--- a/sys/boot/fdt/dts/rpi.dts
+++ b/sys/boot/fdt/dts/arm/rpi.dts
diff --git a/sys/boot/fdt/dts/sheevaplug.dts b/sys/boot/fdt/dts/arm/sheevaplug.dts
index 3d347da..3d347da 100644
--- a/sys/boot/fdt/dts/sheevaplug.dts
+++ b/sys/boot/fdt/dts/arm/sheevaplug.dts
diff --git a/sys/boot/fdt/dts/tegra20-paz00.dts b/sys/boot/fdt/dts/arm/tegra20-paz00.dts
index 912a8f9..912a8f9 100644
--- a/sys/boot/fdt/dts/tegra20-paz00.dts
+++ b/sys/boot/fdt/dts/arm/tegra20-paz00.dts
diff --git a/sys/boot/fdt/dts/tegra20.dtsi b/sys/boot/fdt/dts/arm/tegra20.dtsi
index d7107fd..d7107fd 100644
--- a/sys/boot/fdt/dts/tegra20.dtsi
+++ b/sys/boot/fdt/dts/arm/tegra20.dtsi
diff --git a/sys/boot/fdt/dts/trimslice.dts b/sys/boot/fdt/dts/arm/trimslice.dts
index ac7017f..ac7017f 100644
--- a/sys/boot/fdt/dts/trimslice.dts
+++ b/sys/boot/fdt/dts/arm/trimslice.dts
diff --git a/sys/boot/fdt/dts/ts7800.dts b/sys/boot/fdt/dts/arm/ts7800.dts
index 547a2d7..547a2d7 100644
--- a/sys/boot/fdt/dts/ts7800.dts
+++ b/sys/boot/fdt/dts/arm/ts7800.dts
diff --git a/sys/boot/fdt/dts/versatilepb.dts b/sys/boot/fdt/dts/arm/versatilepb.dts
index ca58e88..ca58e88 100644
--- a/sys/boot/fdt/dts/versatilepb.dts
+++ b/sys/boot/fdt/dts/arm/versatilepb.dts
diff --git a/sys/boot/fdt/dts/vybrid-colibri-vf50.dts b/sys/boot/fdt/dts/arm/vybrid-colibri-vf50.dts
index 6d4d934..6d4d934 100644
--- a/sys/boot/fdt/dts/vybrid-colibri-vf50.dts
+++ b/sys/boot/fdt/dts/arm/vybrid-colibri-vf50.dts
diff --git a/sys/boot/fdt/dts/vybrid-cosmic.dts b/sys/boot/fdt/dts/arm/vybrid-cosmic.dts
index c98c093..c98c093 100644
--- a/sys/boot/fdt/dts/vybrid-cosmic.dts
+++ b/sys/boot/fdt/dts/arm/vybrid-cosmic.dts
diff --git a/sys/boot/fdt/dts/vybrid-quartz.dts b/sys/boot/fdt/dts/arm/vybrid-quartz.dts
index d978796..d978796 100644
--- a/sys/boot/fdt/dts/vybrid-quartz.dts
+++ b/sys/boot/fdt/dts/arm/vybrid-quartz.dts
diff --git a/sys/boot/fdt/dts/vybrid.dtsi b/sys/boot/fdt/dts/arm/vybrid.dtsi
index 154c1ab..154c1ab 100644
--- a/sys/boot/fdt/dts/vybrid.dtsi
+++ b/sys/boot/fdt/dts/arm/vybrid.dtsi
diff --git a/sys/boot/fdt/dts/wandboard-dual.dts b/sys/boot/fdt/dts/arm/wandboard-dual.dts
index 65a88c4..65a88c4 100644
--- a/sys/boot/fdt/dts/wandboard-dual.dts
+++ b/sys/boot/fdt/dts/arm/wandboard-dual.dts
diff --git a/sys/boot/fdt/dts/wandboard-quad.dts b/sys/boot/fdt/dts/arm/wandboard-quad.dts
index 71c5156..71c5156 100644
--- a/sys/boot/fdt/dts/wandboard-quad.dts
+++ b/sys/boot/fdt/dts/arm/wandboard-quad.dts
diff --git a/sys/boot/fdt/dts/wandboard-solo.dts b/sys/boot/fdt/dts/arm/wandboard-solo.dts
index 70e05e0..70e05e0 100644
--- a/sys/boot/fdt/dts/wandboard-solo.dts
+++ b/sys/boot/fdt/dts/arm/wandboard-solo.dts
diff --git a/sys/boot/fdt/dts/zedboard.dts b/sys/boot/fdt/dts/arm/zedboard.dts
index a95a2f7..a95a2f7 100644
--- a/sys/boot/fdt/dts/zedboard.dts
+++ b/sys/boot/fdt/dts/arm/zedboard.dts
diff --git a/sys/boot/fdt/dts/beri-netfpga.dts b/sys/boot/fdt/dts/mips/beri-netfpga.dts
index 6979168..6979168 100644
--- a/sys/boot/fdt/dts/beri-netfpga.dts
+++ b/sys/boot/fdt/dts/mips/beri-netfpga.dts
diff --git a/sys/boot/fdt/dts/beri-sim.dts b/sys/boot/fdt/dts/mips/beri-sim.dts
index 4148bb9..4148bb9 100644
--- a/sys/boot/fdt/dts/beri-sim.dts
+++ b/sys/boot/fdt/dts/mips/beri-sim.dts
diff --git a/sys/boot/fdt/dts/beripad-de4.dts b/sys/boot/fdt/dts/mips/beripad-de4.dts
index 4d4126c..4d4126c 100644
--- a/sys/boot/fdt/dts/beripad-de4.dts
+++ b/sys/boot/fdt/dts/mips/beripad-de4.dts
diff --git a/sys/boot/fdt/dts/xlp-basic.dts b/sys/boot/fdt/dts/mips/xlp-basic.dts
index a66c11d..a66c11d 100644
--- a/sys/boot/fdt/dts/xlp-basic.dts
+++ b/sys/boot/fdt/dts/mips/xlp-basic.dts
diff --git a/sys/boot/fdt/dts/mpc8555cds.dts b/sys/boot/fdt/dts/powerpc/mpc8555cds.dts
index 34991ba..34991ba 100644
--- a/sys/boot/fdt/dts/mpc8555cds.dts
+++ b/sys/boot/fdt/dts/powerpc/mpc8555cds.dts
diff --git a/sys/boot/fdt/dts/mpc8572ds.dts b/sys/boot/fdt/dts/powerpc/mpc8572ds.dts
index 67f0d66..67f0d66 100644
--- a/sys/boot/fdt/dts/mpc8572ds.dts
+++ b/sys/boot/fdt/dts/powerpc/mpc8572ds.dts
diff --git a/sys/conf/files b/sys/conf/files
index 3e3a073..160f663 100644
--- a/sys/conf/files
+++ b/sys/conf/files
@@ -14,11 +14,12 @@ acpi_quirks.h optional acpi \
# from the specified source (DTS) file: <platform>.dts -> <platform>.dtb
#
fdt_dtb_file optional fdt \
- compile-with "if [ -f $S/boot/fdt/dts/${FDT_DTS_FILE} ]; then dtc -O dtb -o ${FDT_DTS_FILE:R}.dtb -b 0 -p 1024 $S/boot/fdt/dts/${FDT_DTS_FILE}; fi" \
+ compile-with "sh $S/tools/fdt/make_dtb.sh $S ${FDT_DTS_FILE} ${.CURDIR}/${FDT_DTS_FILE:R}.dtb" \
no-obj no-implicit-rule before-depend \
clean "${FDT_DTS_FILE:R}.dtb"
fdt_static_dtb.h optional fdt fdt_dtb_static \
- compile-with "sh $S/tools/fdt/make_dtbh.sh ${FDT_DTS_FILE} ." \
+ compile-with "sh $S/tools/fdt/make_dtbh.sh ${FDT_DTS_FILE} ${.CURDIR}" \
+ dependency "fdt_dtb_file" \
no-obj no-implicit-rule before-depend \
clean "fdt_static_dtb.h"
feeder_eq_gen.h optional sound \
@@ -1370,7 +1371,7 @@ dev/fb/splash.c optional sc splash
dev/fdt/fdt_common.c optional fdt
dev/fdt/fdt_slicer.c optional fdt cfi | fdt nand
dev/fdt/fdt_static_dtb.S optional fdt fdt_dtb_static \
- dependency "$S/boot/fdt/dts/${FDT_DTS_FILE}"
+ dependency "$S/boot/fdt/dts/${MACHINE}/${FDT_DTS_FILE}"
dev/fdt/simplebus.c optional fdt
dev/fe/if_fe.c optional fe
dev/fe/if_fe_pccard.c optional fe pccard
diff --git a/sys/tools/fdt/make_dtb.sh b/sys/tools/fdt/make_dtb.sh
new file mode 100755
index 0000000..8e4892e
--- /dev/null
+++ b/sys/tools/fdt/make_dtb.sh
@@ -0,0 +1,11 @@
+#!/bin/sh
+#
+# $FreeBSD$
+
+# Script generates dtb file ($3) from dts source ($2) in build tree S ($1)
+S=$1
+dts=$2
+dtb=$3
+
+cpp -x assembler-with-cpp -I $S/gnu/dts/include -I $S/boot/fdt/dts/${MACHINE} -I $S/gnu/dts/${MACHINE} -include $dts /dev/null |
+ dtc -O dtb -o $dtb -b 0 -p 1024 -i $S/boot/fdt/dts -i $S/gnu/dts/${MACHINE}
OpenPOWER on IntegriCloud