Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
Browse the repository at this point in the history
Merge tag 'pull-loongarch-20230515' of https://gitlab.com/gaosong/qemu …
…into staging pull-loongarch-20230515 # -----BEGIN PGP SIGNATURE----- # # iLMEAAEIAB0WIQS4/x2g0v3LLaCcbCxAov/yOSY+3wUCZGIThgAKCRBAov/yOSY+ # 34NVA/0b99XxYeeOnJYspjKGgVk+R51+1ilMHqPGlNEG6HB2eHyIJdDgenBDaa/h # lxqzDU9YQI4DzuvUcC75uWrShMkR5/Fb8Z0CCEToQUyAwfh2pNeAIzuB7TXHW5Ox # SRGMs3eF23q5BUSCeD7DS2Ar1Zv4Gm3ytutiMAvCxNzxJWF1aA== # =g93p # -----END PGP SIGNATURE----- # gpg: Signature made Mon 15 May 2023 04:12:06 AM PDT # gpg: using RSA key B8FF1DA0D2FDCB2DA09C6C2C40A2FFF239263EDF # gpg: Good signature from "Song Gao <m17746591750@163.com>" [unknown] # gpg: WARNING: This key is not certified with a trusted signature! # gpg: There is no indication that the signature belongs to the owner. # Primary key fingerprint: B8FF 1DA0 D2FD CB2D A09C 6C2C 40A2 FFF2 3926 3EDF * tag 'pull-loongarch-20230515' of https://gitlab.com/gaosong/qemu: hw/intc: Add NULL pointer check on LoongArch ipi device hw/loongarch/virt: Set max 256 cpus support on loongarch virt machine hw/loongarch/virt: Modify ipi as percpu device tests/avocado: Add LoongArch machine start test loongarch: mark loongarch_ipi_iocsr re-entrnacy safe Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
- Loading branch information
Showing
9 changed files
with
136 additions
and
62 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,58 @@ | ||
| # SPDX-License-Identifier: GPL-2.0-or-later | ||
| # | ||
| # LoongArch virt test. | ||
| # | ||
| # Copyright (c) 2023 Loongson Technology Corporation Limited | ||
| # | ||
|
|
||
| from avocado_qemu import QemuSystemTest | ||
| from avocado_qemu import exec_command_and_wait_for_pattern | ||
| from avocado_qemu import wait_for_console_pattern | ||
|
|
||
| class LoongArchMachine(QemuSystemTest): | ||
| KERNEL_COMMON_COMMAND_LINE = 'printk.time=0 ' | ||
|
|
||
| timeout = 120 | ||
|
|
||
| def wait_for_console_pattern(self, success_message, vm=None): | ||
| wait_for_console_pattern(self, success_message, | ||
| failure_message='Kernel panic - not syncing', | ||
| vm=vm) | ||
|
|
||
| def test_loongarch64_devices(self): | ||
|
|
||
| """ | ||
| :avocado: tags=arch:loongarch64 | ||
| :avocado: tags=machine:virt | ||
| """ | ||
|
|
||
| kernel_url = ('https://github.com/yangxiaojuan-loongson/qemu-binary/' | ||
| 'releases/download/binary-files/vmlinuz.efi') | ||
| kernel_hash = '951b485b16e3788b6db03a3e1793c067009e31a2' | ||
| kernel_path = self.fetch_asset(kernel_url, asset_hash=kernel_hash) | ||
|
|
||
| initrd_url = ('https://github.com/yangxiaojuan-loongson/qemu-binary/' | ||
| 'releases/download/binary-files/ramdisk') | ||
| initrd_hash = 'c67658d9b2a447ce7db2f73ba3d373c9b2b90ab2' | ||
| initrd_path = self.fetch_asset(initrd_url, asset_hash=initrd_hash) | ||
|
|
||
| bios_url = ('https://github.com/yangxiaojuan-loongson/qemu-binary/' | ||
| 'releases/download/binary-files/QEMU_EFI.fd') | ||
| bios_hash = ('dfc1bfba4853cd763b9d392d0031827e8addbca8') | ||
| bios_path = self.fetch_asset(bios_url, asset_hash=bios_hash) | ||
|
|
||
| self.vm.set_console() | ||
| kernel_command_line = (self.KERNEL_COMMON_COMMAND_LINE + | ||
| 'root=/dev/ram rdinit=/sbin/init console=ttyS0,115200') | ||
| self.vm.add_args('-nographic', | ||
| '-smp', '4', | ||
| '-m', '1024', | ||
| '-cpu', 'la464', | ||
| '-kernel', kernel_path, | ||
| '-initrd', initrd_path, | ||
| '-bios', bios_path, | ||
| '-append', kernel_command_line) | ||
| self.vm.launch() | ||
| self.wait_for_console_pattern('Run /sbin/init as init process') | ||
| exec_command_and_wait_for_pattern(self, 'cat /proc/cpuinfo', | ||
| 'processor : 3') |