qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v6 13/13] tests/acceptance: console boot tests for quanta-gsj


From: Joel Stanley
Subject: Re: [PATCH v6 13/13] tests/acceptance: console boot tests for quanta-gsj
Date: Mon, 20 Jul 2020 08:22:46 +0000

On Fri, 17 Jul 2020 at 12:33, Cédric Le Goater <clg@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 <hskinnemoen@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
> >
>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]