]> git.proxmox.com Git - mirror_edk2.git/blob - Vlv2TbltDevicePkg/Include/McfgTable.h
Upload BSD-licensed Vlv2TbltDevicePkg and Vlv2DeviceRefCodePkg to
[mirror_edk2.git] / Vlv2TbltDevicePkg / Include / McfgTable.h
1 /*++
2
3 Copyright (c) 2004 - 2014, Intel Corporation. All rights reserved.<BR>
4
5 This program and the accompanying materials are licensed and made available under
6 the terms and conditions of the BSD License that accompanies this distribution.
7 The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php.
9
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12
13
14 Module Name:
15
16 McfgTable.h
17
18 Abstract:
19
20 ACPI Memory mapped configuration space base address Description Table
21 definition, based on PCI Firmware Specification Revision 3.0 final draft,
22 downloadable at http://www.pcisig.com/home
23
24 **/
25
26 #ifndef _MCFG_TABLE_H_
27 #define _MCFG_TABLE_H_
28
29 //
30 // Include files
31 //
32 #include <PiDxe.h>
33
34 //
35 // Ensure proper structure formats
36 //
37 #pragma pack(1)
38
39 //
40 // MCFG Revision (defined in spec)
41 //
42 #define EFI_ACPI_MEMORY_MAPPED_CONFIGURATION_BASE_ADDRESS_TABLE_REVISION 0x01
43
44 //
45 // MCFG Structure Definitions
46 //
47 //
48 // Memory Mapped Enhanced Configuration Base Address Allocation
49 // Structure Definition
50 //
51 typedef struct {
52 UINT64 BaseAddress;
53 UINT16 PciSegmentGroupNumber;
54 UINT8 StartBusNumber;
55 UINT8 EndBusNumber;
56 UINT32 Reserved;
57 } EFI_ACPI_MEMORY_MAPPED_ENHANCED_CONFIGURATION_BASE_ADDRESS_STRUCTURE;
58
59 //
60 // MCFG Table header definition. The rest of the table
61 // must be defined in a platform specific manner.
62 //
63 typedef struct {
64 EFI_ACPI_DESCRIPTION_HEADER Header;
65 UINT64 Reserved;
66 } EFI_ACPI_MEMORY_MAPPED_CONFIGURATION_BASE_ADDRESS_TABLE_HEADER;
67
68 #pragma pack()
69
70 #endif // _MCFG_TABLE_H