ARMv8: Use U-Boot to boot Xen?
Hi,
are there any U-Boot examples/patches to boot Xen on an ARMv8/aarch64 system?
I've found
http://lists.denx.de/pipermail/u-boot/2015-October/230077.html
what might be helpful.
But maybe I missed anything else?
Many thanks
Dirk
Hi Dirk,
Quoted 5 lines · Dirk Behme
Hi,
are there any U-Boot examples/patches to boot Xen on an ARMv8/aarch64 system?
Quoted 7 lines
I've found
http://lists.denx.de/pipermail/u-boot/2015-October/230077.html
what might be helpful.
But maybe I missed anything else?
I'm aware of these:
http://lists.denx.de/pipermail/u-boot/2015-April/211789.html
http://events.linuxfoundation.org/sites/events/files/slides/U-Boot%20FIT%20for%20Xen.pdf
Quoted 8 lines
Many thanks
Dirk
_______________________________________________
U-Boot mailing list
U-Boot at lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot
Regards,
Simon
Hi Dirk,
Cc Ian xen experts.
Quoted 11 lines · Dirk Behme
Hi,
are there any U-Boot examples/patches to boot Xen on an ARMv8/aarch64 system?
I've found
http://lists.denx.de/pipermail/u-boot/2015-October/230077.html
what might be helpful.
But maybe I missed anything else?
I guess you are asking steps how to boot xen using uboot?
You may need to take this:
http://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions
Regards,
Peng.
Quoted 8 lines
Many thanks
Dirk
_______________________________________________
U-Boot mailing list
U-Boot at lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot
Quoted 14 lines · Peng Fan
Hi Dirk,
Cc Ian xen experts.
Quoted 9 lines · Dirk Behme
Hi,
are there any U-Boot examples/patches to boot Xen on an ARMv8/aarch64 system?
I've found
http://lists.denx.de/pipermail/u-boot/2015-October/230077.html
Quoted 8 lines
Quoted 3 lines
what might be helpful.
But maybe I missed anything else?
I guess you are asking steps how to boot xen using uboot?
You may need to take this:
http://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions
Indeed.
In addition one AArch64 system which uses u-boot and which has concrete instructions is the APM X-Gene/Mustang:
http://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions/APMXGeneMustang
which would likely be helpful. There are other ARMv7 systems linked from the main page which would have other examples, but for 32-bit.
Ian.
Quoted 24 lines · Ian Campbell
Quoted 14 lines · Peng Fan
Hi Dirk,
Cc Ian xen experts.
Quoted 9 lines · Dirk Behme
Hi,
are there any U-Boot examples/patches to boot Xen on an ARMv8/aarch64 system?
I've found
http://lists.denx.de/pipermail/u-boot/2015-October/230077.html
Quoted 8 lines
Quoted 3 lines
what might be helpful.
But maybe I missed anything else?
I guess you are asking steps how to boot xen using uboot?
You may need to take this:
http://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions
Quoted 6 lines
Indeed.
In addition one AArch64 system which uses u-boot and which has concrete instructions is the APM X-Gene/Mustang:
http://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions/APMXGeneMustang
which would likely be helpful.
Yes, that page is very helpful, thanks!
But I think it misses one information, or most probably the configuration on that board is different. Above page just do a 'run xen_run' which in the end does the necessary tftp loading and finally the bootm to start Xen.
So I'd assume that on that board U-Boot runs at EL3 or EL2 (?).
In my environment, U-Boot runs at EL1. I.e. after loading Xen by tftp I somehow need to switch to EL2 to be able to start Xen.
And this is what I think I miss. How to switch from U-Boot running at EL1 to hypervisor mode EL2? Therefore I'd think that
http://lists.denx.de/pipermail/u-boot/2015-October/230077.html
might be helpful.
Best regards
Dirk
Quoted 42 lines · Dirk Behme
Quoted 25 lines · Ian Campbell
Quoted 15 lines · Peng Fan
Hi Dirk,
Cc Ian xen experts.
Quoted 10 lines · Dirk Behme
Hi,
are there any U-Boot examples/patches to boot Xen on an ARMv8/aarch64
system?I've found
http://lists.denx.de/pipermail/u-boot/2015-October/230077.html
Quoted 8 lines
Quoted 3 lines
what might be helpful.
But maybe I missed anything else?
I guess you are asking steps how to boot xen using uboot?
You may need to take this:
http://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_ExtensionsQuoted 7 lines
Indeed.
In addition one AArch64 system which uses u-boot and which has concrete instructions is the APM X-Gene/Mustang:
?????http://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions/AP MXGeneMustang
which would likely be helpful.Yes, that page is very helpful, thanks!
But I think it misses one information, or most probably the configuration on that board is different. Above page just do a 'run
xen_run' which in the end does the necessary tftp loading and finally the bootm to start Xen.
Quoted 4 lines
So I'd assume that on that board U-Boot runs at EL3 or EL2 (?).
In my environment, U-Boot runs at EL1. I.e. after loading Xen by tftp I somehow need to switch to EL2 to be able to start Xen.
Once you are in EL1 you cannot get back to EL2 (or EL3) without support from a lower level firmware running in those exception levels. If you have no such underlying firmware then you should arrange for u-boot to run at EL3.
Quoted 5 lines
And this is what I think I miss. How to switch from U-Boot running at EL1 to hypervisor mode EL2? Therefore I'd think that
http://lists.denx.de/pipermail/u-boot/2015-October/230077.html
You need to arrange for U-boot to run in EL3 and enter the "kernel" (Xen in this case) in NS EL2. This likely means implementing the PSCI interface for the kernel to use to manage CPUs.
If you were running on a 32-bit system I would direct you towards the CONFIG_ARMV7_PSCI, CONFIG_ARMV7_NONSEC and ARMV7_VIRT u-boot options (which in turn would require your platform code to provide some support). I'm not sure what the equivalent for 64-bit is, sorry.
The link you post is, AFAICT, about the other end i.e. allowing u-boot to talk to an existing secure world firmware beneath it.
Ian.