Re: [PATCH v2 12/16] ARM: Xen: Document UEFI support on Xen ARM virtual platforms

From: Shannon Zhao
Date: Tue Jan 19 2016 - 08:44:08 EST

On 2016/1/19 21:13, Mark Rutland wrote:
On Tue, Jan 19, 2016 at 12:23:17PM +0000, Stefano Stabellini wrote:
>On Tue, 19 Jan 2016, Mark Rutland wrote:
> >On Tue, Jan 19, 2016 at 06:25:25PM +0800, Shannon Zhao wrote:
> > > >>We don't do this in Documentation/arm/uefi.txt, and I don't see why we
> > > >>should do so here.
> > > >>
> > > >>Does Xen handle arbitrary size memory map descriptors? I'm not sure what
> > > >>new information might be passed in future additions to the descriptor
> > > >>format, and I'm not sure what should happen in the Dom0 case.
> > > >
> > > >Xen passes to Dom0 the memory map in the same format as the native
> > > >memory map.
> >
> >Does Xen parse or modify the EFI memory map in any way?
>- calls EFI_BOOT_SERVICES.GetMemoryMap()
>- takes note of the memory regions for its own usage
>- create the fdt notes, including efi-mmap-start, with a pointer to it
> >Does it pass the raw values returned by EFI_BOOT_SERVICES.GetMemoryMap()
> >through to the xen,uefi-* properties, or does is make any static
> >assumptions about what the values will be?
>It just passes the raw values.
I take it that means that any memory carved out for Xen itself is
described/discovered via a separate mechanism? How does that work

For Xen hypervisor booting on UEFI, it get the EFI memory map through the similar way like Linux, e.g. call EFI_BOOT_SERVICES.GetMemoryMap().
For Dom0, Xen will create a new EFI memory map for Dom0.

See [PATCH v3 52/62] arm/acpi: Prepare EFI memory descriptor for Dom0