diff options
author | Max Krummenacher <max.krummenacher@toradex.com> | 2016-08-17 15:12:40 +0200 |
---|---|---|
committer | Stefan Agner <stefan.agner@toradex.com> | 2016-09-28 14:14:23 -0700 |
commit | 2e01657c7435ad629731f2be3ca842773ff3b939 (patch) | |
tree | 4040d50f1dda3199c32d2ae21062424de882bd05 /recipes-images/images/trdx-image-fstype.inc | |
parent | 4b914089531c92620d4a2f7b5e04c65c4b4d5753 (diff) |
images: mv all files into recipes-image/image
This requires to adjust the path to include files, e.g.:
-require recipes/images/trdx-image-fstype.inc
+require recipes-images/images/trdx-image-fstype.inc
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Acked-by: Stefan Agner <stefan.agner@toradex.com>
Diffstat (limited to 'recipes-images/images/trdx-image-fstype.inc')
-rw-r--r-- | recipes-images/images/trdx-image-fstype.inc | 163 |
1 files changed, 163 insertions, 0 deletions
diff --git a/recipes-images/images/trdx-image-fstype.inc b/recipes-images/images/trdx-image-fstype.inc new file mode 100644 index 0000000..ed1a132 --- /dev/null +++ b/recipes-images/images/trdx-image-fstype.inc @@ -0,0 +1,163 @@ +#create the deployment directory-tree + +BURNFLASH := "${THISDIR}/files/${MACHINE}" +IMAGE_ROOTFS = "${WORKDIR}/${IMAGE_NAME}${PV}/rootfs" + +U_BOOT_EXT = "bin" +U_BOOT_EXT_mx6 = "imx" +U_BOOT_EXT_mx7 = "imx" +U_BOOT_EXT_vf = "imx" +U_BOOT_SYMLINK = "u-boot-${MACHINE}.${U_BOOT_EXT}" +U_BOOT_SYMLINK_tegra = "u-boot-dtb-tegra-${MACHINE}.${U_BOOT_EXT}" +U_BOOT_SYMLINK_tegra124 = "u-boot-dtb-tegra-${MACHINE}.${U_BOOT_EXT}" +U_BOOT_BINARY = "u-boot.${U_BOOT_EXT}" +U_BOOT_BINARY_tegra = "u-boot-dtb-tegra.${U_BOOT_EXT}" +U_BOOT_BINARY_tegra124 = "u-boot-dtb-tegra.${U_BOOT_EXT}" + +#we need some native tools for deployment +DEPENDS_append_mx6 = " imx-loader-native" +DEPENDS_append_mx7 = " mtd-utils-native imx-loader-native" +#FIXME: 32-bit tegrarcm built on F20 does not run on 64-bit F20 even with properly installed 32-bit libs! +DEPENDS_append_tegra = " cbootimage-native tegrarcm-native" +DEPENDS_append_tegra124 = " cbootimage-native tegrarcm-native" +DEPENDS_append_tegra2 = " mtd-utils-native" +DEPENDS_append_vf = " mtd-utils-native imx-loader-native" +#we need mkimage to produce the U-Boot scripts even if not building a uImage kernel +DEPENDS_append = " virtual/bootloader u-boot-mkimage-native" + +imagedeploytools() { + # default to nothing to deploy + : +} + +imagedeploytools_append_mx6() { + IMAGE_ROOT="${IMAGE_ROOTFS}/../imx_flash/" + rm -f ${IMAGE_ROOT}/imx_flash/imx_usb ${IMAGE_ROOT}/imx_flash/*.conf + mkdir -p ${IMAGE_ROOT} + + # add imx-loader and its configuration files + cp ${STAGING_BINDIR_NATIVE}/imx_usb ${IMAGE_ROOT}/ + ${BUILD_STRIP} ${IMAGE_ROOT}/imx_usb + cp ${STAGING_ETCDIR_NATIVE}/imx-loader.d/imx_usb.conf ${IMAGE_ROOT}/ + cp ${STAGING_ETCDIR_NATIVE}/imx-loader.d/mx6_usb_work.conf ${IMAGE_ROOT}/ +} + +imagedeploytools_append_mx7() { + IMAGE_ROOT="${IMAGE_ROOTFS}/../imx_flash/" + rm -f ${IMAGE_ROOT}/mkfs.ubifs ${IMAGE_ROOT}/imx_usb + mkdir -p ${IMAGE_ROOT} + + # add the mkfs.ubifs binary + cp ${STAGING_DIR_NATIVE}/usr/sbin/mkfs.ubifs ${IMAGE_ROOT}/ + ${BUILD_STRIP} ${IMAGE_ROOT}/mkfs.ubifs + + # add imx-loader and its configuration files + cp ${STAGING_BINDIR_NATIVE}/imx_usb ${IMAGE_ROOT}/ + ${BUILD_STRIP} ${IMAGE_ROOT}/imx_usb + cp ${STAGING_ETCDIR_NATIVE}/imx-loader.d/imx_usb.conf ${IMAGE_ROOT}/ + cp ${STAGING_ETCDIR_NATIVE}/imx-loader.d/mx7_usb_work.conf ${IMAGE_ROOT}/ +} + +imagedeploytools_append_tegra() { + IMAGE_ROOT="${IMAGE_ROOTFS}/../tegra-uboot-flasher/" + mkdir -p ${IMAGE_ROOT} + + # add cbootimage and tegrarcm + cp ${STAGING_BINDIR_NATIVE}/cbootimage ${IMAGE_ROOT}/ + cp ${STAGING_BINDIR_NATIVE}/tegrarcm ${IMAGE_ROOT}/ + ${BUILD_STRIP} ${IMAGE_ROOT}/cbootimage + ${BUILD_STRIP} ${IMAGE_ROOT}/tegrarcm +} + +imagedeploytools_append_tegra2() { + # add the mkfs.ubifs binary + cp ${STAGING_DIR_NATIVE}/usr/sbin/mkfs.ubifs ${IMAGE_ROOT}/ + ${BUILD_STRIP} ${IMAGE_ROOT}/mkfs.ubifs +} + +imagedeploytools_append_tegra124() { + IMAGE_ROOT="${IMAGE_ROOTFS}/../tegra-uboot-flasher/" + mkdir -p ${IMAGE_ROOT} + + # add cbootimage and tegrarcm + cp ${STAGING_BINDIR_NATIVE}/cbootimage ${IMAGE_ROOT}/ + cp ${STAGING_BINDIR_NATIVE}/tegrarcm ${IMAGE_ROOT}/ + ${BUILD_STRIP} ${IMAGE_ROOT}/cbootimage + ${BUILD_STRIP} ${IMAGE_ROOT}/tegrarcm +} + +imagedeploytools_append_vf() { + IMAGE_ROOT="${IMAGE_ROOTFS}/../vf_flash/" + rm -f ${IMAGE_ROOT}/mkfs.ubifs ${IMAGE_ROOT}/imx_uart + mkdir -p ${IMAGE_ROOT} + + # add the mkfs.ubifs binary + cp ${STAGING_DIR_NATIVE}/usr/sbin/mkfs.ubifs ${IMAGE_ROOT}/ + ${BUILD_STRIP} ${IMAGE_ROOT}/mkfs.ubifs + + # add imx-loader and its configuration files + cp ${STAGING_BINDIR_NATIVE}/imx_uart ${IMAGE_ROOT}/ + ${BUILD_STRIP} ${IMAGE_ROOT}/imx_uart* + cp ${STAGING_ETCDIR_NATIVE}/imx-loader.d/vybrid_usb_work.conf ${IMAGE_ROOT}/ +} + +imagedeploy_kernel() { + # put kernel, device-tree into the bin directories, remove the kernel/dtb from the rootfs/boot + rm -f ${IMAGE_ROOTFS}/boot/${KERNEL_IMAGETYPE}* ${IMAGE_ROOTFS}/boot/*.dtb + cp -pP ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}* ${IMAGE_ROOTFS}/../${MACHINE}_bin/ + ls ${DEPLOY_DIR_IMAGE}/*.dtb 2> /dev/null && cp -pP ${DEPLOY_DIR_IMAGE}/*.dtb ${IMAGE_ROOTFS}/../${MACHINE}_bin/ + mv ${IMAGE_ROOTFS}/../${MACHINE}_bin/${KERNEL_IMAGETYPE}-${MACHINE}.bin ${IMAGE_ROOTFS}/../${MACHINE}_bin/${KERNEL_IMAGETYPE} +} + +imagedeploy_kernel_mx7() { + do_imagedeploy_kernel_dtb +} + +imagedeploy_kernel_tegra2() { + # put kernel into the bin directories + rm -f ${IMAGE_ROOTFS}/boot/${KERNEL_IMAGETYPE}* ${IMAGE_ROOTFS}/boot/*.dtb + cp -pP ${DEPLOY_DIR_IMAGE}/zImage* ${IMAGE_ROOTFS}/../${MACHINE}_bin/ + mv ${IMAGE_ROOTFS}/../${MACHINE}_bin/zImage-${MACHINE}.bin ${IMAGE_ROOTFS}/../${MACHINE}_bin/zImage +} + +imagedeploy_kernel_vf() { + do_imagedeploy_kernel_dtb +} + +do_imagedeploy_kernel_dtb() { + # put kernel, device-tree into the bin directories + cp -pP ${DEPLOY_DIR_IMAGE}/zImage* ${IMAGE_ROOTFS}/../${MACHINE}_bin/ + ls ${DEPLOY_DIR_IMAGE}/*.dtb 2> /dev/null && cp -pP ${DEPLOY_DIR_IMAGE}/*.dtb ${IMAGE_ROOTFS}/../${MACHINE}_bin/ + mv ${IMAGE_ROOTFS}/../${MACHINE}_bin/zImage-${MACHINE}.bin ${IMAGE_ROOTFS}/../${MACHINE}_bin/zImage +} + +fakeroot do_imagedeploy() { + cd ${WORKDIR} + cp -pLr ${BURNFLASH}/* ${IMAGE_NAME}${PV}/ + + cd ${IMAGE_NAME}${PV}/${MACHINE}_bin + ./mk-u-boot-scripts.sh + cd ${WORKDIR} + + imagedeploy_kernel + + cp -pP ${DEPLOY_DIR_IMAGE}/u-boot* ${IMAGE_ROOTFS}/../${MACHINE}_bin/ + rm -f ${IMAGE_ROOTFS}/../${MACHINE}_bin/u-boot-hsmmc-${MACHINE}.${U_BOOT_EXT} + mv ${IMAGE_ROOTFS}/../${MACHINE}_bin/${U_BOOT_SYMLINK} ${IMAGE_ROOTFS}/../${MACHINE}_bin/${U_BOOT_BINARY} + + # add the rootfs version to the welcome banner + echo "${IMAGE_NAME}${PV}_${DATE}" >> ${IMAGE_ROOTFS}/etc/issue + echo "" >> ${IMAGE_ROOTFS}/etc/issue + + # add additional tools if required + imagedeploytools + + # remove intermediate file rootfs.lock + rm -f ${IMAGE_NAME}${PV}/rootfs.lock + + #create tarball + DATE=`date +%Y%m%d` + tar -cjf ${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}${PV}_${DATE}.tar.bz2 ${IMAGE_NAME}${PV} +} + +addtask imagedeploy after do_rootfs before do_build |