summaryrefslogtreecommitdiff
path: root/poky/scripts/runqemu
diff options
context:
space:
mode:
authorBrad Bishop <bradleyb@fuzziesquirrel.com>2019-08-26 08:33:31 +0300
committerBrad Bishop <bradleyb@fuzziesquirrel.com>2019-08-26 08:33:45 +0300
commitc68388fccb8c0b5bf4d6b8efff91203796be98b2 (patch)
treef2b3d0381b84be54f0fc03f24daf603d2a6cb95a /poky/scripts/runqemu
parent665fd026517259031fd55bcfb2a9dab0d9f3582a (diff)
downloadopenbmc-c68388fccb8c0b5bf4d6b8efff91203796be98b2.tar.xz
poky: subtree update:20946c63c2..c17113f1e2
Adrian Bunk (3): shadow: musl now supports secure_getenv kmod: Replace dolt hacks with backport of upstream dolt removal btrfs-tools: Add a PACKAGECONFIG for zstd Alexander Kanavin (12): linux-yocto: add drm-bochs support mesa: fix upstream version check conf/conf-notes.txt: add a mention of common tools conf/conf-notes.txt: add a mention of common tools gtk-doc: upgrade 1.30 -> 1.31 desktop-file-utils: upgrade 0.23 -> 0.24 libdazzle: upgrade 3.32.2 -> 3.32.3 rt-tests: exclude another development version vala: upgrade 0.44.5 -> 0.44.7 epiphany: upgrade 3.32.3 -> 3.32.4 libmodulemd: depend on target python at build time createrepo-c: upgrade 0.14.3 -> 0.15.0 Alistair Francis (3): qemu: Upgrade to version 4.1 scripts/runqemu: Add support for the BIOS variable qemuriscv64: Specify the firmware as a bios instead of kernel Anuj Mittal (2): binutils: fix CVE-2019-14250 CVE-2019-14444 patch: backport fixes Bruce Ashfield (6): kernel-devsrc: tweak for v5.3+ kern-tools: Add SPDX license headers to source files linux-yocto: arch/x86/boot: use prefix map to avoid embedded paths kernel-yocto: import security fragments from meta-security kconf_check: tweak CONFIG_ regex linux-yocto/4.19: make drm-bochs feature available Changqing Li (2): dbus: disable test-bus qemumips/qemumips64: move QB_SYSTEM_NAME to corresponding conf Chen Qi (1): target-sdk-provides-dummy: extend packages for multilib case He Zhe (2): ltp: Fix tgkill03 failure ltp: Fix ustat02 failure Hongxu Jia (3): nfs-utils: decrease RLIMIT_NOFILE to 4k for systemd distcc: upgrade 3.3.2 -> 3.3.3 ncurses: upgrade 6.1+20181013 -> 6.1+20190803 Jaewon Lee (1): devtool: build: Also run deploy for devtool build if applicable Jason Wessel (2): cross-localedef-native: Add hardlink resolver from util-linux libc-package.bbclass: Split locale hard link processing into two parts Jon Mason (1): resulttool: Prevent multiple results for the same test Kai Kang (1): webkitgtk: disable gold on mipsn32 Kevin Hao (1): psplash: Avoid mount the psplash tmpfs twice Khem Raj (10): musl: Update to latest tip systemd: Drop musl __secure_getenv patch mesa: Add packageconfigs for vc4 and v3d util-linux: Make pam specific logic apply to target recipe alone systemd.bbclass: Limit rm_sysvinit_initddir and rm_systemd_unitdir to target alone systemd: Refresh patch after removal of __secure_getenv patch gcc-9: Upgrade to 9.2 gcc: Search in OE specific target gcclibdir opensbi: Disable SECURITY_CFLAGS since it cant link with libssp libffi: Upgrade to 3.3-rc0 Lei Maohui (2): nativesdk-qemu: support aarch64_be. at: fix a spelling mistake. Mikko Rapeli (1): stress-ng: provide stress Mingli Yu (1): python3: fix the test_locale output format Oleksandr Kravchuk (8): ffmpeg: update to 4.2 python-setuptools: update to 41.1.0 python3-scons: update to 3.1.1 ofono: update to 1.30 bitbake.conf: fix XORG_MIRROR URL cups: update to 2.2.12 git: update to 2.23.0 python-setuptools: update to 41.2.0 Otavio Salvador (2): linux-firmware: Upgrade 20190618 -> 20190815 kmscube: Bump revision to f632b23 Philippe Normand (1): libtasn1: Enable nativesdk support Ricardo Ribalda Delgado (1): packagegroup-core-base-utils: Make it machine specific Richard Purdie (7): yocto-check-layer: Ensure we use OEBasicHash as the signature handler package: Fix race between do_package and do_packagedata bitbake: cookerdata: Delay the setup of the siggen slightly to allow metadata defined siggens bitbake: runqueue: Small but critical fix bitbake: runqueue: Optimise holdoff task handling bitbake: runqueue: Further optimise holdoff tasks bitbake: runqueue: Optimise build_taskdepdata slightly Ross Burton (2): systemd: add PACKAGECONFIG for gnu-efi pango: upgrade to 1.44.5 Trevor Gamblin (2): quilt: Export QUILT_PC variable in ptest Makefile quilt: added less to RDEPENDS list Wes Lindauer (5): iw: Fix license field to BSD-2-Clause openssh: Update LICENSE field with missing values shadow: Fix BSD license file checksum sudo: Fix BSD license file checksum libunwind: Fix MIT license file checksum Yuan Chao (1): libnss-nis: upgrade 3.0 -> 3.1 Zang Ruochen (3): acpid: upgrade 2.0.31 -> 2.0.32 lz4:upgrade 1.9.1 -> 1.9.2 python3-pip:upgrade 19.2.1 -> 19.2.2 Change-Id: I2068692bfdbbf18f892761a12f85e913b8212f3f Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Diffstat (limited to 'poky/scripts/runqemu')
-rwxr-xr-xpoky/scripts/runqemu53
1 files changed, 29 insertions, 24 deletions
diff --git a/poky/scripts/runqemu b/poky/scripts/runqemu
index df3c8aad0..e9b83737c 100755
--- a/poky/scripts/runqemu
+++ b/poky/scripts/runqemu
@@ -59,6 +59,7 @@ def print_usage():
Usage: you can run this script with any valid combination
of the following environment variables (in any order):
KERNEL - the kernel image file to use
+ BIOS - the bios image file to use
ROOTFS - the rootfs image file or nfsroot directory to use
DEVICE_TREE - the device tree blob to use
MACHINE - the machine name (optional, autodetected from KERNEL filename if unspecified)
@@ -77,8 +78,6 @@ of the following environment variables (in any order):
audio - enable audio
[*/]ovmf* - OVMF firmware file or base name for booting with UEFI
tcpserial=<port> - specify tcp serial port number
- biosdir=<dir> - specify custom bios dir
- biosfilename=<filename> - specify bios filename
qemuparams=<xyz> - specify custom parameters to QEMU
bootparams=<xyz> - specify custom kernel parameters during boot
help, -h, --help: print this text
@@ -129,6 +128,7 @@ class BaseConfig(object):
self.env_vars = ('MACHINE',
'ROOTFS',
'KERNEL',
+ 'BIOS',
'DEVICE_TREE',
'DEPLOY_DIR_IMAGE',
'OE_TMPDIR',
@@ -155,6 +155,7 @@ class BaseConfig(object):
self.qemuboot = ''
self.qbconfload = False
self.kernel = ''
+ self.bios = ''
self.kernel_cmdline = ''
self.kernel_cmdline_script = ''
self.bootparams = ''
@@ -171,7 +172,6 @@ class BaseConfig(object):
self.saved_stty = ''
self.audio_enabled = False
self.tcpserial_portnum = ''
- self.custombiosdir = ''
self.taplock = ''
self.taplock_descriptor = None
self.portlocks = {}
@@ -480,10 +480,6 @@ class BaseConfig(object):
self.qemu_opt_script += ' -vnc :0'
elif arg.startswith('tcpserial='):
self.tcpserial_portnum = '%s' % arg[len('tcpserial='):]
- elif arg.startswith('biosdir='):
- self.custombiosdir = arg[len('biosdir='):]
- elif arg.startswith('biosfilename='):
- self.qemu_opt_script += ' -bios %s' % arg[len('biosfilename='):]
elif arg.startswith('qemuparams='):
self.qemuparams = ' %s' % arg[len('qemuparams='):]
elif arg.startswith('bootparams='):
@@ -725,25 +721,30 @@ class BaseConfig(object):
if not os.path.exists(self.dtb):
raise RunQemuError('DTB not found: %s, %s or %s' % cmds)
- def check_biosdir(self):
- """Check custombiosdir"""
- if not self.custombiosdir:
+ def check_bios(self):
+ """Check and set bios"""
+
+ # See if the user supplied a BIOS option
+ if self.get('BIOS'):
+ self.bios = self.get('BIOS')
+
+ # QB_DEFAULT_BIOS is always a full file path
+ bios_name = os.path.basename(self.get('QB_DEFAULT_BIOS'))
+
+ # The user didn't want a bios to be loaded
+ if (bios_name == "" or bios_name == "none") and not self.bios:
return
- biosdir = ""
- biosdir_native = "%s/%s" % (self.get('STAGING_DIR_NATIVE'), self.custombiosdir)
- biosdir_host = "%s/%s" % (self.get('STAGING_DIR_HOST'), self.custombiosdir)
- for i in (self.custombiosdir, biosdir_native, biosdir_host):
- if os.path.isdir(i):
- biosdir = i
- break
+ if not self.bios:
+ deploy_dir_image = self.get('DEPLOY_DIR_IMAGE')
+ self.bios = "%s/%s" % (deploy_dir_image, bios_name)
+
+ if not self.bios:
+ raise RunQemuError('BIOS not found: %s' % bios_match_name)
+
+ if not os.path.exists(self.bios):
+ raise RunQemuError("KERNEL %s not found" % self.bios)
- if biosdir:
- logger.debug("Assuming biosdir is: %s" % biosdir)
- self.qemu_opt_script += ' -L %s' % biosdir
- else:
- logger.error("Custom BIOS directory not found. Tried: %s, %s, and %s" % (self.custombiosdir, biosdir_native, biosdir_host))
- raise RunQemuError("Invalid custombiosdir: %s" % self.custombiosdir)
def check_mem(self):
"""
@@ -811,7 +812,7 @@ class BaseConfig(object):
self.check_ovmf()
self.check_kernel()
self.check_dtb()
- self.check_biosdir()
+ self.check_bios()
self.check_mem()
self.check_tcpserial()
@@ -923,6 +924,8 @@ class BaseConfig(object):
logger.info('Continuing with the following parameters:\n')
if not self.fstype in self.vmtypes:
print('KERNEL: [%s]' % self.kernel)
+ if self.bios:
+ print('BIOS: [%s]' % self.bios)
if self.dtb:
print('DTB: [%s]' % self.dtb)
print('MACHINE: [%s]' % self.get('MACHINE'))
@@ -1339,6 +1342,8 @@ class BaseConfig(object):
kernel_opts = "-kernel %s -append '%s %s %s %s'" % (self.kernel, self.kernel_cmdline,
self.kernel_cmdline_script, self.get('QB_KERNEL_CMDLINE_APPEND'),
self.bootparams)
+ if self.bios:
+ kernel_opts += " -bios %s" % self.bios
if self.dtb:
kernel_opts += " -dtb %s" % self.dtb
else: