Skip to content
  1. Apr 09, 2013
  2. Apr 06, 2013
    • Stephen Warren's avatar
      kbuild: create an "include chroot" for DT bindings · c58299aa
      Stephen Warren authored
      
      
      The recent dtc+cpp support allows header files and C pre-processor
      defines/macros to be used when compiling device tree files. These
      headers will typically define various constants that are part of the
      device tree bindings.
      
      The original patch which set up the dtc+cpp include path only considered
      using those headers from device tree files. However, most are also
      useful for kernel code which needs to interpret the device tree.
      
      In both the DT files and the kernel, I'd like to include the DT-related
      headers in the same way, for example, <dt-bindings/gpio/tegra-gpio.h>.
      That will simplify any text which discusses the DT header locations.
      
      Creating a <dt-bindings/> for kernel source to use is as simple as
      placing files into include/dt-bindings/.
      
      However, when compiling DT files, the include path should be restricted
      so that only the dt-bindings path is available; arbitrary kernel headers
      shouldn't be exposed. For this reason, create a specific include
      directory for use by dtc+cpp, and symlink dt-bindings from there to the
      actual location of include/dt-bindings/. For want of a better location,
      place this "include chroot" into the existing dts/ directory.
      
      arch/*/boot/dts/include/dt-bindings -> ../../../../../include/dt-bindings
      
      Some headers used by device tree files may not be useful to the kernel;
      they may be used simply to aid in constructing the DT file (e.g. macros
      to create a node), but not define any information that the kernel needs
      to share. These may be placed directly into arch/*/boot/dts/ along with
      the DT files themselves.
      
      Acked-by: default avatarMichal Marek <mmarek@suse.cz>
      Acked-by: default avatarShawn Guo <shawn.guo@linaro.org>
      Acked-by: default avatarRob Herring <rob.herring@calxeda.com>
      Signed-off-by: default avatarStephen Warren <swarren@nvidia.com>
      c58299aa
  3. Apr 02, 2013