(self)
| 474 | return cpu |
| 475 | |
| 476 | def run(self) -> None: |
| 477 | machine = ['virt', 'gic-version=max'] |
| 478 | |
| 479 | if not self.use_kvm: |
| 480 | cpu_val = self._get_cpu_val() |
| 481 | self._qemu_args += ['-cpu', ','.join(cpu_val)] |
| 482 | |
| 483 | # Boot with VHE emulation, which allows the kernel to run at EL2. |
| 484 | # KVM does not emulate VHE, so this cannot be unconditional. |
| 485 | machine.append('virtualization=true') |
| 486 | |
| 487 | self._qemu_args += ['-machine', ','.join(machine)] |
| 488 | |
| 489 | if self.efi: |
| 490 | aavmf_locations = [ |
| 491 | Path('edk2/aarch64/QEMU_EFI.silent.fd'), # Fedora |
| 492 | Path('edk2/aarch64/QEMU_EFI.fd'), # Arch Linux (current) |
| 493 | Path('edk2-armvirt/aarch64/QEMU_EFI.fd'), # Arch Linux (old) |
| 494 | Path('qemu-efi-aarch64/QEMU_EFI.fd'), # Debian and Ubuntu |
| 495 | ] |
| 496 | self._setup_efi(aavmf_locations) |
| 497 | |
| 498 | super().run() |
| 499 | |
| 500 | |
| 501 | class ARM64BEQEMURunner(ARM64QEMURunner): |
nothing calls this directly
no test coverage detected