2007-07-02 11:09:00 +02:00
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
<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">
|
|
|
|
<MsaHeader>
|
|
|
|
<ModuleName>IsaBus</ModuleName>
|
|
|
|
<ModuleType>DXE_DRIVER</ModuleType>
|
|
|
|
<GuidValue>240612B5-A063-11d4-9A3A-0090273FC14D</GuidValue>
|
|
|
|
<Version>1.0</Version>
|
|
|
|
<Abstract>Component description file for IsaBus module.</Abstract>
|
|
|
|
<Description>Discovers all the ISA Controllers and their resources by using the ISA PnP
|
|
|
|
Protocol, produces an instance of the ISA I/O Protocol for every ISA
|
|
|
|
Controller found, loads and initializes all ISA Device Drivers, matches ISA
|
|
|
|
Device Drivers with their respective ISA Controllers in a deterministic
|
|
|
|
manner, and informs a ISA Device Driver when it is to start managing an ISA
|
|
|
|
Controller.</Description>
|
2007-07-02 11:41:34 +02:00
|
|
|
<Copyright>Copyright (c) 2006 - 2007, Intel Corporation<BR></Copyright>
|
|
|
|
<License>
|
|
|
|
All rights reserved. This program and the accompanying materials
|
|
|
|
are licensed and made available under the terms and conditions of the BSD License
|
|
|
|
which accompanies this distribution. The full text of the license may be found at
|
|
|
|
http://opensource.org/licenses/bsd-license.php
|
|
|
|
|
|
|
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
|
|
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
|
|
|
</License>
|
2007-07-02 11:09:00 +02:00
|
|
|
<Specification>FRAMEWORK_BUILD_PACKAGING_SPECIFICATION 0x00000052</Specification>
|
|
|
|
</MsaHeader>
|
|
|
|
<ModuleDefinitions>
|
|
|
|
<SupportedArchitectures>IA32 X64 IPF EBC</SupportedArchitectures>
|
|
|
|
<BinaryModule>false</BinaryModule>
|
|
|
|
<OutputFileBasename>IsaBus</OutputFileBasename>
|
|
|
|
</ModuleDefinitions>
|
|
|
|
<LibraryClassDefinitions>
|
|
|
|
<LibraryClass Usage="ALWAYS_CONSUMED">
|
|
|
|
<Keyword>DebugLib</Keyword>
|
|
|
|
</LibraryClass>
|
|
|
|
<LibraryClass Usage="ALWAYS_CONSUMED">
|
|
|
|
<Keyword>UefiDriverModelLib</Keyword>
|
|
|
|
</LibraryClass>
|
|
|
|
<LibraryClass Usage="ALWAYS_CONSUMED">
|
|
|
|
<Keyword>UefiDriverEntryPoint</Keyword>
|
|
|
|
</LibraryClass>
|
|
|
|
<LibraryClass Usage="ALWAYS_CONSUMED">
|
|
|
|
<Keyword>UefiLib</Keyword>
|
|
|
|
</LibraryClass>
|
|
|
|
<LibraryClass Usage="ALWAYS_CONSUMED">
|
|
|
|
<Keyword>DevicePathLib</Keyword>
|
|
|
|
</LibraryClass>
|
|
|
|
<LibraryClass Usage="ALWAYS_CONSUMED">
|
|
|
|
<Keyword>BaseMemoryLib</Keyword>
|
|
|
|
</LibraryClass>
|
|
|
|
<LibraryClass Usage="ALWAYS_CONSUMED">
|
|
|
|
<Keyword>MemoryAllocationLib</Keyword>
|
|
|
|
</LibraryClass>
|
|
|
|
<LibraryClass Usage="ALWAYS_CONSUMED">
|
|
|
|
<Keyword>UefiBootServicesTableLib</Keyword>
|
|
|
|
</LibraryClass>
|
|
|
|
<LibraryClass Usage="ALWAYS_CONSUMED">
|
|
|
|
<Keyword>ReportStatusCodeLib</Keyword>
|
|
|
|
</LibraryClass>
|
|
|
|
<LibraryClass Usage="ALWAYS_CONSUMED">
|
|
|
|
<Keyword>BootScriptLib</Keyword>
|
|
|
|
</LibraryClass>
|
|
|
|
<LibraryClass Usage="ALWAYS_CONSUMED">
|
|
|
|
<Keyword>PcdLib</Keyword>
|
|
|
|
</LibraryClass>
|
|
|
|
</LibraryClassDefinitions>
|
|
|
|
<SourceFiles>
|
|
|
|
<Filename>ComponentName.h</Filename>
|
|
|
|
<Filename>IsaAcpi.h</Filename>
|
|
|
|
<Filename>IsaBus.h</Filename>
|
|
|
|
<Filename>IsaIo.h</Filename>
|
|
|
|
<Filename>IsaBus.c</Filename>
|
|
|
|
<Filename>IsaIo.c</Filename>
|
|
|
|
<Filename>ComponentName.c</Filename>
|
|
|
|
</SourceFiles>
|
|
|
|
<PackageDependencies>
|
|
|
|
<Package PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec"/>
|
|
|
|
<Package PackageGuid="68169ab0-d41b-4009-9060-292c253ac43d"/>
|
|
|
|
<Package PackageGuid="bea835f9-fd62-464a-81ff-f3a806360c6b"/>
|
|
|
|
</PackageDependencies>
|
|
|
|
<Protocols>
|
|
|
|
<Protocol Usage="TO_START">
|
|
|
|
<ProtocolCName>gEfiGenericMemTestProtocolGuid</ProtocolCName>
|
|
|
|
</Protocol>
|
|
|
|
<Protocol Usage="TO_START">
|
|
|
|
<ProtocolCName>gEfiDevicePathProtocolGuid</ProtocolCName>
|
|
|
|
</Protocol>
|
|
|
|
<Protocol Usage="TO_START">
|
|
|
|
<ProtocolCName>gEfiPciIoProtocolGuid</ProtocolCName>
|
|
|
|
</Protocol>
|
|
|
|
<Protocol Usage="TO_START">
|
|
|
|
<ProtocolCName>gEfiIsaAcpiProtocolGuid</ProtocolCName>
|
|
|
|
</Protocol>
|
|
|
|
<Protocol Usage="BY_START">
|
|
|
|
<ProtocolCName>gEfiIsaIoProtocolGuid</ProtocolCName>
|
|
|
|
</Protocol>
|
|
|
|
</Protocols>
|
|
|
|
<Guids>
|
|
|
|
<GuidCNames Usage="ALWAYS_CONSUMED">
|
|
|
|
<GuidCName>gEfiStatusCodeSpecificDataGuid</GuidCName>
|
|
|
|
</GuidCNames>
|
|
|
|
</Guids>
|
|
|
|
<Externs>
|
|
|
|
<Specification>EFI_SPECIFICATION_VERSION 0x00020000</Specification>
|
|
|
|
<Specification>EDK_RELEASE_VERSION 0x00020000</Specification>
|
|
|
|
<Extern>
|
|
|
|
<DriverBinding>gIsaBusControllerDriver</DriverBinding>
|
|
|
|
<ComponentName>gIsaBusComponentName</ComponentName>
|
|
|
|
</Extern>
|
|
|
|
</Externs>
|
|
|
|
<PcdCoded>
|
|
|
|
<PcdEntry PcdItemType="FEATURE_FLAG" Usage="ALWAYS_CONSUMED">
|
|
|
|
<C_Name>PcdIsaBusSupportIsaMemory</C_Name>
|
|
|
|
<TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName>
|
|
|
|
<DefaultValue>TRUE</DefaultValue>
|
|
|
|
<HelpText>This feature flag is used to enable the implementation for interface
|
|
|
|
_EFI_ISA_IO_PROTOCOL.Mem.Read, _EFI_ISA_IO_PROTOCOL.Mem.Write and _EFI_ISA_IO_PROTOCOL.CopyMem.
|
|
|
|
If it is unset, these interfaces will return EFI_UNSUPPORTED. When it is disabled,
|
|
|
|
it is will save code size if a platform does not have ISA device with ISA memory.</HelpText>
|
|
|
|
</PcdEntry>
|
|
|
|
<PcdEntry PcdItemType="FEATURE_FLAG" Usage="ALWAYS_CONSUMED">
|
|
|
|
<C_Name>PcdIsaBusSupportDma</C_Name>
|
|
|
|
<TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName>
|
|
|
|
<DefaultValue>TRUE</DefaultValue>
|
|
|
|
<HelpText>This feature flag is used to enable the implementation for interface
|
|
|
|
_EFI_ISA_IO_PROTOCOL.AllocateBuffer, _EFI_ISA_IO_PROTOCOL.FreeBuffer, _EFI_ISA_IO_PROTOCOL.Map
|
|
|
|
and _EFI_ISA_IO_PROTOCOL.UnMap. If it is unset, these interfaces will return EFI_UNSUPPORTED.
|
|
|
|
It is useful to save code size if a platform does not have ISA device which did DMA transfer.</HelpText>
|
|
|
|
</PcdEntry>
|
|
|
|
<PcdEntry PcdItemType="FEATURE_FLAG" Usage="ALWAYS_CONSUMED">
|
|
|
|
<C_Name>PcdIsaBusOnlySupportSlaveDma</C_Name>
|
|
|
|
<TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName>
|
|
|
|
<DefaultValue>FALSE</DefaultValue>
|
|
|
|
<HelpText>This feature flag is used to enable the implementation for interface
|
|
|
|
_EFI_ISA_IO_PROTOCOL.Map and _EFI_ISA_IO_PROTOCOL.UnMap to only support Slave DMA
|
|
|
|
transfers. In addition, unsetting this feature flag also make AllocateBuffer() and
|
|
|
|
FreeBuffer() to return EFI_UNSUPPORTED. It is useful to save code size if a platform have only
|
|
|
|
ISA device to do slave DMA R/W transfer. This flag is only effective when PcdIsaBusSupportDma
|
|
|
|
is set to TRUE. If PcdIsaBusSupportDma is set to FALSE, Map() and UnMap() will simply
|
|
|
|
return EFI_UNSUPPORTED. Please check description for PcdIsaBusSupportDma for details.</HelpText>
|
|
|
|
</PcdEntry>
|
|
|
|
</PcdCoded>
|
|
|
|
</ModuleSurfaceArea>
|