summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJon Mason <jdmason@kudzu.us>2021-03-10 18:05:31 -0500
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-03-11 14:00:36 +0000
commitbd0ada8994ce3c1cb3a2d67dc9e8fae5c348118e (patch)
treee3f52e31bf30818df860e7d020b2e650bb1b1790
parentf4adaac783671def758dcccb8e2533f47e1daf3a (diff)
downloadpoky-bd0ada8994ce3c1cb3a2d67dc9e8fae5c348118e.tar.gz
runqemu: add QB_GRAPHICS
Add a new runqemu field for VGA devices. Currently, these are being set in QB_OPT_APPEND, which can make them difficult to override if importing the config file into another one. (From OE-Core rev: 695c98b6522be4373806c154a2999eaeef205556) Signed-off-by: Jon Mason <jon.mason@arm.com> Change-Id: I8cb9527954c5b06c083c42fe2466cb3338584b7d Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/classes/qemuboot.bbclass4
-rw-r--r--meta/conf/machine/include/qemuboot-mips.inc2
-rw-r--r--meta/conf/machine/qemuarm.conf4
-rw-r--r--meta/conf/machine/qemuarm64.conf4
-rwxr-xr-xscripts/runqemu2
5 files changed, 10 insertions, 6 deletions
diff --git a/meta/classes/qemuboot.bbclass b/meta/classes/qemuboot.bbclass
index 4b7532b304..8798ad80e6 100644
--- a/meta/classes/qemuboot.bbclass
+++ b/meta/classes/qemuboot.bbclass
@@ -72,6 +72,9 @@
72# Can be used to automatically determine the image from the other variables 72# Can be used to automatically determine the image from the other variables
73# but define things link 'bootindex' when booting from EFI or 'readonly' when using squashfs 73# but define things link 'bootindex' when booting from EFI or 'readonly' when using squashfs
74# without the need to specify a dedicated qemu configuration 74# without the need to specify a dedicated qemu configuration
75#
76# QB_GRAPHICS: QEMU video card type (e.g. "-vga std")
77#
75# Usage: 78# Usage:
76# IMAGE_CLASSES += "qemuboot" 79# IMAGE_CLASSES += "qemuboot"
77# See "runqemu help" for more info 80# See "runqemu help" for more info
@@ -86,6 +89,7 @@ QB_NETWORK_DEVICE ?= "-device virtio-net-pci,netdev=net0,mac=@MAC@"
86QB_CMDLINE_IP_SLIRP ?= "ip=dhcp" 89QB_CMDLINE_IP_SLIRP ?= "ip=dhcp"
87QB_CMDLINE_IP_TAP ?= "ip=192.168.7.@CLIENT@::192.168.7.@GATEWAY@:255.255.255.0" 90QB_CMDLINE_IP_TAP ?= "ip=192.168.7.@CLIENT@::192.168.7.@GATEWAY@:255.255.255.0"
88QB_ROOTFS_EXTRA_OPT ?= "" 91QB_ROOTFS_EXTRA_OPT ?= ""
92QB_GRAPHICS ?= ""
89 93
90# This should be kept align with ROOT_VM 94# This should be kept align with ROOT_VM
91QB_DRIVE_TYPE ?= "/dev/sd" 95QB_DRIVE_TYPE ?= "/dev/sd"
diff --git a/meta/conf/machine/include/qemuboot-mips.inc b/meta/conf/machine/include/qemuboot-mips.inc
index 230f032c53..4954f3068c 100644
--- a/meta/conf/machine/include/qemuboot-mips.inc
+++ b/meta/conf/machine/include/qemuboot-mips.inc
@@ -5,4 +5,4 @@ QB_KERNEL_CMDLINE_APPEND = "console=ttyS0 console=tty"
5QB_OPT_APPEND = "-usb -device usb-tablet" 5QB_OPT_APPEND = "-usb -device usb-tablet"
6 6
7# For graphics to work we need to define the VGA device as well as the necessary USB devices 7# For graphics to work we need to define the VGA device as well as the necessary USB devices
8QB_OPT_APPEND += "-vga std" 8QB_GRAPHICS = "-vga std"
diff --git a/meta/conf/machine/qemuarm.conf b/meta/conf/machine/qemuarm.conf
index 257cfa3e63..37dae8c863 100644
--- a/meta/conf/machine/qemuarm.conf
+++ b/meta/conf/machine/qemuarm.conf
@@ -19,8 +19,8 @@ QB_CPU = "-cpu cortex-a15"
19# Standard Serial console 19# Standard Serial console
20QB_KERNEL_CMDLINE_APPEND = "console=ttyAMA0 vmalloc=256" 20QB_KERNEL_CMDLINE_APPEND = "console=ttyAMA0 vmalloc=256"
21# For graphics to work we need to define the VGA device as well as the necessary USB devices 21# For graphics to work we need to define the VGA device as well as the necessary USB devices
22QB_OPT_APPEND = "-device VGA,edid=on" 22QB_GRAPHICS = "-device VGA,edid=on"
23QB_OPT_APPEND += "-device qemu-xhci -device usb-tablet -device usb-kbd" 23QB_OPT_APPEND = "-device qemu-xhci -device usb-tablet -device usb-kbd"
24# Virtio Networking support 24# Virtio Networking support
25QB_TAP_OPT = "-netdev tap,id=net0,ifname=@TAP@,script=no,downscript=no" 25QB_TAP_OPT = "-netdev tap,id=net0,ifname=@TAP@,script=no,downscript=no"
26QB_NETWORK_DEVICE = "-device virtio-net-device,netdev=net0,mac=@MAC@" 26QB_NETWORK_DEVICE = "-device virtio-net-device,netdev=net0,mac=@MAC@"
diff --git a/meta/conf/machine/qemuarm64.conf b/meta/conf/machine/qemuarm64.conf
index 2f61eb0aed..05fd1f749b 100644
--- a/meta/conf/machine/qemuarm64.conf
+++ b/meta/conf/machine/qemuarm64.conf
@@ -20,8 +20,8 @@ QB_CPU_KVM = "-cpu host -machine gic-version=3"
20# Standard Serial console 20# Standard Serial console
21QB_KERNEL_CMDLINE_APPEND = "console=ttyAMA0" 21QB_KERNEL_CMDLINE_APPEND = "console=ttyAMA0"
22# For graphics to work we need to define the VGA device as well as the necessary USB devices 22# For graphics to work we need to define the VGA device as well as the necessary USB devices
23QB_OPT_APPEND = "-device VGA,edid=on" 23QB_GRAPHICS = "-device VGA,edid=on"
24QB_OPT_APPEND += "-device qemu-xhci -device usb-tablet -device usb-kbd" 24QB_OPT_APPEND = "-device qemu-xhci -device usb-tablet -device usb-kbd"
25# Virtio Networking support 25# Virtio Networking support
26QB_TAP_OPT = "-netdev tap,id=net0,ifname=@TAP@,script=no,downscript=no" 26QB_TAP_OPT = "-netdev tap,id=net0,ifname=@TAP@,script=no,downscript=no"
27QB_NETWORK_DEVICE = "-device virtio-net-device,netdev=net0,mac=@MAC@" 27QB_NETWORK_DEVICE = "-device virtio-net-device,netdev=net0,mac=@MAC@"
diff --git a/scripts/runqemu b/scripts/runqemu
index cf64ca149c..4c8358e9de 100755
--- a/scripts/runqemu
+++ b/scripts/runqemu
@@ -1341,7 +1341,7 @@ class BaseConfig(object):
1341 if not os.access(qemu_bin, os.X_OK): 1341 if not os.access(qemu_bin, os.X_OK):
1342 raise OEPathError("No QEMU binary '%s' could be found" % qemu_bin) 1342 raise OEPathError("No QEMU binary '%s' could be found" % qemu_bin)
1343 1343
1344 self.qemu_opt = "%s %s %s %s %s" % (qemu_bin, self.get('NETWORK_CMD'), self.get('QB_RNG'), self.get('ROOTFS_OPTIONS'), self.get('QB_OPT_APPEND')) 1344 self.qemu_opt = "%s %s %s %s %s %s" % (qemu_bin, self.get('NETWORK_CMD'), self.get('QB_RNG'), self.get('QB_GRAPHICS'), self.get('ROOTFS_OPTIONS'), self.get('QB_OPT_APPEND'))
1345 1345
1346 for ovmf in self.ovmf_bios: 1346 for ovmf in self.ovmf_bios:
1347 format = ovmf.rsplit('.', 1)[-1] 1347 format = ovmf.rsplit('.', 1)[-1]