On Fri, 17 Jul 2020 at 12:33, Cédric Le Goater <c...@kaod.org> wrote: > > On 7/17/20 8:02 AM, Havard Skinnemoen wrote: > > This adds two acceptance tests for the quanta-gsj machine. > > > > One test downloads a lightly patched openbmc flash image from github and > > verifies that it boots all the way to the login prompt. > > > > The other test downloads a kernel, initrd and dtb built from the same > > openbmc source and verifies that the kernel detects all CPUs and boots > > to the point where it can't find the root filesystem (because we have no > > flash image in this case). > > > > Signed-off-by: Havard Skinnemoen <hskinnem...@google.com> > > It looks good but I am not sure it's a good idea to have tests > point to URLs like : > > https://github.com/hskinnemoen/openbmc/releases/download/20200711-gsj-qemu-0/obmc-phosphor-initramfs-gsj.cpio.xz > > Philippe, Peter, is that OK ? > > > If so, Joel, Andrew, could we host FW images on the OpenBMC github ? > and do the same for Aspeed.
Yeah, we can do that if it would be preferred. Nice work on adding a test Havard. I have been meaning to do the same for the aspeed machines for a while. > > Thanks, > > C. > > > --- > > tests/acceptance/boot_linux_console.py | 65 ++++++++++++++++++++++++++ > > 1 file changed, 65 insertions(+) > > > > diff --git a/tests/acceptance/boot_linux_console.py > > b/tests/acceptance/boot_linux_console.py > > index 73cc69c499..1d82fc7ff8 100644 > > --- a/tests/acceptance/boot_linux_console.py > > +++ b/tests/acceptance/boot_linux_console.py > > @@ -569,6 +569,71 @@ class BootLinuxConsole(LinuxKernelTest): > > 'sda') > > # cubieboard's reboot is not functioning; omit reboot test. > > > > + def test_arm_quanta_gsj(self): > > + """ > > + :avocado: tags=arch:arm > > + :avocado: tags=machine:quanta-gsj > > + """ > > + # 25 MiB compressed, 32 MiB uncompressed. > > + image_url = ( > > + 'https://github.com/hskinnemoen/openbmc/releases/download/' > > + > > '20200711-gsj-qemu-0/obmc-phosphor-image-gsj.static.mtd.gz') > > + image_hash = '14895e634923345cb5c8776037ff7876df96f6b1' > > + image_path_gz = self.fetch_asset(image_url, asset_hash=image_hash) > > + image_name = os.path.splitext(os.path.basename(image_path_gz))[0] > > + image_path = os.path.join(self.workdir, image_name) > > + archive.gzip_uncompress(image_path_gz, image_path) > > + > > + self.vm.set_console() > > + drive_args = 'file=' + image_path + ',if=mtd,bus=0,unit=0' > > + self.vm.add_args('-drive', drive_args) > > + self.vm.launch() > > + > > + self.wait_for_console_pattern('> BootBlock by Nuvoton') > > + self.wait_for_console_pattern('>Device: Poleg BMC NPCM730') > > + self.wait_for_console_pattern('>Skip DDR init.') > > + self.wait_for_console_pattern('U-Boot ') > > + self.wait_for_console_pattern('Booting Linux on physical CPU 0x0') > > + self.wait_for_console_pattern('CPU1: thread -1, cpu 1, socket 0') > > + self.wait_for_console_pattern('OpenBMC Project Reference Distro') > > + self.wait_for_console_pattern('gsj login:') > > + > > + def test_arm_quanta_gsj_initrd(self): > > + """ > > + :avocado: tags=arch:arm > > + :avocado: tags=machine:quanta-gsj > > + """ > > + initrd_url = ( > > + 'https://github.com/hskinnemoen/openbmc/releases/download/' > > + '20200711-gsj-qemu-0/obmc-phosphor-initramfs-gsj.cpio.xz') > > + initrd_hash = '98fefe5d7e56727b1eb17d5c00311b1b5c945300' > > + initrd_path = self.fetch_asset(initrd_url, asset_hash=initrd_hash) > > + kernel_url = ( > > + 'https://github.com/hskinnemoen/openbmc/releases/download/' > > + '20200711-gsj-qemu-0/uImage-gsj.bin') > > + kernel_hash = 'fa67b2f141d56d39b3c54305c0e8a899c99eb2c7' > > + kernel_path = self.fetch_asset(kernel_url, asset_hash=kernel_hash) > > + dtb_url = ( > > + 'https://github.com/hskinnemoen/openbmc/releases/download/' > > + '20200711-gsj-qemu-0/nuvoton-npcm730-gsj.dtb') > > + dtb_hash = '18315f7006d7b688d8312d5c727eecd819aa36a4' > > + dtb_path = self.fetch_asset(dtb_url, asset_hash=dtb_hash) > > + > > + self.vm.set_console() > > + kernel_command_line = (self.KERNEL_COMMON_COMMAND_LINE + > > + 'console=ttyS0,115200n8 ' > > + 'earlycon=uart8250,mmio32,0xf0001000') > > + self.vm.add_args('-kernel', kernel_path, > > + '-initrd', initrd_path, > > + '-dtb', dtb_path, > > + '-append', kernel_command_line) > > + self.vm.launch() > > + > > + self.wait_for_console_pattern('Booting Linux on physical CPU 0x0') > > + self.wait_for_console_pattern('CPU1: thread -1, cpu 1, socket 0') > > + self.wait_for_console_pattern( > > + 'Give root password for system maintenance') > > + > > def test_arm_orangepi(self): > > """ > > :avocado: tags=arch:arm > > >