poky/meta/recipes-core/initrdscripts/initramfs-framework/setup-live
Ulrich Ölmann 03876eb32b initramfs-framework/setup-live: fix shebang
(From OE-Core rev: 71f1f6bc9402ee0fad82aaf0757fffb73da4b706)

Signed-off-by: Ulrich Ölmann <u.oelmann@pengutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-07-24 16:33:46 +01:00

1.7 KiB

#!/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

if [ -z "$bootparam_root" -o "$bootparam_root" = "/dev/ram0" ]; 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
			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 "
	      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"
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

}