diff options
author | Samuli Piippo <samuli.piippo@qt.io> | 2018-04-12 16:25:36 +0300 |
---|---|---|
committer | Samuli Piippo <samuli.piippo@qt.io> | 2018-04-17 06:22:30 +0000 |
commit | a0c975500f2b64ed327bd20a61cf9ceca75493ec (patch) | |
tree | 10dd67aa53cbf5fad0ae4e4262584738bf5153c4 | |
parent | 1677194dcca9e0c3e351cba686206497f06e527d (diff) |
tegra: include tegra flasher utils into release image
Since the sd card image won't bootup on a device which has been flashed
with different version of L4T, include flasher utils that can be used to
flash the image into the device as well.
The new prepare-image.sh script will use the SD card image to create
an image that can be flashed into the device. This saves user from
downloading matching image from NVIDIA or bitbaking a flashable image.
Change-Id: I28cdcd10a531eaf9fd511565e2542bd0d81541b6
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
Reviewed-by: Kari Oikarinen <kari.oikarinen@qt.io>
-rw-r--r-- | meta-boot2qt-distro/conf/distro/include/jetson.inc | 1 | ||||
-rw-r--r-- | meta-boot2qt/classes/image_types_sdcard.bbclass | 23 |
2 files changed, 23 insertions, 1 deletions
diff --git a/meta-boot2qt-distro/conf/distro/include/jetson.inc b/meta-boot2qt-distro/conf/distro/include/jetson.inc index bb1859ce..e3e02929 100644 --- a/meta-boot2qt-distro/conf/distro/include/jetson.inc +++ b/meta-boot2qt-distro/conf/distro/include/jetson.inc @@ -41,6 +41,7 @@ UBOOT_SUFFIX = "bin" QBSP_IMAGE_CONTENT = "\ ${IMAGE_LINK_NAME}.img \ ${IMAGE_LINK_NAME}.conf \ + ${IMAGE_LINK_NAME}.flasher.tar.gz \ " BBMASK += "\ diff --git a/meta-boot2qt/classes/image_types_sdcard.bbclass b/meta-boot2qt/classes/image_types_sdcard.bbclass index 37b1b61c..7dedf875 100644 --- a/meta-boot2qt/classes/image_types_sdcard.bbclass +++ b/meta-boot2qt/classes/image_types_sdcard.bbclass @@ -52,7 +52,7 @@ IMAGE_DEPENDS_tegraflash_append = " parted-native:do_populate_sysroot" create_tegraflash_pkg_prepend() { # Create partition table SDCARD=${IMGDEPLOYDIR}/${IMAGE_NAME}.img - SDCARD_ROOTFS=${IMGDEPLOYDIR}/${IMAGE_LINK_NAME}.ext4 + SDCARD_ROOTFS=${IMGDEPLOYDIR}/${IMAGE_LINK_NAME}.${IMAGE_TEGRAFLASH_FS_TYPE} SDCARD_SIZE=$(expr ${IMAGE_ROOTFS_ALIGNMENT} + ${ROOTFS_SIZE} + ${IMAGE_ROOTFS_ALIGNMENT}) dd if=/dev/zero of=$SDCARD bs=1 count=0 seek=$(expr 1024 \* $SDCARD_SIZE) @@ -66,3 +66,24 @@ create_tegraflash_pkg_prepend() { rm -f ${IMGDEPLOYDIR}/${IMAGE_LINK_NAME}.img ln -s ${IMAGE_NAME}.img ${IMGDEPLOYDIR}/${IMAGE_LINK_NAME}.img } + +# create flash package that utilizes the SD card image +create_tegraflash_pkg_append() { + cd ${WORKDIR}/tegraflash + cat > prepare-image.sh <<END +#!/bin/sh -e +if [ ! -e "${IMAGE_BASENAME}.img" ]; then + dd if=../${IMAGE_LINK_NAME}.img of=${IMAGE_LINK_NAME}.${IMAGE_TEGRAFLASH_FS_TYPE} skip=1 bs=$(expr ${IMAGE_ROOTFS_ALIGNMENT} \* 1024) count=$(expr ${ROOTFS_SIZE} / 1024) + ./tegra*-flash/mksparse -v --fillpattern=0 ${IMAGE_LINK_NAME}.${IMAGE_TEGRAFLASH_FS_TYPE} ${IMAGE_BASENAME}.img + rm -f ${IMAGE_LINK_NAME}.${IMAGE_TEGRAFLASH_FS_TYPE} +fi +echo "Flash image ready" +END + chmod +x prepare-image.sh + rm ${IMAGE_BASENAME}.img + + cd .. + rm -f ${IMGDEPLOYDIR}/${IMAGE_NAME}.flasher.tar.gz + tar czhf ${IMGDEPLOYDIR}/${IMAGE_NAME}.flasher.tar.gz tegraflash + ln -sf ${IMAGE_NAME}.flasher.tar.gz ${IMGDEPLOYDIR}/${IMAGE_LINK_NAME}.flasher.tar.gz +} |