devicetree: Move include prefixes from arch to separate directory
authorOlof Johansson <>
Sat, 13 May 2017 03:13:26 +0000 (20:13 -0700)
committerOlof Johansson <>
Fri, 19 May 2017 06:55:48 +0000 (23:55 -0700)
devicetree: Move include prefixes from arch to separate directory

We use a directory under arch/$ARCH/boot/dts as an include path
that has links outside of the subtree to find dt-bindings from under
include/dt-bindings. That's been working well, but new DT architectures
haven't been adding them by default.

Recently there's been a desire to share some of the DT material between
arm and arm64, which originally caused developers to create symlinks or
relative includes between the subtrees. This isn't ideal -- it breaks
if the DT files aren't stored in the exact same hierarchy as the kernel
tree, and generally it's just icky.

As a somewhat cleaner solution we decided to add a $ARCH/ prefix link
once, and allow DTS files to reference dtsi (and dts) files in other
architectures that way.

Original approach was to create these links under each architecture,
but it lead to the problem of recursive symlinks.

As a remedy, move the include link directories out of the architecture
trees into a common location. At the same time, they can now share one
directory and one dt-bindings/ link as well.

Fixes: 4027494ae6e3 ('ARM: dts: add arm/arm64 include symlinks')
Reported-by: Russell King <>
Reported-by: Omar Sandoval <>
Reviewed-by: Heiko Stuebner <>
Reviewed-by: Masahiro Yamada <>
Tested-by: Heiko Stuebner <>
Acked-by: Rob Herring <>
Cc: Heiko Stuebner <>
Cc: Mark Rutland <>
Cc: Russell King <>
Cc: Catalin Marinas <>
Cc: Will Deacon <>
Cc: Mikael Starvik <>
Cc: Jesper Nilsson <>
Cc: James Hogan <>
Cc: Ralf Baechle <>
Cc: Benjamin Herrenschmidt <>
Cc: Paul Mackerras <>
Cc: Michael Ellerman <>
Cc: Frank Rowand <>
Cc: linux-arch <>
Signed-off-by: Olof Johansson <>
26 files changed:
arch/arm/boot/dts/include/arm [deleted symlink]
arch/arm/boot/dts/include/arm64 [deleted symlink]
arch/arm/boot/dts/include/dt-bindings [deleted symlink]
arch/arm64/boot/dts/include/arm [deleted symlink]
arch/arm64/boot/dts/include/arm64 [deleted symlink]
arch/arm64/boot/dts/include/dt-bindings [deleted symlink]
arch/cris/boot/dts/include/dt-bindings [deleted symlink]
arch/metag/boot/dts/include/dt-bindings [deleted symlink]
arch/mips/boot/dts/include/dt-bindings [deleted symlink]
arch/powerpc/boot/dts/include/dt-bindings [deleted symlink]
scripts/dtc/include-prefixes/arc [new symlink]
scripts/dtc/include-prefixes/arm [new symlink]
scripts/dtc/include-prefixes/arm64 [new symlink]
scripts/dtc/include-prefixes/c6x [new symlink]
scripts/dtc/include-prefixes/cris [new symlink]
scripts/dtc/include-prefixes/dt-bindings [new symlink]
scripts/dtc/include-prefixes/h8300 [new symlink]
scripts/dtc/include-prefixes/metag [new symlink]
scripts/dtc/include-prefixes/microblaze [new symlink]
scripts/dtc/include-prefixes/mips [new symlink]
scripts/dtc/include-prefixes/nios2 [new symlink]
scripts/dtc/include-prefixes/openrisc [new symlink]
scripts/dtc/include-prefixes/powerpc [new symlink]
scripts/dtc/include-prefixes/sh [new symlink]
scripts/dtc/include-prefixes/xtensa [new symlink]