On 06.02.2022 20:28, Julien Grall wrote: > From: Julien Grall <jgr...@amazon.com> > > When using EFI, the VGA information is fetched using the EFI > boot services. However, Xen will have exited the boot services. > Therefore, we need to find a different way to pass the information > to dom0. > > For PV dom0, they are part of the start_info. But this is not > something that exists on Arm. So the best way would to be to > use a hypercall. > > For now the structure layout is based on dom0_vga_console_info > for convenience. I am open on another proposal. > > Signed-off-by: Julien Grall <jgr...@amazon.com>
Cc-ing Roger as this may want using for PVH Dom0 also on x86; my first attempt to propagate this information was rejected. > --- a/xen/include/public/platform.h > +++ b/xen/include/public/platform.h > @@ -244,6 +244,7 @@ DEFINE_XEN_GUEST_HANDLE(xenpf_efi_runtime_call_t); > #define XEN_FW_EFI_PCI_ROM 5 > #define XEN_FW_EFI_APPLE_PROPERTIES 6 > #define XEN_FW_KBD_SHIFT_FLAGS 5 > +#define XEN_FW_VGA_INFO 6 Perhaps s/VGA/VIDEO/, despite ... > struct xenpf_firmware_info { > /* IN variables. */ > uint32_t type; > @@ -311,6 +312,7 @@ struct xenpf_firmware_info { > > /* Int16, Fn02: Get keyboard shift flags. */ > uint8_t kbd_shift_flags; /* XEN_FW_KBD_SHIFT_FLAGS */ > + struct dom0_vga_console_info vga; ... the structure name including "vga" (but if the #define is adjusted, the field name would want to become "video" as well). Jan