
Hello, u-boot developers! I am attaching a patch to enable the HYP (hypervisor) mode on the OMAP5 CPU. It is based on a previous patch by Ian Molton. For some reason, Ian's patch was incorrect (loading PC with the wrong address, missing memory barriers, and, most importantly, using the wrong SMC call). I think it is because Ian was using some early omap5 prototype, and I was using the SVT OMAP5432UEVM board which is commercially available.
Since this is a gross hack, I neither expect nor want it to be merged, but I think people experimenting with ARM virtualization will find it useful.
I have KVM working on OMAP5 as of now (using KVM patches from openvirtualization and some linux kernel bugfixes of my own) and I plan to write a blog post soon about how to repeat my steps. My plan is to publish the patches to fix the bugs I've found.
I would like to receive comments on what is the planned way to implement the HYP switching in u-boot and whether it is possible without using the TrustZone SMC calls.
Have fun