Message ID | 20241017163247.711244-2-peter.maydell@linaro.org (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | arm: Add collie and sx functional tests | expand |
On 17/10/2024 18.32, Peter Maydell wrote: > Add a functional test for the collie board that uses the kernel and > rootfs provided by Guenter Roeck in the linux-test-downloads repo: > https://github.com/groeck/linux-test-downloads/ > > This just boots Linux with a userspace that immediately reboots > the board, so we wait for the reboot log line. > > Signed-off-by: Peter Maydell <peter.maydell@linaro.org> > --- > MAINTAINERS | 1 + > tests/functional/meson.build | 1 + > tests/functional/test_arm_collie.py | 31 +++++++++++++++++++++++++++++ > 3 files changed, 33 insertions(+) > create mode 100755 tests/functional/test_arm_collie.py > > diff --git a/MAINTAINERS b/MAINTAINERS > index c21d6a2f9e1..10b3360ed40 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -929,6 +929,7 @@ F: hw/arm/strongarm* > F: hw/gpio/zaurus.c > F: include/hw/arm/sharpsl.h > F: docs/system/arm/collie.rst > +F: tests/functional/test_arm_collie.py > > Stellaris > M: Peter Maydell <peter.maydell@linaro.org> > diff --git a/tests/functional/meson.build b/tests/functional/meson.build > index c90c02517a0..0450805a9c4 100644 > --- a/tests/functional/meson.build > +++ b/tests/functional/meson.build > @@ -51,6 +51,7 @@ tests_alpha_system_thorough = [ > > tests_arm_system_thorough = [ > 'arm_canona1100', > + 'arm_collie', > 'arm_integratorcp', > 'arm_raspi2', > 'arm_vexpress', > diff --git a/tests/functional/test_arm_collie.py b/tests/functional/test_arm_collie.py > new file mode 100755 > index 00000000000..7e144a0a8fb > --- /dev/null > +++ b/tests/functional/test_arm_collie.py > @@ -0,0 +1,31 @@ > +#!/usr/bin/env python3 > +# > +# Functional test that boots a Linux kernel on a collie machine > +# and checks the console > +# > +# SPDX-License-Identifier: GPL-2.0-or-later > + > +from qemu_test import LinuxKernelTest, Asset > +from qemu_test.utils import archive_extract > + > +class CollieTest(LinuxKernelTest): > + > + ASSET_ZIMAGE = Asset( > + 'https://github.com/groeck/linux-test-downloads/raw/225223f2ad7d637b34426810bf6c3b727b76a718/collie/zImage', > + '10ace8abf9e0875ef8a83b8829cc3b5b50bc6d7bc3ca29f19f49f5673a43c13b') > + > + ASSET_ROOTFS = Asset( > + 'https://github.com/groeck/linux-test-downloads/raw/225223f2ad7d637b34426810bf6c3b727b76a718/collie/rootfs-sa110.cpio', > + '89ccaaa5c6b33331887047e1618ffe81b0f55909173944347d5d2426f3bcc1f2') > + > + def test_arm_collie(self): > + self.set_machine('collie') > + zimage_path = self.ASSET_ZIMAGE.fetch() > + rootfs_path = self.ASSET_ROOTFS.fetch() > + self.vm.add_args('-append', 'rdinit=/sbin/init console=ttySA1') > + self.launch_kernel(zimage_path, > + initrd=rootfs_path, > + wait_for='reboot: Restarting system') > + > +if __name__ == '__main__': > + LinuxKernelTest.main() Reviewed-by: Thomas Huth <thuth@redhat.com>
diff --git a/MAINTAINERS b/MAINTAINERS index c21d6a2f9e1..10b3360ed40 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -929,6 +929,7 @@ F: hw/arm/strongarm* F: hw/gpio/zaurus.c F: include/hw/arm/sharpsl.h F: docs/system/arm/collie.rst +F: tests/functional/test_arm_collie.py Stellaris M: Peter Maydell <peter.maydell@linaro.org> diff --git a/tests/functional/meson.build b/tests/functional/meson.build index c90c02517a0..0450805a9c4 100644 --- a/tests/functional/meson.build +++ b/tests/functional/meson.build @@ -51,6 +51,7 @@ tests_alpha_system_thorough = [ tests_arm_system_thorough = [ 'arm_canona1100', + 'arm_collie', 'arm_integratorcp', 'arm_raspi2', 'arm_vexpress', diff --git a/tests/functional/test_arm_collie.py b/tests/functional/test_arm_collie.py new file mode 100755 index 00000000000..7e144a0a8fb --- /dev/null +++ b/tests/functional/test_arm_collie.py @@ -0,0 +1,31 @@ +#!/usr/bin/env python3 +# +# Functional test that boots a Linux kernel on a collie machine +# and checks the console +# +# SPDX-License-Identifier: GPL-2.0-or-later + +from qemu_test import LinuxKernelTest, Asset +from qemu_test.utils import archive_extract + +class CollieTest(LinuxKernelTest): + + ASSET_ZIMAGE = Asset( + 'https://github.com/groeck/linux-test-downloads/raw/225223f2ad7d637b34426810bf6c3b727b76a718/collie/zImage', + '10ace8abf9e0875ef8a83b8829cc3b5b50bc6d7bc3ca29f19f49f5673a43c13b') + + ASSET_ROOTFS = Asset( + 'https://github.com/groeck/linux-test-downloads/raw/225223f2ad7d637b34426810bf6c3b727b76a718/collie/rootfs-sa110.cpio', + '89ccaaa5c6b33331887047e1618ffe81b0f55909173944347d5d2426f3bcc1f2') + + def test_arm_collie(self): + self.set_machine('collie') + zimage_path = self.ASSET_ZIMAGE.fetch() + rootfs_path = self.ASSET_ROOTFS.fetch() + self.vm.add_args('-append', 'rdinit=/sbin/init console=ttySA1') + self.launch_kernel(zimage_path, + initrd=rootfs_path, + wait_for='reboot: Restarting system') + +if __name__ == '__main__': + LinuxKernelTest.main()
Add a functional test for the collie board that uses the kernel and rootfs provided by Guenter Roeck in the linux-test-downloads repo: https://github.com/groeck/linux-test-downloads/ This just boots Linux with a userspace that immediately reboots the board, so we wait for the reboot log line. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> --- MAINTAINERS | 1 + tests/functional/meson.build | 1 + tests/functional/test_arm_collie.py | 31 +++++++++++++++++++++++++++++ 3 files changed, 33 insertions(+) create mode 100755 tests/functional/test_arm_collie.py