Initial import.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
bbahnsen
2006-04-21 22:54:32 +00:00
commit 878ddf1fc3
2651 changed files with 624620 additions and 0 deletions

View File

@@ -0,0 +1,190 @@
/*++
Copyright (c) 2006, Intel Corporation
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.
Module Name:
ComponentName.c
Abstract:
--*/
#include "ScsiDisk.h"
//
// EFI Component Name Functions
//
EFI_STATUS
EFIAPI
ScsiDiskComponentNameGetDriverName (
IN EFI_COMPONENT_NAME_PROTOCOL *This,
IN CHAR8 *Language,
OUT CHAR16 **DriverName
);
EFI_STATUS
EFIAPI
ScsiDiskComponentNameGetControllerName (
IN EFI_COMPONENT_NAME_PROTOCOL *This,
IN EFI_HANDLE ControllerHandle,
IN EFI_HANDLE ChildHandle OPTIONAL,
IN CHAR8 *Language,
OUT CHAR16 **ControllerName
);
//
// EFI Component Name Protocol
//
EFI_COMPONENT_NAME_PROTOCOL gScsiDiskComponentName = {
ScsiDiskComponentNameGetDriverName,
ScsiDiskComponentNameGetControllerName,
"eng"
};
static EFI_UNICODE_STRING_TABLE mScsiDiskDriverNameTable[] = {
{ "eng", (CHAR16 *) L"Scsi Disk Driver" },
{ NULL , NULL }
};
EFI_STATUS
EFIAPI
ScsiDiskComponentNameGetDriverName (
IN EFI_COMPONENT_NAME_PROTOCOL *This,
IN CHAR8 *Language,
OUT CHAR16 **DriverName
)
/*++
Routine Description:
Retrieves a Unicode string that is the user readable name of the EFI Driver.
Arguments:
This - A pointer to the EFI_COMPONENT_NAME_PROTOCOL instance.
Language - A pointer to a three character ISO 639-2 language identifier.
This is the language of the driver name that that the caller
is requesting, and it must match one of the languages specified
in SupportedLanguages. The number of languages supported by a
driver is up to the driver writer.
DriverName - A pointer to the Unicode string to return. This Unicode string
is the name of the driver specified by This in the language
specified by Language.
Returns:
EFI_SUCCESS - The Unicode string for the Driver specified by This
and the language specified by Language was returned
in DriverName.
EFI_INVALID_PARAMETER - Language is NULL.
EFI_INVALID_PARAMETER - DriverName is NULL.
EFI_UNSUPPORTED - The driver specified by This does not support the
language specified by Language.
--*/
{
return LookupUnicodeString (
Language,
gScsiDiskComponentName.SupportedLanguages,
mScsiDiskDriverNameTable,
DriverName
);
}
EFI_STATUS
EFIAPI
ScsiDiskComponentNameGetControllerName (
IN EFI_COMPONENT_NAME_PROTOCOL *This,
IN EFI_HANDLE ControllerHandle,
IN EFI_HANDLE ChildHandle OPTIONAL,
IN CHAR8 *Language,
OUT CHAR16 **ControllerName
)
/*++
Routine Description:
Retrieves a Unicode string that is the user readable name of the controller
that is being managed by an EFI Driver.
Arguments:
This - A pointer to the EFI_COMPONENT_NAME_PROTOCOL instance.
ControllerHandle - The handle of a controller that the driver specified by
This is managing. This handle specifies the controller
whose name is to be returned.
ChildHandle - The handle of the child controller to retrieve the name
of. This is an optional parameter that may be NULL. It
will be NULL for device drivers. It will also be NULL
for a bus drivers that wish to retrieve the name of the
bus controller. It will not be NULL for a bus driver
that wishes to retrieve the name of a child controller.
Language - A pointer to a three character ISO 639-2 language
identifier. This is the language of the controller name
that that the caller is requesting, and it must match one
of the languages specified in SupportedLanguages. The
number of languages supported by a driver is up to the
driver writer.
ControllerName - A pointer to the Unicode string to return. This Unicode
string is the name of the controller specified by
ControllerHandle and ChildHandle in the language
specified by Language from the point of view of the
driver specified by This.
Returns:
EFI_SUCCESS - The Unicode string for the user readable name in the
language specified by Language for the driver
specified by This was returned in DriverName.
EFI_INVALID_PARAMETER - ControllerHandle is not a valid EFI_HANDLE.
EFI_INVALID_PARAMETER - ChildHandle is not NULL and it is not a valid
EFI_HANDLE.
EFI_INVALID_PARAMETER - Language is NULL.
EFI_INVALID_PARAMETER - ControllerName is NULL.
EFI_UNSUPPORTED - The driver specified by This is not currently
managing the controller specified by
ControllerHandle and ChildHandle.
EFI_UNSUPPORTED - The driver specified by This does not support the
language specified by Language.
--*/
{
EFI_STATUS Status;
SCSI_DISK_DEV *ScsiDiskDevice;
EFI_BLOCK_IO_PROTOCOL *BlockIo;
//
// This is a device driver, so ChildHandle must be NULL.
//
if (ChildHandle != NULL) {
return EFI_UNSUPPORTED;
}
//
// Get the device context
//
Status = gBS->OpenProtocol (
ControllerHandle,
&gEfiBlockIoProtocolGuid,
(VOID **) &BlockIo,
gScsiDiskDriverBinding.DriverBindingHandle,
ControllerHandle,
EFI_OPEN_PROTOCOL_GET_PROTOCOL
);
if (EFI_ERROR (Status)) {
return Status;
}
ScsiDiskDevice = SCSI_DISK_DEV_FROM_THIS (BlockIo);
return LookupUnicodeString (
Language,
gScsiDiskComponentName.SupportedLanguages,
ScsiDiskDevice->ControllerNameTable,
ControllerName
);
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,728 @@
/*++
Copyright (c) 2006, Intel Corporation
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.
Module Name:
ScsiDisk.h
Abstract:
Header file for SCSI Disk Driver.
--*/
#ifndef _SCSI_DISK_H
#define _SCSI_DISK_H
#include <IndustryStandard/scsi.h>
#define IsDeviceFixed(a) (a)->FixedDevice ? 1 : 0
#define SCSI_DISK_DEV_SIGNATURE EFI_SIGNATURE_32 ('s', 'c', 'd', 'k')
typedef struct {
UINT32 Signature;
EFI_HANDLE Handle;
EFI_BLOCK_IO_PROTOCOL BlkIo;
EFI_BLOCK_IO_MEDIA BlkIoMedia;
EFI_SCSI_IO_PROTOCOL *ScsiIo;
UINT8 DeviceType;
BOOLEAN FixedDevice;
UINT16 Reserved;
EFI_SCSI_SENSE_DATA *SenseData;
UINTN SenseDataNumber;
EFI_SCSI_INQUIRY_DATA InquiryData;
EFI_UNICODE_STRING_TABLE *ControllerNameTable;
} SCSI_DISK_DEV;
#define SCSI_DISK_DEV_FROM_THIS(a) CR (a, SCSI_DISK_DEV, BlkIo, SCSI_DISK_DEV_SIGNATURE)
//
// Global Variables
//
extern EFI_DRIVER_BINDING_PROTOCOL gScsiDiskDriverBinding;
extern EFI_COMPONENT_NAME_PROTOCOL gScsiDiskComponentName;
//
// action code used in detect media process
//
#define ACTION_NO_ACTION 0x00
#define ACTION_READ_CAPACITY 0x01
#define ACTION_RETRY_COMMAND_LATER 0x02
EFI_STATUS
EFIAPI
ScsiDiskReset (
IN EFI_BLOCK_IO_PROTOCOL *This,
IN BOOLEAN ExtendedVerification
)
/*++
Routine Description:
TODO: Add function description
Arguments:
This - TODO: add argument description
ExtendedVerification - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
EFIAPI
ScsiDiskReadBlocks (
IN EFI_BLOCK_IO_PROTOCOL *This,
IN UINT32 MediaId,
IN EFI_LBA LBA,
IN UINTN BufferSize,
OUT VOID *Buffer
)
/*++
Routine Description:
TODO: Add function description
Arguments:
This - TODO: add argument description
MediaId - TODO: add argument description
LBA - TODO: add argument description
BufferSize - TODO: add argument description
Buffer - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
EFIAPI
ScsiDiskWriteBlocks (
IN EFI_BLOCK_IO_PROTOCOL *This,
IN UINT32 MediaId,
IN EFI_LBA LBA,
IN UINTN BufferSize,
IN VOID *Buffer
)
/*++
Routine Description:
TODO: Add function description
Arguments:
This - TODO: add argument description
MediaId - TODO: add argument description
LBA - TODO: add argument description
BufferSize - TODO: add argument description
Buffer - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
EFIAPI
ScsiDiskFlushBlocks (
IN EFI_BLOCK_IO_PROTOCOL *This
)
/*++
Routine Description:
TODO: Add function description
Arguments:
This - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
ScsiDiskDetectMedia (
SCSI_DISK_DEV *ScsiDiskDevice,
BOOLEAN MustReadCap,
BOOLEAN *MediaChange
)
/*++
Routine Description:
TODO: Add function description
Arguments:
ScsiDiskDevice - TODO: add argument description
MustReadCap - TODO: add argument description
MediaChange - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
ScsiDiskTestUnitReady (
SCSI_DISK_DEV *ScsiDiskDevice,
BOOLEAN *NeedRetry,
EFI_SCSI_SENSE_DATA **SenseDataArray,
UINTN *NumberOfSenseKeys
)
/*++
Routine Description:
TODO: Add function description
Arguments:
ScsiDiskDevice - TODO: add argument description
NeedRetry - TODO: add argument description
SenseDataArray - TODO: add argument description
NumberOfSenseKeys - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
DetectMediaParsingSenseKeys (
SCSI_DISK_DEV *ScsiDiskDevice,
EFI_SCSI_SENSE_DATA *SenseData,
UINTN NumberOfSenseKeys,
UINTN *Action
)
/*++
Routine Description:
TODO: Add function description
Arguments:
ScsiDiskDevice - TODO: add argument description
SenseData - TODO: add argument description
NumberOfSenseKeys - TODO: add argument description
Action - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
ScsiDiskReadCapacity (
SCSI_DISK_DEV *ScsiDiskDevice,
BOOLEAN *NeedRetry,
EFI_SCSI_SENSE_DATA **SenseDataArray,
UINTN *NumberOfSenseKeys
)
/*++
Routine Description:
TODO: Add function description
Arguments:
ScsiDiskDevice - TODO: add argument description
NeedRetry - TODO: add argument description
SenseDataArray - TODO: add argument description
NumberOfSenseKeys - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
CheckHostAdapterStatus (
UINT8 HostAdapterStatus
)
/*++
Routine Description:
TODO: Add function description
Arguments:
HostAdapterStatus - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
CheckTargetStatus (
UINT8 TargetStatus
)
/*++
Routine Description:
TODO: Add function description
Arguments:
TargetStatus - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
ScsiDiskRequestSenseKeys (
SCSI_DISK_DEV *ScsiDiskDevice,
BOOLEAN *NeedRetry,
EFI_SCSI_SENSE_DATA **SenseDataArray,
UINTN *NumberOfSenseKeys,
BOOLEAN AskResetIfError
)
/*++
Routine Description:
TODO: Add function description
Arguments:
ScsiDiskDevice - TODO: add argument description
NeedRetry - TODO: add argument description
SenseDataArray - TODO: add argument description
NumberOfSenseKeys - TODO: add argument description
AskResetIfError - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
ScsiDiskInquiryDevice (
SCSI_DISK_DEV *ScsiDiskDevice,
BOOLEAN *NeedRetry
)
/*++
Routine Description:
TODO: Add function description
Arguments:
ScsiDiskDevice - TODO: add argument description
NeedRetry - TODO: add argument description
Returns:
TODO: add return values
--*/
;
VOID
ParseInquiryData (
SCSI_DISK_DEV *ScsiDiskDevice
)
/*++
Routine Description:
TODO: Add function description
Arguments:
ScsiDiskDevice - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
ScsiDiskReadSectors (
SCSI_DISK_DEV *ScsiDiskDevice,
VOID *Buffer,
EFI_LBA Lba,
UINTN NumberOfBlocks
)
/*++
Routine Description:
TODO: Add function description
Arguments:
ScsiDiskDevice - TODO: add argument description
Buffer - TODO: add argument description
Lba - TODO: add argument description
NumberOfBlocks - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
ScsiDiskWriteSectors (
SCSI_DISK_DEV *ScsiDiskDevice,
VOID *Buffer,
EFI_LBA Lba,
UINTN NumberOfBlocks
)
/*++
Routine Description:
TODO: Add function description
Arguments:
ScsiDiskDevice - TODO: add argument description
Buffer - TODO: add argument description
Lba - TODO: add argument description
NumberOfBlocks - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
ScsiDiskRead10 (
SCSI_DISK_DEV *ScsiDiskDevice,
BOOLEAN *NeedRetry,
EFI_SCSI_SENSE_DATA **SenseDataArray,
UINTN *NumberOfSenseKeys,
UINT64 Timeout,
UINT8 *DataBuffer,
UINT32 *DataLength,
UINT32 StartLba,
UINT32 SectorSize
)
/*++
Routine Description:
TODO: Add function description
Arguments:
ScsiDiskDevice - TODO: add argument description
NeedRetry - TODO: add argument description
SenseDataArray - TODO: add argument description
NumberOfSenseKeys - TODO: add argument description
Timeout - TODO: add argument description
DataBuffer - TODO: add argument description
DataLength - TODO: add argument description
StartLba - TODO: add argument description
SectorSize - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
ScsiDiskWrite10 (
SCSI_DISK_DEV *ScsiDiskDevice,
BOOLEAN *NeedRetry,
EFI_SCSI_SENSE_DATA **SenseDataArray,
UINTN *NumberOfSenseKeys,
UINT64 Timeout,
UINT8 *DataBuffer,
UINT32 *DataLength,
UINT32 StartLba,
UINT32 SectorSize
)
/*++
Routine Description:
TODO: Add function description
Arguments:
ScsiDiskDevice - TODO: add argument description
NeedRetry - TODO: add argument description
SenseDataArray - TODO: add argument description
NumberOfSenseKeys - TODO: add argument description
Timeout - TODO: add argument description
DataBuffer - TODO: add argument description
DataLength - TODO: add argument description
StartLba - TODO: add argument description
SectorSize - TODO: add argument description
Returns:
TODO: add return values
--*/
;
VOID
GetMediaInfo (
SCSI_DISK_DEV *ScsiDiskDevice,
EFI_SCSI_DISK_CAPACITY_DATA *Capacity
)
/*++
Routine Description:
TODO: Add function description
Arguments:
ScsiDiskDevice - TODO: add argument description
Capacity - TODO: add argument description
Returns:
TODO: add return values
--*/
;
BOOLEAN
ScsiDiskIsNoMedia (
IN EFI_SCSI_SENSE_DATA *SenseData,
IN UINTN SenseCounts
)
/*++
Routine Description:
TODO: Add function description
Arguments:
SenseData - TODO: add argument description
SenseCounts - TODO: add argument description
Returns:
TODO: add return values
--*/
;
BOOLEAN
ScsiDiskIsMediaError (
IN EFI_SCSI_SENSE_DATA *SenseData,
IN UINTN SenseCounts
)
/*++
Routine Description:
TODO: Add function description
Arguments:
SenseData - TODO: add argument description
SenseCounts - TODO: add argument description
Returns:
TODO: add return values
--*/
;
BOOLEAN
ScsiDiskIsHardwareError (
IN EFI_SCSI_SENSE_DATA *SenseData,
IN UINTN SenseCounts
)
/*++
Routine Description:
TODO: Add function description
Arguments:
SenseData - TODO: add argument description
SenseCounts - TODO: add argument description
Returns:
TODO: add return values
--*/
;
BOOLEAN
ScsiDiskIsMediaChange (
IN EFI_SCSI_SENSE_DATA *SenseData,
IN UINTN SenseCounts
)
/*++
Routine Description:
TODO: Add function description
Arguments:
SenseData - TODO: add argument description
SenseCounts - TODO: add argument description
Returns:
TODO: add return values
--*/
;
BOOLEAN
ScsiDiskIsResetBefore (
IN EFI_SCSI_SENSE_DATA *SenseData,
IN UINTN SenseCounts
)
/*++
Routine Description:
TODO: Add function description
Arguments:
SenseData - TODO: add argument description
SenseCounts - TODO: add argument description
Returns:
TODO: add return values
--*/
;
BOOLEAN
ScsiDiskIsDriveReady (
IN EFI_SCSI_SENSE_DATA *SenseData,
IN UINTN SenseCounts,
OUT BOOLEAN *NeedRetry
)
/*++
Routine Description:
TODO: Add function description
Arguments:
SenseData - TODO: add argument description
SenseCounts - TODO: add argument description
NeedRetry - TODO: add argument description
Returns:
TODO: add return values
--*/
;
BOOLEAN
ScsiDiskHaveSenseKey (
IN EFI_SCSI_SENSE_DATA *SenseData,
IN UINTN SenseCounts
)
/*++
Routine Description:
TODO: Add function description
Arguments:
SenseData - TODO: add argument description
SenseCounts - TODO: add argument description
Returns:
TODO: add return values
--*/
;
VOID
ReleaseScsiDiskDeviceResources (
IN SCSI_DISK_DEV *ScsiDiskDevice
)
/*++
Routine Description:
TODO: Add function description
Arguments:
ScsiDiskDevice - TODO: add argument description
Returns:
TODO: add return values
--*/
;
#endif

View File

@@ -0,0 +1,43 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2006, Intel Corporation
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.
-->
<ModuleBuildDescription xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.TianoCore.org/2006/Edk2.0 http://www.TianoCore.org/2006/Edk2.0/SurfaceArea.xsd">
<MbdHeader>
<BaseName>ScsiDisk</BaseName>
<Guid>0A66E322-3740-4cce-AD62-BD172CECCA35</Guid>
<Version>0</Version>
<Description>FIX ME!</Description>
<Copyright>Copyright (c) 2004-2006, Intel Corporation</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>
<Created>2006-03-12 17:09</Created>
<Modified>2006-03-19 15:18</Modified>
</MbdHeader>
<Libraries>
<Library>UefiBootServicesTableLib</Library>
<Library>UefiMemoryLib</Library>
<Library>UefiLib</Library>
<Library>UefiDriverEntryPoint</Library>
<Library>UefiDriverModelLib</Library>
<Library>DxeReportStatusCodeLib</Library>
<Library>BaseDebugLibReportStatusCode</Library>
<Library>EdkDxePrintLib</Library>
<Library>BaseLib</Library>
<Library>EdkScsiLib</Library>
<Library>DxeMemoryAllocationLib</Library>
</Libraries>
</ModuleBuildDescription>

View File

@@ -0,0 +1,67 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2006, Intel Corporation
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.
-->
<ModuleSurfaceArea xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.TianoCore.org/2006/Edk2.0 http://www.TianoCore.org/2006/Edk2.0/SurfaceArea.xsd">
<MsaHeader>
<BaseName>ScsiDisk</BaseName>
<ModuleType>DXE_DRIVER</ModuleType>
<ComponentType>BS_DRIVER</ComponentType>
<Guid>0A66E322-3740-4cce-AD62-BD172CECCA35</Guid>
<Version>0</Version>
<Abstract>Component description file for Scsi Disk module.Revision History</Abstract>
<Description>FIX ME!</Description>
<Copyright>Copyright (c) 2004-2006, Intel Corporation</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>
<Specification>0</Specification>
<Created>2006-03-12 17:09</Created>
<Updated>2006-03-19 15:18</Updated>
</MsaHeader>
<LibraryClassDefinitions>
<LibraryClass Usage="ALWAYS_CONSUMED">DebugLib</LibraryClass>
<LibraryClass Usage="ALWAYS_CONSUMED">UefiDriverModelLib</LibraryClass>
<LibraryClass Usage="ALWAYS_CONSUMED">UefiDriverEntryPoint</LibraryClass>
<LibraryClass Usage="ALWAYS_CONSUMED">BaseLib</LibraryClass>
<LibraryClass Usage="ALWAYS_CONSUMED">UefiLib</LibraryClass>
<LibraryClass Usage="ALWAYS_CONSUMED">BaseMemoryLib</LibraryClass>
<LibraryClass Usage="ALWAYS_CONSUMED">EdkScsiLib</LibraryClass>
<LibraryClass Usage="ALWAYS_CONSUMED">MemoryAllocationLib</LibraryClass>
<LibraryClass Usage="ALWAYS_CONSUMED">UefiBootServicesTableLib</LibraryClass>
</LibraryClassDefinitions>
<SourceFiles>
<Filename>ScsiDisk.h</Filename>
<Filename>ScsiDisk.c</Filename>
<Filename>ComponentName.c</Filename>
</SourceFiles>
<Includes>
<PackageName>MdePkg</PackageName>
<PackageName>EdkModulePkg</PackageName>
</Includes>
<Protocols>
<Protocol Usage="TO_START">ScsiIo</Protocol>
<Protocol Usage="BY_START">BlockIo</Protocol>
</Protocols>
<Externs>
<Extern>
<ModuleEntryPoint></ModuleEntryPoint>
</Extern>
<Extern>
<DriverBinding>gScsiDiskDriverBinding</DriverBinding>
<ComponentName>gScsiDiskComponentName</ComponentName>
</Extern>
</Externs>
</ModuleSurfaceArea>

View File

@@ -0,0 +1,47 @@
<?xml version="1.0" encoding="UTF-8"?><!-- Copyright (c) 2006, Intel Corporation
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.-->
<project basedir="." default="ScsiDisk"><!--Apply external ANT tasks-->
<taskdef resource="GenBuild.tasks"/>
<taskdef resource="net/sf/antcontrib/antlib.xml"/>
<property environment="env"/>
<property name="WORKSPACE_DIR" value="${env.WORKSPACE}"/>
<import file="${WORKSPACE_DIR}\Tools\Conf\BuildMacro.xml"/><!--MODULE_RELATIVE PATH is relative to PACKAGE_DIR-->
<property name="MODULE_RELATIVE_PATH" value="Bus\Scsi\ScsiDisk\Dxe"/>
<property name="MODULE_DIR" value="${PACKAGE_DIR}\${MODULE_RELATIVE_PATH}"/>
<property name="COMMON_FILE" value="${WORKSPACE_DIR}\Tools\Conf\Common.xml"/>
<target name="ScsiDisk">
<GenBuild baseName="ScsiDisk" mbdFilename="${MODULE_DIR}\ScsiDisk.mbd" msaFilename="${MODULE_DIR}\ScsiDisk.msa"/>
</target>
<target depends="ScsiDisk_clean" name="clean"/>
<target depends="ScsiDisk_cleanall" name="cleanall"/>
<target name="ScsiDisk_clean">
<OutputDirSetup baseName="ScsiDisk" mbdFilename="${MODULE_DIR}\ScsiDisk.mbd" msaFilename="${MODULE_DIR}\ScsiDisk.msa"/>
<if>
<available file="${DEST_DIR_OUTPUT}\ScsiDisk_build.xml"/>
<then>
<ant antfile="${DEST_DIR_OUTPUT}\ScsiDisk_build.xml" target="clean"/>
</then>
</if>
<delete dir="${DEST_DIR_OUTPUT}" excludes="*.xml"/>
</target>
<target name="ScsiDisk_cleanall">
<OutputDirSetup baseName="ScsiDisk" mbdFilename="${MODULE_DIR}\ScsiDisk.mbd" msaFilename="${MODULE_DIR}\ScsiDisk.msa"/>
<if>
<available file="${DEST_DIR_OUTPUT}\ScsiDisk_build.xml"/>
<then>
<ant antfile="${DEST_DIR_OUTPUT}\ScsiDisk_build.xml" target="cleanall"/>
</then>
</if>
<delete dir="${DEST_DIR_OUTPUT}"/>
<delete dir="${DEST_DIR_DEBUG}"/>
<delete>
<fileset dir="${BIN_DIR}" includes="**ScsiDisk*"/>
</delete>
</target>
</project>