runqemu scripts: add support for booting an ISO image

Add support for booting an ISO image for runqemu scripts.

[YOCTO #3710]

(From OE-Core rev: edd629029979dc18905fce23b64216f15eea501f)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Chen Qi 2013-01-15 10:17:01 +08:00 committed by Richard Purdie
parent 14363c30ce
commit 0c1b6098d4
2 changed files with 13 additions and 0 deletions

View File

@ -27,6 +27,7 @@ usage() {
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 " ISO - boot an ISO image"
echo " VM - boot a vmdk image"
echo " Simplified QEMU command-line options can be passed with:"
echo " nographic - disables video console"
@ -40,6 +41,7 @@ usage() {
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 iso"
echo " $MYNAME qemux86 qemuparams=\"-m 256\""
echo " $MYNAME qemux86 bootparams=\"psplash=false\""
echo " $MYNAME path/to/<image>-<machine>.vmdk"
@ -132,6 +134,10 @@ while true; do
FSTYPE=cpio.gz
RAMFS=true
;;
"iso")
FSTYPE=iso
ISOFS=true
;;
"nographic")
SCRIPT_QEMU_OPT="$SCRIPT_QEMU_OPT -nographic"
SCRIPT_KERNEL_OPT="$SCRIPT_KERNEL_OPT console=ttyS0"

View File

@ -475,6 +475,10 @@ if [ "x$RAMFS" = "xtrue" ]; then
KERNCMDLINE="root=/dev/ram0 debugshell"
fi
if [ "x$ISOFS" = "xtrue" ]; then
QEMUOPTIONS="-cdrom $ROOTFS"
fi
if [ "x$QEMUOPTIONS" = "x" ]; then
echo "Error: Unable to support this combination of options"
cleanup
@ -577,6 +581,9 @@ echo "Running $QEMU..."
if [ "$FSTYPE" = "vmdk" ]; then
echo $QEMUBIN $VM $QEMUOPTIONS $SERIALOPTS -no-reboot $SCRIPT_QEMU_OPT $SCRIPT_QEMU_EXTRA_OPT
LD_PRELOAD="$GL_LD_PRELOAD" $QEMUBIN $VM $QEMUOPTIONS $SERIALOPTS -no-reboot $SCRIPT_QEMU_OPT $SCRIPT_QEMU_EXTRA_OPT
elif [ "$FSTYPE" = "iso" ]; then
echo $QEMUBIN $QEMUOPTIONS $SERIALOPTS -no-reboot $SCRIPT_QEMU_OPT $SCRIPT_QEMU_EXTRA_OPT
LD_PRELOAD="$GL_LD_PRELOAD" $QEMUBIN $QEMUOPTIONS $SERIALOPTS -no-reboot $SCRIPT_QEMU_OPT $SCRIPT_QEMU_EXTRA_OPT
else
echo $QEMUBIN -kernel $KERNEL $QEMUOPTIONS $SERIALOPTS -no-reboot $SCRIPT_QEMU_OPT $SCRIPT_QEMU_EXTRA_OPT --append '"'$KERNCMDLINE $SCRIPT_KERNEL_OPT'"'
LD_PRELOAD="$GL_LD_PRELOAD" $QEMUBIN -kernel $KERNEL $QEMUOPTIONS $SERIALOPTS -no-reboot $SCRIPT_QEMU_OPT $SCRIPT_QEMU_EXTRA_OPT --append "$KERNCMDLINE $SCRIPT_KERNEL_OPT"