1 /*++
2 
3 Copyright (c) 2004 - 2010, Intel Corporation. All rights reserved.<BR>
4 This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution.  The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
8 
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
11 
12 Module Name:
13 
14   PciOptionRomTable.h
15 
16 Abstract:
17 
18   GUID and data structure used to describe the list of PCI Option ROMs present in a system.
19 
20 --*/
21 
22 #ifndef _PCI_OPTION_ROM_TABLE_GUID_H_
23 #define _PCI_OPTION_ROM_TABLE_GUID_H_
24 
25 #define EFI_PCI_OPTION_ROM_TABLE_GUID \
26   { 0x7462660f, 0x1cbd, 0x48da, {0xad, 0x11, 0x91, 0x71, 0x79, 0x13, 0x83, 0x1c} }
27 
28 extern EFI_GUID gEfiPciOptionRomTableGuid;
29 
30 typedef struct {
31   EFI_PHYSICAL_ADDRESS   RomAddress;
32   EFI_MEMORY_TYPE        MemoryType;
33   UINT32                 RomLength;
34   UINT32                 Seg;
35   UINT8                  Bus;
36   UINT8                  Dev;
37   UINT8                  Func;
38   BOOLEAN                ExecutedLegacyBiosImage;
39   BOOLEAN                DontLoadEfiRom;
40 } EFI_PCI_OPTION_ROM_DESCRIPTOR;
41 
42 typedef struct {
43   UINT64                         PciOptionRomCount;
44   EFI_PCI_OPTION_ROM_DESCRIPTOR   *PciOptionRomDescriptors;
45 } EFI_PCI_OPTION_ROM_TABLE;
46 
47 #endif
48