| /** @file | |
| Header file for IDE Bus Driver, containing the helper functions' | |
| entire prototype. | |
| Copyright (c) 2006 - 2007 Intel Corporation. <BR> | |
| 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. | |
| @par Revision Reference: | |
| 2002-6: Add Atapi6 enhancement, support >120GB hard disk, including | |
| Add - IDEBlkIoReadBlocksExt() func definition | |
| Add - IDEBlkIoWriteBlocksExt() func definition | |
| **/ | |
| #ifndef _IDE_H | |
| #define _IDE_H | |
| // | |
| // Helper functions Prototype | |
| // | |
| /** | |
| TODO: Add function description | |
| @param This TODO: add argument description | |
| @param Controller TODO: add argument description | |
| @param Handle TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| DeRegisterIdeDevice ( | |
| IN EFI_DRIVER_BINDING_PROTOCOL *This, | |
| IN EFI_HANDLE Controller, | |
| IN EFI_HANDLE Handle | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param Controller TODO: add argument description | |
| @param PciIo TODO: add argument description | |
| @param ParentDevicePath TODO: add argument description | |
| @param RemainingDevicePath TODO: add argument description | |
| 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 | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param PciIo TODO: add argument description | |
| @param Port TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| UINT8 | |
| IDEReadPortB ( | |
| IN EFI_PCI_IO_PROTOCOL *PciIo, | |
| IN UINT16 Port | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param PciIo TODO: add argument description | |
| @param Port TODO: add argument description | |
| @param Count TODO: add argument description | |
| @param Buffer TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| VOID | |
| IDEReadPortWMultiple ( | |
| IN EFI_PCI_IO_PROTOCOL *PciIo, | |
| IN UINT16 Port, | |
| IN UINTN Count, | |
| OUT VOID *Buffer | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param PciIo TODO: add argument description | |
| @param Port TODO: add argument description | |
| @param Data TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| VOID | |
| IDEWritePortB ( | |
| IN EFI_PCI_IO_PROTOCOL *PciIo, | |
| IN UINT16 Port, | |
| IN UINT8 Data | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param PciIo TODO: add argument description | |
| @param Port TODO: add argument description | |
| @param Data TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| VOID | |
| IDEWritePortW ( | |
| IN EFI_PCI_IO_PROTOCOL *PciIo, | |
| IN UINT16 Port, | |
| IN UINT16 Data | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param PciIo TODO: add argument description | |
| @param Port TODO: add argument description | |
| @param Count TODO: add argument description | |
| @param Buffer TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| VOID | |
| IDEWritePortWMultiple ( | |
| IN EFI_PCI_IO_PROTOCOL *PciIo, | |
| IN UINT16 Port, | |
| IN UINTN Count, | |
| IN VOID *Buffer | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param PciIo TODO: add argument description | |
| @param IdeRegsBaseAddr TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| GetIdeRegistersBaseAddr ( | |
| IN EFI_PCI_IO_PROTOCOL *PciIo, | |
| OUT IDE_REGISTERS_BASE_ADDR *IdeRegsBaseAddr | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| ReassignIdeResources ( | |
| IN IDE_BLK_IO_DEV *IdeDev | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| DiscoverIdeDevice ( | |
| IN IDE_BLK_IO_DEV *IdeDev | |
| ) | |
| ; | |
| /** | |
| This interface is used to initialize all state data related to the | |
| detection of one channel. | |
| @retval EFI_SUCCESS Completed successfully. | |
| **/ | |
| EFI_STATUS | |
| InitializeIDEChannelData ( | |
| VOID | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| DetectIDEController ( | |
| IN IDE_BLK_IO_DEV *IdeDev | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param TimeoutInMilliSeconds TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| DRQClear ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| IN UINTN TimeoutInMilliSeconds | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param TimeoutInMilliSeconds TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| DRQClear2 ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| IN UINTN TimeoutInMilliSeconds | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param TimeoutInMilliSeconds TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| DRQReady ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| IN UINTN TimeoutInMilliSeconds | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param TimeoutInMilliSeconds TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| DRQReady2 ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| IN UINTN TimeoutInMilliSeconds | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param TimeoutInMilliSeconds TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| WaitForBSYClear ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| IN UINTN TimeoutInMilliSeconds | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param TimeoutInMilliSeconds TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| WaitForBSYClear2 ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| IN UINTN TimeoutInMilliSeconds | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param DelayInMilliSeconds TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| DRDYReady ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| IN UINTN DelayInMilliSeconds | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param DelayInMilliSeconds TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| DRDYReady2 ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| IN UINTN DelayInMilliSeconds | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param Destination TODO: add argument description | |
| @param Source TODO: add argument description | |
| @param Size TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| VOID | |
| SwapStringChars ( | |
| IN CHAR8 *Destination, | |
| IN CHAR8 *Source, | |
| IN UINT32 Size | |
| ) | |
| ; | |
| // | |
| // ATA device functions' prototype | |
| // | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| ATAIdentify ( | |
| IN IDE_BLK_IO_DEV *IdeDev | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| VOID | |
| PrintAtaModuleName ( | |
| IN IDE_BLK_IO_DEV *IdeDev | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param Buffer TODO: add argument description | |
| @param ByteCount TODO: add argument description | |
| @param AtaCommand TODO: add argument description | |
| @param Head TODO: add argument description | |
| @param SectorCount TODO: add argument description | |
| @param SectorNumber TODO: add argument description | |
| @param CylinderLsb TODO: add argument description | |
| @param CylinderMsb TODO: add argument description | |
| 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 | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param Buffer TODO: add argument description | |
| @param ByteCount TODO: add argument description | |
| @param AtaCommand TODO: add argument description | |
| @param Head TODO: add argument description | |
| @param SectorCount TODO: add argument description | |
| @param SectorNumber TODO: add argument description | |
| @param CylinderLsb TODO: add argument description | |
| @param CylinderMsb TODO: add argument description | |
| 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 | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| CheckErrorStatus ( | |
| IN IDE_BLK_IO_DEV *IdeDev | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param DataBuffer TODO: add argument description | |
| @param Lba TODO: add argument description | |
| @param NumberOfBlocks TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| AtaReadSectors ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| IN VOID *DataBuffer, | |
| IN EFI_LBA Lba, | |
| IN UINTN NumberOfBlocks | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param BufferData TODO: add argument description | |
| @param Lba TODO: add argument description | |
| @param NumberOfBlocks TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| AtaWriteSectors ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| IN VOID *BufferData, | |
| IN EFI_LBA Lba, | |
| IN UINTN NumberOfBlocks | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| AtaSoftReset ( | |
| IN IDE_BLK_IO_DEV *IdeDev | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeBlkIoDevice TODO: add argument description | |
| @param MediaId TODO: add argument description | |
| @param LBA TODO: add argument description | |
| @param BufferSize TODO: add argument description | |
| @param Buffer TODO: add argument description | |
| 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 | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeBlkIoDevice TODO: add argument description | |
| @param MediaId TODO: add argument description | |
| @param LBA TODO: add argument description | |
| @param BufferSize TODO: add argument description | |
| @param Buffer TODO: add argument description | |
| 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 | |
| ) | |
| ; | |
| // | |
| // ATAPI device functions' prototype | |
| // | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| ATAPIIdentify ( | |
| IN IDE_BLK_IO_DEV *IdeDev | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| AtapiInquiry ( | |
| IN IDE_BLK_IO_DEV *IdeDev | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param Packet TODO: add argument description | |
| @param Buffer TODO: add argument description | |
| @param ByteCount TODO: add argument description | |
| @param TimeOut TODO: add argument description | |
| 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 | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param Packet TODO: add argument description | |
| @param Buffer TODO: add argument description | |
| @param ByteCount TODO: add argument description | |
| @param TimeOut TODO: add argument description | |
| 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 | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param Buffer TODO: add argument description | |
| @param ByteCount TODO: add argument description | |
| @param Read TODO: add argument description | |
| @param TimeOut TODO: add argument description | |
| 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 | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param IdeDev TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| AtapiTestUnitReady ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| OUT UINTN *SenseCount | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param SenseCounts TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| AtapiRequestSense ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| OUT UINTN *SenseCounts | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param IdeDev TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| AtapiReadCapacity ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| OUT UINTN *SenseCount | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param MediaChange TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| AtapiDetectMedia ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| OUT BOOLEAN *MediaChange | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param Buffer TODO: add argument description | |
| @param Lba TODO: add argument description | |
| @param NumberOfBlocks TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| AtapiReadSectors ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| IN VOID *Buffer, | |
| IN EFI_LBA Lba, | |
| IN UINTN NumberOfBlocks | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param Buffer TODO: add argument description | |
| @param Lba TODO: add argument description | |
| @param NumberOfBlocks TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| AtapiWriteSectors ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| IN VOID *Buffer, | |
| IN EFI_LBA Lba, | |
| IN UINTN NumberOfBlocks | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| AtapiSoftReset ( | |
| IN IDE_BLK_IO_DEV *IdeDev | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeBlkIoDevice TODO: add argument description | |
| @param MediaId TODO: add argument description | |
| @param LBA TODO: add argument description | |
| @param BufferSize TODO: add argument description | |
| @param Buffer TODO: add argument description | |
| 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 | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeBlkIoDevice TODO: add argument description | |
| @param MediaId TODO: add argument description | |
| @param LBA TODO: add argument description | |
| @param BufferSize TODO: add argument description | |
| @param Buffer TODO: add argument description | |
| 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 | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param SenseCount TODO: add argument description | |
| @param Result TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| ParseSenseData ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| IN UINTN SenseCount, | |
| OUT SENSE_RESULT *Result | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| AtapiReadPendingData ( | |
| IN IDE_BLK_IO_DEV *IdeDev | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param WriteProtected TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| IsLS120orZipWriteProtected ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| OUT BOOLEAN *WriteProtected | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeBlkIoDevice TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| VOID | |
| ReleaseIdeResources ( | |
| IN IDE_BLK_IO_DEV *IdeBlkIoDevice | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param TransferMode TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| SetDeviceTransferMode ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| IN ATA_TRANSFER_MODE *TransferMode | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param NativeMaxAddress TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| ReadNativeMaxAddress ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| OUT EFI_LBA *NativeMaxAddress | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param MaxAddress TODO: add argument description | |
| @param bVolatile TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| SetMaxAddress ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| IN EFI_LBA MaxAddress, | |
| IN BOOLEAN bVolatile | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param AtaCommand TODO: add argument description | |
| @param Device TODO: add argument description | |
| @param Feature TODO: add argument description | |
| @param SectorCount TODO: add argument description | |
| @param LbaLow TODO: add argument description | |
| @param LbaMiddle TODO: add argument description | |
| @param LbaHigh TODO: add argument description | |
| 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 | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param AtaCommand TODO: add argument description | |
| @param Device TODO: add argument description | |
| @param Feature TODO: add argument description | |
| @param SectorCount TODO: add argument description | |
| @param LbaAddress TODO: add argument description | |
| 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 | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param DataBuffer TODO: add argument description | |
| @param StartLba TODO: add argument description | |
| @param NumberOfBlocks TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| AtaReadSectorsExt ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| IN VOID *DataBuffer, | |
| IN EFI_LBA StartLba, | |
| IN UINTN NumberOfBlocks | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param DataBuffer TODO: add argument description | |
| @param StartLba TODO: add argument description | |
| @param NumberOfBlocks TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| AtaWriteSectorsExt ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| IN VOID *DataBuffer, | |
| IN EFI_LBA StartLba, | |
| IN UINTN NumberOfBlocks | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param DataBuffer TODO: add argument description | |
| @param StartLba TODO: add argument description | |
| @param NumberOfBlocks TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| AtaUdmaReadExt ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| IN VOID *DataBuffer, | |
| IN EFI_LBA StartLba, | |
| IN UINTN NumberOfBlocks | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param DataBuffer TODO: add argument description | |
| @param StartLba TODO: add argument description | |
| @param NumberOfBlocks TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| AtaUdmaRead ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| IN VOID *DataBuffer, | |
| IN EFI_LBA StartLba, | |
| IN UINTN NumberOfBlocks | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param DataBuffer TODO: add argument description | |
| @param StartLba TODO: add argument description | |
| @param NumberOfBlocks TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| AtaUdmaWriteExt ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| IN VOID *DataBuffer, | |
| IN EFI_LBA StartLba, | |
| IN UINTN NumberOfBlocks | |
| ) | |
| ; | |
| /** | |
| Perform an ATA Udma operation (Read, ReadExt, Write, WriteExt). | |
| @param[in] *IdeDev | |
| pointer pointing to IDE_BLK_IO_DEV data structure, used | |
| to record all the information of the IDE device. | |
| @param[in] *DataBuffer | |
| A pointer to the source buffer for the data. | |
| @param[in] StartLba | |
| The starting logical block address to write to | |
| on the device media. | |
| @param[in] NumberOfBlocks | |
| The number of transfer data blocks. | |
| @param[in] UdmaOp | |
| The perform operations could be AtaUdmaReadOp, AtaUdmaReadExOp, | |
| AtaUdmaWriteOp, AtaUdmaWriteExOp | |
| @return The device status of UDMA operation. If the operation is | |
| successful, return EFI_SUCCESS. | |
| **/ | |
| EFI_STATUS | |
| DoAtaUdma ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| IN VOID *DataBuffer, | |
| IN EFI_LBA StartLba, | |
| IN UINTN NumberOfBlocks, | |
| IN ATA_UDMA_OPERATION UdmaOp | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param DataBuffer TODO: add argument description | |
| @param StartLba TODO: add argument description | |
| @param NumberOfBlocks TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| AtaUdmaWrite ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| IN VOID *DataBuffer, | |
| IN EFI_LBA StartLba, | |
| IN UINTN NumberOfBlocks | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param AtaCommand TODO: add argument description | |
| @param Device TODO: add argument description | |
| @param Feature TODO: add argument description | |
| @param SectorCount TODO: add argument description | |
| @param LbaAddress TODO: add argument description | |
| 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 | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param AtaCommand TODO: add argument description | |
| @param Device TODO: add argument description | |
| @param Feature TODO: add argument description | |
| @param SectorCount TODO: add argument description | |
| @param LbaAddress TODO: add argument description | |
| 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 | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| AtaAtapi6Identify ( | |
| IN IDE_BLK_IO_DEV *IdeDev | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| VOID | |
| AtaSMARTSupport ( | |
| IN IDE_BLK_IO_DEV *IdeDev | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param Buffer TODO: add argument description | |
| @param ByteCount TODO: add argument description | |
| @param AtaCommand TODO: add argument description | |
| @param StartLba TODO: add argument description | |
| @param SectorCount TODO: add argument description | |
| 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 | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param Buffer TODO: add argument description | |
| @param ByteCount TODO: add argument description | |
| @param AtaCommand TODO: add argument description | |
| @param StartLba TODO: add argument description | |
| @param SectorCount TODO: add argument description | |
| 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 | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| @param DriveParameters TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| SetDriveParameters ( | |
| IN IDE_BLK_IO_DEV *IdeDev, | |
| IN ATA_DRIVE_PARMS *DriveParameters | |
| ) | |
| ; | |
| /** | |
| TODO: Add function description | |
| @param IdeDev TODO: add argument description | |
| TODO: add return values | |
| **/ | |
| EFI_STATUS | |
| EnableInterrupt ( | |
| IN IDE_BLK_IO_DEV *IdeDev | |
| ) | |
| ; | |
| /** | |
| Clear pending IDE interrupt before OS loader/kernel take control of the IDE device. | |
| @param[in] Event Pointer to this event | |
| @param[in] Context Event hanlder private data | |
| @retval EFI_SUCCESS - Interrupt cleared | |
| **/ | |
| VOID | |
| EFIAPI | |
| ClearInterrupt ( | |
| IN EFI_EVENT Event, | |
| IN VOID *Context | |
| ) | |
| ; | |
| #endif |