1 /*++ 2 3 Copyright (c) 2004 - 2014, Intel Corporation. All rights reserved.<BR> 4 5 6 This program and the accompanying materials are licensed and made available under 7 8 the terms and conditions of the BSD License that accompanies this distribution. 9 10 The full text of the license may be found at 11 12 http://opensource.org/licenses/bsd-license.php. 13 14 15 16 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 17 18 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 19 20 21 22 23 Module Name: 24 25 PciPlatform.h 26 27 Abstract: 28 29 --*/ 30 #ifndef PCI_PLATFORM_H_ 31 #define PCI_PLATFORM_H_ 32 33 34 #include <PiDxe.h> 35 #include "Platform.h" 36 37 // 38 // Produced Protocols 39 // 40 #include <Protocol/PciPlatform.h> 41 42 #define IGD_DID_II 0x0BE1 43 #define IGD_DID_0BE4 0x0BE4 44 #define IGD_DID_VLV_A0 0x0F31 45 #define OPROM_DID_OFFSET 0x46 46 47 typedef struct { 48 EFI_GUID FileName; 49 UINTN Segment; 50 UINTN Bus; 51 UINTN Device; 52 UINTN Function; 53 UINT16 VendorId; 54 UINT16 DeviceId; 55 UINT8 Flag; 56 } PCI_OPTION_ROM_TABLE; 57 58 EFI_STATUS 59 EFIAPI 60 PhaseNotify ( 61 IN EFI_PCI_PLATFORM_PROTOCOL *This, 62 IN EFI_HANDLE HostBridge, 63 IN EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PHASE Phase, 64 IN EFI_PCI_CHIPSET_EXECUTION_PHASE ChipsetPhase 65 ); 66 67 68 EFI_STATUS 69 EFIAPI 70 PlatformPrepController ( 71 IN EFI_PCI_PLATFORM_PROTOCOL *This, 72 IN EFI_HANDLE HostBridge, 73 IN EFI_HANDLE RootBridge, 74 IN EFI_PCI_ROOT_BRIDGE_IO_PROTOCOL_PCI_ADDRESS PciAddress, 75 IN EFI_PCI_CONTROLLER_RESOURCE_ALLOCATION_PHASE Phase, 76 IN EFI_PCI_CHIPSET_EXECUTION_PHASE ChipsetPhase 77 ); 78 79 EFI_STATUS 80 EFIAPI 81 GetPlatformPolicy ( 82 IN CONST EFI_PCI_PLATFORM_PROTOCOL *This, 83 OUT EFI_PCI_PLATFORM_POLICY *PciPolicy 84 ); 85 86 EFI_STATUS 87 EFIAPI 88 GetPciRom ( 89 IN CONST EFI_PCI_PLATFORM_PROTOCOL *This, 90 IN EFI_HANDLE PciHandle, 91 OUT VOID **RomImage, 92 OUT UINTN *RomSize 93 ); 94 95 #endif 96 97 98