From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: Re: [PATCH RFC v2 3/7] OvmfPkg: define EFI_XEN_OVMF_INFO and extend XenInfo Date: Tue, 19 Nov 2013 16:10:47 -0500 Message-ID: <20131119211047.GA8364@phenom.dumpdata.com> References: <1384893529-3175-1-git-send-email-wei.liu2@citrix.com> <1384893529-3175-4-git-send-email-wei.liu2@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Content-Disposition: inline In-Reply-To: <1384893529-3175-4-git-send-email-wei.liu2@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Wei Liu Cc: edk2-devel@lists.sourceforge.net, xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org On Tue, Nov 19, 2013 at 08:38:45PM +0000, Wei Liu wrote: > EFI_XEN_OVMF_INFO is defined to accept configurations from hvmloader. It > must match the definition on Xen side. > > XenInfo is extended to include those bits as well. Currently only E820 > map is in use. > > Signed-off-by: Wei Liu > --- > OvmfPkg/Include/Guid/XenInfo.h | 27 +++++++++++++++++++++++++++ > 1 file changed, 27 insertions(+) > > diff --git a/OvmfPkg/Include/Guid/XenInfo.h b/OvmfPkg/Include/Guid/XenInfo.h > index d512b0b..eaeab1a 100644 > --- a/OvmfPkg/Include/Guid/XenInfo.h > +++ b/OvmfPkg/Include/Guid/XenInfo.h > @@ -18,6 +18,28 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. > #define EFI_XEN_INFO_GUID \ > { 0xd3b46f3b, 0xd441, 0x1244, {0x9a, 0x12, 0x0, 0x12, 0x27, 0x3f, 0xc1, 0x4d } } > > +#pragma pack(1) > +typedef struct { > + CHAR8 Signature[11]; /* XenHVMOVMF\0 */ > + CHAR8 Padding[3]; Why the padding? > + UINT8 Length; /* Length of this struct */ > + UINT8 Checksum; /* Set such that the sum over bytes 0..length == 0 */ > + /* > + * Physical address of an array of tables_nr elements. > + * > + * Each element is a 32 bit value contianing the physical address ^^^^^^^^^^ > + * of a BIOS table. > + */ > + UINT32 Tables; > + UINT32 TablesNr; > + /* > + * Physical address of the e820 table, contains e820_nr entries. > + */ > + UINT32 E820; > + UINT32 E820Nr; > +} EFI_XEN_OVMF_INFO; > +#pragma pack() > + > typedef struct { > /// > /// Beginning of the hypercall page. > @@ -35,6 +57,11 @@ typedef struct { > /// Hypervisor minor version. > /// > UINT16 VersionMinor; > + /// > + /// E820 map > + /// > + VOID *E820; > + UINT16 E820EntryCount; > } EFI_XEN_INFO; > > extern EFI_GUID gEfiXenInfoGuid; > -- > 1.7.10.4 > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xen.org > http://lists.xen.org/xen-devel