diff options
author | Marek Vasut <marex@denx.de> | 2015-05-14 14:31:11 +0200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2015-05-26 10:57:41 +0100 |
commit | 86b3f29f93e3f87903668ea317c6bd97be4cdf62 (patch) | |
tree | 0b2f845a047f7728a2cee296a2e7c934d0966daa /meta | |
parent | 2d1f700ad098c942834524891ccc90e3a391a09f (diff) | |
download | openembedded-core-86b3f29f93e3f87903668ea317c6bd97be4cdf62.tar.gz openembedded-core-86b3f29f93e3f87903668ea317c6bd97be4cdf62.tar.bz2 openembedded-core-86b3f29f93e3f87903668ea317c6bd97be4cdf62.zip |
kernel: Build DTBs early
Pull out the compilation of the DTB blobs right after the kernel's
own do_compile function finishes. This makes them available just in
time for the kernel image construction functions.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Koen Kooi <koen@dominion.thruhere.net>
Cc: Paul Eggleton <paul.eggleton@linux.intel.com>
Cc: Ross Burton <ross.burton@intel.com>
Cc: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/recipes-kernel/linux/linux-dtb.inc | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/meta/recipes-kernel/linux/linux-dtb.inc b/meta/recipes-kernel/linux/linux-dtb.inc index 6b8f1a54b8..ee3a5e1b98 100644 --- a/meta/recipes-kernel/linux/linux-dtb.inc +++ b/meta/recipes-kernel/linux/linux-dtb.inc @@ -5,6 +5,18 @@ python __anonymous () { d.appendVar("PACKAGES", " kernel-devicetree") } +do_compile_append() { + if test -n "${KERNEL_DEVICETREE}"; then + for DTB in ${KERNEL_DEVICETREE}; do + if echo ${DTB} | grep -q '/dts/'; then + bbwarn "${DTB} contains the full path to the the dts file, but only the dtb name should be used." + DTB=`basename ${DTB} | sed 's,\.dts$,.dtb,g'` + fi + oe_runmake ${DTB} + done + fi +} + do_install_append() { if test -n "${KERNEL_DEVICETREE}"; then for DTB in ${KERNEL_DEVICETREE}; do @@ -13,10 +25,8 @@ do_install_append() { DTB=`basename ${DTB} | sed 's,\.dts$,.dtb,g'` fi DTB_BASE_NAME=`basename ${DTB} .dtb` - DTB_NAME=`echo ${KERNEL_IMAGE_BASE_NAME} | sed "s/${MACHINE}/${DTB_BASE_NAME}/g"` DTB_SYMLINK_NAME=`echo ${KERNEL_IMAGE_SYMLINK_NAME} | sed "s/${MACHINE}/${DTB_BASE_NAME}/g"` DTB_PATH="${B}/arch/${ARCH}/boot/dts/${DTB}" - oe_runmake ${DTB} if [ ! -e "${DTB_PATH}" ]; then DTB_PATH="${B}/arch/${ARCH}/boot/${DTB}" fi |