summaryrefslogtreecommitdiffstats
path: root/classes
diff options
context:
space:
mode:
Diffstat (limited to 'classes')
-rw-r--r--classes/image_types_fsl.bbclass68
1 files changed, 2 insertions, 66 deletions
diff --git a/classes/image_types_fsl.bbclass b/classes/image_types_fsl.bbclass
index e7627200..e49bb1af 100644
--- a/classes/image_types_fsl.bbclass
+++ b/classes/image_types_fsl.bbclass
@@ -11,20 +11,6 @@ UBOOT_SUFFIX_SDCARD ?= "${UBOOT_SUFFIX}"
11# 11#
12MXSBOOT_NAND_ARGS ?= "" 12MXSBOOT_NAND_ARGS ?= ""
13 13
14# IMX Bootlets barebox bootstream
15do_image_barebox-mxsboot-sdcard[depends] += "elftosb-native:do_populate_sysroot \
16 u-boot-mxsboot-native:do_populate_sysroot \
17 imx-bootlets:do_deploy \
18 barebox:do_deploy"
19IMAGE_CMD_barebox-mxsboot-sdcard () {
20 barebox_bd_file=imx-bootlets-barebox_ivt.bd-${MACHINE}
21
22 # Ensure the files are generated
23 (cd ${DEPLOY_DIR_IMAGE}; rm -f ${IMAGE_NAME}.barebox.sb ${IMAGE_NAME}.barebox-mxsboot-sdcard; \
24 elftosb -f mx28 -z -c $barebox_bd_file -o ${IMAGE_NAME}.barebox.sb; \
25 mxsboot sd ${IMAGE_NAME}.barebox.sb ${IMAGE_NAME}.barebox-mxsboot-sdcard)
26}
27
28# U-Boot mxsboot generation to SD-Card 14# U-Boot mxsboot generation to SD-Card
29UBOOT_SUFFIX_SDCARD_mxs ?= "mxsboot-sdcard" 15UBOOT_SUFFIX_SDCARD_mxs ?= "mxsboot-sdcard"
30do_image_uboot_mxsboot_sdcard[depends] += "u-boot-mxsboot-native:do_populate_sysroot \ 16do_image_uboot_mxsboot_sdcard[depends] += "u-boot-mxsboot-native:do_populate_sysroot \
@@ -44,9 +30,6 @@ BOOTDD_VOLUME_ID ?= "Boot ${MACHINE}"
44# Boot partition size [in KiB] 30# Boot partition size [in KiB]
45BOOT_SPACE ?= "8192" 31BOOT_SPACE ?= "8192"
46 32
47# Barebox environment size [in KiB]
48BAREBOX_ENV_SPACE ?= "512"
49
50# Set alignment to 4MB [in KiB] 33# Set alignment to 4MB [in KiB]
51IMAGE_ROOTFS_ALIGNMENT = "4096" 34IMAGE_ROOTFS_ALIGNMENT = "4096"
52 35
@@ -125,7 +108,7 @@ _generate_boot_image() {
125# 108#
126# External variables needed: 109# External variables needed:
127# ${SDCARD_ROOTFS} - the rootfs image to incorporate 110# ${SDCARD_ROOTFS} - the rootfs image to incorporate
128# ${IMAGE_BOOTLOADER} - bootloader to use {u-boot, barebox} 111# ${IMAGE_BOOTLOADER} - bootloader to use
129# 112#
130# The disk layout used is: 113# The disk layout used is:
131# 114#
@@ -153,10 +136,6 @@ generate_imx_sdcard () {
153 136
154 # Burn bootloader 137 # Burn bootloader
155 case "${IMAGE_BOOTLOADER}" in 138 case "${IMAGE_BOOTLOADER}" in
156 imx-bootlets)
157 bberror "The imx-bootlets is not supported for i.MX based machines"
158 exit 1
159 ;;
160 u-boot) 139 u-boot)
161 if [ -n "${SPL_BINARY}" ]; then 140 if [ -n "${SPL_BINARY}" ]; then
162 dd if=${DEPLOY_DIR_IMAGE}/${SPL_BINARY} of=${SDCARD} conv=notrunc seek=2 bs=512 141 dd if=${DEPLOY_DIR_IMAGE}/${SPL_BINARY} of=${SDCARD} conv=notrunc seek=2 bs=512
@@ -165,12 +144,6 @@ generate_imx_sdcard () {
165 dd if=${DEPLOY_DIR_IMAGE}/u-boot-${MACHINE}.${UBOOT_SUFFIX_SDCARD} of=${SDCARD} conv=notrunc seek=2 bs=512 144 dd if=${DEPLOY_DIR_IMAGE}/u-boot-${MACHINE}.${UBOOT_SUFFIX_SDCARD} of=${SDCARD} conv=notrunc seek=2 bs=512
166 fi 145 fi
167 ;; 146 ;;
168 barebox)
169 dd if=${DEPLOY_DIR_IMAGE}/barebox-${MACHINE}.bin of=${SDCARD} conv=notrunc seek=1 skip=1 bs=512
170 dd if=${DEPLOY_DIR_IMAGE}/bareboxenv-${MACHINE}.bin of=${SDCARD} conv=notrunc seek=1 bs=512k
171 ;;
172 "")
173 ;;
174 *) 147 *)
175 bberror "Unknown IMAGE_BOOTLOADER value" 148 bberror "Unknown IMAGE_BOOTLOADER value"
176 exit 1 149 exit 1
@@ -190,40 +163,13 @@ generate_imx_sdcard () {
190# 163#
191# External variables needed: 164# External variables needed:
192# ${SDCARD_ROOTFS} - the rootfs image to incorporate 165# ${SDCARD_ROOTFS} - the rootfs image to incorporate
193# ${IMAGE_BOOTLOADER} - bootloader to use {imx-bootlets, u-boot} 166# ${IMAGE_BOOTLOADER} - bootloader to use
194# 167#
195generate_mxs_sdcard () { 168generate_mxs_sdcard () {
196 # Create partition table 169 # Create partition table
197 parted -s ${SDCARD} mklabel msdos 170 parted -s ${SDCARD} mklabel msdos
198 171
199 case "${IMAGE_BOOTLOADER}" in 172 case "${IMAGE_BOOTLOADER}" in
200 imx-bootlets)
201 # The disk layout used is:
202 #
203 # 0 -> 1024 - Unused (not partitioned)
204 # 1024 -> BOOT_SPACE - kernel and other data (bootstream)
205 # BOOT_SPACE -> SDIMG_SIZE - rootfs
206 #
207 # Default Free space = 1.3x
208 # Use IMAGE_OVERHEAD_FACTOR to add more space
209 # <--------->
210 # 1024 8MiB SDIMG_ROOTFS 4MiB
211 # <-------> <----------> <----------------------> <------------------------------>
212 # --------------------- ------------------------ -------------------------------
213 # | Unused | BOOT_SPACE | ROOTFS_SIZE | IMAGE_ROOTFS_ALIGNMENT |
214 # --------------------- ------------------------ -------------------------------
215 # ^ ^ ^ ^ ^
216 # | | | | |
217 # 0 1024 1024 + 8MiB 1024 + 8Mib + SDIMG_ROOTFS 1024 + 8MiB + SDIMG_ROOTFS + 4MiB
218 parted -s ${SDCARD} unit KiB mkpart primary 1024 $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED})
219 parted -s ${SDCARD} unit KiB mkpart primary $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED}) $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED} \+ $ROOTFS_SIZE)
220
221 # Empty 4 blocks from boot partition
222 dd if=/dev/zero of=${SDCARD} conv=notrunc seek=2048 count=4
223
224 # Write the bootstream in (2048 + 4) blocks
225 dd if=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.linux.sb of=${SDCARD} conv=notrunc seek=2052
226 ;;
227 u-boot) 173 u-boot)
228 # The disk layout used is: 174 # The disk layout used is:
229 # 175 #
@@ -259,15 +205,6 @@ generate_mxs_sdcard () {
259 205
260 dd if=${WORKDIR}/boot.img of=${SDCARD} conv=notrunc seek=2 bs=$(expr 1024 \* 1024) 206 dd if=${WORKDIR}/boot.img of=${SDCARD} conv=notrunc seek=2 bs=$(expr 1024 \* 1024)
261 ;; 207 ;;
262 barebox)
263 # BAREBOX_ENV_SPACE is taken on BOOT_SPACE_ALIGNED but it doesn't really matter as long as the rootfs is aligned
264 parted -s ${SDCARD} unit KiB mkpart primary 1024 $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED} - ${BAREBOX_ENV_SPACE})
265 parted -s ${SDCARD} unit KiB mkpart primary $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED} - ${BAREBOX_ENV_SPACE}) $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED})
266 parted -s ${SDCARD} unit KiB mkpart primary $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED}) $(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED} \+ $ROOTFS_SIZE)
267
268 dd if=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.barebox-mxsboot-sdcard of=${SDCARD} conv=notrunc seek=1 bs=$(expr 1024 \* 1024)
269 dd if=${DEPLOY_DIR_IMAGE}/bareboxenv-${MACHINE}.bin of=${SDCARD} conv=notrunc seek=$(expr ${IMAGE_ROOTFS_ALIGNMENT} \+ ${BOOT_SPACE_ALIGNED} - ${BAREBOX_ENV_SPACE}) bs=1024
270 ;;
271 *) 208 *)
272 bberror "Unknown IMAGE_BOOTLOADER value" 209 bberror "Unknown IMAGE_BOOTLOADER value"
273 exit 1 210 exit 1
@@ -310,7 +247,6 @@ IMAGE_TYPEDEP_sdcard_append = " ${@d.getVar('SDCARD_ROOTFS', 1).split('.')[-1]}"
310# image stream built before the sdcard generation 247# image stream built before the sdcard generation
311IMAGE_TYPEDEP_sdcard_append = " \ 248IMAGE_TYPEDEP_sdcard_append = " \
312 ${@bb.utils.contains('IMAGE_FSTYPES', 'uboot-mxsboot-sdcard', 'uboot-mxsboot-sdcard', '', d)} \ 249 ${@bb.utils.contains('IMAGE_FSTYPES', 'uboot-mxsboot-sdcard', 'uboot-mxsboot-sdcard', '', d)} \
313 ${@bb.utils.contains('IMAGE_FSTYPES', 'barebox-mxsboot-sdcard', 'barebox-mxsboot-sdcard', '', d)} \
314" 250"
315 251
316# In case we are building for i.MX23 or i.MX28 we need to have the 252# In case we are building for i.MX23 or i.MX28 we need to have the