[OE-core] [PATCH 3/5] runqemu: support qemux32 machine
nitin.a.kamble at intel.com
nitin.a.kamble at intel.com
Tue Jul 12 19:02:39 UTC 2011
From: Nitin A Kamble <nitin.a.kamble at intel.com>
Signed-off-by: Nitin A Kamble <nitin.a.kamble at intel.com>
---
scripts/qemuimage-testlib | 2 +-
scripts/runqemu | 12 ++++++++----
scripts/runqemu-internal | 25 +++++++++++++++++++++++++
3 files changed, 34 insertions(+), 5 deletions(-)
diff --git a/scripts/qemuimage-testlib b/scripts/qemuimage-testlib
index c2dbf60..05df11a 100755
--- a/scripts/qemuimage-testlib
+++ b/scripts/qemuimage-testlib
@@ -424,7 +424,7 @@ Test_Create_Qemu()
return 1
fi
- if [ "$QEMUARCH" = "qemux86" -o "$QEMUARCH" = "qemux86-64" ]; then
+ if [ "$QEMUARCH" = "qemux86" -o "$QEMUARCH" = "qemux32" -o "$QEMUARCH" = "qemux86-64" ]; then
KERNEL=$(Test_Find_Image -l ${DEPLOY_DIR}/images -k bzImage -a ${QEMUARCH})
elif [ "$QEMUARCH" = "qemuarm" -o "$QEMUARCH" = "spitz" -o "$QEMUARCH" = "borzoi" -o "$QEMUARCH" = "akita" -o "$QEMUARCH" = "nokia800" -o "$QEMUARCH" = "qemuppc" ]; then
KERNEL=$(Test_Find_Image -l ${DEPLOY_DIR}/images -k zImage -a ${QEMUARCH})
diff --git a/scripts/runqemu b/scripts/runqemu
index 5aed25a..ef57638 100755
--- a/scripts/runqemu
+++ b/scripts/runqemu
@@ -93,7 +93,7 @@ i=1
while [ $i -le $# ]; do
arg=${!i}
case $arg in
- "qemux86" | "qemux86-64" | "qemuarm" | "qemumips" | "qemuppc")
+ "qemux86" | "qemux32" | "qemux86-64" | "qemuarm" | "qemumips" | "qemuppc")
if [ -z "$MACHINE" ]; then
MACHINE=$arg
else
@@ -136,7 +136,7 @@ while [ $i -le $# ]; do
SCRIPT_KERNEL_OPT="$SCRIPT_KERNEL_OPT console=ttyS0"
;;
"audio")
- if [[ "x$MACHINE" == "xqemux86" || "x$MACHINE" == "xqemux86-64" ]]; then
+ if [[ "x$MACHINE" == "xqemux86" || "x$MACHINE" == "xqemux32" || "x$MACHINE" == "xqemux86-64" ]]; then
echo "Enable audio on qemu. Pls. install snd_intel8x0 or snd_ens1370 driver in linux guest.";
QEMU_AUDIO_DRV="alsa"
SCRIPT_QEMU_OPT="$SCRIPT_QEMU_OPT -soundhw ac97,es1370"
@@ -192,7 +192,7 @@ if [[ "x$KVM_ENABLED" == "xyes" ]]; then
echo "$YOCTO_KVM_WIKI";
exit 1;
fi
- if [[ "x$MACHINE" != "xqemux86" && "x$MACHINE" != "xqemux86-64" ]]; then
+ if [[ "x$MACHINE" != "xqemux86" && "x$MACHINE" != "xqemux32" && "x$MACHINE" != "xqemux86-64" ]]; then
echo "KVM only support x86 & x86-64. Remove kvm from the command-line";
exit 1;
fi
@@ -221,7 +221,7 @@ if [[ "$FSTYPE" == "nfs" && -z "$ROOTFS" ]]; then
fi
if [ -z "$MACHINE" ]; then
- MACHINE=`basename $KERNEL | sed 's/.*-\(qemux86-64\|qemux86\|qemuarm\|qemumips\|qemuppc\).*/\1/'`
+ MACHINE=`basename $KERNEL | sed 's/.*-\(qemux86-64\|qemux32\|qemux86\|qemuarm\|qemumips\|qemuppc\).*/\1/'`
if [ -z "$MACHINE" ]; then
echo "Error: Unable to set MACHINE from kernel filename [$KERNEL]"
usage
@@ -236,6 +236,10 @@ QEMUX86_DEFAULT_KERNEL=bzImage-qemux86.bin
QEMUX86_DEFAULT_FSTYPE=ext3
QEMUX86_DEFAULT_ROOTFS="core-image-sato-sdk core-image-sato core-image-lsb core-image-basic core-image-minimal"
+QEMUX32_DEFAULT_KERNEL=bzImage-qemux32.bin
+QEMUX32_DEFAULT_FSTYPE=ext3
+QEMUX32_DEFAULT_ROOTFS="core-image-sato-sdk core-image-sato core-image-lsb core-image-basic core-image-minimal"
+
QEMUX86_64_DEFAULT_KERNEL=bzImage-qemux86-64.bin
QEMUX86_64_DEFAULT_FSTYPE=ext3
QEMUX86_64_DEFAULT_ROOTFS="core-image-sato-sdk core-image-sato core-image-lsb core-image-basic core-image-minimal"
diff --git a/scripts/runqemu-internal b/scripts/runqemu-internal
index c15632d..9f204e0 100755
--- a/scripts/runqemu-internal
+++ b/scripts/runqemu-internal
@@ -45,6 +45,9 @@ else
"qemux86")
mem_size=128
;;
+ "qemux32")
+ mem_size=128
+ ;;
"qemux86-64")
mem_size=128
;;
@@ -218,6 +221,7 @@ case "$MACHINE" in
"qemuarmv6") ;;
"qemuarmv7") ;;
"qemux86") ;;
+ "qemux32") ;;
"qemux86-64") ;;
"akita") ;;
"spitz") ;;
@@ -319,6 +323,27 @@ if [ "$MACHINE" = "qemux86" ]; then
KERNCMDLINE="$KERNCMDLINE oprofile.timer=1"
fi
+if [ "$MACHINE" = "qemux32" ]; then
+ QEMU=qemu-system-x86_64
+ QEMU_UI_OPTIONS="$QEMU_UI_OPTIONS -vga vmware -enable-gl"
+ if [ "$FSTYPE" = "ext3" ]; then
+ KERNCMDLINE="vga=0 root=/dev/hda rw mem=$QEMU_MEMORY $KERNEL_NETWORK_CMD"
+ QEMUOPTIONS="$QEMU_NETWORK_CMD -hda $ROOTFS $QEMU_UI_OPTIONS"
+ fi
+ if [ "$FSTYPE" = "nfs" ]; then
+ if [ "$NFS_SERVER" = "192.168.7.1" -a ! -d "$NFS_DIR" ]; then
+ echo "Error: NFS mount point $ROOTFS doesn't exist."
+ cleanup
+ return
+ fi
+ KERNCMDLINE="root=/dev/nfs nfsroot=$NFS_SERVER:$NFS_DIR,$UNFS_OPTS rw $KERNEL_NETWORK_CMD mem=$QEMU_MEMORY"
+ QEMUOPTIONS="$QEMU_NETWORK_CMD $QEMU_UI_OPTIONS"
+ fi
+ # Currently oprofile's event based interrupt mode doesn't work(Bug #828) in
+ # qemux86 and qemux86-64. We can use timer interrupt mode for now.
+ KERNCMDLINE="$KERNCMDLINE oprofile.timer=1"
+fi
+
if [ "$MACHINE" = "qemux86-64" ]; then
QEMU=qemu-system-x86_64
QEMU_UI_OPTIONS="$QEMU_UI_OPTIONS -vga vmware -enable-gl"
--
1.7.5.4
More information about the Openembedded-core
mailing list