[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 0/3] virt: wire up NS EL2 virtual timer IRQ
From: |
Ard Biesheuvel |
Subject: |
Re: [PATCH v2 0/3] virt: wire up NS EL2 virtual timer IRQ |
Date: |
Wed, 14 Feb 2024 09:55:35 +0100 |
On Mon, 22 Jan 2024 at 15:35, Peter Maydell <peter.maydell@linaro.org> wrote:
>
> This patchset wires up the NS EL2 virtual timer IRQ on the virt
> board, similarly to what commit 058262e0a8b2 did for the sbsa-ref board.
>
> Version 1 was an RFC patchset, originally sent back in autumn:
> https://patchew.org/QEMU/20230919101240.2569334-1-peter.maydell@linaro.org/
> The main reason for it being an RFC is that the change, while correct,
> triggers a bug in EDK2 guest firmware that makes EDK2 assert on bootup.
> Since the RFC, we've upgraded our in-tree version of the EDK2 binaries
> to a version that has the fix for that bug, so I think the QEMU side of
> these patches is ready to go in now.
>
> To accommodate users who might still be using older EDK2 binaries,
> we only expose the IRQ in the DTB and ACPI tables for virt-9.0 and
> later machine types.
>
> If you see in the guest:
> ASSERT [ArmTimerDxe]
> /home/kraxel/projects/qemu/roms/edk2/ArmVirtPkg/Library/ArmVirtTimerFdtClientLib/ArmVirtTimerFdtClientLib.c(72):
> PropSize == 36 || PropSize == 48
>
> then your options are:
> * update your EDK2 binaries to edk2-stable202311 or newer
> * use the 'virt-8.2' versioned machine type
> * not use 'virtualization=on'
>
> I'll put something about this into the release notes when this
> goes into git. (There are other reasons why you probably want a
> newer EDK2 for AArch64 guests, so this is worth flagging up to our
> downstream distros who don't take our pre-built firmware binaries.)
>
> changes v1->v2:
> * the change in DTB and ACPI tables is now tied to the machine version
> * handle change of the ARCH_TIMER_*_IRQ values from PPI numbers to INTIDs
> * bump the FADT header to indicate ACPI v6.3, since we might be using
> a 6.3 feature in the GTDT
> * the avocado tests now all pass, because we have updated our copy
> of EDK2 in pc-bios/ to a version which has the fix for the bug
> which would otherwise cause it to assert on bootup
> * patch 2 commit message improved to give details of the EDK2 assert and
> state the options for dealing with it (this will also go into the
> QEMU release notes)
>
> thanks
> -- PMM
>
> Peter Maydell (3):
> tests/qtest/bios-tables-test: Allow changes to virt GTDT
> hw/arm/virt: Wire up non-secure EL2 virtual timer IRQ
> tests/qtest/bios-tables-tests: Update virt golden reference
>
Reviewed-by: Ard Biesheuvel <ardb@kernel.org>