summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/lib/oeqa/utils/qemurunner.py4
-rwxr-xr-xscripts/runqemu4
-rwxr-xr-xscripts/runqemu-internal8
3 files changed, 14 insertions, 2 deletions
diff --git a/meta/lib/oeqa/utils/qemurunner.py b/meta/lib/oeqa/utils/qemurunner.py
index e976fd0819..33f31852a7 100644
--- a/meta/lib/oeqa/utils/qemurunner.py
+++ b/meta/lib/oeqa/utils/qemurunner.py
@@ -92,7 +92,7 @@ class QemuRunner:
92 # Set this flag so that Qemu doesn't do any grabs as SDL grabs interact 92 # Set this flag so that Qemu doesn't do any grabs as SDL grabs interact
93 # badly with screensavers. 93 # badly with screensavers.
94 os.environ["QEMU_DONT_GRAB"] = "1" 94 os.environ["QEMU_DONT_GRAB"] = "1"
95 self.qemuparams = 'bootparams="console=tty1 console=ttyS0,115200n8" qemuparams="-serial tcp:127.0.0.1:{} -serial tcp:127.0.0.1:{}"'.format(threadport, self.serverport) 95 self.qemuparams = 'bootparams="console=tty1 console=ttyS0,115200n8" qemuparams="-serial tcp:127.0.0.1:{}"'.format(threadport)
96 if qemuparams: 96 if qemuparams:
97 self.qemuparams = self.qemuparams[:-1] + " " + qemuparams + " " + '\"' 97 self.qemuparams = self.qemuparams[:-1] + " " + qemuparams + " " + '\"'
98 98
@@ -102,7 +102,7 @@ class QemuRunner:
102 fcntl.fcntl(o, fcntl.F_SETFL, fl | os.O_NONBLOCK) 102 fcntl.fcntl(o, fcntl.F_SETFL, fl | os.O_NONBLOCK)
103 return os.read(o.fileno(), 1000000) 103 return os.read(o.fileno(), 1000000)
104 104
105 launch_cmd = 'runqemu %s %s %s' % (self.machine, self.rootfs, self.qemuparams) 105 launch_cmd = 'runqemu tcpserial=%s %s %s %s' % (self.serverport, self.machine, self.rootfs, self.qemuparams)
106 # FIXME: We pass in stdin=subprocess.PIPE here to work around stty 106 # FIXME: We pass in stdin=subprocess.PIPE here to work around stty
107 # blocking at the end of the runqemu script when using this within 107 # blocking at the end of the runqemu script when using this within
108 # oe-selftest (this makes stty error out immediately). There ought 108 # oe-selftest (this makes stty error out immediately). There ought
diff --git a/scripts/runqemu b/scripts/runqemu
index 09c507dc7a..82711606f6 100755
--- a/scripts/runqemu
+++ b/scripts/runqemu
@@ -68,6 +68,7 @@ SCRIPT_QEMU_OPT=""
68SCRIPT_QEMU_EXTRA_OPT="" 68SCRIPT_QEMU_EXTRA_OPT=""
69SCRIPT_KERNEL_OPT="" 69SCRIPT_KERNEL_OPT=""
70SERIALSTDIO="" 70SERIALSTDIO=""
71TCPSERIAL_PORTNUM=""
71KVM_ENABLED="no" 72KVM_ENABLED="no"
72KVM_ACTIVE="no" 73KVM_ACTIVE="no"
73 74
@@ -150,6 +151,9 @@ while true; do
150 SCRIPT_KERNEL_OPT="$SCRIPT_KERNEL_OPT console=ttyS0" 151 SCRIPT_KERNEL_OPT="$SCRIPT_KERNEL_OPT console=ttyS0"
151 SERIALSTDIO="1" 152 SERIALSTDIO="1"
152 ;; 153 ;;
154 "tcpserial="*)
155 TCPSERIAL_PORTNUM=${arg##tcpserial=}
156 ;;
153 "biosdir="*) 157 "biosdir="*)
154 CUSTOMBIOSDIR="${arg##biosdir=}" 158 CUSTOMBIOSDIR="${arg##biosdir=}"
155 ;; 159 ;;
diff --git a/scripts/runqemu-internal b/scripts/runqemu-internal
index d743322037..b317358f94 100755
--- a/scripts/runqemu-internal
+++ b/scripts/runqemu-internal
@@ -620,6 +620,14 @@ if [ "x$QEMUOPTIONS" = "x" ]; then
620 return 1 620 return 1
621fi 621fi
622 622
623if [ $TCPSERIAL_PORTNUM != "" ]; then
624 if [ "$MACHINE" = "qemuarm64" ]; then
625 QEMUOPTIONS="$QEMUOPTIONS -device virtio-serial-device -chardev socket,id=virtcon,port=$TCPSERIAL_PORTNUM,host=127.0.0.1 -device virtconsole,chardev=virtcon"
626 else
627 QEMUOPTIONS="$QEMUOPTIONS -serial tcp:127.0.0.1:$TCPSERIAL_PORTNUM"
628 fi
629fi
630
623PATH=$OECORE_NATIVE_SYSROOT/usr/bin:$PATH 631PATH=$OECORE_NATIVE_SYSROOT/usr/bin:$PATH
624 632
625QEMUBIN=`which $QEMU 2> /dev/null` 633QEMUBIN=`which $QEMU 2> /dev/null`