summaryrefslogtreecommitdiffstats
path: root/meta/classes/kernel-devicetree.bbclass
diff options
context:
space:
mode:
Diffstat (limited to 'meta/classes/kernel-devicetree.bbclass')
-rw-r--r--meta/classes/kernel-devicetree.bbclass18
1 files changed, 14 insertions, 4 deletions
diff --git a/meta/classes/kernel-devicetree.bbclass b/meta/classes/kernel-devicetree.bbclass
index 81dda8003f..27a4905ac6 100644
--- a/meta/classes/kernel-devicetree.bbclass
+++ b/meta/classes/kernel-devicetree.bbclass
@@ -1,14 +1,20 @@
1# Support for device tree generation 1# Support for device tree generation
2PACKAGES_append = " \ 2python () {
3 ${KERNEL_PACKAGE_NAME}-devicetree \ 3 if not bb.data.inherits_class('nopackages', d):
4 ${@[d.getVar('KERNEL_PACKAGE_NAME') + '-image-zimage-bundle', ''][d.getVar('KERNEL_DEVICETREE_BUNDLE') != '1']} \ 4 d.appendVar("PACKAGES", " ${KERNEL_PACKAGE_NAME}-devicetree")
5" 5 if d.getVar('KERNEL_DEVICETREE_BUNDLE') == '1':
6 d.appendVar("PACKAGES", " ${KERNEL_PACKAGE_NAME}-image-zimage-bundle")
7}
8
6FILES_${KERNEL_PACKAGE_NAME}-devicetree = "/${KERNEL_IMAGEDEST}/*.dtb /${KERNEL_IMAGEDEST}/*.dtbo" 9FILES_${KERNEL_PACKAGE_NAME}-devicetree = "/${KERNEL_IMAGEDEST}/*.dtb /${KERNEL_IMAGEDEST}/*.dtbo"
7FILES_${KERNEL_PACKAGE_NAME}-image-zimage-bundle = "/${KERNEL_IMAGEDEST}/zImage-*.dtb.bin" 10FILES_${KERNEL_PACKAGE_NAME}-image-zimage-bundle = "/${KERNEL_IMAGEDEST}/zImage-*.dtb.bin"
8 11
9# Generate kernel+devicetree bundle 12# Generate kernel+devicetree bundle
10KERNEL_DEVICETREE_BUNDLE ?= "0" 13KERNEL_DEVICETREE_BUNDLE ?= "0"
11 14
15# dtc flags passed via DTC_FLAGS env variable
16KERNEL_DTC_FLAGS ?= ""
17
12normalize_dtb () { 18normalize_dtb () {
13 dtb="$1" 19 dtb="$1"
14 if echo $dtb | grep -q '/dts/'; then 20 if echo $dtb | grep -q '/dts/'; then
@@ -50,6 +56,10 @@ do_configure_append() {
50} 56}
51 57
52do_compile_append() { 58do_compile_append() {
59 if [ -n "${KERNEL_DTC_FLAGS}" ]; then
60 export DTC_FLAGS="${KERNEL_DTC_FLAGS}"
61 fi
62
53 for dtbf in ${KERNEL_DEVICETREE}; do 63 for dtbf in ${KERNEL_DEVICETREE}; do
54 dtb=`normalize_dtb "$dtbf"` 64 dtb=`normalize_dtb "$dtbf"`
55 oe_runmake $dtb CC="${KERNEL_CC} $cc_extra " LD="${KERNEL_LD}" ${KERNEL_EXTRA_ARGS} 65 oe_runmake $dtb CC="${KERNEL_CC} $cc_extra " LD="${KERNEL_LD}" ${KERNEL_EXTRA_ARGS}