//\r
if (!EFI_ERROR (Status)) {\r
\r
- IdeDev->pIdData = AtaIdentifyPointer;\r
+ IdeDev->IdData = AtaIdentifyPointer;\r
\r
//\r
// Print ATA Module Name\r
//\r
// Make sure the pIdData will not be freed again.\r
//\r
- IdeDev->pIdData = NULL;\r
+ IdeDev->IdData = NULL;\r
\r
return EFI_DEVICE_ERROR;\r
}\r
EFI_LBA Capacity;\r
EFI_IDENTIFY_DATA *Atapi6IdentifyStruct;\r
\r
- if (IdeDev->pIdData == NULL) {\r
+ if (IdeDev->IdData == NULL) {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
- Atapi6IdentifyStruct = IdeDev->pIdData;\r
+ Atapi6IdentifyStruct = IdeDev->IdData;\r
\r
if ((Atapi6IdentifyStruct->AtapiData.cmd_set_support_83 & (BIT15 | BIT14)) != 0x4000) {\r
//\r
IN IDE_BLK_IO_DEV *IdeDev\r
)\r
{\r
- if (IdeDev->pIdData == NULL) {\r
+ if (IdeDev->IdData == NULL) {\r
return ;\r
}\r
\r
- SwapStringChars (IdeDev->ModelName, IdeDev->pIdData->AtaData.ModelName, 40);\r
+ SwapStringChars (IdeDev->ModelName, IdeDev->IdData->AtaData.ModelName, 40);\r
IdeDev->ModelName[40] = 0x00;\r
}\r
\r
//\r
// Detect if the device supports S.M.A.R.T.\r
//\r
- if ((IdeDev->pIdData->AtaData.command_set_supported_83 & 0xc000) != 0x4000) {\r
+ if ((IdeDev->IdData->AtaData.command_set_supported_83 & 0xc000) != 0x4000) {\r
//\r
// Data in word 82 is not valid (bit15 shall be zero and bit14 shall be to one)\r
//\r
return ;\r
} else {\r
- if ((IdeDev->pIdData->AtaData.command_set_supported_82 & 0x0001) != 0x0001) {\r
+ if ((IdeDev->IdData->AtaData.command_set_supported_82 & 0x0001) != 0x0001) {\r
//\r
// S.M.A.R.T is not supported by the device\r
//\r
EFI_ATA_IDENTIFY_DATA *AtaIdentifyData;\r
UINT16 PhyLogicSectorSupport;\r
\r
- ASSERT (IdeDev->pIdData != NULL);\r
+ ASSERT (IdeDev->IdData != NULL);\r
//\r
// Only valid for ATA device\r
//\r
- AtaIdentifyData = (EFI_ATA_IDENTIFY_DATA *) &IdeDev->pIdData->AtaData;\r
- if (AtaIdentifyData->config & 0x8000) {\r
+ AtaIdentifyData = (EFI_ATA_IDENTIFY_DATA *) &IdeDev->IdData->AtaData;\r
+ if ((AtaIdentifyData->config & 0x8000) != 0) {\r
return EFI_UNSUPPORTED;\r
}\r
PhyLogicSectorSupport = AtaIdentifyData->phy_logic_sector_support;\r
//\r
// Check whether one physical block contains multiple physical blocks\r
//\r
- if (PhyLogicSectorSupport & 0x2000) {\r
+ if ((PhyLogicSectorSupport & 0x2000) != 0) {\r
IdeDev->BlkIo.Media->LogicalBlocksPerPhysicalBlock =\r
(UINT32) (1 << (PhyLogicSectorSupport & 0x000f));\r
//\r
// Check logical block size\r
//\r
IdeDev->BlkIo.Media->BlockSize = 0x200;\r
- if (PhyLogicSectorSupport & 0x1000) {\r
+ if ((PhyLogicSectorSupport & 0x1000) != 0) {\r
IdeDev->BlkIo.Media->BlockSize = (UINT32) (\r
((AtaIdentifyData->logic_sector_size_hi << 16) |\r
AtaIdentifyData->logic_sector_size_lo) * sizeof (UINT16)\r
return EFI_DEVICE_ERROR;\r
}\r
\r
- IdeDev->pIdData = AtapiIdentifyPointer;\r
+ IdeDev->IdData = AtapiIdentifyPointer;\r
PrintAtaModuleName (IdeDev);\r
\r
//\r
//\r
Status = AtapiInquiry (IdeDev);\r
if (EFI_ERROR (Status)) {\r
- gBS->FreePool (IdeDev->pIdData);\r
+ gBS->FreePool (IdeDev->IdData);\r
//\r
// Make sure the pIdData will not be freed again.\r
//\r
- IdeDev->pIdData = NULL;\r
+ IdeDev->IdData = NULL;\r
return EFI_DEVICE_ERROR;\r
}\r
//\r
// Get media removable info from INQUIRY data.\r
//\r
- IdeDev->BlkIo.Media->RemovableMedia = (UINT8) ((IdeDev->pInquiryData->RMB & 0x80) == 0x80);\r
+ IdeDev->BlkIo.Media->RemovableMedia = (UINT8) ((IdeDev->InquiryData->RMB & 0x80) == 0x80);\r
\r
//\r
// Identify device type via INQUIRY data.\r
//\r
- switch (IdeDev->pInquiryData->peripheral_type & 0x1f) {\r
+ switch (IdeDev->InquiryData->peripheral_type & 0x1f) {\r
\r
//\r
// Magnetic Disk\r
\r
default:\r
IdeDev->Type = IdeUnknown;\r
- gBS->FreePool (IdeDev->pIdData);\r
- gBS->FreePool (IdeDev->pInquiryData);\r
+ gBS->FreePool (IdeDev->IdData);\r
+ gBS->FreePool (IdeDev->InquiryData);\r
//\r
// Make sure the pIdData and pInquiryData will not be freed again.\r
//\r
- IdeDev->pIdData = NULL;\r
- IdeDev->pInquiryData = NULL;\r
+ IdeDev->IdData = NULL;\r
+ IdeDev->InquiryData = NULL;\r
return EFI_DEVICE_ERROR;\r
}\r
\r
\r
IdeDev->SenseData = AllocatePool (IdeDev->SenseDataNumber * sizeof (ATAPI_REQUEST_SENSE_DATA));\r
if (IdeDev->SenseData == NULL) {\r
- gBS->FreePool (IdeDev->pIdData);\r
- gBS->FreePool (IdeDev->pInquiryData);\r
+ gBS->FreePool (IdeDev->IdData);\r
+ gBS->FreePool (IdeDev->InquiryData);\r
//\r
// Make sure the pIdData and pInquiryData will not be freed again.\r
//\r
- IdeDev->pIdData = NULL;\r
- IdeDev->pInquiryData = NULL;\r
+ IdeDev->IdData = NULL;\r
+ IdeDev->InquiryData = NULL;\r
return EFI_OUT_OF_RESOURCES;\r
}\r
\r
return EFI_DEVICE_ERROR;\r
}\r
\r
- IdeDev->pInquiryData = InquiryData;\r
+ IdeDev->InquiryData = InquiryData;\r
\r
return EFI_SUCCESS;\r
}\r
IdeBlkIoDevice->Cache = NULL;\r
}\r
\r
- if (IdeBlkIoDevice->pIdData != NULL) {\r
- gBS->FreePool (IdeBlkIoDevice->pIdData);\r
- IdeBlkIoDevice->pIdData = NULL;\r
+ if (IdeBlkIoDevice->IdData != NULL) {\r
+ gBS->FreePool (IdeBlkIoDevice->IdData);\r
+ IdeBlkIoDevice->IdData = NULL;\r
}\r
\r
- if (IdeBlkIoDevice->pInquiryData != NULL) {\r
- gBS->FreePool (IdeBlkIoDevice->pInquiryData);\r
- IdeBlkIoDevice->pInquiryData = NULL;\r
+ if (IdeBlkIoDevice->InquiryData != NULL) {\r
+ gBS->FreePool (IdeBlkIoDevice->InquiryData);\r
+ IdeBlkIoDevice->InquiryData = NULL;\r
}\r
\r
if (IdeBlkIoDevice->ControllerNameTable != NULL) {\r
\r
@param IdeBlkIoDevice TODO: add argument description\r
@param MediaId TODO: add argument description\r
- @param LBA TODO: add argument description\r
+ @param Lba TODO: add argument description\r
@param BufferSize TODO: add argument description\r
@param Buffer TODO: add argument description\r
\r
AtaBlkIoReadBlocks (\r
IN IDE_BLK_IO_DEV *IdeBlkIoDevice,\r
IN UINT32 MediaId,\r
- IN EFI_LBA LBA,\r
+ IN EFI_LBA Lba,\r
IN UINTN BufferSize,\r
OUT VOID *Buffer\r
);\r
\r
@param IdeBlkIoDevice TODO: add argument description\r
@param MediaId TODO: add argument description\r
- @param LBA TODO: add argument description\r
+ @param Lba TODO: add argument description\r
@param BufferSize TODO: add argument description\r
@param Buffer TODO: add argument description\r
\r
AtaBlkIoWriteBlocks (\r
IN IDE_BLK_IO_DEV *IdeBlkIoDevice,\r
IN UINT32 MediaId,\r
- IN EFI_LBA LBA,\r
+ IN EFI_LBA Lba,\r
IN UINTN BufferSize,\r
OUT VOID *Buffer\r
);\r
\r
@param IdeBlkIoDevice TODO: add argument description\r
@param MediaId TODO: add argument description\r
- @param LBA TODO: add argument description\r
+ @param Lba TODO: add argument description\r
@param BufferSize TODO: add argument description\r
@param Buffer TODO: add argument description\r
\r
AtapiBlkIoReadBlocks (\r
IN IDE_BLK_IO_DEV *IdeBlkIoDevice,\r
IN UINT32 MediaId,\r
- IN EFI_LBA LBA,\r
+ IN EFI_LBA Lba,\r
IN UINTN BufferSize,\r
OUT VOID *Buffer\r
);\r
\r
@param IdeBlkIoDevice TODO: add argument description\r
@param MediaId TODO: add argument description\r
- @param LBA TODO: add argument description\r
+ @param Lba TODO: add argument description\r
@param BufferSize TODO: add argument description\r
@param Buffer TODO: add argument description\r
\r
AtapiBlkIoWriteBlocks (\r
IN IDE_BLK_IO_DEV *IdeBlkIoDevice,\r
IN UINT32 MediaId,\r
- IN EFI_LBA LBA,\r
+ IN EFI_LBA Lba,\r
IN UINTN BufferSize,\r
OUT VOID *Buffer\r
);\r
}\r
\r
EndIdeDevice = (UINT8) MIN ((MaxDevices - 1), EndIdeDevice);\r
-\r
+ ASSERT (EndIdeDevice < IdeMaxDevice);\r
//\r
// Now inform the IDE Controller Init Module. Sept10\r
//\r
//\r
// Submit identify data to IDE controller init driver\r
//\r
- CopyMem (&IdentifyData, IdeBlkIoDevicePtr->pIdData, sizeof (IdentifyData));\r
+ CopyMem (&IdentifyData, IdeBlkIoDevicePtr->IdData, sizeof (IdentifyData));\r
IdeBusDriverPrivateData->DeviceFound[IdeChannel * 2 + IdeDevice] = TRUE;\r
IdeInit->SubmitData (IdeInit, IdeChannel, IdeDevice, &IdentifyData);\r
} else {\r
//\r
// Set best supported PIO mode on this IDE device\r
//\r
- if (SupportedModes->PioMode.Mode <= ATA_PIO_MODE_2) {\r
+ if (SupportedModes->PioMode.Mode <= AtaPioMode2) {\r
TransferMode.ModeCategory = ATA_MODE_CATEGORY_DEFAULT_PIO;\r
} else {\r
TransferMode.ModeCategory = ATA_MODE_CATEGORY_FLOW_PIO;\r
//\r
// Init driver parameters\r
//\r
- DriveParameters.Sector = (UINT8) IdeBlkIoDevicePtr->pIdData->AtaData.sectors_per_track;\r
- DriveParameters.Heads = (UINT8) (IdeBlkIoDevicePtr->pIdData->AtaData.heads - 1);\r
- DriveParameters.MultipleSector = (UINT8) IdeBlkIoDevicePtr->pIdData->AtaData.multi_sector_cmd_max_sct_cnt;\r
+ DriveParameters.Sector = (UINT8) IdeBlkIoDevicePtr->IdData->AtaData.sectors_per_track;\r
+ DriveParameters.Heads = (UINT8) (IdeBlkIoDevicePtr->IdData->AtaData.heads - 1);\r
+ DriveParameters.MultipleSector = (UINT8) IdeBlkIoDevicePtr->IdData->AtaData.multi_sector_cmd_max_sct_cnt;\r
//\r
// Set Parameters for the device:\r
// 1) Init\r
return EFI_BUFFER_TOO_SMALL;\r
}\r
\r
- if (IdeBlkIoDevice->pInquiryData == NULL) {\r
+ if (IdeBlkIoDevice->InquiryData == NULL) {\r
return EFI_NOT_FOUND;\r
}\r
\r
- gBS->CopyMem (InquiryData, IdeBlkIoDevice->pInquiryData, sizeof (ATAPI_INQUIRY_DATA));\r
+ gBS->CopyMem (InquiryData, IdeBlkIoDevice->InquiryData, sizeof (ATAPI_INQUIRY_DATA));\r
*InquiryDataSize = sizeof (ATAPI_INQUIRY_DATA);\r
\r
return EFI_SUCCESS;\r
return EFI_BUFFER_TOO_SMALL;\r
}\r
\r
- if (IdeBlkIoDevice->pIdData == NULL) {\r
+ if (IdeBlkIoDevice->IdData == NULL) {\r
return EFI_NOT_FOUND;\r
}\r
\r
- gBS->CopyMem (IdentifyData, IdeBlkIoDevice->pIdData, sizeof (EFI_IDENTIFY_DATA));\r
+ gBS->CopyMem (IdentifyData, IdeBlkIoDevice->IdData, sizeof (EFI_IDENTIFY_DATA));\r
*IdentifyDataSize = sizeof (EFI_IDENTIFY_DATA);\r
\r
return EFI_SUCCESS;\r
IDE_BASE_REGISTERS *IoPort;\r
UINT16 AtapiError;\r
\r
- ATAPI_INQUIRY_DATA *pInquiryData;\r
- EFI_IDENTIFY_DATA *pIdData;\r
+ ATAPI_INQUIRY_DATA *InquiryData;\r
+ EFI_IDENTIFY_DATA *IdData;\r
ATA_PIO_MODE PioMode;\r
EFI_ATA_MODE UdmaMode;\r
CHAR8 ModelName[41];\r
\r
@param This TODO: add argument description\r
@param MediaId TODO: add argument description\r
- @param LBA TODO: add argument description\r
+ @param Lba TODO: add argument description\r
@param BufferSize TODO: add argument description\r
@param Buffer TODO: add argument description\r
\r
IDEBlkIoReadBlocks (\r
IN EFI_BLOCK_IO_PROTOCOL *This,\r
IN UINT32 MediaId,\r
- IN EFI_LBA LBA,\r
+ IN EFI_LBA Lba,\r
IN UINTN BufferSize,\r
OUT VOID *Buffer\r
);\r
\r
@param This TODO: add argument description\r
@param MediaId TODO: add argument description\r
- @param LBA TODO: add argument description\r
+ @param Lba TODO: add argument description\r
@param BufferSize TODO: add argument description\r
@param Buffer TODO: add argument description\r
\r
IDEBlkIoWriteBlocks (\r
IN EFI_BLOCK_IO_PROTOCOL *This,\r
IN UINT32 MediaId,\r
- IN EFI_LBA LBA,\r
+ IN EFI_LBA Lba,\r
IN UINTN BufferSize,\r
IN VOID *Buffer\r
);\r
\r
[Packages]\r
MdePkg/MdePkg.dec\r
- MdeModulePkg/MdeModulePkg.dec\r
IntelFrameworkPkg/IntelFrameworkPkg.dec\r
IntelFrameworkModulePkg/IntelFrameworkModulePkg.dec \r
\r
\r
\r
[Guids]\r
- gEfiDiskInfoIdeInterfaceGuid # SOMETIMES_CONSUMED\r
- gEfiEventExitBootServicesGuid\r
+ gEfiDiskInfoIdeInterfaceGuid # CONSUMES ## GUID\r
+ gEfiEventExitBootServicesGuid # CONSUMES ## Event\r
\r
\r
[Protocols]\r
- gEfiDiskInfoProtocolGuid # PROTOCOL BY_START\r
- gEfiBlockIoProtocolGuid # PROTOCOL BY_START\r
- gEfiIdeControllerInitProtocolGuid # PROTOCOL TO_START\r
- gEfiPciIoProtocolGuid # PROTOCOL TO_START\r
- gEfiDevicePathProtocolGuid # PROTOCOL TO_START\r
+ gEfiDiskInfoProtocolGuid # BY_START\r
+ gEfiBlockIoProtocolGuid # BY_START\r
+ gEfiIdeControllerInitProtocolGuid # TO_START\r
+ gEfiPciIoProtocolGuid # TO_START\r
+ gEfiDevicePathProtocolGuid # TO_START\r
\r
\r
#define SETFEATURE TRUE\r
#define CLEARFEATURE FALSE\r
\r
-//\r
-// PIO mode definition\r
-//\r
-typedef enum {\r
- ATA_PIO_MODE_BELOW_2,\r
- ATA_PIO_MODE_2,\r
- ATA_PIO_MODE_3,\r
- ATA_PIO_MODE_4\r
+///\r
+/// PIO mode definition\r
+///\r
+typedef enum _ATA_PIO_MODE_ {\r
+ AtaPioModeBelow2,\r
+ AtaPioMode2,\r
+ AtaPioMode3,\r
+ AtaPioMode4\r
} ATA_PIO_MODE;\r
\r
//\r
// Multi word DMA definition\r
//\r
-typedef enum {\r
- ATA_MDMA_MODE_0,\r
- ATA_MDMA_MODE_1,\r
- ATA_MDMA_MODE_2\r
+typedef enum _ATA_MDMA_MODE_ {\r
+ AtaMdmaMode0,\r
+ AtaMdmaMode1,\r
+ AtaMdmaMode2\r
} ATA_MDMA_MODE;\r
\r
//\r
// UDMA mode definition\r
//\r
-typedef enum {\r
- ATA_UDMA_MODE_0,\r
- ATA_UDMA_MODE_1,\r
- ATA_UDMA_MODE_2,\r
- ATA_UDMA_MODE_3,\r
- ATA_UDMA_MODE_4,\r
- ATA_UDMA_MODE_5\r
+typedef enum _ATA_UDMA_MODE_ {\r
+ AtaUdmaMode0,\r
+ AtaUdmaMode1,\r
+ AtaUdmaMode2,\r
+ AtaUdmaMode3,\r
+ AtaUdmaMode4,\r
+ AtaUdmaMode5\r
} ATA_UDMA_MODE;\r
\r
#define ATA_MODE_CATEGORY_DEFAULT_PIO 0x00\r
/**@file\r
- S3 Library. This library class defines a set of methods related do S3 mode\r
+ This library provides API to invoke the S3 resume vector in the APCI Table in S3 resume mode. \r
+ This library instance is only for PEI phase use and the APIs in this instance\r
\r
Copyright (c) 2006 - 2008 Intel Corporation\r
All rights reserved. This program and the accompanying materials\r
#/** @file\r
-# Graphics Library for UEFI drivers\r
#\r
-# This library provides supports for basic graphic functions.\r
+# This library provides API to invoke the S3 resume vector in the APCI Table in S3 resume mode. \r
+# This library instance is only for PEI phase use and the APIs in this instance\r
+#\r
# Copyright (c) 2006 - 2009, Intel Corporation.\r
#\r
# All rights reserved. This program and the accompanying materials\r
IntelFrameworkModulePkg/IntelFrameworkModulePkg.dec\r
\r
[LibraryClasses]\r
- BaseLib\r
PeiServicesTablePointerLib\r
DebugLib\r
\r
[Ppis]\r
- gEfiPeiS3ResumePpiGuid # PPI ALWAYS_CONSUMED\r
+ gEfiPeiS3ResumePpiGuid # ALWAYS_CONSUMES\r
\r
\r