diff options
Diffstat (limited to 'bsp/meta-boundary/classes/image_types_boundary.bbclass')
-rw-r--r-- | bsp/meta-boundary/classes/image_types_boundary.bbclass | 117 |
1 files changed, 0 insertions, 117 deletions
diff --git a/bsp/meta-boundary/classes/image_types_boundary.bbclass b/bsp/meta-boundary/classes/image_types_boundary.bbclass deleted file mode 100644 index 57916bad..00000000 --- a/bsp/meta-boundary/classes/image_types_boundary.bbclass +++ /dev/null @@ -1,117 +0,0 @@ -inherit image_types - -BOOT_START = "4" -BOOT_SIZE = "32" -BOOT_END = "36" -ROOTFS_START = "36" -ROOTFS_SIZE = "700" -ROOTFS_END = "736" -APPFS_START = "740" -APPFS_SIZE = "2856" -APPFS_END = "3596" -SDCARD_SIZE = "3600" -SDCARD = "${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.sdcard" -IMAGE_BOOTLOADER = "u-boot" - -IMAGE_DEPENDS_boundary = "parted-native:do_populate_sysroot \ - dosfstools-native:do_populate_sysroot \ - mtools-native:do_populate_sysroot \ - virtual/kernel:do_deploy \ - ${@d.getVar('IMAGE_BOOTLOADER', True) and d.getVar('IMAGE_BOOTLOADER', True) + ':do_deploy' or ''}" - -create_blank_sdcard_file () { - # Initialize a sparse file - dd if=/dev/zero of=${SDCARD} bs=1M count=0 seek=${SDCARD_SIZE} - # Create partition table - parted -s ${SDCARD} mklabel msdos -} - -create_and_burn_boot () { - # create boot partition - parted -s ${SDCARD} unit MiB mkpart primary fat32 ${BOOT_START} ${BOOT_END} - - # Create boot partition image - [ -e ${WORKDIR}/boot.img ] && rm ${WORKDIR}/boot.img - dd if=/dev/zero of=${WORKDIR}/boot.img bs=1M count=0 seek=${BOOT_SIZE} - mkfs.vfat -n "BOOT" -S 512 ${WORKDIR}/boot.img - mcopy -i ${WORKDIR}/boot.img -s ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${MACHINE}.bin ::/${KERNEL_IMAGETYPE} - - # Copy boot scripts - for item in ${BOOT_SCRIPTS}; do - src=`echo $item | awk -F':' '{ print $1 }'` - dst=`echo $item | awk -F':' '{ print $2 }'` - - mcopy -i ${WORKDIR}/boot.img -s ${DEPLOY_DIR_IMAGE}/$src ::/$dst - ## FIXME in the class code ---------^ - done - - # Copy device tree file - for DTS_FILE in ${KERNEL_DEVICETREE}; do - DTS_BASE_NAME=`basename ${DTS_FILE} | awk -F "." '{print $1}'` - if [ -e "${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${DTS_BASE_NAME}.dtb" ]; then - kernel_bin="`readlink ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${MACHINE}.bin`" - kernel_bin_for_dtb="`readlink ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${DTS_BASE_NAME}.dtb | sed "s,$DTS_BASE_NAME,${MACHINE},g;s,\.dtb$,.bin,g"`" - if [ $kernel_bin = $kernel_bin_for_dtb ]; then - mcopy -i ${WORKDIR}/boot.img -s ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${DTS_BASE_NAME}.dtb ::/${DTS_BASE_NAME}.dtb - fi - fi - done - - # Burn Partition - dd if=${WORKDIR}/boot.img of=${SDCARD} conv=notrunc seek=${BOOT_START} bs=1M -} - -create_and_burn_rootfs () { - # Create Partition - parted -s ${SDCARD} unit MiB mkpart primary ${ROOTFS_START} ${ROOTFS_END} - - # Temporarily move the app&boot folders away and leave empty mount point for partition creation - - [ -d ${IMAGE_ROOTFS}/../app ] && rm -rf ${IMAGE_ROOTFS}/../app - mv ${IMAGE_ROOTFS}/app ${IMAGE_ROOTFS}/../ - mkdir ${IMAGE_ROOTFS}/app - [ -d ${IMAGE_ROOTFS}/../boot ] && rm -rf ${IMAGE_ROOTFS}/../boot - mv ${IMAGE_ROOTFS}/boot ${IMAGE_ROOTFS}/../ - mkdir ${IMAGE_ROOTFS}/boot - # Create rootfs image - rootfs=`mktemp` - dd if=/dev/zero of=$rootfs seek=${ROOTFS_SIZE} count=0 bs=1M - mkfs.ext4 -F -i 4096 -L "rootfs" ${rootfs} -d ${IMAGE_ROOTFS} - dd if=${rootfs} of=${SDCARD} conv=notrunc seek=${ROOTFS_START} bs=1M - rm $rootfs - rm -rf ${IMAGE_ROOTFS}/app - mv ${IMAGE_ROOTFS}/../app ${IMAGE_ROOTFS}/app - rm -rf ${IMAGE_ROOTFS}/boot - mv ${IMAGE_ROOTFS}/../boot ${IMAGE_ROOTFS}/boot -} - -create_and_burn_appfs () { - # Create Partition - parted -s ${SDCARD} unit MiB mkpart primary ${APPFS_START} ${APPFS_END} - - # write the application partition - appfs=`mktemp` - dd if=/dev/zero of=$appfs bs=1M count=0 seek=${APPFS_SIZE} - mkfs.ext4 -L "app" -F -i 4096 ${appfs} -d ${IMAGE_ROOTFS}/app - dd if=${appfs} of=${SDCARD} conv=notrunc seek=${APPFS_START} bs=1M - rm $appfs -} - -create_sdcard_symlink() { - SDCARD_LINK=`echo ${IMAGE_NAME} | awk -F "-${MACHINE}" '{ print $1 }'` - [ -e ${DEPLOY_DIR_IMAGE}/${SDCARD_LINK}.sdcard ] && rm ${DEPLOY_DIR_IMAGE}/${SDCARD_LINK}.sdcard - ln -s ${SDCARD} ${DEPLOY_DIR_IMAGE}/${SDCARD_LINK}.sdcard -} - -IMAGE_CMD_boundary () { - if [ -z "${SDCARD_ROOTFS}" ]; then - bberror "SDCARD_ROOTFS is undefined. To use sdcard image from Freescale's BSP it needs to be defined." - exit 1 - fi - - create_blank_sdcard_file - create_and_burn_boot - create_and_burn_rootfs - create_and_burn_appfs - create_sdcard_symlink -} |