
I sent a new version of the patch series with a couple of fixes and
instructions for testing with QEMU.
On Tue, Nov 23, 2021 at 10:24 AM Tom Rini trini@konsulko.com wrote:
On Sun, Oct 24, 2021 at 07:58:03PM -0400, Jim Posen wrote:
Currently, when U-Boot is running in hypervisor mode on ARMv7-A CPUs with virtualization extensions, the exception handling does not work. A couple things need to change which are detailed in my earlier message to the u-boot mailing list with the subject "Exception handling in HYP mode on ARMv7-A".
I have verified that this patch series works on the ODroid XU4 and the Raspberry Pi 3B in Aarch32 mode when running in hypervisor mode. One simple way to verify is by running the miscellaneous "exception" command (CMD_EXCEPTION).
Jim Posen (5): Compile for ARMv7-A with virtualization extensions Hypervisor mode interrupt vector table Set HVBAR register correctly Remove dead code Fix PC adjustment logic in exception handlers
arch/arm/Makefile | 4 + arch/arm/cpu/armv7/start.S | 5 ++ arch/arm/include/asm/u-boot-arm.h | 14 ++-- arch/arm/lib/interrupts.c | 26 +++--- arch/arm/lib/relocate.S | 8 ++ arch/arm/lib/vectors.S | 129 +++++++++++++++++++++++------- arch/arm/mach-bcm283x/Kconfig | 3 + arch/arm/mach-exynos/Kconfig | 1 + 8 files changed, 139 insertions(+), 51 deletions(-)
This all seems fine, but I don't know enough about the specifics here to comment on the implementation. Is there any we we could also test this via QEMU for example?
-- Tom