diff options
| author | Herve Jourdain <herve.jourdain@neuf.fr> | 2016-07-29 15:27:59 -0700 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-08-10 10:46:33 +0100 |
| commit | d90eaa8518abc294aa072c3267463fce3f940af6 (patch) | |
| tree | adf3f7ab55e0620cc2f0733e76cc950231990164 /meta/recipes-kernel | |
| parent | a960d9b40129394e98924481ba84a005fbe1dce1 (diff) | |
| download | poky-d90eaa8518abc294aa072c3267463fce3f940af6.tar.gz | |
linux-dtb.inc: Support for .dtbo files for dtb overlays
(From OE-Core rev: 831207ee8fa6fedd6080191bb77a871b0f33e1c1)
Signed-off-by: Herve Jourdain <herve.jourdain@neuf.fr>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-kernel')
| -rw-r--r-- | meta/recipes-kernel/linux/linux-dtb.inc | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/meta/recipes-kernel/linux/linux-dtb.inc b/meta/recipes-kernel/linux/linux-dtb.inc index 74f5ef8ca8..8528d646dd 100644 --- a/meta/recipes-kernel/linux/linux-dtb.inc +++ b/meta/recipes-kernel/linux/linux-dtb.inc | |||
| @@ -33,12 +33,13 @@ do_compile_append() { | |||
| 33 | do_install_append() { | 33 | do_install_append() { |
| 34 | for DTB in ${KERNEL_DEVICETREE}; do | 34 | for DTB in ${KERNEL_DEVICETREE}; do |
| 35 | DTB=`normalize_dtb "${DTB}"` | 35 | DTB=`normalize_dtb "${DTB}"` |
| 36 | DTB_BASE_NAME=`basename ${DTB} .dtb` | 36 | DTB_EXT=${DTB##*.} |
| 37 | DTB_BASE_NAME=`basename ${DTB} ."${DTB_EXT}"` | ||
| 37 | for type in ${KERNEL_IMAGETYPE_FOR_MAKE}; do | 38 | for type in ${KERNEL_IMAGETYPE_FOR_MAKE}; do |
| 38 | symlink_name=${type}"-"${KERNEL_IMAGE_SYMLINK_NAME} | 39 | symlink_name=${type}"-"${KERNEL_IMAGE_SYMLINK_NAME} |
| 39 | DTB_SYMLINK_NAME=`echo ${symlink_name} | sed "s/${MACHINE}/${DTB_BASE_NAME}/g"` | 40 | DTB_SYMLINK_NAME=`echo ${symlink_name} | sed "s/${MACHINE}/${DTB_BASE_NAME}/g"` |
| 40 | DTB_PATH=`get_real_dtb_path_in_kernel "${DTB}"` | 41 | DTB_PATH=`get_real_dtb_path_in_kernel "${DTB}"` |
| 41 | install -m 0644 ${DTB_PATH} ${D}/${KERNEL_IMAGEDEST}/devicetree-${DTB_SYMLINK_NAME}.dtb | 42 | install -m 0644 ${DTB_PATH} ${D}/${KERNEL_IMAGEDEST}/devicetree-${DTB_SYMLINK_NAME}.${DTB_EXT} |
| 42 | done | 43 | done |
| 43 | done | 44 | done |
| 44 | } | 45 | } |
| @@ -46,7 +47,8 @@ do_install_append() { | |||
| 46 | do_deploy_append() { | 47 | do_deploy_append() { |
| 47 | for DTB in ${KERNEL_DEVICETREE}; do | 48 | for DTB in ${KERNEL_DEVICETREE}; do |
| 48 | DTB=`normalize_dtb "${DTB}"` | 49 | DTB=`normalize_dtb "${DTB}"` |
| 49 | DTB_BASE_NAME=`basename ${DTB} .dtb` | 50 | DTB_EXT=${DTB##*.} |
| 51 | DTB_BASE_NAME=`basename ${DTB} ."${DTB_EXT}"` | ||
| 50 | for type in ${KERNEL_IMAGETYPE_FOR_MAKE}; do | 52 | for type in ${KERNEL_IMAGETYPE_FOR_MAKE}; do |
| 51 | base_name=${type}"-"${KERNEL_IMAGE_BASE_NAME} | 53 | base_name=${type}"-"${KERNEL_IMAGE_BASE_NAME} |
| 52 | symlink_name=${type}"-"${KERNEL_IMAGE_SYMLINK_NAME} | 54 | symlink_name=${type}"-"${KERNEL_IMAGE_SYMLINK_NAME} |
| @@ -54,8 +56,8 @@ do_deploy_append() { | |||
| 54 | DTB_SYMLINK_NAME=`echo ${symlink_name} | sed "s/${MACHINE}/${DTB_BASE_NAME}/g"` | 56 | DTB_SYMLINK_NAME=`echo ${symlink_name} | sed "s/${MACHINE}/${DTB_BASE_NAME}/g"` |
| 55 | DTB_PATH=`get_real_dtb_path_in_kernel "${DTB}"` | 57 | DTB_PATH=`get_real_dtb_path_in_kernel "${DTB}"` |
| 56 | install -d ${DEPLOYDIR} | 58 | install -d ${DEPLOYDIR} |
| 57 | install -m 0644 ${DTB_PATH} ${DEPLOYDIR}/${DTB_NAME}.dtb | 59 | install -m 0644 ${DTB_PATH} ${DEPLOYDIR}/${DTB_NAME}.${DTB_EXT} |
| 58 | ln -sf ${DTB_NAME}.dtb ${DEPLOYDIR}/${DTB_SYMLINK_NAME}.dtb | 60 | ln -sf ${DTB_NAME}.${DTB_EXT} ${DEPLOYDIR}/${DTB_SYMLINK_NAME}.${DTB_EXT} |
| 59 | done | 61 | done |
| 60 | done | 62 | done |
| 61 | } | 63 | } |
| @@ -65,9 +67,10 @@ pkg_postinst_kernel-devicetree () { | |||
| 65 | for DTB in ${KERNEL_DEVICETREE}; do | 67 | for DTB in ${KERNEL_DEVICETREE}; do |
| 66 | for type in ${KERNEL_IMAGETYPE_FOR_MAKE}; do | 68 | for type in ${KERNEL_IMAGETYPE_FOR_MAKE}; do |
| 67 | symlink_name=${type}"-"${KERNEL_IMAGE_SYMLINK_NAME} | 69 | symlink_name=${type}"-"${KERNEL_IMAGE_SYMLINK_NAME} |
| 70 | DTB_EXT=${DTB##*.} | ||
| 68 | DTB_BASE_NAME=`basename ${DTB} | awk -F "." '{print $1}'` | 71 | DTB_BASE_NAME=`basename ${DTB} | awk -F "." '{print $1}'` |
| 69 | DTB_SYMLINK_NAME=`echo ${symlink_name} | sed "s/${MACHINE}/${DTB_BASE_NAME}/g"` | 72 | DTB_SYMLINK_NAME=`echo ${symlink_name} | sed "s/${MACHINE}/${DTB_BASE_NAME}/g"` |
| 70 | update-alternatives --install /${KERNEL_IMAGEDEST}/${DTB_BASE_NAME}.dtb ${DTB_BASE_NAME}.dtb /boot/devicetree-${DTB_SYMLINK_NAME}.dtb ${KERNEL_PRIORITY} || true | 73 | update-alternatives --install /${KERNEL_IMAGEDEST}/${DTB_BASE_NAME}.${DTB_EXT} ${DTB_BASE_NAME}.${DTB_EXT} /boot/devicetree-${DTB_SYMLINK_NAME}.${DTB_EXT} ${KERNEL_PRIORITY} || true |
| 71 | done | 74 | done |
| 72 | done | 75 | done |
| 73 | } | 76 | } |
| @@ -77,9 +80,10 @@ pkg_postrm_kernel-devicetree () { | |||
| 77 | for DTB in ${KERNEL_DEVICETREE}; do | 80 | for DTB in ${KERNEL_DEVICETREE}; do |
| 78 | for type in ${KERNEL_IMAGETYPE_FOR_MAKE}; do | 81 | for type in ${KERNEL_IMAGETYPE_FOR_MAKE}; do |
| 79 | symlink_name=${type}"-"${KERNEL_IMAGE_SYMLINK_NAME} | 82 | symlink_name=${type}"-"${KERNEL_IMAGE_SYMLINK_NAME} |
| 83 | DTB_EXT=${DTB##*.} | ||
| 80 | DTB_BASE_NAME=`basename ${DTB} | awk -F "." '{print $1}'` | 84 | DTB_BASE_NAME=`basename ${DTB} | awk -F "." '{print $1}'` |
| 81 | DTB_SYMLINK_NAME=`echo ${symlink_name} | sed "s/${MACHINE}/${DTB_BASE_NAME}/g"` | 85 | DTB_SYMLINK_NAME=`echo ${symlink_name} | sed "s/${MACHINE}/${DTB_BASE_NAME}/g"` |
| 82 | update-alternatives --remove ${DTB_BASE_NAME}.dtb /boot/devicetree-${DTB_SYMLINK_NAME}.dtb ${KERNEL_PRIORITY} || true | 86 | update-alternatives --remove ${DTB_BASE_NAME}.${DTB_EXT} /boot/devicetree-${DTB_SYMLINK_NAME}.${DTB_EXT} ${KERNEL_PRIORITY} || true |
| 83 | done | 87 | done |
| 84 | done | 88 | done |
| 85 | } | 89 | } |
