On Sun, May 8, 2011 at 7:00 AM, Christoffer Dall <cdall at cs.columbia.edu> wrote: > Hi Catalin. > > This patch contains the KVM code including the simple version of the > initialization API that we discussed. I missed the discussion, so I'm not really sure what the context is, but just a quick question: > +/* > + * Change the current processor mode to Hyp mode. > + * You should never return to user space or enable interrupts before calling > + * kvm_arm_hyp_return. > + */ > +static inline void kvm_arm_hyp_mode(void) > +{ > + ? ? ? __asm__ ( > + ? ? ? ? ? ? ? "push ? {lr}\n\t" > + ? ? ? ? ? ? ? "hvc ? ?#0\n\t" > + ? ? ? ? ? ? ? "pop ? ?{lr}\n\t"); > +} > + > +/* > + * Return from Hyp mode to Svc mode. > + */ > +static inline void kvm_arm_hyp_return(void) > +{ > + ? ? ? __asm__ ( > + ? ? ? ? ? ? ? "push ? {lr}\n\t" > + ? ? ? ? ? ? ? "hvc ? ?#0\n\t" > + ? ? ? ? ? ? ? "pop ? ?{lr}\n\t"); > +} Are these hypercalls that return in a new processor privilege level? (Also, I don't see them being used anywhere.) Is the A15 ISA documentation available anywhere yet? -Hollis