Patchwork [ARM] Add dtb image generation

login
register
mail settings
Submitter trem
Date June 23, 2012, 12:11 p.m.
Message ID <1340453490-10005-1-git-send-email-tremyfr@yahoo.fr>
Download mbox | patch
Permalink /patch/166755/
State Superseded
Headers show

Comments

trem - June 23, 2012, 12:11 p.m.
Signed-off-by: Philippe Reynes <tremyfr@yahoo.fr>
---
 linux/Config.in |    6 ++++++
 linux/linux.mk  |    3 +++
 2 files changed, 9 insertions(+), 0 deletions(-)
Thomas Petazzoni - June 23, 2012, 2:26 p.m.
Le Sat, 23 Jun 2012 14:11:30 +0200,
Philippe Reynes <tremyfr@yahoo.fr> a écrit :

> Signed-off-by: Philippe Reynes <tremyfr@yahoo.fr>

My colleague Maxime has posted yesterday something, which, even though
not fully complete, provides more possibilities than this proposal (for
example it supports generating kernel images that directly include the
DTB, as is used these days on ARM when the platform does not have a DT
capable bootloader). Would you mind testing his proposal?

Thomas

Patch

diff --git a/linux/Config.in b/linux/Config.in
index 1cd05ae..a3c4385 100644
--- a/linux/Config.in
+++ b/linux/Config.in
@@ -132,6 +132,12 @@  config BR2_LINUX_KERNEL_DTS_FILE
       The final "custom target" name depends on the
       dts file name:
           <name>.dts --> simpleImage.<name>
+
+config BR2_LINUX_KERNEL_DTB_FILE
+    string "Device Tree dtb file expected"
+    depends on BR2_arm
+    help
+      Name of the dtb file to produce
 #
 # Binary format
 #
diff --git a/linux/linux.mk b/linux/linux.mk
index f165dda..3837c57 100644
--- a/linux/linux.mk
+++ b/linux/linux.mk
@@ -174,6 +174,8 @@  define LINUX_BUILD_CMDS
 	@if grep -q "CONFIG_MODULES=y" $(@D)/.config; then 	\
 		$(TARGET_MAKE_ENV) $(MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) modules ;	\
 	fi
+	$(if $(BR2_LINUX_KERNEL_DTB_FILE),
+		$(TARGET_MAKE_ENV) $(MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) $(BR2_LINUX_KERNEL_DTB_FILE))
 endef
 
 
@@ -194,6 +196,7 @@  endef
 
 define LINUX_INSTALL_IMAGES_CMDS
 	cp $(LINUX_IMAGE_PATH) $(BINARIES_DIR)
+	cp $(KERNEL_ARCH_PATH)/boot/$(BR2_LINUX_KERNEL_DTB_FILE) $(BINARIES_DIR)
 endef
 
 define LINUX_INSTALL_TARGET_CMDS