b7b0078e |
1 | <?xml version="1.0" encoding="UTF-8"?>\r |
c3902377 |
2 | <ModuleSurfaceArea xsi:schemaLocation="http://www.TianoCore.org/2006/Edk2.0 http://www.TianoCore.org/2006/Edk2.0/SurfaceArea.xsd" xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">\r |
3 | <MsaHeader>\r |
4 | <ModuleName>IsaBus</ModuleName>\r |
5 | <ModuleType>DXE_DRIVER</ModuleType>\r |
6 | <GuidValue>240612B5-A063-11d4-9A3A-0090273FC14D</GuidValue>\r |
7 | <Version>1.0</Version>\r |
8 | <Abstract>Component description file for IsaBus module.</Abstract>\r |
9 | <Description>Discovers all the ISA Controllers and their resources by using the ISA PnP |
10 | Protocol, produces an instance of the ISA I/O Protocol for every ISA |
11 | Controller found, loads and initializes all ISA Device Drivers, matches ISA |
12 | Device Drivers with their respective ISA Controllers in a deterministic |
13 | manner, and informs a ISA Device Driver when it is to start managing an ISA |
14 | Controller.</Description>\r |
3e0578d2 |
15 | <Copyright>Copyright (c) 2006 - 2007, Intel Corporation<BR></Copyright>\r |
16 | <License> |
17 | All rights reserved. This program and the accompanying materials\r |
18 | are licensed and made available under the terms and conditions of the BSD License\r |
19 | which accompanies this distribution. The full text of the license may be found at\r |
20 | http://opensource.org/licenses/bsd-license.php\r |
21 | \r |
22 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r |
23 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r |
24 | </License>\r |
c3902377 |
25 | <Specification>FRAMEWORK_BUILD_PACKAGING_SPECIFICATION 0x00000052</Specification>\r |
26 | </MsaHeader>\r |
27 | <ModuleDefinitions>\r |
28 | <SupportedArchitectures>IA32 X64 IPF EBC</SupportedArchitectures>\r |
29 | <BinaryModule>false</BinaryModule>\r |
30 | <OutputFileBasename>IsaBus</OutputFileBasename>\r |
31 | </ModuleDefinitions>\r |
32 | <LibraryClassDefinitions>\r |
33 | <LibraryClass Usage="ALWAYS_CONSUMED">\r |
34 | <Keyword>DebugLib</Keyword>\r |
35 | </LibraryClass>\r |
36 | <LibraryClass Usage="ALWAYS_CONSUMED">\r |
37 | <Keyword>UefiDriverModelLib</Keyword>\r |
38 | </LibraryClass>\r |
39 | <LibraryClass Usage="ALWAYS_CONSUMED">\r |
40 | <Keyword>UefiDriverEntryPoint</Keyword>\r |
41 | </LibraryClass>\r |
42 | <LibraryClass Usage="ALWAYS_CONSUMED">\r |
43 | <Keyword>UefiLib</Keyword>\r |
44 | </LibraryClass>\r |
45 | <LibraryClass Usage="ALWAYS_CONSUMED">\r |
46 | <Keyword>DevicePathLib</Keyword>\r |
47 | </LibraryClass>\r |
48 | <LibraryClass Usage="ALWAYS_CONSUMED">\r |
49 | <Keyword>BaseMemoryLib</Keyword>\r |
50 | </LibraryClass>\r |
51 | <LibraryClass Usage="ALWAYS_CONSUMED">\r |
52 | <Keyword>MemoryAllocationLib</Keyword>\r |
53 | </LibraryClass>\r |
54 | <LibraryClass Usage="ALWAYS_CONSUMED">\r |
55 | <Keyword>UefiBootServicesTableLib</Keyword>\r |
56 | </LibraryClass>\r |
57 | <LibraryClass Usage="ALWAYS_CONSUMED">\r |
58 | <Keyword>ReportStatusCodeLib</Keyword>\r |
59 | </LibraryClass>\r |
60 | <LibraryClass Usage="ALWAYS_CONSUMED">\r |
61 | <Keyword>BootScriptLib</Keyword>\r |
62 | </LibraryClass>\r |
63 | <LibraryClass Usage="ALWAYS_CONSUMED">\r |
64 | <Keyword>PcdLib</Keyword>\r |
65 | </LibraryClass>\r |
66 | </LibraryClassDefinitions>\r |
67 | <SourceFiles>\r |
68 | <Filename>ComponentName.h</Filename>\r |
69 | <Filename>IsaAcpi.h</Filename>\r |
70 | <Filename>IsaBus.h</Filename>\r |
71 | <Filename>IsaIo.h</Filename>\r |
72 | <Filename>IsaBus.c</Filename>\r |
73 | <Filename>IsaIo.c</Filename>\r |
74 | <Filename>ComponentName.c</Filename>\r |
75 | </SourceFiles>\r |
76 | <PackageDependencies>\r |
77 | <Package PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec"/>\r |
78 | <Package PackageGuid="68169ab0-d41b-4009-9060-292c253ac43d"/>\r |
79 | <Package PackageGuid="bea835f9-fd62-464a-81ff-f3a806360c6b"/>\r |
80 | </PackageDependencies>\r |
81 | <Protocols>\r |
82 | <Protocol Usage="TO_START">\r |
83 | <ProtocolCName>gEfiGenericMemTestProtocolGuid</ProtocolCName>\r |
84 | </Protocol>\r |
85 | <Protocol Usage="TO_START">\r |
86 | <ProtocolCName>gEfiDevicePathProtocolGuid</ProtocolCName>\r |
87 | </Protocol>\r |
88 | <Protocol Usage="TO_START">\r |
89 | <ProtocolCName>gEfiPciIoProtocolGuid</ProtocolCName>\r |
90 | </Protocol>\r |
91 | <Protocol Usage="TO_START">\r |
92 | <ProtocolCName>gEfiIsaAcpiProtocolGuid</ProtocolCName>\r |
93 | </Protocol>\r |
94 | <Protocol Usage="BY_START">\r |
95 | <ProtocolCName>gEfiIsaIoProtocolGuid</ProtocolCName>\r |
96 | </Protocol>\r |
97 | </Protocols>\r |
98 | <Guids>\r |
99 | <GuidCNames Usage="ALWAYS_CONSUMED">\r |
100 | <GuidCName>gEfiStatusCodeSpecificDataGuid</GuidCName>\r |
101 | </GuidCNames>\r |
102 | </Guids>\r |
103 | <Externs>\r |
104 | <Specification>EFI_SPECIFICATION_VERSION 0x00020000</Specification>\r |
105 | <Specification>EDK_RELEASE_VERSION 0x00020000</Specification>\r |
106 | <Extern>\r |
107 | <DriverBinding>gIsaBusControllerDriver</DriverBinding>\r |
108 | <ComponentName>gIsaBusComponentName</ComponentName>\r |
109 | </Extern>\r |
110 | </Externs>\r |
111 | <PcdCoded>\r |
112 | <PcdEntry PcdItemType="FEATURE_FLAG" Usage="ALWAYS_CONSUMED">\r |
113 | <C_Name>PcdIsaBusSupportIsaMemory</C_Name>\r |
b7b0078e |
114 | <TokenSpaceGuidCName>gEfiIntelFrameworkModulePkgTokenSpaceGuid</TokenSpaceGuidCName>\r |
c3902377 |
115 | <DefaultValue>TRUE</DefaultValue>\r |
116 | <HelpText>This feature flag is used to enable the implementation for interface |
117 | _EFI_ISA_IO_PROTOCOL.Mem.Read, _EFI_ISA_IO_PROTOCOL.Mem.Write and _EFI_ISA_IO_PROTOCOL.CopyMem. |
118 | If it is unset, these interfaces will return EFI_UNSUPPORTED. When it is disabled, |
119 | it is will save code size if a platform does not have ISA device with ISA memory.</HelpText>\r |
120 | </PcdEntry>\r |
121 | <PcdEntry PcdItemType="FEATURE_FLAG" Usage="ALWAYS_CONSUMED">\r |
122 | <C_Name>PcdIsaBusSupportDma</C_Name>\r |
b7b0078e |
123 | <TokenSpaceGuidCName>gEfiIntelFrameworkModulePkgTokenSpaceGuid</TokenSpaceGuidCName>\r |
c3902377 |
124 | <DefaultValue>TRUE</DefaultValue>\r |
125 | <HelpText>This feature flag is used to enable the implementation for interface |
126 | _EFI_ISA_IO_PROTOCOL.AllocateBuffer, _EFI_ISA_IO_PROTOCOL.FreeBuffer, _EFI_ISA_IO_PROTOCOL.Map |
127 | and _EFI_ISA_IO_PROTOCOL.UnMap. If it is unset, these interfaces will return EFI_UNSUPPORTED. |
128 | It is useful to save code size if a platform does not have ISA device which did DMA transfer.</HelpText>\r |
129 | </PcdEntry>\r |
130 | <PcdEntry PcdItemType="FEATURE_FLAG" Usage="ALWAYS_CONSUMED">\r |
131 | <C_Name>PcdIsaBusOnlySupportSlaveDma</C_Name>\r |
b7b0078e |
132 | <TokenSpaceGuidCName>gEfiIntelFrameworkModulePkgTokenSpaceGuid</TokenSpaceGuidCName>\r |
c3902377 |
133 | <DefaultValue>FALSE</DefaultValue>\r |
134 | <HelpText>This feature flag is used to enable the implementation for interface |
135 | _EFI_ISA_IO_PROTOCOL.Map and _EFI_ISA_IO_PROTOCOL.UnMap to only support Slave DMA |
136 | transfers. In addition, unsetting this feature flag also make AllocateBuffer() and |
137 | FreeBuffer() to return EFI_UNSUPPORTED. It is useful to save code size if a platform have only |
138 | ISA device to do slave DMA R/W transfer. This flag is only effective when PcdIsaBusSupportDma |
139 | is set to TRUE. If PcdIsaBusSupportDma is set to FALSE, Map() and UnMap() will simply |
140 | return EFI_UNSUPPORTED. Please check description for PcdIsaBusSupportDma for details.</HelpText>\r |
141 | </PcdEntry>\r |
142 | </PcdCoded>\r |
143 | </ModuleSurfaceArea> |