Message ID | 20200129131920.22302-1-thuth@redhat.com |
---|---|
State | New |
Headers | show |
Series | [RFC] tests/acceptance: Add a test for the N800 and N810 arm machines | expand |
On 1/29/20 11:19 AM, Thomas Huth wrote: > Old kernels from the Meego project can be used to check that Linux > is at least starting on these machines. > > Signed-off-by: Thomas Huth <thuth@redhat.com> > --- > The serial console is written to the second UART, so this needs Phil's > "Allow to use other serial consoles than default" patch as a prerequisite: > Based-on: <20200120235159.18510-5-f4bug@amsat.org> > > MAINTAINERS | 1 + > tests/acceptance/machine_arm_n8x0.py | 49 ++++++++++++++++++++++++++++ > 2 files changed, 50 insertions(+) > create mode 100644 tests/acceptance/machine_arm_n8x0.py LGTM. Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com> > > diff --git a/MAINTAINERS b/MAINTAINERS > index ddf6fe0794..560507e821 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -672,6 +672,7 @@ F: hw/rtc/twl92230.c > F: include/hw/display/blizzard.h > F: include/hw/input/tsc2xxx.h > F: include/hw/misc/cbus.h > +F: tests/acceptance/machine_arm_n8x0.py > > Palm > M: Andrzej Zaborowski <balrogg@gmail.com> > diff --git a/tests/acceptance/machine_arm_n8x0.py b/tests/acceptance/machine_arm_n8x0.py > new file mode 100644 > index 0000000000..e5741f2d8d > --- /dev/null > +++ b/tests/acceptance/machine_arm_n8x0.py > @@ -0,0 +1,49 @@ > +# Functional test that boots a Linux kernel and checks the console > +# > +# Copyright (c) 2020 Red Hat, Inc. > +# > +# Author: > +# Thomas Huth <thuth@redhat.com> > +# > +# This work is licensed under the terms of the GNU GPL, version 2 or > +# later. See the COPYING file in the top-level directory. > + > +import os > + > +from avocado import skipUnless > +from avocado_qemu import Test > +from avocado_qemu import wait_for_console_pattern > + > +class N8x0Machine(Test): > + """Boots the Linux kernel and checks that the console is operational""" > + > + timeout = 90 > + > + def __do_test_n8x0(self): > + kernel_url = ('http://stskeeps.subnetmask.net/meego-n8x0/' > + 'meego-arm-n8x0-1.0.80.20100712.1431-' > + 'vmlinuz-2.6.35~rc4-129.1-n8x0') > + kernel_hash = 'e9d5ab8d7548923a0061b6fbf601465e479ed269' > + kernel_path = self.fetch_asset(kernel_url, asset_hash=kernel_hash) > + > + self.vm.set_console(console_index=1) > + self.vm.add_args('-kernel', kernel_path, > + '-append', 'printk.time=0 console=ttyS1') > + self.vm.launch() > + wait_for_console_pattern(self, 'TSC2005 driver initializing') > + > + @skipUnless(os.getenv('AVOCADO_ALLOW_UNTRUSTED_CODE'), 'untrusted code') > + def test_n800(self): > + """ > + :avocado: tags=arch:arm > + :avocado: tags=machine:n800 > + """ > + self.__do_test_n8x0() > + > + @skipUnless(os.getenv('AVOCADO_ALLOW_UNTRUSTED_CODE'), 'untrusted code') > + def test_n810(self): > + """ > + :avocado: tags=arch:arm > + :avocado: tags=machine:n810 > + """ > + self.__do_test_n8x0()
On 1/29/20 2:19 PM, Thomas Huth wrote: > Old kernels from the Meego project can be used to check that Linux > is at least starting on these machines. > > Signed-off-by: Thomas Huth <thuth@redhat.com> > --- > The serial console is written to the second UART, so this needs Phil's > "Allow to use other serial consoles than default" patch as a prerequisite: > Based-on: <20200120235159.18510-5-f4bug@amsat.org> > > MAINTAINERS | 1 + > tests/acceptance/machine_arm_n8x0.py | 49 ++++++++++++++++++++++++++++ > 2 files changed, 50 insertions(+) > create mode 100644 tests/acceptance/machine_arm_n8x0.py > > diff --git a/MAINTAINERS b/MAINTAINERS > index ddf6fe0794..560507e821 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -672,6 +672,7 @@ F: hw/rtc/twl92230.c > F: include/hw/display/blizzard.h > F: include/hw/input/tsc2xxx.h > F: include/hw/misc/cbus.h > +F: tests/acceptance/machine_arm_n8x0.py > > Palm > M: Andrzej Zaborowski <balrogg@gmail.com> > diff --git a/tests/acceptance/machine_arm_n8x0.py b/tests/acceptance/machine_arm_n8x0.py > new file mode 100644 > index 0000000000..e5741f2d8d > --- /dev/null > +++ b/tests/acceptance/machine_arm_n8x0.py > @@ -0,0 +1,49 @@ > +# Functional test that boots a Linux kernel and checks the console > +# > +# Copyright (c) 2020 Red Hat, Inc. > +# > +# Author: > +# Thomas Huth <thuth@redhat.com> > +# > +# This work is licensed under the terms of the GNU GPL, version 2 or > +# later. See the COPYING file in the top-level directory. > + > +import os > + > +from avocado import skipUnless > +from avocado_qemu import Test > +from avocado_qemu import wait_for_console_pattern > + > +class N8x0Machine(Test): > + """Boots the Linux kernel and checks that the console is operational""" > + > + timeout = 90 > + > + def __do_test_n8x0(self): > + kernel_url = ('http://stskeeps.subnetmask.net/meego-n8x0/' > + 'meego-arm-n8x0-1.0.80.20100712.1431-' > + 'vmlinuz-2.6.35~rc4-129.1-n8x0') > + kernel_hash = 'e9d5ab8d7548923a0061b6fbf601465e479ed269' > + kernel_path = self.fetch_asset(kernel_url, asset_hash=kernel_hash) > + > + self.vm.set_console(console_index=1) > + self.vm.add_args('-kernel', kernel_path, > + '-append', 'printk.time=0 console=ttyS1') > + self.vm.launch() > + wait_for_console_pattern(self, 'TSC2005 driver initializing') > + > + @skipUnless(os.getenv('AVOCADO_ALLOW_UNTRUSTED_CODE'), 'untrusted code') > + def test_n800(self): > + """ > + :avocado: tags=arch:arm > + :avocado: tags=machine:n800 > + """ > + self.__do_test_n8x0() > + > + @skipUnless(os.getenv('AVOCADO_ALLOW_UNTRUSTED_CODE'), 'untrusted code') > + def test_n810(self): > + """ > + :avocado: tags=arch:arm > + :avocado: tags=machine:n810 > + """ > + self.__do_test_n8x0() > Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
diff --git a/MAINTAINERS b/MAINTAINERS index ddf6fe0794..560507e821 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -672,6 +672,7 @@ F: hw/rtc/twl92230.c F: include/hw/display/blizzard.h F: include/hw/input/tsc2xxx.h F: include/hw/misc/cbus.h +F: tests/acceptance/machine_arm_n8x0.py Palm M: Andrzej Zaborowski <balrogg@gmail.com> diff --git a/tests/acceptance/machine_arm_n8x0.py b/tests/acceptance/machine_arm_n8x0.py new file mode 100644 index 0000000000..e5741f2d8d --- /dev/null +++ b/tests/acceptance/machine_arm_n8x0.py @@ -0,0 +1,49 @@ +# Functional test that boots a Linux kernel and checks the console +# +# Copyright (c) 2020 Red Hat, Inc. +# +# Author: +# Thomas Huth <thuth@redhat.com> +# +# This work is licensed under the terms of the GNU GPL, version 2 or +# later. See the COPYING file in the top-level directory. + +import os + +from avocado import skipUnless +from avocado_qemu import Test +from avocado_qemu import wait_for_console_pattern + +class N8x0Machine(Test): + """Boots the Linux kernel and checks that the console is operational""" + + timeout = 90 + + def __do_test_n8x0(self): + kernel_url = ('http://stskeeps.subnetmask.net/meego-n8x0/' + 'meego-arm-n8x0-1.0.80.20100712.1431-' + 'vmlinuz-2.6.35~rc4-129.1-n8x0') + kernel_hash = 'e9d5ab8d7548923a0061b6fbf601465e479ed269' + kernel_path = self.fetch_asset(kernel_url, asset_hash=kernel_hash) + + self.vm.set_console(console_index=1) + self.vm.add_args('-kernel', kernel_path, + '-append', 'printk.time=0 console=ttyS1') + self.vm.launch() + wait_for_console_pattern(self, 'TSC2005 driver initializing') + + @skipUnless(os.getenv('AVOCADO_ALLOW_UNTRUSTED_CODE'), 'untrusted code') + def test_n800(self): + """ + :avocado: tags=arch:arm + :avocado: tags=machine:n800 + """ + self.__do_test_n8x0() + + @skipUnless(os.getenv('AVOCADO_ALLOW_UNTRUSTED_CODE'), 'untrusted code') + def test_n810(self): + """ + :avocado: tags=arch:arm + :avocado: tags=machine:n810 + """ + self.__do_test_n8x0()
Old kernels from the Meego project can be used to check that Linux is at least starting on these machines. Signed-off-by: Thomas Huth <thuth@redhat.com> --- The serial console is written to the second UART, so this needs Phil's "Allow to use other serial consoles than default" patch as a prerequisite: Based-on: <20200120235159.18510-5-f4bug@amsat.org> MAINTAINERS | 1 + tests/acceptance/machine_arm_n8x0.py | 49 ++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+) create mode 100644 tests/acceptance/machine_arm_n8x0.py