Patchwork dtb: provide option to install dtb to boot directory

login
register
mail settings
Submitter Gary Coulbourne
Date Dec. 20, 2012, 10:22 p.m.
Message ID <1356042147-1532-1-git-send-email-bear@bears.org>
Download mbox | patch
Permalink /patch/207717/
State Rejected
Headers show

Comments

Gary Coulbourne - Dec. 20, 2012, 10:22 p.m.
Signed-off-by: Gary Coulbourne <bear@bears.org>
---
 linux/Config.in |    6 ++++++
 linux/linux.mk  |    7 +++++++
 2 files changed, 13 insertions(+)
Peter Korsgaard - Dec. 21, 2012, 8:21 a.m.
>>>>> "Gary" == Gary Coulbourne <bear@bears.org> writes:

 Gary> Signed-off-by: Gary Coulbourne <bear@bears.org>
 Gary> ---
 Gary>  linux/Config.in |    6 ++++++
 Gary>  linux/linux.mk  |    7 +++++++
 Gary>  2 files changed, 13 insertions(+)

 Gary> diff --git a/linux/Config.in b/linux/Config.in
 Gary> index 9ebe0c9..8918297 100644
 Gary> --- a/linux/Config.in
 Gary> +++ b/linux/Config.in
 Gary> @@ -284,6 +284,12 @@ config BR2_LINUX_KERNEL_INSTALL_TARGET
 Gary>  	  /boot in the target root filesystem, as is typically done on
 Gary>  	  x86/x86_64 systems.
 
 Gary> +config BR2_LINUX_DEVICE_TREE_INSTALL_TARGET
 Gary> +	bool "Install Device Tree to /boot in target"
 Gary> +	depends on BR2_LINUX_KERNEL_DTS_SUPPORT
 Gary> +	help
 Gary> +	  Select this option to have the device tree installed to
 Gary> +	  /boot in the target root filesystem.
 
 Gary>  # Linux extensions
 Gary>  source "linux/Config.ext.in"
 Gary> diff --git a/linux/linux.mk b/linux/linux.mk
 Gary> index 3321d80..6d8c752 100644
 Gary> --- a/linux/linux.mk
 Gary> +++ b/linux/linux.mk
 Gary> @@ -211,6 +211,12 @@ define LINUX_APPEND_DTB
 Gary>  endef
 Gary>  endif
 
 Gary> +ifeq ($(BR2_LINUX_DEVICE_TREE_INSTALL_TARGET),y)
 Gary> +define LINUX_INSTALL_DTB_TO_TARGET
 Gary> +	install -m 0644 -D $(KERNEL_ARCH_PATH)/boot/$(KERNEL_DTS_NAME).dtb $(TARGET_DIR)/boot/$(KERNEL_DTS_NAME).dtb

I've just pushed two changes to support the new dtb location since
3.8-rc1, and I committed Maxime's 'Support multiple device tree build'
patch yesterday, care to rebase against that and update the logic so it
can handle multiple .dtb files?

Thanks.
Thomas Petazzoni - Aug. 1, 2013, 4:09 p.m.
Dear Gary Coulbourne,

On Thu, 20 Dec 2012 17:22:27 -0500, Gary Coulbourne wrote:
> 
> Signed-off-by: Gary Coulbourne <bear@bears.org>
> ---
>  linux/Config.in |    6 ++++++
>  linux/linux.mk  |    7 +++++++
>  2 files changed, 13 insertions(+)

This patch is in fact not needed, because the existing
BR2_LINUX_KERNEL_INSTALL_TARGET option installs both the kernel image
and the DTBs to /boot. I've updated the BR2_LINUX_KERNEL_INSTALL_TARGET
help text to clarify this.

Thanks!

Thomas

Patch

diff --git a/linux/Config.in b/linux/Config.in
index 9ebe0c9..8918297 100644
--- a/linux/Config.in
+++ b/linux/Config.in
@@ -284,6 +284,12 @@  config BR2_LINUX_KERNEL_INSTALL_TARGET
 	  /boot in the target root filesystem, as is typically done on
 	  x86/x86_64 systems.
 
+config BR2_LINUX_DEVICE_TREE_INSTALL_TARGET
+	bool "Install Device Tree to /boot in target"
+	depends on BR2_LINUX_KERNEL_DTS_SUPPORT
+	help
+	  Select this option to have the device tree installed to
+	  /boot in the target root filesystem.
 
 # Linux extensions
 source "linux/Config.ext.in"
diff --git a/linux/linux.mk b/linux/linux.mk
index 3321d80..6d8c752 100644
--- a/linux/linux.mk
+++ b/linux/linux.mk
@@ -211,6 +211,12 @@  define LINUX_APPEND_DTB
 endef
 endif
 
+ifeq ($(BR2_LINUX_DEVICE_TREE_INSTALL_TARGET),y)
+define LINUX_INSTALL_DTB_TO_TARGET
+	install -m 0644 -D $(KERNEL_ARCH_PATH)/boot/$(KERNEL_DTS_NAME).dtb $(TARGET_DIR)/boot/$(KERNEL_DTS_NAME).dtb
+endef
+endif
+
 # Compilation. We make sure the kernel gets rebuilt when the
 # configuration has changed.
 define LINUX_BUILD_CMDS
@@ -247,6 +253,7 @@  endef
 define LINUX_INSTALL_TARGET_CMDS
 	$(LINUX_INSTALL_KERNEL_IMAGE_TO_TARGET)
 	$(LINUX_INSTALL_DTB)
+	$(LINUX_INSTALL_DTB_TO_TARGET)
 	# Install modules and remove symbolic links pointing to build
 	# directories, not relevant on the target
 	@if grep -q "CONFIG_MODULES=y" $(@D)/.config; then 	\