summaryrefslogtreecommitdiff
path: root/meta/recipes-kernel/linux/linux-dtb.inc
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-kernel/linux/linux-dtb.inc')
-rw-r--r--meta/recipes-kernel/linux/linux-dtb.inc27
1 files changed, 27 insertions, 0 deletions
diff --git a/meta/recipes-kernel/linux/linux-dtb.inc b/meta/recipes-kernel/linux/linux-dtb.inc
new file mode 100644
index 000000000..9188cee1e
--- /dev/null
+++ b/meta/recipes-kernel/linux/linux-dtb.inc
@@ -0,0 +1,27 @@
+# Support for device tree generation
+FILES_kernel-devicetree = "/boot/devicetree*"
+KERNEL_DEVICETREE_FLAGS = "-R 8 -p 0x3000"
+
+python __anonymous () {
+ import bb
+
+ devicetree = d.getVar("KERNEL_DEVICETREE", True) or ''
+ if devicetree:
+ depends = d.getVar("DEPENDS", True)
+ d.setVar("DEPENDS", "%s dtc-native" % depends)
+ packages = d.getVar("PACKAGES", True)
+ d.setVar("PACKAGES", "%s kernel-devicetree" % packages)
+}
+
+do_install_append() {
+ if test -n "${KERNEL_DEVICETREE}"; then
+ dtc -I dts -O dtb ${KERNEL_DEVICETREE_FLAGS} -o devicetree ${KERNEL_DEVICETREE}
+ install -m 0644 devicetree ${D}/boot/devicetree-${KERNEL_VERSION}
+ install -d ${DEPLOYDIR}
+ install -m 0644 devicetree ${DEPLOYDIR}/${KERNEL_IMAGE_BASE_NAME}.dtb
+ cd ${DEPLOYDIR}
+ rm -f ${KERNEL_IMAGE_SYMLINK_NAME}.dtb
+ ln -sf ${KERNEL_IMAGE_BASE_NAME}.dtb ${KERNEL_IMAGE_SYMLINK_NAME}.dtb
+ fi
+}
+