Vishal Bhoj | 82c8071 | 2015-12-15 21:13:33 +0530 | [diff] [blame^] | 1 | /** @file
|
| 2 | Ovmf info structure passed by Xen
|
| 3 |
|
| 4 | Copyright (c) 2013, Citrix Systems UK Ltd.<BR>
|
| 5 |
|
| 6 | This program and the accompanying materials are licensed and made available under
|
| 7 | the terms and conditions of the BSD License that accompanies this distribution.
|
| 8 | The full text of the license may be found at
|
| 9 | http://opensource.org/licenses/bsd-license.php.
|
| 10 |
|
| 11 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
| 12 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
| 13 |
|
| 14 | **/
|
| 15 |
|
| 16 | #ifndef __XEN_H__
|
| 17 | #define __XEN_H__
|
| 18 |
|
| 19 | #include <PiPei.h>
|
| 20 |
|
| 21 | // Physical address of OVMF info
|
| 22 | #define OVMF_INFO_PHYSICAL_ADDRESS 0x00001000
|
| 23 |
|
| 24 | // This structure must match the definition on Xen side
|
| 25 | #pragma pack(1)
|
| 26 | typedef struct {
|
| 27 | CHAR8 Signature[14]; // XenHVMOVMF\0
|
| 28 | UINT8 Length; // Length of this structure
|
| 29 | UINT8 Checksum; // Set such that the sum over bytes 0..length == 0
|
| 30 | //
|
| 31 | // Physical address of an array of TablesCount elements.
|
| 32 | //
|
| 33 | // Each element contains the physical address of a BIOS table.
|
| 34 | //
|
| 35 | EFI_PHYSICAL_ADDRESS Tables;
|
| 36 | UINT32 TablesCount;
|
| 37 | //
|
| 38 | // Physical address of the E820 table, contains E820EntriesCount entries.
|
| 39 | //
|
| 40 | EFI_PHYSICAL_ADDRESS E820;
|
| 41 | UINT32 E820EntriesCount;
|
| 42 | } EFI_XEN_OVMF_INFO;
|
| 43 | #pragma pack()
|
| 44 |
|
| 45 | #endif /* __XEN_H__ */
|