blob: 4c43ab94cd6c85424f5f070976a9ae3ec3c82e32 [file] [log] [blame]
/*++
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:
ide.h
Abstract:
Header file for IDE Bus Driver, containing the helper functions'
entire prototype.
Revision History
2002-6: Add Atapi6 enhancement, support >120GB hard disk, including
Add - IDEBlkIoReadBlocksExt() func definition
Add - IDEBlkIoWriteBlocksExt() func definition
++*/
// TODO: fix comment to end with --*/
#ifndef _IDE_H
#define _IDE_H
//
// Helper functions Prototype
//
EFI_STATUS
DeRegisterIdeDevice (
IN EFI_DRIVER_BINDING_PROTOCOL *This,
IN EFI_HANDLE Controller,
IN EFI_HANDLE Handle
)
/*++
Routine Description:
TODO: Add function description
Arguments:
This - TODO: add argument description
Controller - TODO: add argument description
Handle - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
EnableIdeDevice (
IN EFI_HANDLE Controller,
IN EFI_PCI_IO_PROTOCOL *PciIo,
IN EFI_DEVICE_PATH_PROTOCOL *ParentDevicePath,
IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath
)
/*++
Routine Description:
TODO: Add function description
Arguments:
Controller - TODO: add argument description
PciIo - TODO: add argument description
ParentDevicePath - TODO: add argument description
RemainingDevicePath - TODO: add argument description
Returns:
TODO: add return values
--*/
;
UINT8
IDEReadPortB (
IN EFI_PCI_IO_PROTOCOL *PciIo,
IN UINT16 Port
)
/*++
Routine Description:
TODO: Add function description
Arguments:
PciIo - TODO: add argument description
Port - TODO: add argument description
Returns:
TODO: add return values
--*/
;
VOID
IDEReadPortWMultiple (
IN EFI_PCI_IO_PROTOCOL *PciIo,
IN UINT16 Port,
IN UINTN Count,
OUT VOID *Buffer
)
/*++
Routine Description:
TODO: Add function description
Arguments:
PciIo - TODO: add argument description
Port - TODO: add argument description
Count - TODO: add argument description
Buffer - TODO: add argument description
Returns:
TODO: add return values
--*/
;
VOID
IDEWritePortB (
IN EFI_PCI_IO_PROTOCOL *PciIo,
IN UINT16 Port,
IN UINT8 Data
)
/*++
Routine Description:
TODO: Add function description
Arguments:
PciIo - TODO: add argument description
Port - TODO: add argument description
Data - TODO: add argument description
Returns:
TODO: add return values
--*/
;
VOID
IDEWritePortW (
IN EFI_PCI_IO_PROTOCOL *PciIo,
IN UINT16 Port,
IN UINT16 Data
)
/*++
Routine Description:
TODO: Add function description
Arguments:
PciIo - TODO: add argument description
Port - TODO: add argument description
Data - TODO: add argument description
Returns:
TODO: add return values
--*/
;
VOID
IDEWritePortWMultiple (
IN EFI_PCI_IO_PROTOCOL *PciIo,
IN UINT16 Port,
IN UINTN Count,
IN VOID *Buffer
)
/*++
Routine Description:
TODO: Add function description
Arguments:
PciIo - TODO: add argument description
Port - TODO: add argument description
Count - TODO: add argument description
Buffer - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
GetIdeRegistersBaseAddr (
IN EFI_PCI_IO_PROTOCOL *PciIo,
OUT IDE_REGISTERS_BASE_ADDR *IdeRegsBaseAddr
)
/*++
Routine Description:
TODO: Add function description
Arguments:
PciIo - TODO: add argument description
IdeRegsBaseAddr - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
ReassignIdeResources (
IN IDE_BLK_IO_DEV *IdeDev
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
DiscoverIdeDevice (
IN IDE_BLK_IO_DEV *IdeDev
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
DetectIDEController (
IN IDE_BLK_IO_DEV *IdeDev
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
DRQClear (
IN IDE_BLK_IO_DEV *IdeDev,
IN UINTN TimeoutInMilliSeconds
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
TimeoutInMilliSeconds - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
DRQClear2 (
IN IDE_BLK_IO_DEV *IdeDev,
IN UINTN TimeoutInMilliSeconds
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
TimeoutInMilliSeconds - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
DRQReady (
IN IDE_BLK_IO_DEV *IdeDev,
IN UINTN TimeoutInMilliSeconds
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
TimeoutInMilliSeconds - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
DRQReady2 (
IN IDE_BLK_IO_DEV *IdeDev,
IN UINTN TimeoutInMilliSeconds
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
TimeoutInMilliSeconds - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
WaitForBSYClear (
IN IDE_BLK_IO_DEV *IdeDev,
IN UINTN TimeoutInMilliSeconds
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
TimeoutInMilliSeconds - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
WaitForBSYClear2 (
IN IDE_BLK_IO_DEV *IdeDev,
IN UINTN TimeoutInMilliSeconds
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
TimeoutInMilliSeconds - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
DRDYReady (
IN IDE_BLK_IO_DEV *IdeDev,
IN UINTN DelayInMilliSeconds
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
DelayInMilliSeconds - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
DRDYReady2 (
IN IDE_BLK_IO_DEV *IdeDev,
IN UINTN DelayInMilliSeconds
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
DelayInMilliSeconds - TODO: add argument description
Returns:
TODO: add return values
--*/
;
VOID
SwapStringChars (
IN CHAR8 *Destination,
IN CHAR8 *Source,
IN UINT32 Size
)
/*++
Routine Description:
TODO: Add function description
Arguments:
Destination - TODO: add argument description
Source - TODO: add argument description
Size - TODO: add argument description
Returns:
TODO: add return values
--*/
;
//
// ATA device functions' prototype
//
EFI_STATUS
ATAIdentify (
IN IDE_BLK_IO_DEV *IdeDev
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
Returns:
TODO: add return values
--*/
;
VOID
PrintAtaModuleName (
IN IDE_BLK_IO_DEV *IdeDev
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtaPioDataIn (
IN IDE_BLK_IO_DEV *IdeDev,
IN VOID *Buffer,
IN UINT32 ByteCount,
IN UINT8 AtaCommand,
IN UINT8 Head,
IN UINT8 SectorCount,
IN UINT8 SectorNumber,
IN UINT8 CylinderLsb,
IN UINT8 CylinderMsb
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
Buffer - TODO: add argument description
ByteCount - TODO: add argument description
AtaCommand - TODO: add argument description
Head - TODO: add argument description
SectorCount - TODO: add argument description
SectorNumber - TODO: add argument description
CylinderLsb - TODO: add argument description
CylinderMsb - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtaPioDataOut (
IN IDE_BLK_IO_DEV *IdeDev,
IN VOID *Buffer,
IN UINT32 ByteCount,
IN UINT8 AtaCommand,
IN UINT8 Head,
IN UINT8 SectorCount,
IN UINT8 SectorNumber,
IN UINT8 CylinderLsb,
IN UINT8 CylinderMsb
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
Buffer - TODO: add argument description
ByteCount - TODO: add argument description
AtaCommand - TODO: add argument description
Head - TODO: add argument description
SectorCount - TODO: add argument description
SectorNumber - TODO: add argument description
CylinderLsb - TODO: add argument description
CylinderMsb - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
CheckErrorStatus (
IN IDE_BLK_IO_DEV *IdeDev
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtaReadSectors (
IN IDE_BLK_IO_DEV *IdeDev,
IN VOID *DataBuffer,
IN EFI_LBA Lba,
IN UINTN NumberOfBlocks
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
DataBuffer - TODO: add argument description
Lba - TODO: add argument description
NumberOfBlocks - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtaWriteSectors (
IN IDE_BLK_IO_DEV *IdeDev,
IN VOID *BufferData,
IN EFI_LBA Lba,
IN UINTN NumberOfBlocks
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
BufferData - TODO: add argument description
Lba - TODO: add argument description
NumberOfBlocks - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtaSoftReset (
IN IDE_BLK_IO_DEV *IdeDev
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtaBlkIoReadBlocks (
IN IDE_BLK_IO_DEV *IdeBlkIoDevice,
IN UINT32 MediaId,
IN EFI_LBA LBA,
IN UINTN BufferSize,
OUT VOID *Buffer
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeBlkIoDevice - 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
AtaBlkIoWriteBlocks (
IN IDE_BLK_IO_DEV *IdeBlkIoDevice,
IN UINT32 MediaId,
IN EFI_LBA LBA,
IN UINTN BufferSize,
OUT VOID *Buffer
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeBlkIoDevice - 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
--*/
;
//
// ATAPI device functions' prototype
//
EFI_STATUS
ATAPIIdentify (
IN IDE_BLK_IO_DEV *IdeDev
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtapiInquiry (
IN IDE_BLK_IO_DEV *IdeDev
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtapiPacketCommandIn (
IN IDE_BLK_IO_DEV *IdeDev,
IN ATAPI_PACKET_COMMAND *Packet,
IN UINT16 *Buffer,
IN UINT32 ByteCount,
IN UINTN TimeOut
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
Packet - TODO: add argument description
Buffer - TODO: add argument description
ByteCount - TODO: add argument description
TimeOut - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtapiPacketCommandOut (
IN IDE_BLK_IO_DEV *IdeDev,
IN ATAPI_PACKET_COMMAND *Packet,
IN UINT16 *Buffer,
IN UINT32 ByteCount,
IN UINTN TimeOut
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
Packet - TODO: add argument description
Buffer - TODO: add argument description
ByteCount - TODO: add argument description
TimeOut - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
PioReadWriteData (
IN IDE_BLK_IO_DEV *IdeDev,
IN UINT16 *Buffer,
IN UINT32 ByteCount,
IN BOOLEAN Read,
IN UINTN TimeOut
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
Buffer - TODO: add argument description
ByteCount - TODO: add argument description
Read - TODO: add argument description
TimeOut - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtapiTestUnitReady (
IN IDE_BLK_IO_DEV *IdeDev
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtapiRequestSense (
IN IDE_BLK_IO_DEV *IdeDev,
OUT UINTN *SenseCounts
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
SenseCounts - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtapiReadCapacity (
IN IDE_BLK_IO_DEV *IdeDev
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtapiDetectMedia (
IN IDE_BLK_IO_DEV *IdeDev,
OUT BOOLEAN *MediaChange
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
MediaChange - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtapiReadSectors (
IN IDE_BLK_IO_DEV *IdeDev,
IN VOID *Buffer,
IN EFI_LBA Lba,
IN UINTN NumberOfBlocks
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - 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
AtapiWriteSectors (
IN IDE_BLK_IO_DEV *IdeDev,
IN VOID *Buffer,
IN EFI_LBA Lba,
IN UINTN NumberOfBlocks
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - 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
AtapiSoftReset (
IN IDE_BLK_IO_DEV *IdeDev
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtapiBlkIoReadBlocks (
IN IDE_BLK_IO_DEV *IdeBlkIoDevice,
IN UINT32 MediaId,
IN EFI_LBA LBA,
IN UINTN BufferSize,
OUT VOID *Buffer
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeBlkIoDevice - 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
AtapiBlkIoWriteBlocks (
IN IDE_BLK_IO_DEV *IdeBlkIoDevice,
IN UINT32 MediaId,
IN EFI_LBA LBA,
IN UINTN BufferSize,
OUT VOID *Buffer
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeBlkIoDevice - 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
--*/
;
BOOLEAN
IsNoMedia (
IN REQUEST_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
IsMediaError (
IN REQUEST_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
IsMediaChange (
IN REQUEST_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
IsDriveReady (
IN REQUEST_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
HaveSenseKey (
IN REQUEST_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
--*/
;
EFI_STATUS
IsLS120orZipWriteProtected (
IN IDE_BLK_IO_DEV *IdeDev,
OUT BOOLEAN *WriteProtected
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
WriteProtected - TODO: add argument description
Returns:
TODO: add return values
--*/
;
VOID
ReleaseIdeResources (
IN IDE_BLK_IO_DEV *IdeBlkIoDevice
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeBlkIoDevice - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
SetDeviceTransferMode (
IN IDE_BLK_IO_DEV *IdeDev,
IN ATA_TRANSFER_MODE *TransferMode
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
TransferMode - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
ReadNativeMaxAddress (
IN IDE_BLK_IO_DEV *IdeDev,
OUT EFI_LBA *NativeMaxAddress
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
NativeMaxAddress - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
SetMaxAddress (
IN IDE_BLK_IO_DEV *IdeDev,
IN EFI_LBA MaxAddress,
IN BOOLEAN bVolatile
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
MaxAddress - TODO: add argument description
bVolatile - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtaNonDataCommandIn (
IN IDE_BLK_IO_DEV *IdeDev,
IN UINT8 AtaCommand,
IN UINT8 Device,
IN UINT8 Feature,
IN UINT8 SectorCount,
IN UINT8 LbaLow,
IN UINT8 LbaMiddle,
IN UINT8 LbaHigh
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
AtaCommand - TODO: add argument description
Device - TODO: add argument description
Feature - TODO: add argument description
SectorCount - TODO: add argument description
LbaLow - TODO: add argument description
LbaMiddle - TODO: add argument description
LbaHigh - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtaNonDataCommandInExt (
IN IDE_BLK_IO_DEV *IdeDev,
IN UINT8 AtaCommand,
IN UINT8 Device,
IN UINT16 Feature,
IN UINT16 SectorCount,
IN EFI_LBA LbaAddress
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
AtaCommand - TODO: add argument description
Device - TODO: add argument description
Feature - TODO: add argument description
SectorCount - TODO: add argument description
LbaAddress - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtaReadSectorsExt (
IN IDE_BLK_IO_DEV *IdeDev,
IN VOID *DataBuffer,
IN EFI_LBA StartLba,
IN UINTN NumberOfBlocks
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
DataBuffer - TODO: add argument description
StartLba - TODO: add argument description
NumberOfBlocks - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtaWriteSectorsExt (
IN IDE_BLK_IO_DEV *IdeDev,
IN VOID *DataBuffer,
IN EFI_LBA StartLba,
IN UINTN NumberOfBlocks
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
DataBuffer - TODO: add argument description
StartLba - TODO: add argument description
NumberOfBlocks - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtaUdmaReadExt (
IN IDE_BLK_IO_DEV *IdeDev,
IN VOID *DataBuffer,
IN EFI_LBA StartLba,
IN UINTN NumberOfBlocks
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
DataBuffer - TODO: add argument description
StartLba - TODO: add argument description
NumberOfBlocks - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtaUdmaRead (
IN IDE_BLK_IO_DEV *IdeDev,
IN VOID *DataBuffer,
IN EFI_LBA StartLba,
IN UINTN NumberOfBlocks
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
DataBuffer - TODO: add argument description
StartLba - TODO: add argument description
NumberOfBlocks - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtaUdmaWriteExt (
IN IDE_BLK_IO_DEV *IdeDev,
IN VOID *DataBuffer,
IN EFI_LBA StartLba,
IN UINTN NumberOfBlocks
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
DataBuffer - TODO: add argument description
StartLba - TODO: add argument description
NumberOfBlocks - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtaUdmaWrite (
IN IDE_BLK_IO_DEV *IdeDev,
IN VOID *DataBuffer,
IN EFI_LBA StartLba,
IN UINTN NumberOfBlocks
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
DataBuffer - TODO: add argument description
StartLba - TODO: add argument description
NumberOfBlocks - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtaCommandIssueExt (
IN IDE_BLK_IO_DEV *IdeDev,
IN UINT8 AtaCommand,
IN UINT8 Device,
IN UINT16 Feature,
IN UINT16 SectorCount,
IN EFI_LBA LbaAddress
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
AtaCommand - TODO: add argument description
Device - TODO: add argument description
Feature - TODO: add argument description
SectorCount - TODO: add argument description
LbaAddress - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtaCommandIssue (
IN IDE_BLK_IO_DEV *IdeDev,
IN UINT8 AtaCommand,
IN UINT8 Device,
IN UINT16 Feature,
IN UINT16 SectorCount,
IN EFI_LBA LbaAddress
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
AtaCommand - TODO: add argument description
Device - TODO: add argument description
Feature - TODO: add argument description
SectorCount - TODO: add argument description
LbaAddress - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtaAtapi6Identify (
IN IDE_BLK_IO_DEV *IdeDev
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
Returns:
TODO: add return values
--*/
;
VOID
AtaSMARTSupport (
IN IDE_BLK_IO_DEV *IdeDev
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtaPioDataInExt (
IN IDE_BLK_IO_DEV *IdeDev,
IN OUT VOID *Buffer,
IN UINT32 ByteCount,
IN UINT8 AtaCommand,
IN EFI_LBA StartLba,
IN UINT16 SectorCount
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
Buffer - TODO: add argument description
ByteCount - TODO: add argument description
AtaCommand - TODO: add argument description
StartLba - TODO: add argument description
SectorCount - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
AtaPioDataOutExt (
IN IDE_BLK_IO_DEV *IdeDev,
IN VOID *Buffer,
IN UINT32 ByteCount,
IN UINT8 AtaCommand,
IN EFI_LBA StartLba,
IN UINT16 SectorCount
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
Buffer - TODO: add argument description
ByteCount - TODO: add argument description
AtaCommand - TODO: add argument description
StartLba - TODO: add argument description
SectorCount - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
SetDriveParameters (
IN IDE_BLK_IO_DEV *IdeDev,
IN ATA_DRIVE_PARMS *DriveParameters
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
DriveParameters - TODO: add argument description
Returns:
TODO: add return values
--*/
;
EFI_STATUS
EnableInterrupt (
IN IDE_BLK_IO_DEV *IdeDev
)
/*++
Routine Description:
TODO: Add function description
Arguments:
IdeDev - TODO: add argument description
Returns:
TODO: add return values
--*/
;
#endif