Hi Drew,
On 21/03/2023 18:41, Andrew Jones wrote:
On Mon, Feb 13, 2023 at 10:17:59AM +0000, Nikos Nikoleris wrote:
This change adds a efi/run script inspired by the one in x86. This
script will setup a folder with the test compiled as an EFI app and a
startup.nsh script. The script launches QEMU providing an image with
EDKII and the path to the folder with the test which is executed
automatically.
For example:
$> ./arm/efi/run ./arm/selftest.efi setup smp=2 mem=256
This should be
./arm/efi/run ./arm/selftest.efi -append "setup smp=2 mem=256" -smp 2 -m 256
Indeed, I will update the commit message.
but I can't get any tests to run through ./arm/efi/run. All of them
immediately die with a DABT_EL1. I can get the tests to run (and pass) by
manually booting into UEFI with the FAT partition pointing at the parent
directory
I suppose the DABT_EL1 is happening after the test has started and not
while the UEFI interactive shell starts?
$QEMU -nodefaults -machine virt -accel tcg -cpu cortex-a57 \
-device pci-testdev -display none -serial stdio \
-bios /usr/share/edk2/aarch64/QEMU_EFI.silent.fd \
-drive file.dir=efi-tests/,file.driver=vvfat,file.rw=on,format=raw,if=virtio
Do you hit the DABT_EL1 if you let it automatically start using the
startup.nsh prepared by the ./arm/efi/run script? Meaning change the
above command if you provided -drive file.dir=efi-tests/timer instead:
$QEMU -nodefaults -machine virt -accel tcg -cpu cortex-a57 \
-device pci-testdev -display none -serial stdio \
-bios /usr/share/edk2/aarch64/QEMU_EFI.silent.fd \
-drive file.dir=efi
tests/timer,file.driver=vvfat,file.rw=on,format=raw,if=virtio
Thanks for reviewing this!
Nikos
and then, for example for the timer test, doing
fs0:
cd timer
timer.efi
but the script never works.
Thanks,
drew