// the ATA Identify command\r
//\r
AtaIdentifyPointer = (EFI_IDENTIFY_DATA *) AllocateZeroPool (sizeof (EFI_IDENTIFY_DATA));\r
+ if (AtaIdentifyPointer == NULL) {\r
+ return EFI_OUT_OF_RESOURCES;\r
+ }\r
\r
//\r
// use ATA PIO Data In protocol to send ATA Identify command\r
\r
DEBUG_CODE_BEGIN ();\r
\r
- if (StatusRegister & ATA_STSREG_DWF) {\r
+ if ((StatusRegister & ATA_STSREG_DWF) != 0) {\r
DEBUG (\r
(EFI_D_BLKIO,\r
"CheckErrorStatus()-- %02x : Error : Write Fault\n",\r
);\r
}\r
\r
- if (StatusRegister & ATA_STSREG_CORR) {\r
+ if ((StatusRegister & ATA_STSREG_CORR) != 0) {\r
DEBUG (\r
(EFI_D_BLKIO,\r
"CheckErrorStatus()-- %02x : Error : Corrected Data\n",\r
);\r
}\r
\r
- if (StatusRegister & ATA_STSREG_ERR) {\r
+ if ((StatusRegister & ATA_STSREG_ERR) != 0) {\r
ErrorRegister = IDEReadPortB (IdeDev->PciIo, IdeDev->IoPort->Reg1.Error);\r
\r
- if (ErrorRegister & ATA_ERRREG_BBK) {\r
+ if ((ErrorRegister & ATA_ERRREG_BBK) != 0) {\r
DEBUG (\r
(EFI_D_BLKIO,\r
"CheckErrorStatus()-- %02x : Error : Bad Block Detected\n",\r
);\r
}\r
\r
- if (ErrorRegister & ATA_ERRREG_UNC) {\r
+ if ((ErrorRegister & ATA_ERRREG_UNC) != 0) {\r
DEBUG (\r
(EFI_D_BLKIO,\r
"CheckErrorStatus()-- %02x : Error : Uncorrectable Data\n",\r
);\r
}\r
\r
- if (ErrorRegister & ATA_ERRREG_MC) {\r
+ if ((ErrorRegister & ATA_ERRREG_MC) != 0) {\r
DEBUG (\r
(EFI_D_BLKIO,\r
"CheckErrorStatus()-- %02x : Error : Media Change\n",\r
);\r
}\r
\r
- if (ErrorRegister & ATA_ERRREG_ABRT) {\r
+ if ((ErrorRegister & ATA_ERRREG_ABRT) != 0) {\r
DEBUG (\r
(EFI_D_BLKIO,\r
"CheckErrorStatus()-- %02x : Error : Abort\n",\r
);\r
}\r
\r
- if (ErrorRegister & ATA_ERRREG_TK0NF) {\r
+ if ((ErrorRegister & ATA_ERRREG_TK0NF) != 0) {\r
DEBUG (\r
(EFI_D_BLKIO,\r
"CheckErrorStatus()-- %02x : Error : Track 0 Not Found\n",\r
);\r
}\r
\r
- if (ErrorRegister & ATA_ERRREG_AMNF) {\r
+ if ((ErrorRegister & ATA_ERRREG_AMNF) != 0) {\r
DEBUG (\r
(EFI_D_BLKIO,\r
"CheckErrorStatus()-- %02x : Error : Address Mark Not Found\n",\r
@param[in] *DataBuffer\r
A pointer to the source buffer for the data.\r
\r
- @param[in] Lba\r
+ @param[in] StartLba\r
The starting logical block address to write onto\r
the device media.\r
\r
@param[in] *IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used\r
to record all the information of the IDE device.\r
\r
- @param[in,out] *Buffer buffer contained data transferred from device to host.\r
+ @param[in, out] *Buffer buffer contained data transferred from device to host.\r
@param[in] ByteCount data size in byte unit of the buffer.\r
@param[in] AtaCommand value of the Command Register\r
@param[in] StartLba the start LBA of this transaction\r
// Detect if this feature is enabled\r
//\r
TmpAtaIdentifyPointer = (EFI_IDENTIFY_DATA *) AllocateZeroPool (sizeof (EFI_IDENTIFY_DATA));\r
+ if (TmpAtaIdentifyPointer == NULL) {\r
+ return;\r
+ }\r
\r
DeviceSelect = (UINT8) ((IdeDev->Device) << 4);\r
Status = AtaPioDataIn (\r
@param LbaAddress The LBA address in 48-bit mode\r
\r
@retval EFI_SUCCESS Reading succeed\r
- @retval EFI_DEVICE_ERROR Error executing commands on this device\r
+ @retval EFI_DEVICE_ERROR Error executing commands on this device.\r
\r
**/\r
EFI_STATUS\r
@param LbaAddress The LBA address in 48-bit mode\r
\r
@retval EFI_SUCCESS Reading succeed\r
- @retval EFI_DEVICE_ERROR Error executing commands on this device\r
+ @retval EFI_DEVICE_ERROR Error executing commands on this device.\r
\r
**/\r
EFI_STATUS\r
);\r
\r
if (UdmaOp == AtaUdmaReadExtOp || UdmaOp == AtaUdmaReadOp) {\r
- RegisterValue |= BMIC_nREAD;\r
+ RegisterValue |= BMIC_NREAD;\r
} else {\r
- RegisterValue &= ~((UINT8) BMIC_nREAD);\r
+ RegisterValue &= ~((UINT8) BMIC_NREAD);\r
}\r
\r
IdeDev->PciIo->Io.Write (\r
1,\r
&RegisterValue\r
);\r
- if ((RegisterValue & (BMIS_INTERRUPT | BMIS_ERROR)) || (Count == 0)) {\r
- if ((RegisterValue & BMIS_ERROR) || (Count == 0)) {\r
+ if (((RegisterValue & (BMIS_INTERRUPT | BMIS_ERROR)) != 0) || (Count == 0)) {\r
+ if (((RegisterValue & BMIS_ERROR) != 0) || (Count == 0)) {\r
Status = EFI_DEVICE_ERROR;\r
break;\r
}\r
&RegisterValue\r
);\r
\r
- if (RegisterValue & BMIS_ERROR) {\r
+ if ((RegisterValue & BMIS_ERROR) != 0) {\r
return EFI_DEVICE_ERROR;\r
}\r
\r