diff options
Diffstat (limited to 'classes')
-rw-r--r-- | classes/lsppchd-image.bbclass | 4 | ||||
-rw-r--r-- | classes/lsppchg-image.bbclass | 4 | ||||
-rw-r--r-- | classes/n2100-image.bbclass | 6 | ||||
-rw-r--r-- | classes/storcenter-image.bbclass | 30 | ||||
-rw-r--r-- | classes/turbostation-image.bbclass | 5 |
5 files changed, 36 insertions, 13 deletions
diff --git a/classes/lsppchd-image.bbclass b/classes/lsppchd-image.bbclass index da280551d4..6aab20127a 100644 --- a/classes/lsppchd-image.bbclass +++ b/classes/lsppchd-image.bbclass @@ -1 +1,3 @@ -IMAGE_POSTPROCESS_COMMAND += "" +lsppchd_pack_image() { +: +}
\ No newline at end of file diff --git a/classes/lsppchg-image.bbclass b/classes/lsppchg-image.bbclass index da280551d4..5d9da87c7d 100644 --- a/classes/lsppchg-image.bbclass +++ b/classes/lsppchg-image.bbclass @@ -1 +1,3 @@ -IMAGE_POSTPROCESS_COMMAND += "" +lsppchg_pack_image() { +: +}
\ No newline at end of file diff --git a/classes/n2100-image.bbclass b/classes/n2100-image.bbclass index 811b1d37b7..519be213d5 100644 --- a/classes/n2100-image.bbclass +++ b/classes/n2100-image.bbclass @@ -1,9 +1,3 @@ -DEPENDS += "openssl-native" -EXTRA_IMAGECMD = "--little-endian" -ERASEBLOCK_SIZE = "0x20000" -IMAGE_FSTYPES = "jffs2" -IMAGE_POSTPROCESS_COMMAND += '${MACHINE}_pack_image;' - n2100_pack_image() { # find latest kernel KERNEL=`ls -tr ${DEPLOY_DIR_IMAGE}/zImage* | tail -1` diff --git a/classes/storcenter-image.bbclass b/classes/storcenter-image.bbclass new file mode 100644 index 0000000000..de77f1b417 --- /dev/null +++ b/classes/storcenter-image.bbclass @@ -0,0 +1,30 @@ +storcenter_pack_image() { + # find latest kernel + KERNEL=`ls -tr ${DEPLOY_DIR_IMAGE}/uImage* | tail -1` + if [ -z "$KERNEL" ]; then + oefatal "No kernel found in ${DEPLOY_DIR_IMAGE}. Bitbake linux-storcenter to create one." + exit 1 + fi + ROOTFS=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.jffs2 + OUTPUT=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.flash.img + PADFILE=${DEPLOY_DIR_IMAGE}/padfile.zzz + HEX_MAX_KERN_SIZE=170000 + DEC_MAX_KERN_SIZE=`echo "ibase=16; $HEX_MAX_KERN_SIZE" | bc ` + HEX_MAX_ROOT_SIZE=590000 + DEC_MAX_ROOT_SIZE=`echo "ibase=16; $HEX_MAX_ROOT_SIZE" | bc ` + KERNEL_SIZE=`ls -l $KERNEL | awk '{print $5}'` + if [ $KERNEL_SIZE -gt $DEC_MAX_KERN_SIZE ]; then + oefatal "Kernel too large at $KERNEL_SIZE bytes. Max is $DEC_MAX_KERN_SIZE." + exit 1 + fi + ROOT_SIZE=`ls -l $ROOTFS | awk '{print $5}'` + if [ $ROOT_SIZE -gt $DEC_MAX_ROOT_SIZE ]; then + oefatal "Rootfs is too large at $ROOT_SIZE bytes. Max is $DEC_MAX_ROOT_SIZE." + exit 1 + fi + PAD_SIZE=`echo "$DEC_MAX_KERN_SIZE - $KERNEL_SIZE" | bc ` + dd if=/dev/zero of=$PADFILE bs=$PAD_SIZE count=1 2>>/dev/null + cat $KERNEL $PADFILE $ROOTFS > $OUTPUT + rm -f $PADFILE + ls -l $OUTPUT +} diff --git a/classes/turbostation-image.bbclass b/classes/turbostation-image.bbclass index d82e3996d5..e61ffc825b 100644 --- a/classes/turbostation-image.bbclass +++ b/classes/turbostation-image.bbclass @@ -1,8 +1,3 @@ -EXTRA_IMAGECMD = "--big-endian" -ERASEBLOCK_SIZE = "0x20000" -IMAGE_FSTYPES = "jffs2" -IMAGE_POSTPROCESS_COMMAND += '${MACHINE}_pack_image;' - turbostation_pack_image() { # find latest kernel KERNEL=`ls -tr ${DEPLOY_DIR_IMAGE}/uImage* | tail -1` |