On Thu, Jul 6, 2017 at 3:28 PM, <wei.tee...@intel.com> wrote: > From: "Ng, Wei Tee" <wei.tee...@intel.com> > > Integrate the featuers in init-live.sh into new scriptlet to handle
typo! > boot up live image process using framework method. > > This commit include the changes for: > - Create a conditional loop for the bootparam_root variable. If it is > not set, then it will boot from ROOT_IMAGE. Else, it will boot normally > which is not from removable media. > > - Gives a standard path to the original boot disk mount which can be > used to. While /media/sda is a good guess, it isn't always right, nor > is it a good assumption that only one boot disk is in the system. > > - The current rootfs module has no support for rootfs images, currently > it only support for rootfs partitions for wic image. Therefore, there > is a need to assign the rootfs image for live image. > > Signed-off-by: Ng, Wei Tee <wei.tee...@intel.com> > --- > .../initrdscripts/initramfs-framework/setup-live | 67 > ++++++++++++++++++++++ > 1 file changed, 67 insertions(+) > create mode 100644 > meta/recipes-core/initrdscripts/initramfs-framework/setup-live > > diff --git a/meta/recipes-core/initrdscripts/initramfs-framework/setup-live > b/meta/recipes-core/initrdscripts/initramfs-framework/setup-live > new file mode 100644 > index 0000000..16da34a > --- /dev/null > +++ b/meta/recipes-core/initrdscripts/initramfs-framework/setup-live > @@ -0,0 +1,67 @@ > +#/bin/sh > +# Copyright (C) 2011 O.S. Systems Software LTDA. > +# Licensed on MIT > + > +setup_enabled() { > + return 0 > +} > + > +setup_run() { > +ROOT_IMAGE="rootfs.img" > +ISOLINUX="" > +ROOT_DISK="" > +shelltimeout=30 Wrong indent > + if [ -z $bootparam_root ]; then > + echo "Waiting for removable media..." > + C=0 > + while true > + do > + for i in `ls /run/media 2>/dev/null`; do > + if [ -f /run/media/$i/$ROOT_IMAGE ] ; then > + found="yes" > + ROOT_DISK="$i" > + break > + elif [ -f /run/media/$i/isolinux/$ROOT_IMAGE ]; then Wrong indent > + found="yes" > + ISOLINUX="isolinux" > + ROOT_DISK="$i" > + break > + fi > + done > + if [ "$found" = "yes" ]; then > + break; > + fi > + # don't wait for more than $shelltimeout seconds, if it's > set > + if [ -n "$shelltimeout" ]; then > + echo -n " " $(( $shelltimeout - $C )) > + if [ $C -ge $shelltimeout ]; then > + echo "..." > + echo "Mounted filesystems" > + mount | grep media > + echo "Available block devices" > + cat /proc/partitions > + fatal "Cannot find $ROOT_IMAGE file in > /run/media/* , dropping to a shell " IIRC fatal does not drop to a shell, it keeps a loop. > + fi > + C=$(( C + 1 )) > + fi > + sleep 1 > + done > + > + # The existing rootfs module has no support for rootfs > images. Assign the rootfs image. > + bootparam_root="/run/media/$ROOT_DISK/$ISOLINUX/$ROOT_IMAGE" > + else > + break > + fi > + > + if [ "$bootparam_LABEL" != "boot" -a -f /init.d/$bootparam_LABEL.sh ] > ; then > + if [ -f /run/media/$i/$ISOLINUX/$ROOT_IMAGE ] ; then > + ./init.d/$bootparam_LABEL.sh $i/$ISOLINUX $ROOT_IMAGE > $video_mode $vga_mode $console_params > + else > + fatal "Could not find $bootparam_LABEL script" > + fi > + > + # If we're getting here, we failed... > + fatal "Target $bootparam_LABEL failed" > + fi > +} > -- > 2.7.4 > > -- > _______________________________________________ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.openembedded.org/mailman/listinfo/openembedded-core -- Otavio Salvador O.S. Systems http://www.ossystems.com.br http://code.ossystems.com.br Mobile: +55 (53) 9981-7854 Mobile: +1 (347) 903-9750 -- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core