mirror of
https://git.yoctoproject.org/poky
synced 2026-06-01 00:59:48 +00:00
Add extra parameters options for poky-qemu scripts
In order to support qemu user's flexibility requirement, we add extra parameter options, user can add extra params such as "<-m 256>" in poky-qemu script command. Signed-off-by: Liping ke <liping.ke@intel.com>
This commit is contained in:
committed by
Richard Purdie
parent
fded7535b7
commit
ae4f5c942e
@@ -29,11 +29,14 @@ usage() {
|
|||||||
echo " Additional QEMU command-line options can be passed with:"
|
echo " Additional QEMU command-line options can be passed with:"
|
||||||
echo " nographic - disables video console"
|
echo " nographic - disables video console"
|
||||||
echo " serial - enables a serial console on /dev/ttyS0"
|
echo " serial - enables a serial console on /dev/ttyS0"
|
||||||
|
echo " kvm - enables kvm"
|
||||||
|
echo " \"<extra-qemu-options>\" - enables extra qemu options, excluding serial and kvm"
|
||||||
echo ""
|
echo ""
|
||||||
echo "Examples:"
|
echo "Examples:"
|
||||||
echo " $MYNAME qemuarm"
|
echo " $MYNAME qemuarm"
|
||||||
echo " $MYNAME qemux86-64 poky-image-sato ext3"
|
echo " $MYNAME qemux86-64 poky-image-sato ext3"
|
||||||
echo " $MYNAME path/to/bzImage-qemux86.bin path/to/nfsrootdir/ serial"
|
echo " $MYNAME path/to/bzImage-qemux86.bin path/to/nfsrootdir/ serial"
|
||||||
|
echo " $MYNAME qemux86 \"<-m 256>\""
|
||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -47,6 +50,7 @@ FSTYPE=""
|
|||||||
ROOTFS=""
|
ROOTFS=""
|
||||||
LAZY_ROOTFS=""
|
LAZY_ROOTFS=""
|
||||||
SCRIPT_QEMU_OPT=""
|
SCRIPT_QEMU_OPT=""
|
||||||
|
SCRIPT_QEMU_EXTRA_OPT=""
|
||||||
SCRIPT_KERNEL_OPT=""
|
SCRIPT_KERNEL_OPT=""
|
||||||
|
|
||||||
TMPDIR=""
|
TMPDIR=""
|
||||||
@@ -129,6 +133,16 @@ while [ $i -le $# ]; do
|
|||||||
KVM_ENABLED="yes"
|
KVM_ENABLED="yes"
|
||||||
KVM_CAPABLE=`grep 'vmx\|smx' /proc/cpuinfo`
|
KVM_CAPABLE=`grep 'vmx\|smx' /proc/cpuinfo`
|
||||||
;;
|
;;
|
||||||
|
\<*\>)
|
||||||
|
SCRIPT_QEMU_EXTRA_OPT=$arg
|
||||||
|
serial_option=`expr "$SCRIPT_QEMU_EXTRA_OPT" : '.*\(-serial\)'`
|
||||||
|
kvm_option=`expr "$SCRIPT_QEMU_EXTRA_OPT" : '.*\(-enable-kvm\)'`
|
||||||
|
echo "$kvm_option"
|
||||||
|
if [[ ! -z "$serial_option" || ! -z "$kvm_option" ]]; then
|
||||||
|
echo "Error: Please use serial or kvm params instead!"
|
||||||
|
usage
|
||||||
|
fi
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
# A directory name is an nfs rootfs
|
# A directory name is an nfs rootfs
|
||||||
if [ -d "$arg" ]; then
|
if [ -d "$arg" ]; then
|
||||||
|
|||||||
@@ -29,6 +29,23 @@
|
|||||||
# ROOTFS - the disk image file to use
|
# ROOTFS - the disk image file to use
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
|
mem_size=-1
|
||||||
|
|
||||||
|
#Get rid of <> and get the contents of extra qemu running params
|
||||||
|
SCRIPT_QEMU_EXTRA_OPT=`echo $SCRIPT_QEMU_EXTRA_OPT | sed -e 's/<//' -e 's/>//'`
|
||||||
|
#if user set qemu memory, eg: -m 256 in qemu extra params, we need to do some
|
||||||
|
# validation check
|
||||||
|
mem_set=`expr "$SCRIPT_QEMU_EXTRA_OPT" : '.*\(-m[[:space:]] *[0-9]*\)'`
|
||||||
|
if [ ! -z "$mem_set" ] ; then
|
||||||
|
#Get memory setting size from user input
|
||||||
|
mem_size=`echo $mem_set | sed 's/-m[[:space:]] *//'`
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ $mem_size -gt 0 ]; then
|
||||||
|
QEMU_MEMORY="$mem_size"M
|
||||||
|
fi
|
||||||
|
|
||||||
if [ -z "$QEMU_MEMORY" ]; then
|
if [ -z "$QEMU_MEMORY" ]; then
|
||||||
case "$MACHINE" in
|
case "$MACHINE" in
|
||||||
"qemux86")
|
"qemux86")
|
||||||
@@ -60,6 +77,7 @@ if [ "$MACHINE" = "qemuarm" ]; then
|
|||||||
echo "WARNING: qemuarm does not support > 128M of RAM."
|
echo "WARNING: qemuarm does not support > 128M of RAM."
|
||||||
echo "*** Changing QEMU_MEMORY to default of 128M ***"
|
echo "*** Changing QEMU_MEMORY to default of 128M ***"
|
||||||
QEMU_MEMORY="128M"
|
QEMU_MEMORY="128M"
|
||||||
|
SCRIPT_QEMU_EXTRA_OPT=`echo $SCRIPT_QEMU_EXTRA_OPT | sed -e "s/$mem_set/-m 128/" `
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -427,8 +445,8 @@ fi
|
|||||||
|
|
||||||
echo "Running $QEMU..."
|
echo "Running $QEMU..."
|
||||||
# -no-reboot is a mandatory option - see bug #100
|
# -no-reboot is a mandatory option - see bug #100
|
||||||
echo $QEMUBIN -kernel $KERNEL $QEMUOPTIONS $SERIALOPTS -no-reboot $SCRIPT_QEMU_CMDLINE_OPT --append '"'$KERNCMDLINE $SCRIPT_KERNEL_OPT'"'
|
echo $QEMUBIN -kernel $KERNEL $QEMUOPTIONS $SERIALOPTS -no-reboot $SCRIPT_QEMU_OPT $SCRIPT_QEMU_EXTRA_OPT --append '"'$KERNCMDLINE $SCRIPT_KERNEL_OPT'"'
|
||||||
$QEMUBIN -kernel $KERNEL $QEMUOPTIONS $SERIALOPTS -no-reboot $SCRIPT_QEMU_OPT --append "$KERNCMDLINE $SCRIPT_KERNEL_OPT" || /bin/true
|
$QEMUBIN -kernel $KERNEL $QEMUOPTIONS $SERIALOPTS -no-reboot $SCRIPT_QEMU_OPT $SCRIPT_QEMU_EXTRA_OPT --append "$KERNCMDLINE $SCRIPT_KERNEL_OPT" || /bin/true
|
||||||
|
|
||||||
cleanup
|
cleanup
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user