diff options
| author | Adrian Alonso <aalonso00@gmail.com> | 2010-09-09 09:25:58 -0500 |
|---|---|---|
| committer | Richard Purdie <rpurdie@linux.intel.com> | 2010-09-10 13:00:15 +0100 |
| commit | 9619df0969036320ae01bdddade59cfd21407c6d (patch) | |
| tree | 5566e92a30990879b600d87456fbae67444b16b0 | |
| parent | be11510e216ed6f6928fed0b611b2b836c701e0b (diff) | |
| download | poky-9619df0969036320ae01bdddade59cfd21407c6d.tar.gz | |
linux: add binary devicetree generation
* Add binary devicetree generation support
* Taken from OE
* v2 reorder patch set
* v3 remove package_stagefile_shell
* v4 rename devicetree_image function to install_append
* remove pkg_postinst_kernel-devicetree,
pkg_postrm_kernel-devicetree functions
* Update KERNEL_DEVICETREE_FLAGS use "-p" option instead
of "-S" which is deprecated
Signed-off-by: Adrian Alonso <aalonso00@gmail.com>
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
| -rw-r--r-- | meta/recipes-kernel/linux/linux.inc | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/meta/recipes-kernel/linux/linux.inc b/meta/recipes-kernel/linux/linux.inc index 6f4db987d4..93859bb5a8 100644 --- a/meta/recipes-kernel/linux/linux.inc +++ b/meta/recipes-kernel/linux/linux.inc | |||
| @@ -15,6 +15,21 @@ CMDLINE_at91sam9263ek = "mem=64M console=ttyS0,115200 root=/dev/mmcblk0p1 rootfs | |||
| 15 | #boot from nfs | 15 | #boot from nfs |
| 16 | #CMDLINE_at91sam9263ek = "mem=64M console=ttyS0,115200 root=301 root=/dev/nfs nfsroot=172.20.3.1:/data/at91 ip=172.20.0.5:::255.255.0.0" | 16 | #CMDLINE_at91sam9263ek = "mem=64M console=ttyS0,115200 root=301 root=/dev/nfs nfsroot=172.20.3.1:/data/at91 ip=172.20.0.5:::255.255.0.0" |
| 17 | 17 | ||
| 18 | # Support for device tree generation | ||
| 19 | FILES_kernel_devicetree = "/boot/devicetree*" | ||
| 20 | KERNEL_DEVICETREE_FLAGS = "-R 8 -p 0x3000" | ||
| 21 | |||
| 22 | python __anonymous () { | ||
| 23 | import bb | ||
| 24 | |||
| 25 | devicetree = bb.data.getVar("KERNEL_DEVICETREE", d, 1) or '' | ||
| 26 | if devicetree: | ||
| 27 | depends = bb.data.getVar("DEPENDS", d, 1) | ||
| 28 | bb.data.setVar("DEPENDS", "%s dtc-native" % depends, d) | ||
| 29 | packages = bb.data.getVar("PACKAGES", d, 1) | ||
| 30 | bb.data.setVar("PACKAGES", "%s kernel-devicetree" % packages, d) | ||
| 31 | } | ||
| 32 | |||
| 18 | do_configure_prepend() { | 33 | do_configure_prepend() { |
| 19 | echo "" > ${S}/.config | 34 | echo "" > ${S}/.config |
| 20 | 35 | ||
| @@ -89,3 +104,15 @@ do_install_prepend() { | |||
| 89 | ln -f arch/${ARCH}/kernel/vmlinux.lds arch/${ARCH}/boot/vmlinux | 104 | ln -f arch/${ARCH}/kernel/vmlinux.lds arch/${ARCH}/boot/vmlinux |
| 90 | fi | 105 | fi |
| 91 | } | 106 | } |
| 107 | |||
| 108 | do_install_append() { | ||
| 109 | if test -n "${KERNEL_DEVICETREE}"; then | ||
| 110 | dtc -I dts -O dtb ${KERNEL_DEVICETREE_FLAGS} -o devicetree ${KERNEL_DEVICETREE} | ||
| 111 | install -m 0644 devicetree ${D}/boot/devicetree-${KERNEL_VERSION} | ||
| 112 | install -d ${DEPLOY_DIR_IMAGE} | ||
| 113 | install -m 0644 devicetree ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGE_BASE_NAME}.dtb | ||
| 114 | cd ${DEPLOY_DIR_IMAGE} | ||
| 115 | rm -f ${KERNEL_IMAGE_SYMLINK_NAME}.dtb | ||
| 116 | ln -sf ${KERNEL_IMAGE_BASE_NAME}.dtb ${KERNEL_IMAGE_SYMLINK_NAME}.dtb | ||
| 117 | fi | ||
| 118 | } | ||
