From: Fu Wei fu.wei@linaro.org
- This adds support for the Xen boot on ARM specification for arm64.
- Add and export some accessor functions of "loaded" flag and grub_linux_get_fdt function in include/grub/arm64/linux.h for xen boot.
- Introduce xen_hypervisor, xen_linux, xen_initrd and xen_xsm to load different binaries for xen boot. Introduce xen_module to load common or custom module for xen boot.
- This Xen boot support is a separated module for aarch64, but reuse the existing code of devicetree in linux module.
- Add the support of xen_hypervisor, xen_linux and xen_initrd in util/grub.d/20_linux_xen.in
- Add the introduction of all xen boot commands in docs/grub.texi
- The example of this support is <How to boot Xen with GRUB on AArch64 the Foundation FVP model> https://wiki.linaro.org/LEG/Engineering/Grub2/Xen_booting_on_Foundation_FVP_...
Changelog: v3: create separate module for xen boot: xen_boot create separate commands for different types of module delete order-dependent for commands of xen module simplify the code
v2: remove the patches which have been accepted. according to Vladimir's suggestion, change the command manes and relevant code: multiboot-->xen_hypervisor module-->xen_module improve the option parsing support for xen_hypervisor/xen_module commands. add a patch for adding xen_hypervisor/xen_module support in util/grub.d/20_linux_xen.in. update docs/grub.texi patch for the new command names.
v1: The first version upstream patchset to grub-devel mailing list
Fu Wei (4): arm64: Add and export some accessor functions for xen boot arm64: Add xen_boot module file * util/grub.d/20_linux_xen.in: Add support of the XEN boot on aarch64 arm64: Add the introduction of xen boot commands in docs/grub.texi
docs/grub.texi | 56 ++++ grub-core/Makefile.core.def | 7 + grub-core/loader/arm64/linux.c | 13 + grub-core/loader/arm64/xen_boot.c | 685 ++++++++++++++++++++++++++++++++++++++ include/grub/arm64/linux.h | 6 +- util/grub.d/20_linux_xen.in | 16 +- 6 files changed, 779 insertions(+), 4 deletions(-) create mode 100644 grub-core/loader/arm64/xen_boot.c