linux: add option to enable support for Device Tree overlays
authorTitouan Christophe <titouan.christophe@railnova.eu>
Tue, 15 Jan 2019 14:15:48 +0000 (15:15 +0100)
committerArnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Sun, 3 Feb 2019 19:27:41 +0000 (20:27 +0100)
Add an option to compile device trees in Linux with symbol generation
such that device tree overlays can be loaded on the target system

Signed-off-by: Titouan Christophe <titouan.christophe@railnova.eu>
[Arnout: remove "default n" and move setting of LINUX_MAKE_ENV to the
 place where the rest is set.]
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
linux/Config.in
linux/linux.mk

index 4f6ae2e9ee58cca7c5223f00c2e9fd5ce572c136..8b04471008adfa6c5d4209fe7f4779da1a7b0eb1 100644 (file)
@@ -394,6 +394,14 @@ config BR2_LINUX_KERNEL_CUSTOM_DTS_PATH
          You can provide a list of dts paths to copy and
          build, separated by spaces.
 
+config BR2_LINUX_KERNEL_DTB_OVERLAY_SUPPORT
+       bool "Build Device Tree with overlay support"
+       help
+         If enabled, pass the "-@" option to dtc, such that
+         symbols are generated in the compiled Device Tree.
+         Choose this option to support Device Tree overlays
+         on the target system.
+
 endif
 
 config BR2_LINUX_KERNEL_INSTALL_TARGET
index 02def89113f06c1ced8c818c3f366543a95304d4..62068106e048a84e5d2f5c76600c9c259535acd9 100644 (file)
@@ -143,6 +143,10 @@ ifeq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_8),y)
 LINUX_MAKE_ENV += KCFLAGS=-Wno-attribute-alias
 endif
 
+ifeq ($(BR2_LINUX_KERNEL_DTB_OVERLAY_SUPPORT),y)
+LINUX_MAKE_ENV += DTC_FLAGS=-@
+endif
+
 # Get the real Linux version, which tells us where kernel modules are
 # going to be installed in the target filesystem.
 LINUX_VERSION_PROBED = `$(MAKE) $(LINUX_MAKE_FLAGS) -C $(LINUX_DIR) --no-print-directory -s kernelrelease 2>/dev/null`