xref: /openbmc/qemu/tests/functional/test_s390x_tuxrun.py (revision 6f625ce2f21d6a1243065d236298277c56f972d5)
1*a7a9f513SThomas Huth#!/usr/bin/env python3
2*a7a9f513SThomas Huth#
3*a7a9f513SThomas Huth# Functional test that boots known good tuxboot images the same way
4*a7a9f513SThomas Huth# that tuxrun (www.tuxrun.org) does. This tool is used by things like
5*a7a9f513SThomas Huth# the LKFT project to run regression tests on kernels.
6*a7a9f513SThomas Huth#
7*a7a9f513SThomas Huth# Copyright (c) 2023 Linaro Ltd.
8*a7a9f513SThomas Huth#
9*a7a9f513SThomas Huth# Author:
10*a7a9f513SThomas Huth#  Alex Bennée <alex.bennee@linaro.org>
11*a7a9f513SThomas Huth#
12*a7a9f513SThomas Huth# SPDX-License-Identifier: GPL-2.0-or-later
13*a7a9f513SThomas Huth
14*a7a9f513SThomas Huthfrom qemu_test import Asset
15*a7a9f513SThomas Huthfrom qemu_test.tuxruntest import TuxRunBaselineTest
16*a7a9f513SThomas Huth
17*a7a9f513SThomas Huthclass TuxRunS390xTest(TuxRunBaselineTest):
18*a7a9f513SThomas Huth
19*a7a9f513SThomas Huth    ASSET_S390X_KERNEL = Asset(
20*a7a9f513SThomas Huth        'https://storage.tuxboot.com/20230331/s390/bzImage',
21*a7a9f513SThomas Huth        '0414e98dd1c3dafff8496c9cd9c28a5f8d04553bb5ba37e906a812b48d442ef0')
22*a7a9f513SThomas Huth    ASSET_S390X_ROOTFS = Asset(
23*a7a9f513SThomas Huth        'https://storage.tuxboot.com/20230331/s390/rootfs.ext4.zst',
24*a7a9f513SThomas Huth        '88c37c32276677f873a25ab9ec6247895b8e3e6f8259134de2a616080b8ab3fc')
25*a7a9f513SThomas Huth
26*a7a9f513SThomas Huth    def test_s390(self):
27*a7a9f513SThomas Huth        self.wait_for_shutdown=False
28*a7a9f513SThomas Huth        self.common_tuxrun(kernel_asset=self.ASSET_S390X_KERNEL,
29*a7a9f513SThomas Huth                           rootfs_asset=self.ASSET_S390X_ROOTFS,
30*a7a9f513SThomas Huth                           drive="virtio-blk-ccw",
31*a7a9f513SThomas Huth                           haltmsg="Requesting system halt")
32*a7a9f513SThomas Huth
33*a7a9f513SThomas Huthif __name__ == '__main__':
34*a7a9f513SThomas Huth    TuxRunBaselineTest.main()
35