]> git.proxmox.com Git - mirror_edk2.git/blame_incremental - MdePkg/Include/IndustryStandard/MemoryMappedConfigurationSpaceAccessTable.h
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / MdePkg / Include / IndustryStandard / MemoryMappedConfigurationSpaceAccessTable.h
... / ...
CommitLineData
1/** @file\r
2 ACPI memory mapped configuration space access table definition, defined at\r
3 in the PCI Firmware Specification, version 3.0.\r
4 Specification is available at http://www.pcisig.com.\r
5\r
6 Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>\r
7 SPDX-License-Identifier: BSD-2-Clause-Patent\r
8**/\r
9\r
10#ifndef _MEMORY_MAPPED_CONFIGURATION_SPACE_ACCESS_TABLE_H_\r
11#define _MEMORY_MAPPED_CONFIGURATION_SPACE_ACCESS_TABLE_H_\r
12\r
13#include <IndustryStandard/Acpi.h>\r
14\r
15//\r
16// Ensure proper structure formats\r
17//\r
18#pragma pack(1)\r
19\r
20///\r
21/// Memory Mapped Configuration Space Access Table (MCFG)\r
22/// This table is a basic description table header followed by\r
23/// a number of base address allocation structures.\r
24///\r
25typedef struct {\r
26 UINT64 BaseAddress;\r
27 UINT16 PciSegmentGroupNumber;\r
28 UINT8 StartBusNumber;\r
29 UINT8 EndBusNumber;\r
30 UINT32 Reserved;\r
31} EFI_ACPI_MEMORY_MAPPED_ENHANCED_CONFIGURATION_SPACE_BASE_ADDRESS_ALLOCATION_STRUCTURE;\r
32\r
33///\r
34/// MCFG Table header definition. The rest of the table\r
35/// must be defined in a platform specific manner.\r
36///\r
37typedef struct {\r
38 EFI_ACPI_DESCRIPTION_HEADER Header;\r
39 UINT64 Reserved;\r
40} EFI_ACPI_MEMORY_MAPPED_CONFIGURATION_BASE_ADDRESS_TABLE_HEADER;\r
41\r
42///\r
43/// MCFG Revision (defined in spec)\r
44///\r
45#define EFI_ACPI_MEMORY_MAPPED_CONFIGURATION_SPACE_ACCESS_TABLE_REVISION 0x01\r
46\r
47#pragma pack()\r
48\r
49#endif\r