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 TuxRunArmTest(TuxRunBaselineTest): 18 19 ASSET_ARMV5_KERNEL = Asset( 20 'https://storage.tuxboot.com/20230331/armv5/zImage', 21 'c95af2f27647c12265d75e9df44c22ff5228c59855f54aaa70f41ec2842e3a4d') 22 ASSET_ARMV5_ROOTFS = Asset( 23 'https://storage.tuxboot.com/20230331/armv5/rootfs.ext4.zst', 24 '17177afa74e7294da0642861f08c88ca3c836764299a54bf6d1ce276cb9712a5') 25 ASSET_ARMV5_DTB = Asset( 26 'https://storage.tuxboot.com/20230331/armv5/versatile-pb.dtb', 27 '0bc0c0b0858cefd3c32b385c0d66d97142ded29472a496f4f490e42fc7615b25') 28 29 def test_armv5(self): 30 self.set_machine('versatilepb') 31 self.cpu='arm926' 32 self.console='ttyAMA0' 33 self.wait_for_shutdown=False 34 self.common_tuxrun(kernel_asset=self.ASSET_ARMV5_KERNEL, 35 rootfs_asset=self.ASSET_ARMV5_ROOTFS, 36 dtb_asset=self.ASSET_ARMV5_DTB, 37 drive="virtio-blk-pci") 38 39 ASSET_ARMV7_KERNEL = Asset( 40 'https://storage.tuxboot.com/20230331/armv7/zImage', 41 '4c7a22e9f15875bec06bd2a29d822496571eb297d4f22694099ffcdb19077572') 42 ASSET_ARMV7_ROOTFS = Asset( 43 'https://storage.tuxboot.com/20230331/armv7/rootfs.ext4.zst', 44 'ab1fbbeaddda1ffdd45c9405a28cd5370c20f23a7cbc809cc90dc9f243a8eb5a') 45 46 def test_armv7(self): 47 self.set_machine('virt') 48 self.cpu='cortex-a15' 49 self.console='ttyAMA0' 50 self.wait_for_shutdown=False 51 self.common_tuxrun(kernel_asset=self.ASSET_ARMV7_KERNEL, 52 rootfs_asset=self.ASSET_ARMV7_ROOTFS) 53 54 ASSET_ARMV7BE_KERNEL = Asset( 55 'https://storage.tuxboot.com/20230331/armv7be/zImage', 56 '7facc62082b57af12015b08f7fdbaf2f123ba07a478367853ae12b219afc9f2f') 57 ASSET_ARMV7BE_ROOTFS = Asset( 58 'https://storage.tuxboot.com/20230331/armv7be/rootfs.ext4.zst', 59 '42ed46dd2d59986206c5b1f6cf35eab58fe3fd20c96b41aaa16b32f3f90a9835') 60 61 def test_armv7be(self): 62 self.set_machine('virt') 63 self.cpu='cortex-a15' 64 self.console='ttyAMA0' 65 self.wait_for_shutdown=False 66 self.common_tuxrun(kernel_asset=self.ASSET_ARMV7BE_KERNEL, 67 rootfs_asset=self.ASSET_ARMV7BE_ROOTFS) 68 69if __name__ == '__main__': 70 TuxRunBaselineTest.main() 71