[oe-commits] org.oe.dev foonas-image: Add n2100 support

nail commit openembedded-commits at lists.openembedded.org
Wed Mar 14 01:28:43 UTC 2007


foonas-image: Add n2100 support

Author: nail at nslu2-linux.org
Branch: org.openembedded.dev
Revision: 506921540e40ca88349b613ff4f509a099c6b2a7
ViewMTN: http://monotone.openembedded.org/revision.psp?id=506921540e40ca88349b613ff4f509a099c6b2a7
Files:
1
packages/images/foonas-image.bb
Diffs:

#
# mt diff -rf953e7c68183cab2ac34f9d69457ace3b598a097 -r506921540e40ca88349b613ff4f509a099c6b2a7
#
# 
# 
# patch "packages/images/foonas-image.bb"
#  from [dd278e875ab48fce94df0e02c05fd23be4deb88c]
#    to [7e9a0354fd78bf76d7a29fbee78d5770f85d51dd]
# 
============================================================
--- packages/images/foonas-image.bb	dd278e875ab48fce94df0e02c05fd23be4deb88c
+++ packages/images/foonas-image.bb	7e9a0354fd78bf76d7a29fbee78d5770f85d51dd
@@ -1,9 +1,11 @@ DEPENDS = "${MACHINE_TASK_PROVIDER}"
 DESCRIPTION = "Foonas image"
 LICENSE = "GPL"
 PR = "r0"
 
 DEPENDS = "${MACHINE_TASK_PROVIDER}"
-EXTRA_IMAGECMD_jffs2 = "--big-endian --eraseblock=${ERASEBLOCK_SIZE} -D ${SLUGOS_DEVICE_TABLE}"
+EXTRA_IMAGECMD_turbostation = "--bit-endian"
+EXTRA_IMAGECMD_n2100 = "--little-endian"
+EXTRA_IMAGECMD_jffs2 += " --eraseblock=${ERASEBLOCK_SIZE} -D ${SLUGOS_DEVICE_TABLE}"
 IMAGE_LINGUAS = ""
 
 # This is passed to the image command to build the correct /dev
@@ -37,9 +39,11 @@ FOONAS_SUPPORT += "diffutils cpio findut
 FOONAS_SUPPORT += "diffutils cpio findutils uboot-utils udev"
 
 # this gets /lib/modules made....
-FOONAS_KERNEL = "kernel-module-ext3 kernel-module-minix \
+FOONAS_KERNEL_turbostation = "kernel-module-ext3 kernel-module-minix \
 			kernel-module-usb-storage"
 
+FOONAS_KERNEL_n2100 = "kernel-module-ext2 kernel-module-usb-storage"
+
 RDEPENDS = " \
 	base-files base-passwd netbase \
         busybox initscripts foonas-init \
@@ -93,3 +97,34 @@ turbostation_pack_image() {
 	rm -f $PADFILE
 	ls -l $OUTPUT
 }
+
+n2100_pack_image() {
+        # find latest kernel
+        KERNEL=`ls -tr ${DEPLOY_DIR_IMAGE}/zImage* | tail -1`
+        if [ -z "$KERNEL" ]; then
+                oefatal "No kernel found in ${DEPLOY_DIR_IMAGE}. Bitbake linux 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=1C0000
+        DEC_MAX_KERN_SIZE=`echo "ibase=16; $HEX_MAX_KERN_SIZE" | bc `
+        HEX_MAX_ROOT_SIZE=DC0000
+        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
+}






More information about the Openembedded-commits mailing list