[U-Boot] ARMv7 / RK3288 Hypervisor Support
Marc Zyngier
marc.zyngier at arm.com
Sun May 1 11:30:04 CEST 2016
Hi Tim,
[just spotted this by pure luck...]
> I recently ported U-Boot over to the RK3288-based Veyron Speedy 4GB
> Chromebook in an attempt to gain KVM (hypervisor) support [1].
> However,
> in addition to the GIC being completely masked off in non-secure mode
> by
> the AXI bus, the machine hangs immediately upon exiting the NS/HYP
> switch monitor mode call in arch/arm/cpu/armv7/nonsec_virt.S.
What exactly do you mean by "masked off"? As in non-accessible,
generates an abort? Where exactly have you traced that hang? What are
the other CPUs doing when you do this? In short: a lot more details,
please.
> I notice that the hypervisor setup code was revised back in 2014 to
> support platforms with secure RAM, effectively replacing the early
> hvc 0
> call with a late smc 0-based setup routine. Has the current
> hypervisor
> implementation been tested on the original Versatile Express TC-2
> board
> since the setup code modification?
I did when I wrote that code. And still run my TC2 occasionally, though
I haven't updated u-boot on this system since then (if not broken...).
This code has been known to enable both KVM and Xen on a variety of
VE-capable HW, so it is not completely broken (it may still have the odd
bug though).
> Is anyone else working on RK3288 hypervisor support? The datasheet
> claims virtualization extensions are supported, but right now that
> seems
> quite dubious unless 1.) the GIC can be un-masked in normal mode and
> 2.)
> the hang on HYP mode switch can be traced to an implementation fault
> in
> u-boot.
Cortex-A12/A17 definitely has virtualization extensions (I ran KVM on a
A12 FPGA a couple of years ago, without any issue). I'll try to have a
look at your patches. Do you have an accessible git tree somewhere?
Thanks,
M.
--
Fast, cheap, reliable. Pick two.
More information about the U-Boot
mailing list