1#!/usr/bin/env python3
2#
3# Functional test that boots known good tuxboot images the same way
4# that tuxrun (www.tuxrun.org) does. This tool is used by things like
5# the LKFT project to run regression tests on kernels.
6#
7# Copyright (c) 2023 Linaro Ltd.
8#
9# Author:
10#  Alex Bennée <alex.bennee@linaro.org>
11#
12# SPDX-License-Identifier: GPL-2.0-or-later
13
14from qemu_test import Asset
15from qemu_test.tuxruntest import TuxRunBaselineTest
16
17class TuxRunRiscV32Test(TuxRunBaselineTest):
18
19    ASSET_RISCV32_KERNEL = Asset(
20        'https://storage.tuxboot.com/20230331/riscv32/Image',
21        '89599407d7334de629a40e7ad6503c73670359eb5f5ae9d686353a3d6deccbd5')
22    ASSET_RISCV32_ROOTFS = Asset(
23        'https://storage.tuxboot.com/20230331/riscv32/rootfs.ext4.zst',
24        '7168d296d0283238ea73cd5a775b3dd608e55e04c7b92b76ecce31bb13108cba')
25
26    def test_riscv32(self):
27        self.set_machine('virt')
28        self.common_tuxrun(kernel_asset=self.ASSET_RISCV32_KERNEL,
29                           rootfs_asset=self.ASSET_RISCV32_ROOTFS)
30
31    def test_riscv32_maxcpu(self):
32        self.set_machine('virt')
33        self.cpu='max'
34        self.common_tuxrun(kernel_asset=self.ASSET_RISCV32_KERNEL,
35                           rootfs_asset=self.ASSET_RISCV32_ROOTFS)
36
37if __name__ == '__main__':
38    TuxRunBaselineTest.main()
39