Message ID | 20211124194001.443232-1-jim.posen@gmail.com |
---|---|
Headers | show |
Series | Exception handling in HYP mode on ARMv7-A | expand |
On Wed, Nov 24, 2021 at 02:39:55PM -0500, 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). > > This can be tested with QEMU now. Configure with qemu_arm_defconfig > and add CMD_EXCEPTION and QEMU_ARM_32BIT_HAS_VIRT. Then run > > qemu-system-arm \ > -machine virt,virtualization \ > -nographic -serial mon:stdio \ > -bios u-boot.bin > > U-Boot 2021.10-... > ... > => exception undefined > > Changes in v2: > - Fix CP15 register written to in start.S > - Check processor mode as HVBAR register is only accessible in HYP > mode > - Add QEMU config option for ARM32 with virtualization extensions > > Jim Posen (6): > 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 > Config to target QEMU virt machine with virtualization Hey, sorry for the delay. Can you please rebase this to current master? It no longer builds on say am335x_evm, thanks!