]> git.proxmox.com Git - mirror_edk2.git/blame - BaseTools/Source/C/Include/IndustryStandard/EfiPci.h
Sync EDKII BaseTools to BaseTools project r1971
[mirror_edk2.git] / BaseTools / Source / C / Include / IndustryStandard / EfiPci.h
CommitLineData
30fdf114
LG
1/** @file\r
2 Support for EFI PCI specification.\r
3\r
40d841f6 4 Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.<BR>\r
30fdf114
LG
5\r
6 This program and the accompanying materials are licensed and made available\r
7 under the terms and conditions of the BSD License which accompanies this\r
8 distribution. The full text of the license may be found at:\r
9 http://opensource.org/licenses/bsd-license.php\r
10\r
11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
12 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
13\r
14 File Name: EfiPci.h\r
15\r
16**/\r
17\r
18#ifndef _EFI_PCI_H_\r
19#define _EFI_PCI_H_\r
20\r
21//#include "pci22.h"\r
22//#include "pci23.h"\r
23//#include "pci30.h"\r
24\r
25#pragma pack(push, 1)\r
26\r
27typedef struct {\r
28 UINT8 Register;\r
29 UINT8 Function;\r
30 UINT8 Device;\r
31 UINT8 Bus;\r
32 UINT8 Reserved[4];\r
33} DEFIO_PCI_ADDR;\r
34\r
35#define EFI_ROOT_BRIDGE_LIST 'eprb'\r
36#define EFI_PCI_EXPANSION_ROM_HEADER_EFISIGNATURE 0x0EF1\r
37\r
38typedef struct {\r
39 UINT16 Signature; // 0xaa55\r
40 UINT16 InitializationSize;\r
41 UINT32 EfiSignature; // 0x0EF1\r
42 UINT16 EfiSubsystem;\r
43 UINT16 EfiMachineType;\r
44 UINT16 CompressionType;\r
45 UINT8 Reserved[8];\r
46 UINT16 EfiImageHeaderOffset;\r
47 UINT16 PcirOffset;\r
48} EFI_PCI_EXPANSION_ROM_HEADER;\r
49\r
50typedef union {\r
51 UINT8 *Raw;\r
52 PCI_EXPANSION_ROM_HEADER *Generic;\r
53 EFI_PCI_EXPANSION_ROM_HEADER *Efi;\r
54 EFI_LEGACY_EXPANSION_ROM_HEADER *PcAt;\r
55} EFI_PCI_ROM_HEADER;\r
56\r
57#pragma pack(pop)\r
58\r
59#endif\r