1 # Test that Linux kernel boots on the ppc bamboo board and check the console
3 # Copyright (c) 2021 Red Hat
5 # This work is licensed under the terms of the GNU GPL, version 2 or
6 # later. See the COPYING file in the top-level directory.
8 from avocado
.utils
import archive
9 from avocado_qemu
import QemuSystemTest
10 from avocado_qemu
import wait_for_console_pattern
11 from avocado_qemu
import exec_command_and_wait_for_pattern
13 class BambooMachine(QemuSystemTest
):
17 def test_ppc_bamboo(self
):
19 :avocado: tags=arch:ppc
20 :avocado: tags=machine:bamboo
21 :avocado: tags=cpu:440epb
22 :avocado: tags=device:rtl8139
23 :avocado: tags=accel:tcg
25 self
.require_accelerator("tcg")
26 self
.require_netdev('user')
27 tar_url
= ('http://landley.net/aboriginal/downloads/binaries/'
28 'system-image-powerpc-440fp.tar.gz')
29 tar_hash
= '53e5f16414b195b82d2c70272f81c2eedb39bad9'
30 file_path
= self
.fetch_asset(tar_url
, asset_hash
=tar_hash
)
31 archive
.extract(file_path
, self
.workdir
)
33 self
.vm
.add_args('-kernel', self
.workdir
+
34 '/system-image-powerpc-440fp/linux',
35 '-initrd', self
.workdir
+
36 '/system-image-powerpc-440fp/rootfs.cpio.gz',
37 '-nic', 'user,model=rtl8139,restrict=on')
39 wait_for_console_pattern(self
, 'Type exit when done')
40 exec_command_and_wait_for_pattern(self
, 'ping 10.0.2.2',
42 exec_command_and_wait_for_pattern(self
, 'halt', 'System Halted')