summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorantznin <agodard@witekio.com>2020-05-29 09:59:15 +0200
committerPatrick Vacek <patrickvacek@gmail.com>2020-07-08 15:47:57 +0200
commit6cc3b51ced5ec4609f6f4f3d2871293ee496cfba (patch)
treec422b335a9d0d1bf4adb598d3b8b59d988222fa9
parente1b20284366f91e0b55c25f3221dc19ea6b47824 (diff)
downloadmeta-updater-6cc3b51ced5ec4609f6f4f3d2871293ee496cfba.tar.gz
image_types_ostree: allow specifying a device tree to deploy
When setting `OSTREE_DEPLOY_DEVICETREE` to 1, it will by default deploy all the device tree blobs present in `KERNEL_DEVICETREE`. Adding `OSTREE_DEVICETREE` would allow specifying a specific device tree blob (or several dtbs), thus resulting in only the specified ones in the image. This is particularely useful because ostree selects the first device tree it finds in /boot, and discards the remaining ones. Signed-off-by: antznin <agodard@witekio.com>
-rw-r--r--classes/image_types_ostree.bbclass7
1 files changed, 4 insertions, 3 deletions
diff --git a/classes/image_types_ostree.bbclass b/classes/image_types_ostree.bbclass
index 3b86b35..ead4693 100644
--- a/classes/image_types_ostree.bbclass
+++ b/classes/image_types_ostree.bbclass
@@ -8,6 +8,7 @@ OSTREE_COMMIT_BODY ??= ""
8OSTREE_COMMIT_VERSION ??= "${DISTRO_VERSION}" 8OSTREE_COMMIT_VERSION ??= "${DISTRO_VERSION}"
9OSTREE_UPDATE_SUMMARY ??= "0" 9OSTREE_UPDATE_SUMMARY ??= "0"
10OSTREE_DEPLOY_DEVICETREE ??= "0" 10OSTREE_DEPLOY_DEVICETREE ??= "0"
11OSTREE_DEVICETREE ??= "${KERNEL_DEVICETREE}"
11 12
12BUILD_OSTREE_TARBALL ??= "1" 13BUILD_OSTREE_TARBALL ??= "1"
13 14
@@ -142,9 +143,9 @@ IMAGE_CMD_ostree () {
142 checksum=$(sha256sum ${DEPLOY_DIR_IMAGE}/${OSTREE_KERNEL} | cut -f 1 -d " ") 143 checksum=$(sha256sum ${DEPLOY_DIR_IMAGE}/${OSTREE_KERNEL} | cut -f 1 -d " ")
143 touch boot/initramfs-${checksum} 144 touch boot/initramfs-${checksum}
144 else 145 else
145 if [ ${@ oe.types.boolean('${OSTREE_DEPLOY_DEVICETREE}')} = True ] && [ -n "${KERNEL_DEVICETREE}" ]; then 146 if [ ${@ oe.types.boolean('${OSTREE_DEPLOY_DEVICETREE}')} = True ] && [ -n "${OSTREE_DEVICETREE}" ]; then
146 checksum=$(cat ${DEPLOY_DIR_IMAGE}/${OSTREE_KERNEL} ${DEPLOY_DIR_IMAGE}/${INITRAMFS_IMAGE}-${MACHINE}.${INITRAMFS_FSTYPES} ${KERNEL_DEVICETREE} | sha256sum | cut -f 1 -d " ") 147 checksum=$(cat ${DEPLOY_DIR_IMAGE}/${OSTREE_KERNEL} ${DEPLOY_DIR_IMAGE}/${INITRAMFS_IMAGE}-${MACHINE}.${INITRAMFS_FSTYPES} ${OSTREE_DEVICETREE} | sha256sum | cut -f 1 -d " ")
147 for DTS_FILE in ${KERNEL_DEVICETREE}; do 148 for DTS_FILE in ${OSTREE_DEVICETREE}; do
148 DTS_FILE_BASENAME=$(basename ${DTS_FILE}) 149 DTS_FILE_BASENAME=$(basename ${DTS_FILE})
149 cp ${DEPLOY_DIR_IMAGE}/${DTS_FILE_BASENAME} boot/devicetree-${DTS_FILE_BASENAME}-${checksum} 150 cp ${DEPLOY_DIR_IMAGE}/${DTS_FILE_BASENAME} boot/devicetree-${DTS_FILE_BASENAME}-${checksum}
150 done 151 done