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:56 +0200
commita02cb0bb27cbf5d8dbeec24d7147a2968cb073a2 (patch)
tree0d056346e4a3d5fd0d6e5166acb5fbeda14abeac
parent419879d1aeb67ec154408e2d995a20b6db2c73b3 (diff)
downloadmeta-updater-a02cb0bb27cbf5d8dbeec24d7147a2968cb073a2.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