]> git.proxmox.com Git - mirror_edk2.git/blobdiff - IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/Ide.h
Function AtaEnableLongPhysicalSector () added for Long physical sector process.
[mirror_edk2.git] / IntelFrameworkModulePkg / Bus / Pci / IdeBusDxe / Ide.h
index ec1f9e07a0917eda1fcc078a28284f04cb0d86ff..bb2a4a75c3f536fb95ea4b048a1b684227ad287c 100644 (file)
@@ -18,8 +18,8 @@
 \r
 **/\r
 \r
-#ifndef _IDE_H\r
-#define _IDE_H\r
+#ifndef _IDE_H_\r
+#define _IDE_H_\r
 \r
 //\r
 // Helper functions Prototype\r
@@ -31,7 +31,7 @@
   @param  Controller TODO: add argument description\r
   @param  Handle TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -39,8 +39,7 @@ DeRegisterIdeDevice (
   IN  EFI_DRIVER_BINDING_PROTOCOL    *This,\r
   IN  EFI_HANDLE                     Controller,\r
   IN  EFI_HANDLE                     Handle\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -50,7 +49,7 @@ DeRegisterIdeDevice (
   @param  ParentDevicePath TODO: add argument description\r
   @param  RemainingDevicePath TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -59,8 +58,7 @@ EnableIdeDevice (
   IN EFI_PCI_IO_PROTOCOL                 *PciIo,\r
   IN EFI_DEVICE_PATH_PROTOCOL            *ParentDevicePath,\r
   IN EFI_DEVICE_PATH_PROTOCOL            *RemainingDevicePath\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -68,15 +66,14 @@ EnableIdeDevice (
   @param  PciIo TODO: add argument description\r
   @param  Port TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 UINT8\r
 IDEReadPortB (\r
   IN  EFI_PCI_IO_PROTOCOL   *PciIo,\r
   IN  UINT16                Port\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -86,7 +83,7 @@ IDEReadPortB (
   @param  Count TODO: add argument description\r
   @param  Buffer TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 VOID\r
@@ -95,8 +92,7 @@ IDEReadPortWMultiple (
   IN  UINT16                Port,\r
   IN  UINTN                 Count,\r
   OUT  VOID                 *Buffer\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -105,7 +101,7 @@ IDEReadPortWMultiple (
   @param  Port TODO: add argument description\r
   @param  Data TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 VOID\r
@@ -113,8 +109,7 @@ IDEWritePortB (
   IN  EFI_PCI_IO_PROTOCOL   *PciIo,\r
   IN  UINT16                Port,\r
   IN  UINT8                 Data\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -123,7 +118,7 @@ IDEWritePortB (
   @param  Port TODO: add argument description\r
   @param  Data TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 VOID\r
@@ -131,8 +126,7 @@ IDEWritePortW (
   IN  EFI_PCI_IO_PROTOCOL   *PciIo,\r
   IN  UINT16                Port,\r
   IN  UINT16                Data\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -142,7 +136,7 @@ IDEWritePortW (
   @param  Count TODO: add argument description\r
   @param  Buffer TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 VOID\r
@@ -151,8 +145,7 @@ IDEWritePortWMultiple (
   IN  UINT16                Port,\r
   IN  UINTN                 Count,\r
   IN  VOID                  *Buffer\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -160,43 +153,40 @@ IDEWritePortWMultiple (
   @param  PciIo TODO: add argument description\r
   @param  IdeRegsBaseAddr TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 GetIdeRegistersBaseAddr (\r
   IN  EFI_PCI_IO_PROTOCOL         *PciIo,\r
   OUT IDE_REGISTERS_BASE_ADDR     *IdeRegsBaseAddr\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
 \r
   @param  IdeDev TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 ReassignIdeResources (\r
   IN  IDE_BLK_IO_DEV  *IdeDev\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
 \r
   @param  IdeDev TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 DiscoverIdeDevice (\r
   IN IDE_BLK_IO_DEV *IdeDev\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   This interface is used to initialize all state data related to the\r
@@ -208,22 +198,20 @@ DiscoverIdeDevice (
 EFI_STATUS\r
 InitializeIDEChannelData (\r
   VOID\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
 \r
   @param  IdeDev TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 DetectIDEController (\r
   IN  IDE_BLK_IO_DEV  *IdeDev\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -231,15 +219,14 @@ DetectIDEController (
   @param  IdeDev TODO: add argument description\r
   @param  TimeoutInMilliSeconds TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 DRQClear (\r
   IN  IDE_BLK_IO_DEV  *IdeDev,\r
   IN  UINTN           TimeoutInMilliSeconds\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -247,15 +234,14 @@ DRQClear (
   @param  IdeDev TODO: add argument description\r
   @param  TimeoutInMilliSeconds TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 DRQClear2 (\r
   IN  IDE_BLK_IO_DEV  *IdeDev,\r
   IN  UINTN           TimeoutInMilliSeconds\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -263,15 +249,14 @@ DRQClear2 (
   @param  IdeDev TODO: add argument description\r
   @param  TimeoutInMilliSeconds TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 DRQReady (\r
   IN  IDE_BLK_IO_DEV  *IdeDev,\r
   IN  UINTN           TimeoutInMilliSeconds\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -279,15 +264,14 @@ DRQReady (
   @param  IdeDev TODO: add argument description\r
   @param  TimeoutInMilliSeconds TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 DRQReady2 (\r
   IN  IDE_BLK_IO_DEV  *IdeDev,\r
   IN  UINTN           TimeoutInMilliSeconds\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -295,15 +279,14 @@ DRQReady2 (
   @param  IdeDev TODO: add argument description\r
   @param  TimeoutInMilliSeconds TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 WaitForBSYClear (\r
   IN  IDE_BLK_IO_DEV  *IdeDev,\r
   IN  UINTN           TimeoutInMilliSeconds\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -311,15 +294,14 @@ WaitForBSYClear (
   @param  IdeDev TODO: add argument description\r
   @param  TimeoutInMilliSeconds TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 WaitForBSYClear2 (\r
   IN  IDE_BLK_IO_DEV  *IdeDev,\r
   IN  UINTN           TimeoutInMilliSeconds\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -327,15 +309,14 @@ WaitForBSYClear2 (
   @param  IdeDev TODO: add argument description\r
   @param  DelayInMilliSeconds TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 DRDYReady (\r
   IN  IDE_BLK_IO_DEV  *IdeDev,\r
   IN  UINTN           DelayInMilliSeconds\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -343,15 +324,14 @@ DRDYReady (
   @param  IdeDev TODO: add argument description\r
   @param  DelayInMilliSeconds TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 DRDYReady2 (\r
   IN  IDE_BLK_IO_DEV  *IdeDev,\r
   IN  UINTN           DelayInMilliSeconds\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -360,7 +340,7 @@ DRDYReady2 (
   @param  Source TODO: add argument description\r
   @param  Size TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 VOID\r
@@ -368,8 +348,7 @@ SwapStringChars (
   IN CHAR8  *Destination,\r
   IN CHAR8  *Source,\r
   IN UINT32 Size\r
-  )\r
-;\r
+  );\r
 \r
 //\r
 //  ATA device functions' prototype\r
@@ -379,28 +358,26 @@ SwapStringChars (
 \r
   @param  IdeDev TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 ATAIdentify (\r
   IN  IDE_BLK_IO_DEV  *IdeDev\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
 \r
   @param  IdeDev TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 VOID\r
 PrintAtaModuleName (\r
   IN  IDE_BLK_IO_DEV  *IdeDev\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -415,7 +392,7 @@ PrintAtaModuleName (
   @param  CylinderLsb TODO: add argument description\r
   @param  CylinderMsb TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -429,8 +406,7 @@ AtaPioDataIn (
   IN  UINT8           SectorNumber,\r
   IN  UINT8           CylinderLsb,\r
   IN  UINT8           CylinderMsb\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -445,7 +421,7 @@ AtaPioDataIn (
   @param  CylinderLsb TODO: add argument description\r
   @param  CylinderMsb TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -459,22 +435,20 @@ AtaPioDataOut (
   IN  UINT8           SectorNumber,\r
   IN  UINT8           CylinderLsb,\r
   IN  UINT8           CylinderMsb\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
 \r
   @param  IdeDev TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 CheckErrorStatus (\r
   IN  IDE_BLK_IO_DEV  *IdeDev\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -484,7 +458,7 @@ CheckErrorStatus (
   @param  Lba TODO: add argument description\r
   @param  NumberOfBlocks TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -493,8 +467,7 @@ AtaReadSectors (
   IN  VOID            *DataBuffer,\r
   IN  EFI_LBA         Lba,\r
   IN  UINTN           NumberOfBlocks\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -504,7 +477,7 @@ AtaReadSectors (
   @param  Lba TODO: add argument description\r
   @param  NumberOfBlocks TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -513,22 +486,20 @@ AtaWriteSectors (
   IN  VOID            *BufferData,\r
   IN  EFI_LBA         Lba,\r
   IN  UINTN           NumberOfBlocks\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
 \r
   @param  IdeDev TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 AtaSoftReset (\r
   IN  IDE_BLK_IO_DEV  *IdeDev\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -539,7 +510,7 @@ AtaSoftReset (
   @param  BufferSize TODO: add argument description\r
   @param  Buffer TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -549,8 +520,7 @@ AtaBlkIoReadBlocks (
   IN EFI_LBA          LBA,\r
   IN UINTN            BufferSize,\r
   OUT VOID            *Buffer\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -561,7 +531,7 @@ AtaBlkIoReadBlocks (
   @param  BufferSize TODO: add argument description\r
   @param  Buffer TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -571,8 +541,7 @@ AtaBlkIoWriteBlocks (
   IN EFI_LBA          LBA,\r
   IN UINTN            BufferSize,\r
   OUT VOID            *Buffer\r
-  )\r
-;\r
+  );\r
 \r
 //\r
 // ATAPI device functions' prototype\r
@@ -582,28 +551,26 @@ AtaBlkIoWriteBlocks (
 \r
   @param  IdeDev TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 ATAPIIdentify (\r
   IN  IDE_BLK_IO_DEV  *IdeDev\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
 \r
   @param  IdeDev TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 AtapiInquiry (\r
   IN  IDE_BLK_IO_DEV  *IdeDev\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -614,7 +581,7 @@ AtapiInquiry (
   @param  ByteCount TODO: add argument description\r
   @param  TimeOut TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -624,8 +591,7 @@ AtapiPacketCommandIn (
   IN  UINT16                *Buffer,\r
   IN  UINT32                ByteCount,\r
   IN  UINTN                 TimeOut\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -636,7 +602,7 @@ AtapiPacketCommandIn (
   @param  ByteCount TODO: add argument description\r
   @param  TimeOut TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -646,8 +612,7 @@ AtapiPacketCommandOut (
   IN  UINT16                *Buffer,\r
   IN  UINT32                ByteCount,\r
   IN  UINTN                 TimeOut\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -658,7 +623,7 @@ AtapiPacketCommandOut (
   @param  Read TODO: add argument description\r
   @param  TimeOut TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -668,24 +633,22 @@ PioReadWriteData (
   IN  UINT32          ByteCount,\r
   IN  BOOLEAN         Read,\r
   IN  UINTN           TimeOut\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
 \r
-  @param  IdeDev TODO: add argument description\r
-  @param  IdeDev TODO: add argument description\r
+  @param  IdeDev  TODO: add argument description\r
+  @param  SResult TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 AtapiTestUnitReady (\r
   IN  IDE_BLK_IO_DEV  *IdeDev,\r
-  OUT UINTN           *SenseCount\r
-  )\r
-;\r
+  OUT SENSE_RESULT       *SResult  \r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -693,31 +656,29 @@ AtapiTestUnitReady (
   @param  IdeDev TODO: add argument description\r
   @param  SenseCounts TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 AtapiRequestSense (\r
   IN  IDE_BLK_IO_DEV  *IdeDev,\r
   OUT UINTN           *SenseCounts\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
 \r
-  @param  IdeDev TODO: add argument description\r
-  @param  IdeDev TODO: add argument description\r
+  @param  IdeDev  TODO: add argument description\r
+  @param  SResult TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 AtapiReadCapacity (\r
   IN  IDE_BLK_IO_DEV  *IdeDev,\r
-  OUT UINTN           *SenseCount\r
-  )\r
-;\r
+  OUT SENSE_RESULT       *SResult  \r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -725,15 +686,14 @@ AtapiReadCapacity (
   @param  IdeDev TODO: add argument description\r
   @param  MediaChange TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 AtapiDetectMedia (\r
   IN  IDE_BLK_IO_DEV  *IdeDev,\r
   OUT BOOLEAN         *MediaChange\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -743,7 +703,7 @@ AtapiDetectMedia (
   @param  Lba TODO: add argument description\r
   @param  NumberOfBlocks TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -752,8 +712,7 @@ AtapiReadSectors (
   IN  VOID            *Buffer,\r
   IN  EFI_LBA         Lba,\r
   IN  UINTN           NumberOfBlocks\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -763,7 +722,7 @@ AtapiReadSectors (
   @param  Lba TODO: add argument description\r
   @param  NumberOfBlocks TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -772,22 +731,20 @@ AtapiWriteSectors (
   IN  VOID            *Buffer,\r
   IN  EFI_LBA         Lba,\r
   IN  UINTN           NumberOfBlocks\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
 \r
   @param  IdeDev TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 AtapiSoftReset (\r
   IN  IDE_BLK_IO_DEV  *IdeDev\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -798,7 +755,7 @@ AtapiSoftReset (
   @param  BufferSize TODO: add argument description\r
   @param  Buffer TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -808,8 +765,7 @@ AtapiBlkIoReadBlocks (
   IN EFI_LBA          LBA,\r
   IN UINTN            BufferSize,\r
   OUT VOID            *Buffer\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -820,7 +776,7 @@ AtapiBlkIoReadBlocks (
   @param  BufferSize TODO: add argument description\r
   @param  Buffer TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -830,8 +786,7 @@ AtapiBlkIoWriteBlocks (
   IN EFI_LBA          LBA,\r
   IN UINTN            BufferSize,\r
   OUT VOID            *Buffer\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -840,7 +795,7 @@ AtapiBlkIoWriteBlocks (
   @param  SenseCount TODO: add argument description\r
   @param  Result TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -848,22 +803,20 @@ ParseSenseData (
   IN IDE_BLK_IO_DEV     *IdeDev,\r
   IN UINTN              SenseCount,\r
   OUT SENSE_RESULT      *Result\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
 \r
   @param  IdeDev TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 AtapiReadPendingData (\r
   IN IDE_BLK_IO_DEV     *IdeDev\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -871,29 +824,27 @@ AtapiReadPendingData (
   @param  IdeDev TODO: add argument description\r
   @param  WriteProtected TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 IsLS120orZipWriteProtected (\r
   IN  IDE_BLK_IO_DEV    *IdeDev,\r
   OUT BOOLEAN           *WriteProtected\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
 \r
   @param  IdeBlkIoDevice TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 VOID\r
 ReleaseIdeResources (\r
   IN  IDE_BLK_IO_DEV  *IdeBlkIoDevice\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -901,15 +852,14 @@ ReleaseIdeResources (
   @param  IdeDev TODO: add argument description\r
   @param  TransferMode TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 SetDeviceTransferMode (\r
   IN IDE_BLK_IO_DEV       *IdeDev,\r
   IN ATA_TRANSFER_MODE    *TransferMode\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -917,15 +867,14 @@ SetDeviceTransferMode (
   @param  IdeDev TODO: add argument description\r
   @param  NativeMaxAddress TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 ReadNativeMaxAddress (\r
   IN  IDE_BLK_IO_DEV                *IdeDev,\r
   OUT EFI_LBA                       *NativeMaxAddress\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -934,7 +883,7 @@ ReadNativeMaxAddress (
   @param  MaxAddress TODO: add argument description\r
   @param  bVolatile TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -942,8 +891,7 @@ SetMaxAddress (
   IN  IDE_BLK_IO_DEV                *IdeDev,\r
   IN  EFI_LBA                       MaxAddress,\r
   IN  BOOLEAN                       bVolatile\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -957,7 +905,7 @@ SetMaxAddress (
   @param  LbaMiddle TODO: add argument description\r
   @param  LbaHigh TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -970,8 +918,7 @@ AtaNonDataCommandIn (
   IN  UINT8           LbaLow,\r
   IN  UINT8           LbaMiddle,\r
   IN  UINT8           LbaHigh\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -983,7 +930,7 @@ AtaNonDataCommandIn (
   @param  SectorCount TODO: add argument description\r
   @param  LbaAddress TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -994,8 +941,7 @@ AtaNonDataCommandInExt (
   IN  UINT16          Feature,\r
   IN  UINT16          SectorCount,\r
   IN  EFI_LBA         LbaAddress\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -1005,7 +951,7 @@ AtaNonDataCommandInExt (
   @param  StartLba TODO: add argument description\r
   @param  NumberOfBlocks TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -1014,8 +960,7 @@ AtaReadSectorsExt (
   IN  VOID            *DataBuffer,\r
   IN  EFI_LBA         StartLba,\r
   IN  UINTN           NumberOfBlocks\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -1025,7 +970,7 @@ AtaReadSectorsExt (
   @param  StartLba TODO: add argument description\r
   @param  NumberOfBlocks TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -1034,8 +979,7 @@ AtaWriteSectorsExt (
   IN  VOID            *DataBuffer,\r
   IN  EFI_LBA         StartLba,\r
   IN  UINTN           NumberOfBlocks\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -1045,7 +989,7 @@ AtaWriteSectorsExt (
   @param  StartLba TODO: add argument description\r
   @param  NumberOfBlocks TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -1054,8 +998,7 @@ AtaUdmaReadExt (
   IN  VOID            *DataBuffer,\r
   IN  EFI_LBA         StartLba,\r
   IN  UINTN           NumberOfBlocks\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -1065,7 +1008,7 @@ AtaUdmaReadExt (
   @param  StartLba TODO: add argument description\r
   @param  NumberOfBlocks TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -1074,8 +1017,7 @@ AtaUdmaRead (
   IN  VOID            *DataBuffer,\r
   IN  EFI_LBA         StartLba,\r
   IN  UINTN           NumberOfBlocks\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -1085,7 +1027,7 @@ AtaUdmaRead (
   @param  StartLba TODO: add argument description\r
   @param  NumberOfBlocks TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -1094,8 +1036,7 @@ AtaUdmaWriteExt (
   IN  VOID            *DataBuffer,\r
   IN  EFI_LBA         StartLba,\r
   IN  UINTN           NumberOfBlocks\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Perform an ATA Udma operation (Read, ReadExt, Write, WriteExt).\r
@@ -1129,8 +1070,7 @@ DoAtaUdma (
   IN  EFI_LBA             StartLba,\r
   IN  UINTN               NumberOfBlocks,\r
   IN  ATA_UDMA_OPERATION  UdmaOp\r
-  )\r
-;\r
+  );\r
 \r
 \r
 /**\r
@@ -1141,7 +1081,7 @@ DoAtaUdma (
   @param  StartLba TODO: add argument description\r
   @param  NumberOfBlocks TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -1150,8 +1090,7 @@ AtaUdmaWrite (
   IN  VOID            *DataBuffer,\r
   IN  EFI_LBA         StartLba,\r
   IN  UINTN           NumberOfBlocks\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -1163,7 +1102,7 @@ AtaUdmaWrite (
   @param  SectorCount TODO: add argument description\r
   @param  LbaAddress TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -1174,8 +1113,7 @@ AtaCommandIssueExt (
   IN  UINT16          Feature,\r
   IN  UINT16          SectorCount,\r
   IN  EFI_LBA         LbaAddress\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -1187,7 +1125,7 @@ AtaCommandIssueExt (
   @param  SectorCount TODO: add argument description\r
   @param  LbaAddress TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -1198,22 +1136,20 @@ AtaCommandIssue (
   IN  UINT16          Feature,\r
   IN  UINT16          SectorCount,\r
   IN  EFI_LBA         LbaAddress\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
 \r
   @param  IdeDev TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 AtaAtapi6Identify (\r
   IN  IDE_BLK_IO_DEV  *IdeDev\r
-  )\r
-;\r
+  );\r
 \r
 \r
 /**\r
@@ -1221,14 +1157,29 @@ AtaAtapi6Identify (
 \r
   @param  IdeDev TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 VOID\r
 AtaSMARTSupport (\r
   IN  IDE_BLK_IO_DEV  *IdeDev\r
-  )\r
-;\r
+  );\r
+\r
+\r
+/**\r
+  Enable Long Physical Sector Feature for ATA device.\r
+\r
+  @param   IdeDev  The IDE device data\r
+\r
+  @retval  EFI_SUCCESS      The ATA device supports Long Physical Sector feature\r
+                            and corresponding fields in BlockIo structure is updated.\r
+  @retval  EFI_UNSUPPORTED  The device is not ATA device or Long Physical Sector\r
+                            feature is not supported.\r
+**/\r
+EFI_STATUS\r
+AtaEnableLongPhysicalSector (\r
+  IN  IDE_BLK_IO_DEV  *IdeDev\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -1240,7 +1191,7 @@ AtaSMARTSupport (
   @param  StartLba TODO: add argument description\r
   @param  SectorCount TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -1251,8 +1202,7 @@ AtaPioDataInExt (
   IN  UINT8           AtaCommand,\r
   IN  EFI_LBA         StartLba,\r
   IN  UINT16          SectorCount\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -1264,7 +1214,7 @@ AtaPioDataInExt (
   @param  StartLba TODO: add argument description\r
   @param  SectorCount TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
@@ -1275,8 +1225,7 @@ AtaPioDataOutExt (
   IN  UINT8           AtaCommand,\r
   IN  EFI_LBA         StartLba,\r
   IN  UINT16          SectorCount\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
@@ -1284,37 +1233,33 @@ AtaPioDataOutExt (
   @param  IdeDev TODO: add argument description\r
   @param  DriveParameters TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 SetDriveParameters (\r
   IN IDE_BLK_IO_DEV       *IdeDev,\r
   IN ATA_DRIVE_PARMS      *DriveParameters\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   TODO: Add function description\r
 \r
   @param  IdeDev TODO: add argument description\r
 \r
-  TODO: add return values\r
+  TODO: add return values.\r
 \r
 **/\r
 EFI_STATUS\r
 EnableInterrupt (\r
   IN IDE_BLK_IO_DEV       *IdeDev\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Clear pending IDE interrupt before OS loader/kernel take control of the IDE device.\r
 \r
-  @param[in]  Event   Pointer to this event\r
-  @param[in]  Context Event hanlder private data\r
-\r
-  @retval  EFI_SUCCESS - Interrupt cleared\r
+  @param[in]  Event   Pointer to this event.\r
+  @param[in]  Context Event hanlder private data.\r
 \r
 **/\r
 VOID\r
@@ -1322,7 +1267,6 @@ EFIAPI
 ClearInterrupt (\r
   IN EFI_EVENT  Event,\r
   IN VOID       *Context\r
-  )\r
-;\r
+  );\r
 \r
 #endif\r