We didn't have this before and as it exercises the m68k virt platform it seems worth adding. We don't wait for the shutdown because QEMU will auto-exit on the shutdown.
Cc: Laurent Vivier <laur...@vivier.eu> Cc: Anders Roxell <anders.rox...@linaro.org> Reviewed-by: Thomas Huth <th...@redhat.com> Signed-off-by: Alex Bennée <alex.ben...@linaro.org> Message-Id: <20241121165806.476008-24-alex.ben...@linaro.org> --- v2 - add to MAINTAINERS --- MAINTAINERS | 1 + tests/functional/meson.build | 1 + tests/functional/test_m68k_tuxrun.py | 34 ++++++++++++++++++++++++++++ 3 files changed, 36 insertions(+) create mode 100644 tests/functional/test_m68k_tuxrun.py diff --git a/MAINTAINERS b/MAINTAINERS index 2101b51217..cab9018d9f 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -1288,6 +1288,7 @@ F: include/hw/intc/goldfish_pic.h F: include/hw/intc/m68k_irqc.h F: include/hw/misc/virt_ctrl.h F: docs/specs/virt-ctlr.rst +F: tests/functional/test_m68k_tuxrun.py MicroBlaze Machines ------------------- diff --git a/tests/functional/meson.build b/tests/functional/meson.build index a5087fcb34..7890dcb86d 100644 --- a/tests/functional/meson.build +++ b/tests/functional/meson.build @@ -116,6 +116,7 @@ tests_m68k_system_thorough = [ 'm68k_mcf5208evb', 'm68k_nextcube', 'm68k_q800', + 'm68k_tuxrun', ] tests_microblaze_system_thorough = [ diff --git a/tests/functional/test_m68k_tuxrun.py b/tests/functional/test_m68k_tuxrun.py new file mode 100644 index 0000000000..7eacba135f --- /dev/null +++ b/tests/functional/test_m68k_tuxrun.py @@ -0,0 +1,34 @@ +#!/usr/bin/env python3 +# +# Functional test that boots known good tuxboot images the same way +# that tuxrun (www.tuxrun.org) does. This tool is used by things like +# the LKFT project to run regression tests on kernels. +# +# Copyright (c) 2024 Linaro Ltd. +# +# Author: +# Alex Bennée <alex.ben...@linaro.org> +# +# SPDX-License-Identifier: GPL-2.0-or-later + +from qemu_test import Asset +from qemu_test.tuxruntest import TuxRunBaselineTest + +class TuxRunM68KTest(TuxRunBaselineTest): + + ASSET_M68K_KERNEL = Asset( + 'https://storage.tuxboot.com/buildroot/20241119/m68k/vmlinux', + '7754e1d5cec753ccf1dc6894729a7f54c1a4965631ebf56df8e4ce1163ad19d8') + ASSET_M68K_ROOTFS = Asset( + 'https://storage.tuxboot.com/buildroot/20241119/m68k/rootfs.ext4.zst', + '557962ffff265607912e82232cf21adbe0e4e5a88e1e1d411ce848c37f0213e9') + + def test_m68k(self): + self.set_machine('virt') + self.cpu="m68040" + self.common_tuxrun(kernel_asset=self.ASSET_M68K_KERNEL, + rootfs_asset=self.ASSET_M68K_ROOTFS, + drive="virtio-blk-device") + +if __name__ == '__main__': + TuxRunBaselineTest.main() -- 2.39.5