• R/O
  • HTTP
  • SSH
  • HTTPS

Commit

Tags
No Tags

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

Commit MetaInfo

Revision14c76886853c6126bd0318ae8192ab14fc96458a (tree)
Time2020-02-23 22:23:13
AuthorPhilippe Mathieu-Daudé <philmd@redh...>
CommiterYoshinori Sato

Log Message

BootLinuxConsoleTest: Test the RX-Virt machine

Add two tests for the rx-virt machine, based on the recommended test
setup from Yoshinori Sato:
https://lists.gnu.org/archive/html/qemu-devel/2019-05/msg03586.html

- U-Boot prompt
- Linux kernel with Sash shell

These are very quick tests:

$ avocado run -t arch:rx tests/acceptance/boot_linux_console.py
JOB ID : 84a6ef01c0b87975ecbfcb31a920afd735753ace
JOB LOG : /home/phil/avocado/job-results/job-2019-05-24T05.02-84a6ef0/job.log
(1/2) tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_rx_uboot: PASS (0.11 s)
(2/2) tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_rx_linux: PASS (0.45 s)
RESULTS : PASS 2 | ERROR 0 | FAIL 0 | SKIP 0 | WARN 0 | INTERRUPT 0 | CANCEL 0

Tests can also be run with:

$ avocado --show=console run -t arch:rx tests/acceptance/boot_linux_console.py
console: U-Boot 2016.05-rc3-23705-ga1ef3c71cb-dirty (Feb 05 2019 - 21:56:06 +0900)
console: Linux version 4.19.0+ (yo-satoh@yo-satoh-debian) (gcc version 9.0.0 20181105 (experimental) (GCC)) #137 Wed Feb 20 23:20:02 JST 2019
console: Built 1 zonelists, mobility grouping on. Total pages: 8128
...
console: SuperH (H)SCI(F) driver initialized
console: 88240.serial: ttySC0 at MMIO 0x88240 (irq = 215, base_baud = 0) is a sci
console: console [ttySC0] enabled
console: 88248.serial: ttySC1 at MMIO 0x88248 (irq = 219, base_baud = 0) is a sci

Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Based-on: 20190517045136.3509-1-richard.henderson@linaro.org
"RX architecture support"
Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>

Change Summary

Incremental Difference

--- a/tests/acceptance/boot_linux_console.py
+++ b/tests/acceptance/boot_linux_console.py
@@ -686,3 +686,49 @@ class BootLinuxConsole(Test):
686686 tar_hash = '49e88d9933742f0164b60839886c9739cb7a0d34'
687687 self.vm.add_args('-cpu', 'dc233c')
688688 self.do_test_advcal_2018('02', tar_hash, 'santas-sleigh-ride.elf')
689+
690+ def test_rx_uboot(self):
691+ """
692+ :avocado: tags=arch:rx
693+ :avocado: tags=machine:rx-virt
694+ :avocado: tags=endian:little
695+ """
696+ uboot_url = ('https://acc.dl.osdn.jp/users/23/23888/u-boot.bin.gz')
697+ uboot_hash = '9b78dbd43b40b2526848c0b1ce9de02c24f4dcdb'
698+ uboot_path = self.fetch_asset(uboot_url, asset_hash=uboot_hash)
699+ uboot_path = archive.uncompress(uboot_path, self.workdir)
700+
701+ self.vm.set_machine('rx-virt')
702+ self.vm.set_console()
703+ self.vm.add_args('-bios', uboot_path,
704+ '-no-reboot')
705+ self.vm.launch()
706+ uboot_version = 'U-Boot 2016.05-rc3-23705-ga1ef3c71cb-dirty'
707+ self.wait_for_console_pattern(uboot_version)
708+ gcc_version = 'rx-unknown-linux-gcc (GCC) 9.0.0 20181105 (experimental)'
709+ # FIXME limit baudrate on chardev, else we type too fast
710+ #self.exec_command_and_wait_for_pattern('version', gcc_version)
711+
712+ def test_rx_linux(self):
713+ """
714+ :avocado: tags=arch:rx
715+ :avocado: tags=machine:rx-virt
716+ :avocado: tags=endian:little
717+ """
718+ dtb_url = ('https://acc.dl.osdn.jp/users/23/23887/rx-qemu.dtb')
719+ dtb_hash = '7b4e4e2c71905da44e86ce47adee2210b026ac18'
720+ dtb_path = self.fetch_asset(dtb_url, asset_hash=dtb_hash)
721+ kernel_url = ('http://acc.dl.osdn.jp/users/23/23845/zImage')
722+ kernel_hash = '39a81067f8d72faad90866ddfefa19165d68fc99'
723+ kernel_path = self.fetch_asset(kernel_url, asset_hash=kernel_hash)
724+
725+ self.vm.set_machine('rx-virt')
726+ self.vm.set_console()
727+ kernel_command_line = self.KERNEL_COMMON_COMMAND_LINE + 'earlycon'
728+ self.vm.add_args('-kernel', kernel_path,
729+ '-dtb', dtb_path,
730+ '-no-reboot')
731+ self.vm.launch()
732+ self.wait_for_console_pattern('Sash command shell (version 1.1.1)')
733+ self.exec_command_and_wait_for_pattern('printenv',
734+ 'TERM=linux')