Patchwork [1/1] runqemu: support booting ramfs-based images

login
register
mail settings
Submitter Scott Garman
Date Aug. 13, 2012, 8:20 p.m.
Message ID <1876d21980dc79e895890326fa3c0292a970e322.1344752146.git.scott.a.garman@intel.com>
Download mbox | patch
Permalink /patch/34381/
State Accepted
Commit b09c45f017da71ff966004752f8e926ea00ac451
Headers show

Comments

Scott Garman - Aug. 13, 2012, 8:20 p.m.
Added support for booting ramfs-based images (e.g, poky-tiny) which
do not have block device support.

This fixes [YOCTO #2612].

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
---
 scripts/runqemu          |    6 ++++++
 scripts/runqemu-internal |    5 +++++
 2 files changed, 11 insertions(+)

Patch

diff --git a/scripts/runqemu b/scripts/runqemu
index 7454dd4..7e4bcc4 100755
--- a/scripts/runqemu
+++ b/scripts/runqemu
@@ -26,6 +26,7 @@  usage() {
     echo "  KERNEL - the kernel image file to use"
     echo "  ROOTFS - the rootfs image file or nfsroot directory to use"
     echo "  MACHINE - the machine name (optional, autodetected from KERNEL filename if unspecified)"
+    echo "  RAMFS - boot a ramfs-based image"
     echo "  Simplified QEMU command-line options can be passed with:"
     echo "    nographic - disables video console"
     echo "    serial - enables a serial console on /dev/ttyS0"
@@ -37,6 +38,7 @@  usage() {
     echo "  $MYNAME qemuarm"
     echo "  $MYNAME qemux86-64 core-image-sato ext3"
     echo "  $MYNAME path/to/bzImage-qemux86.bin path/to/nfsrootdir/ serial"
+    echo "  $MYNAME qemux86 ramfs"
     echo "  $MYNAME qemux86 qemuparams=\"-m 256\""
     echo "  $MYNAME qemux86 bootparams=\"psplash=false\""
     exit 1
@@ -118,6 +120,10 @@  while true; do
                 LAZY_ROOTFS="true"
             fi
             ;;
+        "ramfs")
+            FSTYPE=cpio.gz
+            RAMFS=true
+            ;;
         "nographic")
             SCRIPT_QEMU_OPT="$SCRIPT_QEMU_OPT -nographic"
             SCRIPT_KERNEL_OPT="$SCRIPT_KERNEL_OPT console=ttyS0"
diff --git a/scripts/runqemu-internal b/scripts/runqemu-internal
index eeadb24..0d4f4a1 100755
--- a/scripts/runqemu-internal
+++ b/scripts/runqemu-internal
@@ -453,6 +453,11 @@  if [ "$MACHINE" = "akita" ]; then
     fi
 fi
 
+if [ "x$RAMFS" = "xtrue" ]; then
+    QEMUOPTIONS="-initrd $ROOTFS -nographic"
+    KERNCMDLINE="root=/dev/ram0"
+fi
+
 if [ "x$QEMUOPTIONS" = "x" ]; then
     echo "Error: Unable to support this combination of options"
     cleanup