MdeModulePkg/PciBus: Add IOMMU support.
[mirror_edk2.git] / MdeModulePkg / Bus / Pci / PciBusDxe / PciBusDxe.inf
1 ## @file
2 # The PCI bus driver will probe all PCI devices and allocate MMIO and IO space for these devices.
3 # Please use PCD feature flag PcdPciBusHotplugDeviceSupport to enable hot plug supporting.
4 #
5 # Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
6 #
7 # This program and the accompanying materials
8 # are licensed and made available under the terms and conditions of the BSD License
9 # which accompanies this distribution. The full text of the license may be found at
10 # http://opensource.org/licenses/bsd-license.php
11 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13 #
14 #
15 ##
16
17 [Defines]
18 INF_VERSION = 0x00010005
19 BASE_NAME = PciBusDxe
20 MODULE_UNI_FILE = PciBusDxe.uni
21 FILE_GUID = 93B80004-9FB3-11d4-9A3A-0090273FC14D
22 MODULE_TYPE = UEFI_DRIVER
23 VERSION_STRING = 1.0
24 ENTRY_POINT = PciBusEntryPoint
25
26 #
27 # The following information is for reference only and not required by the build tools.
28 #
29 # VALID_ARCHITECTURES = IA32 X64 IPF EBC ARM AARCH64
30 #
31 # DRIVER_BINDING = gPciBusDriverBinding
32 # COMPONENT_NAME = gPciBusComponentName
33 # COMPONENT_NAME2 = gPciBusComponentName2
34 #
35
36 [Sources]
37 PciLib.c
38 PciIo.c
39 PciBus.c
40 PciDeviceSupport.c
41 ComponentName.c
42 ComponentName.h
43 PciCommand.c
44 PciResourceSupport.c
45 PciEnumeratorSupport.c
46 PciEnumerator.c
47 PciOptionRomSupport.c
48 PciDriverOverride.c
49 PciPowerManagement.c
50 PciPowerManagement.h
51 PciDriverOverride.h
52 PciRomTable.c
53 PciHotPlugSupport.c
54 PciLib.h
55 PciHotPlugSupport.h
56 PciRomTable.h
57 PciOptionRomSupport.h
58 PciEnumeratorSupport.h
59 PciEnumerator.h
60 PciResourceSupport.h
61 PciDeviceSupport.h
62 PciCommand.h
63 PciIo.h
64 PciBus.h
65
66 [Packages]
67 MdePkg/MdePkg.dec
68 MdeModulePkg/MdeModulePkg.dec
69
70 [LibraryClasses]
71 PcdLib
72 DevicePathLib
73 UefiBootServicesTableLib
74 MemoryAllocationLib
75 ReportStatusCodeLib
76 BaseMemoryLib
77 UefiLib
78 BaseLib
79 UefiDriverEntryPoint
80 DebugLib
81 PeCoffLib
82
83 [Protocols]
84 gEfiPciHotPlugRequestProtocolGuid ## SOMETIMES_PRODUCES
85 gEfiPciIoProtocolGuid ## BY_START
86 gEfiDevicePathProtocolGuid ## BY_START
87 gEfiBusSpecificDriverOverrideProtocolGuid ## BY_START
88 gEfiLoadedImageProtocolGuid ## SOMETIMES_CONSUMES
89 gEfiDecompressProtocolGuid ## SOMETIMES_CONSUMES
90 gEfiPciHotPlugInitProtocolGuid ## SOMETIMES_CONSUMES
91 gEfiPciHostBridgeResourceAllocationProtocolGuid ## TO_START
92 gEfiPciPlatformProtocolGuid ## SOMETIMES_CONSUMES
93 gEfiPciOverrideProtocolGuid ## SOMETIMES_CONSUMES
94 gEfiPciEnumerationCompleteProtocolGuid ## PRODUCES
95 gEfiPciRootBridgeIoProtocolGuid ## TO_START
96 gEfiIncompatiblePciDeviceSupportProtocolGuid ## SOMETIMES_CONSUMES
97 gEfiLoadFile2ProtocolGuid ## SOMETIMES_PRODUCES
98 gEdkiiIoMmuProtocolGuid ## SOMETIMES_CONSUMES
99
100 [FeaturePcd]
101 gEfiMdeModulePkgTokenSpaceGuid.PcdPciBusHotplugDeviceSupport ## CONSUMES
102 gEfiMdeModulePkgTokenSpaceGuid.PcdPciBridgeIoAlignmentProbe ## CONSUMES
103 gEfiMdeModulePkgTokenSpaceGuid.PcdUnalignedPciIoEnable ## CONSUMES
104 gEfiMdeModulePkgTokenSpaceGuid.PcdPciDegradeResourceForOptionRom ## CONSUMES
105
106 [Pcd]
107 gEfiMdeModulePkgTokenSpaceGuid.PcdSrIovSystemPageSize ## SOMETIMES_CONSUMES
108 gEfiMdeModulePkgTokenSpaceGuid.PcdSrIovSupport ## CONSUMES
109 gEfiMdeModulePkgTokenSpaceGuid.PcdAriSupport ## CONSUMES
110 gEfiMdeModulePkgTokenSpaceGuid.PcdMrIovSupport ## CONSUMES
111 gEfiMdeModulePkgTokenSpaceGuid.PcdPciDisableBusEnumeration ## SOMETIMES_CONSUMES
112
113 [UserExtensions.TianoCore."ExtraFiles"]
114 PciBusDxeExtra.uni