--- elwix/config/etc/rootfs/rc 2012/10/10 09:14:25 1.1.1.1.6.10 +++ elwix/config/etc/rootfs/rc 2013/01/28 09:48:56 1.2.2.3 @@ -2,7 +2,7 @@ # # Boot startup script for ELWIX RootFS ... # -# $Id: rc,v 1.1.1.1.6.10 2012/10/10 09:14:25 misho Exp $ +# $Id: rc,v 1.2.2.3 2013/01/28 09:48:56 misho Exp $ stty status '^T' @@ -19,10 +19,14 @@ PAGER=less export HOME PATH TERM BLOCKSIZE EDITOR PAGER FRMDEV="md1" -FRMSIZE="82m" +FRMSIZE="41m" FRMFILE="elwix-firmware.sys" -FRMPATH="/elwix" +FRMDEV2="md2" +FRMSIZE2="21m" +FRMFILE2="elwix-firmware2.sys" + +FRMPATH="/elwix" FIT2CF="/dev/ufs/fit2cf" CFDIR="/elwix/cf" @@ -41,24 +45,41 @@ boot_elwix() mdmfs -s $FRMSIZE -S -m0 -oasync $FRMDEV /usr if [ "$?" != "0" ]; then - failed_sysvol "to mount firmware image " elwix-firmware.sys + failed_sysvol "to mount firmware image " $FRMFILE fi cd /usr pax -r -z -pe -f $FRMPATH/$FRMFILE if [ "$?" != "0" ]; then - failed_sysvol "to load firmware image " elwix-firmware.sys + failed_sysvol "to load firmware image " $FRMFILE fi cd - mount -ur /usr } +boot_elwix2() +{ + echo " RootFS: Loading ELWIX secondary firmware" + + mdmfs -s $FRMSIZE2 -S -m0 -oasync $FRMDEV2 /usr/local + if [ "$?" != "0" ]; then + failed_sysvol "to mount firmware image " $FRMFILE2 + fi + cd /usr/local + pax -r -z -pe -f $FRMPATH/$FRMFILE2 + if [ "$?" != "0" ]; then + failed_sysvol "to load firmware image " $FRMFILE2 + fi + cd - + mount -ur /usr/local +} + mount_usr() { echo " RootFS: Mounting ELWIX system image" mount -t nullfs -r $FRMPATH/usr /usr if [ "$?" != "0" ]; then - failed_sysvol "to mount system image " elwix-firmware.sys + failed_sysvol "to mount system image " $FRMFILE fi } @@ -68,12 +89,13 @@ mount_usr() echo "ELWIX>>> Firmware RootFS boot stage ..." echo " RootFS: Mount ELWIX system volume" -fsck -q -y 1>/dev/null 2>&1 && mount -a || fsck -y 1>/dev/null 2>&1 && mount -a || \ +fsck -y 1>/dev/null 2>&1 && mount -a || fsck -y 1>/dev/null 2>&1 && mount -a || \ fsck -f -y 1>/dev/null 2>&1 && mount -a || failed_sysvol mount "system volume" -if test -c $FIT2CF -a -d $CFDIR; then +if test -c "$FIT2CF" -a -d "$CFDIR"; then echo " RootFS: Mount ELWIX flash volume" fsck -y -tufs $FIT2CF 1>/dev/null 2>&1 && mount -o ro $FIT2CF $CFDIR || \ + fsck -y -tufs $FIT2CF 1>/dev/null 2>&1 && mount -o ro $FIT2CF $CFDIR || \ fsck -f -y -tufs $FIT2CF 1>/dev/null 2>&1 && mount -o ro $FIT2CF $CFDIR || \ failed_sysvol mount "flash volume" fi @@ -86,6 +108,10 @@ else else echo " RootFS: Skip loading ELWIX system firmware ..." fi +fi + +if [ -r $FRMPATH/$FRMFILE2 ]; then + boot_elwix2 fi exec /etc/rc.init