On 8/10/21 10:36 AM, Joel Stanley wrote: > On Tue, 10 Aug 2021 at 08:34, Cédric Le Goater <c...@kaod.org> wrote: >> >> Fetch the OpenPOWER images to boot the powernv8 and powernv9 machines >> with a simple PCI layout. >> >> Cc: Cleber Rosa <cr...@redhat.com> >> Cc: Wainer dos Santos Moschetta <waine...@redhat.com> >> Signed-off-by: Cédric Le Goater <c...@kaod.org> >> --- >> tests/acceptance/boot_linux_console.py | 42 ++++++++++++++++++++++++++ >> 1 file changed, 42 insertions(+) >> >> diff --git a/tests/acceptance/boot_linux_console.py >> b/tests/acceptance/boot_linux_console.py >> index 5248c8097df9..da93a475ca87 100644 >> --- a/tests/acceptance/boot_linux_console.py >> +++ b/tests/acceptance/boot_linux_console.py >> @@ -1176,6 +1176,48 @@ def test_ppc64_e500(self): >> tar_hash = '6951d86d644b302898da2fd701739c9406527fe1' >> self.do_test_advcal_2018('19', tar_hash, 'uImage') >> >> + def do_test_ppc64_powernv(self, proc): >> + >> + images_url = >> ('https://github.com/open-power/op-build/releases/download/v2.7/') >> + >> + skiboot_url = images_url + 'skiboot.lid' >> + skiboot_hash = >> 'a9ffcddbf238f86cda4b2cae2882d6bd13cff8489109758a4980efaf154f4a29' >> + skiboot_path = self.fetch_asset(skiboot_url, >> asset_hash=skiboot_hash, >> + algorithm='sha256') > > What's the thought that led you to using this instead of the one that > gets packaged with qemu?
Good question. I considered that the skiboot.lid shipped with QEMU was somewhat a default to make things work. The official released versions are the ones used by the outside world on real systems and were a better target for tests. That said, using the default version might be enough. Maintainers, please advise ! >> + >> + kernel_url = images_url + 'zImage.epapr' >> + kernel_hash = >> '0ab237df661727e5392cee97460e8674057a883c5f74381a128fa772588d45cd' >> + kernel_path = self.fetch_asset(kernel_url, asset_hash=kernel_hash, >> + algorithm='sha256') >> + self.vm.set_console() >> + self.vm.add_args('-bios', skiboot_path, >> + '-kernel', kernel_path, >> + '-append', 'console=tty0 console=hvc0', >> + '-device', >> 'pcie-pci-bridge,id=bridge1,bus=pcie.1,addr=0x0', >> + '-device', 'nvme,bus=pcie.2,addr=0x0,serial=1234', >> + '-device', 'e1000e,bus=bridge1,addr=0x3', >> + '-device', 'nec-usb-xhci,bus=bridge1,addr=0x2') >> + self.vm.launch() >> + >> + self.wait_for_console_pattern("CPU: " + proc + " generation >> processor") >> + self.wait_for_console_pattern("zImage starting: loaded") >> + self.wait_for_console_pattern("Run /init as init process") >> + self.wait_for_console_pattern("Creating 1 MTD partitions") > > This is great. > > Is there any value in checking for some of the devices that come up, > like USB or ethernet? or nvme. Yes. That's a good idea. > Reviewed-by: Joel Stanley <j...@jms.id.au> Thanks, C. > >> + >> + def test_ppc_powernv8(self): >> + """ >> + :avocado: tags=arch:ppc64 >> + :avocado: tags=machine:powernv8 >> + """ >> + self.do_test_ppc64_powernv('P8') >> + >> + def test_ppc_powernv9(self): >> + """ >> + :avocado: tags=arch:ppc64 >> + :avocado: tags=machine:powernv9 >> + """ >> + self.do_test_ppc64_powernv('P9') >> + >> def test_ppc_g3beige(self): >> """ >> :avocado: tags=arch:ppc >> -- >> 2.31.1 >>