diff options
-rw-r--r-- | meta/classes/testimage.bbclass | 4 | ||||
-rw-r--r-- | meta/lib/oeqa/core/target/qemu.py | 4 |
2 files changed, 5 insertions, 3 deletions
diff --git a/meta/classes/testimage.bbclass b/meta/classes/testimage.bbclass index cb8c12acce..ff1c53b93e 100644 --- a/meta/classes/testimage.bbclass +++ b/meta/classes/testimage.bbclass | |||
@@ -32,6 +32,7 @@ TESTIMAGE_AUTO ??= "0" | |||
32 | # Booting is handled by this class, and it's not a test in itself. | 32 | # Booting is handled by this class, and it's not a test in itself. |
33 | # TEST_QEMUBOOT_TIMEOUT can be used to set the maximum time in seconds the launch code will wait for the login prompt. | 33 | # TEST_QEMUBOOT_TIMEOUT can be used to set the maximum time in seconds the launch code will wait for the login prompt. |
34 | # TEST_QEMUPARAMS can be used to pass extra parameters to qemu, e.g. "-m 1024" for setting the amount of ram to 1 GB. | 34 | # TEST_QEMUPARAMS can be used to pass extra parameters to qemu, e.g. "-m 1024" for setting the amount of ram to 1 GB. |
35 | # TEST_RUNQEMUPARAMS can be used to pass extra parameters to runqemu, e.g. "gl" to enable OpenGL acceleration. | ||
35 | 36 | ||
36 | TEST_LOG_DIR ?= "${WORKDIR}/testimage" | 37 | TEST_LOG_DIR ?= "${WORKDIR}/testimage" |
37 | 38 | ||
@@ -65,6 +66,7 @@ TEST_SUITES ?= "${DEFAULT_TEST_SUITES}" | |||
65 | TEST_QEMUBOOT_TIMEOUT ?= "1000" | 66 | TEST_QEMUBOOT_TIMEOUT ?= "1000" |
66 | TEST_TARGET ?= "qemu" | 67 | TEST_TARGET ?= "qemu" |
67 | TEST_QEMUPARAMS ?= "" | 68 | TEST_QEMUPARAMS ?= "" |
69 | TEST_RUNQEMUPARAMS ?= "" | ||
68 | 70 | ||
69 | TESTIMAGEDEPENDS = "" | 71 | TESTIMAGEDEPENDS = "" |
70 | TESTIMAGEDEPENDS_append_qemuall = " qemu-native:do_populate_sysroot qemu-helper-native:do_populate_sysroot qemu-helper-native:do_addto_recipe_sysroot" | 72 | TESTIMAGEDEPENDS_append_qemuall = " qemu-native:do_populate_sysroot qemu-helper-native:do_populate_sysroot qemu-helper-native:do_addto_recipe_sysroot" |
@@ -294,7 +296,7 @@ def testimage_main(d): | |||
294 | try: | 296 | try: |
295 | # We need to check if runqemu ends unexpectedly | 297 | # We need to check if runqemu ends unexpectedly |
296 | # or if the worker send us a SIGTERM | 298 | # or if the worker send us a SIGTERM |
297 | tc.target.start(params=d.getVar("TEST_QEMUPARAMS")) | 299 | tc.target.start(params=d.getVar("TEST_QEMUPARAMS"), runqemuparams=d.getVar("TEST_RUNQEMUPARAMS")) |
298 | results = tc.runTests() | 300 | results = tc.runTests() |
299 | except (RuntimeError, BlockingIOError) as err: | 301 | except (RuntimeError, BlockingIOError) as err: |
300 | if isinstance(err, RuntimeError): | 302 | if isinstance(err, RuntimeError): |
diff --git a/meta/lib/oeqa/core/target/qemu.py b/meta/lib/oeqa/core/target/qemu.py index f47fd7468e..7a161a3231 100644 --- a/meta/lib/oeqa/core/target/qemu.py +++ b/meta/lib/oeqa/core/target/qemu.py | |||
@@ -33,11 +33,11 @@ class OEQemuTarget(OESSHTarget): | |||
33 | use_kvm=kvm, use_slirp=slirp, dump_dir=dump_dir, | 33 | use_kvm=kvm, use_slirp=slirp, dump_dir=dump_dir, |
34 | dump_host_cmds=dump_host_cmds, logger=logger) | 34 | dump_host_cmds=dump_host_cmds, logger=logger) |
35 | 35 | ||
36 | def start(self, params=None, extra_bootparams=None): | 36 | def start(self, params=None, extra_bootparams=None, runqemuparams=''): |
37 | if self.use_slirp and not self.server_ip: | 37 | if self.use_slirp and not self.server_ip: |
38 | self.logger.error("Could not start qemu with slirp without server ip - provide 'TEST_SERVER_IP'") | 38 | self.logger.error("Could not start qemu with slirp without server ip - provide 'TEST_SERVER_IP'") |
39 | raise RuntimeError("FAILED to start qemu - check the task log and the boot log") | 39 | raise RuntimeError("FAILED to start qemu - check the task log and the boot log") |
40 | if self.runner.start(params, extra_bootparams=extra_bootparams): | 40 | if self.runner.start(params, extra_bootparams=extra_bootparams, runqemuparams=runqemuparams): |
41 | self.ip = self.runner.ip | 41 | self.ip = self.runner.ip |
42 | if self.use_slirp: | 42 | if self.use_slirp: |
43 | target_ip_port = self.runner.ip.split(':') | 43 | target_ip_port = self.runner.ip.split(':') |