qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH v4 5/7] tests/boot_linux_console: Test booting U-Boot on the


From: Wainer dos Santos Moschetta
Subject: Re: [PATCH v4 5/7] tests/boot_linux_console: Test booting U-Boot on the Raspberry Pi 2
Date: Tue, 28 Jan 2020 18:08:40 -0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0


On 1/20/20 9:51 PM, Philippe Mathieu-Daudé wrote:
This test runs U-Boot on the Raspberry Pi 2.
It is very simple and fast:

   $ avocado --show=app,console run -t raspi2 -t u-boot tests/acceptance/
   JOB LOG    : avocado/job-results/job-2020-01-20T23.40-2424777/job.log
    (1/1) 
tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_arm_raspi2_uboot:
   console: MMC:   sdhci@7e300000: 0
   console: Loading Environment from FAT... Card did not respond to voltage 
select!
   console: In:    serial
   console: Out:   vidconsole
   console: Err:   vidconsole
   console: Net:   No ethernet found.
   console: starting USB...
   console: USB0:   Port not available.
   console: Hit any key to stop autoboot:  0
   console: U-Boot>
   console: U-Boot> bdinfo
   console: arch_number = 0x00000000
   console: boot_params = 0x00000100
   console: DRAM bank   = 0x00000000
   console: -> start    = 0x00000000
   console: -> size     = 0x3c000000
   console: baudrate    = 115200 bps
   console: TLB addr    = 0x3bff0000
   console: relocaddr   = 0x3bf64000
   console: reloc off   = 0x3bf5c000
   console: irq_sp      = 0x3bb5fec0
   console: sp start    = 0x3bb5feb0
   console: Early malloc usage: 2a4 / 400
   console: fdt_blob    = 0x3bfbdfb0
   console: U-Boot> version
   console: U-Boot 2019.01+dfsg-7 (May 14 2019 - 02:07:44 +0000)
   console: gcc (Debian 8.3.0-7) 8.3.0
   console: GNU ld (GNU Binutils for Debian) 2.31.1
   console: U-Boot> reset
   console: resetting ...
   PASS (0.46 s)

U-Boot is built by the Debian project, see:
https://wiki.debian.org/InstallingDebianOn/Allwinner#Creating_a_bootable_SD_Card_with_u-boot

Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
---
  tests/acceptance/boot_linux_console.py | 28 ++++++++++++++++++++++++++
  1 file changed, 28 insertions(+)


Reviewed-by: Wainer dos Santos Moschetta <address@hidden>



diff --git a/tests/acceptance/boot_linux_console.py 
b/tests/acceptance/boot_linux_console.py
index e40b84651b..682b801b4f 100644
--- a/tests/acceptance/boot_linux_console.py
+++ b/tests/acceptance/boot_linux_console.py
@@ -16,6 +16,7 @@ import shutil
  from avocado import skipUnless
  from avocado_qemu import Test
  from avocado_qemu import exec_command_and_wait_for_pattern
+from avocado_qemu import interrupt_interactive_console_until_pattern
  from avocado_qemu import wait_for_console_pattern
  from avocado.utils import process
  from avocado.utils import archive
@@ -485,6 +486,33 @@ class BootLinuxConsole(Test):
          exec_command_and_wait_for_pattern(self, 'reboot',
                                                  'reboot: Restarting system')
+ def test_arm_raspi2_uboot(self):
+        """
+        :avocado: tags=arch:arm
+        :avocado: tags=machine:raspi2
+        :avocado: tags=u-boot
+        """
+        deb_url = ('https://snapshot.debian.org/archive/debian/'
+                   '20190514T084354Z/pool/main/u/u-boot/'
+                   'u-boot-rpi_2019.01%2Bdfsg-7_armhf.deb')
+        deb_hash = 'ad858cf3afe623b6c3fa2e20dcdd1768fcb9ae83'
+        deb_path = self.fetch_asset(deb_url, asset_hash=deb_hash)
+        uboot_path = '/usr/lib/u-boot/rpi_2/uboot.elf'
+        uboot_path = self.extract_from_deb(deb_path, uboot_path)
+
+        self.vm.set_console()
+        self.vm.add_args('-kernel', uboot_path,
+                         # VideoCore starts CPU with only 1 core enabled
+                         '-global', 'bcm2836.enabled-cpus=1',
+                         '-no-reboot')
+        self.vm.launch()
+        interrupt_interactive_console_until_pattern(self,
+                                       'Hit any key to stop autoboot:',
+                                       'Config file not found')
+        exec_command_and_wait_for_pattern(self, 'bdinfo', 'U-Boot')
+        exec_command_and_wait_for_pattern(self, 'version', 'U-Boot')
+        exec_command_and_wait_for_pattern(self, 'reset', 'resetting ...')
+
      def test_s390x_s390_ccw_virtio(self):
          """
          :avocado: tags=arch:s390x




reply via email to

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