]> git.proxmox.com Git - mirror_edk2.git/blob - BaseTools/Source/C/Include/IndustryStandard/EfiPci.h
BaseTools: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / BaseTools / Source / C / Include / IndustryStandard / EfiPci.h
1 /** @file
2 Support for EFI PCI specification.
3
4 Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
5
6 SPDX-License-Identifier: BSD-2-Clause-Patent
7
8 **/
9
10 #ifndef _EFI_PCI_H_
11 #define _EFI_PCI_H_
12
13 //#include "pci22.h"
14 //#include "pci23.h"
15 //#include "pci30.h"
16
17 #pragma pack(push, 1)
18
19 typedef struct {
20 UINT8 Register;
21 UINT8 Function;
22 UINT8 Device;
23 UINT8 Bus;
24 UINT8 Reserved[4];
25 } DEFIO_PCI_ADDR;
26
27 #define EFI_ROOT_BRIDGE_LIST 'eprb'
28 #define EFI_PCI_EXPANSION_ROM_HEADER_EFISIGNATURE 0x0EF1
29
30 typedef struct {
31 UINT16 Signature; // 0xaa55
32 UINT16 InitializationSize;
33 UINT32 EfiSignature; // 0x0EF1
34 UINT16 EfiSubsystem;
35 UINT16 EfiMachineType;
36 UINT16 CompressionType;
37 UINT8 Reserved[8];
38 UINT16 EfiImageHeaderOffset;
39 UINT16 PcirOffset;
40 } EFI_PCI_EXPANSION_ROM_HEADER;
41
42 typedef union {
43 UINT8 *Raw;
44 PCI_EXPANSION_ROM_HEADER *Generic;
45 EFI_PCI_EXPANSION_ROM_HEADER *Efi;
46 EFI_LEGACY_EXPANSION_ROM_HEADER *PcAt;
47 } EFI_PCI_ROM_HEADER;
48
49 #pragma pack(pop)
50
51 #endif