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(-) -- 2.25.1