Add DxeBootScriptLibNull in IntelFrameworkPkg.
[mirror_edk2.git] / IntelFrameworkModulePkg / Bus / Isa / IsaBusDxe / IsaBus.msa
1 <?xml version="1.0" encoding="UTF-8"?>
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">
3 <MsaHeader>
4 <ModuleName>IsaBus</ModuleName>
5 <ModuleType>DXE_DRIVER</ModuleType>
6 <GuidValue>240612B5-A063-11d4-9A3A-0090273FC14D</GuidValue>
7 <Version>1.0</Version>
8 <Abstract>Component description file for IsaBus module.</Abstract>
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>
15 <Copyright>Copyright (c) 2006 - 2007, Intel Corporation.</Copyright>
16 <License>All rights reserved.
17 This software and associated documentation (if any) is furnished
18 under a license and may only be used or copied in accordance
19 with the terms of the license. Except as permitted by such
20 license, no part of this software or documentation may be
21 reproduced, stored in a retrieval system, or transmitted in any
22 form or by any means without the express written consent of
23 Intel Corporation.</License>
24 <Specification>FRAMEWORK_BUILD_PACKAGING_SPECIFICATION 0x00000052</Specification>
25 </MsaHeader>
26 <ModuleDefinitions>
27 <SupportedArchitectures>IA32 X64 IPF EBC</SupportedArchitectures>
28 <BinaryModule>false</BinaryModule>
29 <OutputFileBasename>IsaBus</OutputFileBasename>
30 </ModuleDefinitions>
31 <LibraryClassDefinitions>
32 <LibraryClass Usage="ALWAYS_CONSUMED">
33 <Keyword>DebugLib</Keyword>
34 </LibraryClass>
35 <LibraryClass Usage="ALWAYS_CONSUMED">
36 <Keyword>UefiDriverModelLib</Keyword>
37 </LibraryClass>
38 <LibraryClass Usage="ALWAYS_CONSUMED">
39 <Keyword>UefiDriverEntryPoint</Keyword>
40 </LibraryClass>
41 <LibraryClass Usage="ALWAYS_CONSUMED">
42 <Keyword>UefiLib</Keyword>
43 </LibraryClass>
44 <LibraryClass Usage="ALWAYS_CONSUMED">
45 <Keyword>DevicePathLib</Keyword>
46 </LibraryClass>
47 <LibraryClass Usage="ALWAYS_CONSUMED">
48 <Keyword>BaseMemoryLib</Keyword>
49 </LibraryClass>
50 <LibraryClass Usage="ALWAYS_CONSUMED">
51 <Keyword>MemoryAllocationLib</Keyword>
52 </LibraryClass>
53 <LibraryClass Usage="ALWAYS_CONSUMED">
54 <Keyword>UefiBootServicesTableLib</Keyword>
55 </LibraryClass>
56 <LibraryClass Usage="ALWAYS_CONSUMED">
57 <Keyword>ReportStatusCodeLib</Keyword>
58 </LibraryClass>
59 <LibraryClass Usage="ALWAYS_CONSUMED">
60 <Keyword>BootScriptLib</Keyword>
61 </LibraryClass>
62 <LibraryClass Usage="ALWAYS_CONSUMED">
63 <Keyword>PcdLib</Keyword>
64 </LibraryClass>
65 </LibraryClassDefinitions>
66 <SourceFiles>
67 <Filename>ComponentName.h</Filename>
68 <Filename>IsaAcpi.h</Filename>
69 <Filename>IsaBus.h</Filename>
70 <Filename>IsaIo.h</Filename>
71 <Filename>IsaBus.c</Filename>
72 <Filename>IsaIo.c</Filename>
73 <Filename>ComponentName.c</Filename>
74 </SourceFiles>
75 <PackageDependencies>
76 <Package PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec"/>
77 <Package PackageGuid="68169ab0-d41b-4009-9060-292c253ac43d"/>
78 <Package PackageGuid="bea835f9-fd62-464a-81ff-f3a806360c6b"/>
79 </PackageDependencies>
80 <Protocols>
81 <Protocol Usage="TO_START">
82 <ProtocolCName>gEfiGenericMemTestProtocolGuid</ProtocolCName>
83 </Protocol>
84 <Protocol Usage="TO_START">
85 <ProtocolCName>gEfiDevicePathProtocolGuid</ProtocolCName>
86 </Protocol>
87 <Protocol Usage="TO_START">
88 <ProtocolCName>gEfiPciIoProtocolGuid</ProtocolCName>
89 </Protocol>
90 <Protocol Usage="TO_START">
91 <ProtocolCName>gEfiIsaAcpiProtocolGuid</ProtocolCName>
92 </Protocol>
93 <Protocol Usage="BY_START">
94 <ProtocolCName>gEfiIsaIoProtocolGuid</ProtocolCName>
95 </Protocol>
96 </Protocols>
97 <Guids>
98 <GuidCNames Usage="ALWAYS_CONSUMED">
99 <GuidCName>gEfiStatusCodeSpecificDataGuid</GuidCName>
100 </GuidCNames>
101 </Guids>
102 <Externs>
103 <Specification>EFI_SPECIFICATION_VERSION 0x00020000</Specification>
104 <Specification>EDK_RELEASE_VERSION 0x00020000</Specification>
105 <Extern>
106 <DriverBinding>gIsaBusControllerDriver</DriverBinding>
107 <ComponentName>gIsaBusComponentName</ComponentName>
108 </Extern>
109 </Externs>
110 <PcdCoded>
111 <PcdEntry PcdItemType="FEATURE_FLAG" Usage="ALWAYS_CONSUMED">
112 <C_Name>PcdIsaBusSupportIsaMemory</C_Name>
113 <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName>
114 <DefaultValue>TRUE</DefaultValue>
115 <HelpText>This feature flag is used to enable the implementation for interface
116 _EFI_ISA_IO_PROTOCOL.Mem.Read, _EFI_ISA_IO_PROTOCOL.Mem.Write and _EFI_ISA_IO_PROTOCOL.CopyMem.
117 If it is unset, these interfaces will return EFI_UNSUPPORTED. When it is disabled,
118 it is will save code size if a platform does not have ISA device with ISA memory.</HelpText>
119 </PcdEntry>
120 <PcdEntry PcdItemType="FEATURE_FLAG" Usage="ALWAYS_CONSUMED">
121 <C_Name>PcdIsaBusSupportDma</C_Name>
122 <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName>
123 <DefaultValue>TRUE</DefaultValue>
124 <HelpText>This feature flag is used to enable the implementation for interface
125 _EFI_ISA_IO_PROTOCOL.AllocateBuffer, _EFI_ISA_IO_PROTOCOL.FreeBuffer, _EFI_ISA_IO_PROTOCOL.Map
126 and _EFI_ISA_IO_PROTOCOL.UnMap. If it is unset, these interfaces will return EFI_UNSUPPORTED.
127 It is useful to save code size if a platform does not have ISA device which did DMA transfer.</HelpText>
128 </PcdEntry>
129 <PcdEntry PcdItemType="FEATURE_FLAG" Usage="ALWAYS_CONSUMED">
130 <C_Name>PcdIsaBusOnlySupportSlaveDma</C_Name>
131 <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName>
132 <DefaultValue>FALSE</DefaultValue>
133 <HelpText>This feature flag is used to enable the implementation for interface
134 _EFI_ISA_IO_PROTOCOL.Map and _EFI_ISA_IO_PROTOCOL.UnMap to only support Slave DMA
135 transfers. In addition, unsetting this feature flag also make AllocateBuffer() and
136 FreeBuffer() to return EFI_UNSUPPORTED. It is useful to save code size if a platform have only
137 ISA device to do slave DMA R/W transfer. This flag is only effective when PcdIsaBusSupportDma
138 is set to TRUE. If PcdIsaBusSupportDma is set to FALSE, Map() and UnMap() will simply
139 return EFI_UNSUPPORTED. Please check description for PcdIsaBusSupportDma for details.</HelpText>
140 </PcdEntry>
141 </PcdCoded>
142 </ModuleSurfaceArea>