xref: /qemu/tests/functional/test_m68k_replay.py (revision 648fe157d33436f042d6b6434b9b88079f67fa33)
1#!/usr/bin/env python3
2#
3# Replay test that boots a Linux kernel on an m68k machine
4# and checks the console
5#
6# SPDX-License-Identifier: GPL-2.0-or-later
7
8from qemu_test import Asset
9from replay_kernel import ReplayKernelBase
10
11
12class M68kReplay(ReplayKernelBase):
13
14    ASSET_Q800 = Asset(
15        ('https://snapshot.debian.org/'
16         'archive/debian-ports/20191021T083923Z/pool-m68k/main/l/linux/'
17         'kernel-image-5.3.0-1-m68k-di_5.3.7-1_m68k.udeb'),
18        '949e50d74d4b9bc15d26c06d402717b7a4c0e32ff8100014f5930d8024de7b73')
19
20    def test_q800(self):
21        self.set_machine('q800')
22        kernel_path = self.archive_extract(self.ASSET_Q800,
23                                           member='boot/vmlinux-5.3.0-1-m68k')
24        kernel_command_line = (self.KERNEL_COMMON_COMMAND_LINE +
25                               'console=ttyS0 vga=off')
26        console_pattern = 'No filesystem could mount root'
27        self.run_rr(kernel_path, kernel_command_line, console_pattern,
28                    args=('-audio', 'none'))
29
30    ASSET_MCF5208 = Asset(
31       'https://qemu-advcal.gitlab.io/qac-best-of-multiarch/download/day07.tar.xz',
32       '753c2f3837126b7c6ba92d0b1e0b156e8a2c5131d2d576bb0b9a763fae73c08a')
33
34    def test_mcf5208evb(self):
35        self.set_machine('mcf5208evb')
36        kernel_path = self.archive_extract(self.ASSET_MCF5208,
37                                           member='day07/sanity-clause.elf')
38        self.run_rr(kernel_path, self.KERNEL_COMMON_COMMAND_LINE,
39                    'QEMU advent calendar')
40
41
42if __name__ == '__main__':
43    ReplayKernelBase.main()
44