IntelFrameworkModulePkg: Clean up source files
1. Do not use tab characters 2. No trailing white space in one line 3. All files must end with CRLF Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Liming Gao <liming.gao@intel.com>
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
/** @file
|
||||
This file contains all helper functions on the ATA command
|
||||
|
||||
Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
|
||||
This file contains all helper functions on the ATA command
|
||||
|
||||
Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
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
|
||||
@@ -31,9 +31,9 @@
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used to record
|
||||
all the information of the IDE device.
|
||||
|
||||
@retval EFI_SUCCESS The disk specified by IdeDev is a Atapi6 supported one and
|
||||
@retval EFI_SUCCESS The disk specified by IdeDev is a Atapi6 supported one and
|
||||
48-bit addressing must be used
|
||||
@retval EFI_UNSUPPORTED The disk dosn't not support Atapi6 or it supports but the
|
||||
@retval EFI_UNSUPPORTED The disk dosn't not support Atapi6 or it supports but the
|
||||
capacity is below 120G, 48bit addressing is not needed
|
||||
@retval EFI_DEVICE_ERROR The identify data in IdeDev is incorrect
|
||||
@retval EFI_INVALID_PARAMETER The identify data in IdeDev is NULL.
|
||||
@@ -110,7 +110,7 @@ AtaAtapi6Identify (
|
||||
/**
|
||||
Enable SMART of the disk if supported
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure,used to record
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure,used to record
|
||||
all the information of the IDE device.
|
||||
**/
|
||||
VOID
|
||||
@@ -263,7 +263,7 @@ AtaSMARTSupport (
|
||||
information it needs to fill the IDE_BLK_IO_DEV data structure,
|
||||
including device type, media block size, media capacity, and etc.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure,used to record
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure,used to record
|
||||
all the information of the IDE device.
|
||||
|
||||
@retval EFI_SUCCESS Identify ATA device successfully.
|
||||
@@ -280,7 +280,7 @@ ATAIdentify (
|
||||
EFI_IDENTIFY_DATA *AtaIdentifyPointer;
|
||||
UINT32 Capacity;
|
||||
UINT8 DeviceSelect;
|
||||
UINTN Retry;
|
||||
UINTN Retry;
|
||||
|
||||
//
|
||||
// AtaIdentifyPointer is used for accommodating returned IDENTIFY data of
|
||||
@@ -297,9 +297,9 @@ ATAIdentify (
|
||||
//
|
||||
DeviceSelect = (UINT8) ((IdeDev->Device) << 4);
|
||||
|
||||
|
||||
|
||||
Retry = 3;
|
||||
while (Retry > 0) {
|
||||
while (Retry > 0) {
|
||||
Status = AtaPioDataIn (
|
||||
IdeDev,
|
||||
(VOID *) AtaIdentifyPointer,
|
||||
@@ -348,20 +348,20 @@ ATAIdentify (
|
||||
//
|
||||
return EFI_SUCCESS;
|
||||
} else if (Status == EFI_DEVICE_ERROR) {
|
||||
//
|
||||
// Some disk with big capacity (>200GB) is slow when being identified
|
||||
// and will return all zero for word83.
|
||||
// We try twice at first. If it fails, we do a SoftRest and try again.
|
||||
//
|
||||
Retry--;
|
||||
if (Retry == 1) {
|
||||
//
|
||||
// Do a SoftRest before the third attempt.
|
||||
//
|
||||
AtaSoftReset (IdeDev);
|
||||
}
|
||||
continue;
|
||||
}
|
||||
//
|
||||
// Some disk with big capacity (>200GB) is slow when being identified
|
||||
// and will return all zero for word83.
|
||||
// We try twice at first. If it fails, we do a SoftRest and try again.
|
||||
//
|
||||
Retry--;
|
||||
if (Retry == 1) {
|
||||
//
|
||||
// Do a SoftRest before the third attempt.
|
||||
//
|
||||
AtaSoftReset (IdeDev);
|
||||
}
|
||||
continue;
|
||||
}
|
||||
//
|
||||
// This is a hard disk <= 120GB capacity, treat it as normal hard disk
|
||||
//
|
||||
@@ -390,7 +390,7 @@ ATAIdentify (
|
||||
}
|
||||
|
||||
}
|
||||
break;
|
||||
break;
|
||||
}
|
||||
|
||||
gBS->FreePool (AtaIdentifyPointer);
|
||||
@@ -404,12 +404,12 @@ ATAIdentify (
|
||||
|
||||
/**
|
||||
This function is a helper function used to change the char order in a string. It
|
||||
is designed specially for the PrintAtaModuleName() function. After the IDE device
|
||||
is detected, the IDE driver gets the device module name by sending ATA command
|
||||
is designed specially for the PrintAtaModuleName() function. After the IDE device
|
||||
is detected, the IDE driver gets the device module name by sending ATA command
|
||||
called ATA Identify Command or ATAPI Identify Command to the specified IDE device.
|
||||
The module name returned is a string of ASCII characters: the first character is bit8--bit15
|
||||
of the first word, the second character is BIT0--bit7 of the first word and so on. Thus
|
||||
the string can not be print directly before it is preprocessed by this func to change
|
||||
the string can not be print directly before it is preprocessed by this func to change
|
||||
the order of characters in each word in the string.
|
||||
|
||||
@param Destination Indicates the destination string.
|
||||
@@ -455,7 +455,7 @@ PrintAtaModuleName (
|
||||
/**
|
||||
This function is used to send out ATA commands conforms to the PIO Data In Protocol.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used to record
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used to record
|
||||
all the information of the IDE device.
|
||||
@param Buffer buffer contained data transferred from device to host.
|
||||
@param ByteCount data size in byte unit of the buffer.
|
||||
@@ -465,7 +465,7 @@ PrintAtaModuleName (
|
||||
@param SectorNumber value of the Sector Number Register
|
||||
@param CylinderLsb value of the low byte of the Cylinder Register
|
||||
@param CylinderMsb value of the high byte of the Cylinder Register
|
||||
|
||||
|
||||
@retval EFI_SUCCESS send out the ATA command and device send required data successfully.
|
||||
@retval EFI_DEVICE_ERROR command sent failed.
|
||||
|
||||
@@ -752,7 +752,7 @@ AtaPioDataOut (
|
||||
some debug information and if there is ERR bit set in the Status
|
||||
Register, the Error Register's value is also be parsed and print out.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used to
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used to
|
||||
record all the information of the IDE device.
|
||||
|
||||
@retval EFI_SUCCESS No err information in the Status Register.
|
||||
@@ -850,15 +850,15 @@ CheckErrorStatus (
|
||||
}
|
||||
|
||||
/**
|
||||
This function is called by the AtaBlkIoReadBlocks() to perform reading from
|
||||
This function is called by the AtaBlkIoReadBlocks() to perform reading from
|
||||
media in block unit.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used to record
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used to record
|
||||
all the information of the IDE device.
|
||||
@param DataBuffer A pointer to the destination buffer for the data.
|
||||
@param Lba The starting logical block address to read from on the device media.
|
||||
@param NumberOfBlocks The number of transfer data blocks.
|
||||
|
||||
|
||||
@return status is fully dependent on the return status of AtaPioDataIn() function.
|
||||
|
||||
**/
|
||||
@@ -959,7 +959,7 @@ AtaReadSectors (
|
||||
}
|
||||
|
||||
/**
|
||||
This function is called by the AtaBlkIoWriteBlocks() to perform writing onto
|
||||
This function is called by the AtaBlkIoWriteBlocks() to perform writing onto
|
||||
media in block unit.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure,used to record
|
||||
@@ -967,7 +967,7 @@ AtaReadSectors (
|
||||
@param BufferData A pointer to the source buffer for the data.
|
||||
@param Lba The starting logical block address to write onto the device media.
|
||||
@param NumberOfBlocks The number of transfer data blocks.
|
||||
|
||||
|
||||
@return status is fully dependent on the return status of AtaPioDataIn() function.
|
||||
|
||||
**/
|
||||
@@ -1055,7 +1055,7 @@ AtaWriteSectors (
|
||||
}
|
||||
/**
|
||||
This function is used to implement the Soft Reset on the specified device. But,
|
||||
the ATA Soft Reset mechanism is so strong a reset method that it will force
|
||||
the ATA Soft Reset mechanism is so strong a reset method that it will force
|
||||
resetting on both devices connected to the same cable.
|
||||
|
||||
It is called by IdeBlkIoReset(), a interface function of Block
|
||||
@@ -1120,7 +1120,7 @@ AtaSoftReset (
|
||||
return EFI_SUCCESS;
|
||||
}
|
||||
/**
|
||||
This function is used to send out ATA commands conforms to the PIO Data In
|
||||
This function is used to send out ATA commands conforms to the PIO Data In
|
||||
Protocol, supporting ATA/ATAPI-6 standard
|
||||
|
||||
Comparing with ATA-3 data in protocol, we have two differents here:
|
||||
@@ -1595,27 +1595,27 @@ DoAtaUdma (
|
||||
// Read BMIS register and clear ERROR and INTR bit
|
||||
//
|
||||
IdeDev->PciIo->Io.Read (
|
||||
IdeDev->PciIo,
|
||||
EfiPciIoWidthUint8,
|
||||
EFI_PCI_IO_PASS_THROUGH_BAR,
|
||||
IoPortForBmis,
|
||||
1,
|
||||
&RegisterValue
|
||||
);
|
||||
|
||||
IdeDev->PciIo,
|
||||
EfiPciIoWidthUint8,
|
||||
EFI_PCI_IO_PASS_THROUGH_BAR,
|
||||
IoPortForBmis,
|
||||
1,
|
||||
&RegisterValue
|
||||
);
|
||||
|
||||
RegisterValue |= (BMIS_INTERRUPT | BMIS_ERROR);
|
||||
|
||||
|
||||
IdeDev->PciIo->Io.Write (
|
||||
IdeDev->PciIo,
|
||||
EfiPciIoWidthUint8,
|
||||
EFI_PCI_IO_PASS_THROUGH_BAR,
|
||||
IoPortForBmis,
|
||||
1,
|
||||
&RegisterValue
|
||||
);
|
||||
IdeDev->PciIo,
|
||||
EfiPciIoWidthUint8,
|
||||
EFI_PCI_IO_PASS_THROUGH_BAR,
|
||||
IoPortForBmis,
|
||||
1,
|
||||
&RegisterValue
|
||||
);
|
||||
|
||||
Status = EFI_SUCCESS;
|
||||
|
||||
|
||||
RemainBlockNum = NumberOfBlocks;
|
||||
while (RemainBlockNum > 0) {
|
||||
|
||||
@@ -1813,8 +1813,8 @@ DoAtaUdma (
|
||||
);
|
||||
if (((RegisterValue & (BMIS_INTERRUPT | BMIS_ERROR)) != 0) || (Count == 0)) {
|
||||
if (((RegisterValue & BMIS_ERROR) != 0) || (Count == 0)) {
|
||||
Status = EFI_DEVICE_ERROR;
|
||||
break;
|
||||
Status = EFI_DEVICE_ERROR;
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -1847,7 +1847,7 @@ DoAtaUdma (
|
||||
1,
|
||||
&RegisterValue
|
||||
);
|
||||
//
|
||||
//
|
||||
// Read Status Register of IDE device to clear interrupt
|
||||
//
|
||||
RegisterValue = IDEReadPortB(IdeDev->PciIo,IdeDev->IoPort->Reg.Status);
|
||||
@@ -1878,9 +1878,9 @@ DoAtaUdma (
|
||||
return EFI_DEVICE_ERROR;
|
||||
}
|
||||
|
||||
if (EFI_ERROR (Status)) {
|
||||
break;
|
||||
}
|
||||
if (EFI_ERROR (Status)) {
|
||||
break;
|
||||
}
|
||||
DataBuffer = (UINT8 *) DataBuffer + NumberOfBlocks * IdeDev->BlkIo.Media->BlockSize;
|
||||
StartLba += NumberOfBlocks;
|
||||
}
|
||||
@@ -1898,10 +1898,10 @@ DoAtaUdma (
|
||||
|
||||
/**
|
||||
This function is called by the AtaBlkIoReadBlocks() to perform reading from
|
||||
media in block unit. The function has been enhanced to support >120GB access
|
||||
media in block unit. The function has been enhanced to support >120GB access
|
||||
and transfer at most 65536 blocks per command
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used to record
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used to record
|
||||
all the information of the IDE device.
|
||||
@param DataBuffer A pointer to the destination buffer for the data.
|
||||
@param StartLba The starting logical block address to read from on the device media.
|
||||
@@ -1930,7 +1930,7 @@ AtaUdmaReadExt (
|
||||
@param StartLba The starting logical block address to read from
|
||||
on the device media.
|
||||
@param NumberOfBlocks The number of transfer data blocks.
|
||||
|
||||
|
||||
@return status depends on the function DoAtaUdma() returns.
|
||||
**/
|
||||
EFI_STATUS
|
||||
@@ -2313,7 +2313,7 @@ AtaUdmaWriteExt (
|
||||
|
||||
/**
|
||||
This function is called by the AtaBlkIoWriteBlocks() to perform
|
||||
writing to media in block unit.
|
||||
writing to media in block unit.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
to record all the information of the IDE device.
|
||||
@@ -2321,7 +2321,7 @@ AtaUdmaWriteExt (
|
||||
@param StartLba The starting logical block address to write to
|
||||
on the device media.
|
||||
@param NumberOfBlocks The number of transfer data blocks.
|
||||
|
||||
|
||||
@return status depends on the function DoAtaUdma() returns.
|
||||
**/
|
||||
EFI_STATUS
|
||||
@@ -2342,7 +2342,7 @@ AtaUdmaWrite (
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure,used
|
||||
to record all the information of the IDE device.
|
||||
@param DataBuffer A pointer to the source buffer for the data.
|
||||
@param StartLba The starting logical block address to write onto the device
|
||||
@param StartLba The starting logical block address to write onto the device
|
||||
media.
|
||||
@param NumberOfBlocks The number of transfer data blocks.
|
||||
|
||||
@@ -2423,7 +2423,7 @@ AtaWriteSectorsExt (
|
||||
@param BufferSize The size of the Buffer in bytes. This must be a multiple
|
||||
of the intrinsic block size of the device.
|
||||
@param Buffer A pointer to the source buffer for the data.The caller
|
||||
is responsible for either having implicit or explicit
|
||||
is responsible for either having implicit or explicit
|
||||
ownership of the memory that data is written from.
|
||||
|
||||
@retval EFI_SUCCESS Write Blocks successfully.
|
||||
|
@@ -1,14 +1,14 @@
|
||||
/** @file
|
||||
This file contains all helper functions on the ATAPI command
|
||||
|
||||
Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
|
||||
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
|
||||
This file contains all helper functions on the ATAPI command
|
||||
|
||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
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.
|
||||
|
||||
**/
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
/**
|
||||
This function is used to get the current status of the media residing
|
||||
in the LS-120 drive or ZIP drive. The media status is returned in the
|
||||
in the LS-120 drive or ZIP drive. The media status is returned in the
|
||||
Error Status.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
@@ -28,8 +28,8 @@
|
||||
@retval EFI_NO_MEDIA There is no media in the drive.
|
||||
@retval EFI_WRITE_PROTECTED The media is writing protected.
|
||||
|
||||
@note This function must be called after the LS120EnableMediaStatus()
|
||||
with second parameter set to TRUE
|
||||
@note This function must be called after the LS120EnableMediaStatus()
|
||||
with second parameter set to TRUE
|
||||
(means enable media status notification) is called.
|
||||
**/
|
||||
EFI_STATUS
|
||||
@@ -189,8 +189,8 @@ AtapiReadPendingData (
|
||||
while ((TempWordBuffer & (ATA_STSREG_BSY | ATA_STSREG_DRQ)) == ATA_STSREG_DRQ) {
|
||||
IDEReadPortWMultiple (
|
||||
IdeDev->PciIo,
|
||||
IdeDev->IoPort->Data,
|
||||
1,
|
||||
IdeDev->IoPort->Data,
|
||||
1,
|
||||
&TempWordBuffer
|
||||
);
|
||||
TempWordBuffer = IDEReadPortB (IdeDev->PciIo,IdeDev->IoPort->Alt.AltStatus);
|
||||
@@ -200,7 +200,7 @@ AtapiReadPendingData (
|
||||
}
|
||||
|
||||
/**
|
||||
This function is called by either AtapiPacketCommandIn() or AtapiPacketCommandOut().
|
||||
This function is called by either AtapiPacketCommandIn() or AtapiPacketCommandOut().
|
||||
It is used to transfer data between host and device. The data direction is specified
|
||||
by the fourth parameter.
|
||||
|
||||
@@ -246,9 +246,9 @@ PioReadWriteData (
|
||||
}
|
||||
//
|
||||
// for performance, we assert the ByteCount is an even number
|
||||
// which is actually a resonable assumption
|
||||
// which is actually a resonable assumption
|
||||
ASSERT((ByteCount%2) == 0);
|
||||
|
||||
|
||||
PtrBuffer = Buffer;
|
||||
RequiredWordCount = ByteCount / 2;
|
||||
//
|
||||
@@ -257,7 +257,7 @@ PioReadWriteData (
|
||||
ActualWordCount = 0;
|
||||
|
||||
while (ActualWordCount < RequiredWordCount) {
|
||||
|
||||
|
||||
//
|
||||
// before each data transfer stream, the host should poll DRQ bit ready,
|
||||
// to see whether indicates device is ready to transfer data.
|
||||
@@ -266,7 +266,7 @@ PioReadWriteData (
|
||||
if (EFI_ERROR (Status)) {
|
||||
return CheckErrorStatus (IdeDev);
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// read Status Register will clear interrupt
|
||||
//
|
||||
@@ -301,7 +301,7 @@ PioReadWriteData (
|
||||
PtrBuffer += WordCount;
|
||||
ActualWordCount += WordCount;
|
||||
}
|
||||
|
||||
|
||||
if (Read) {
|
||||
//
|
||||
// In the case where the drive wants to send more data than we need to read,
|
||||
@@ -326,17 +326,17 @@ PioReadWriteData (
|
||||
}
|
||||
|
||||
/**
|
||||
This function is used to send out ATAPI commands conforms to the Packet Command
|
||||
This function is used to send out ATAPI commands conforms to the Packet Command
|
||||
with PIO Data In Protocol.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
to record all the information of the IDE device.
|
||||
@param Packet pointer pointing to ATAPI_PACKET_COMMAND data structure
|
||||
which contains the contents of the command.
|
||||
which contains the contents of the command.
|
||||
@param Buffer buffer contained data transferred from device to host.
|
||||
@param ByteCount data size in byte unit of the buffer.
|
||||
@param TimeOut this parameter is used to specify the timeout value for the
|
||||
PioReadWriteData() function.
|
||||
@param TimeOut this parameter is used to specify the timeout value for the
|
||||
PioReadWriteData() function.
|
||||
|
||||
@retval EFI_SUCCESS send out the ATAPI packet command successfully
|
||||
and device sends data successfully.
|
||||
@@ -437,10 +437,10 @@ AtapiPacketCommandIn (
|
||||
which contains the contents of the command.
|
||||
@param Buffer buffer contained data transferred from host to device.
|
||||
@param ByteCount data size in byte unit of the buffer.
|
||||
@param TimeOut this parameter is used to specify the timeout value
|
||||
for the PioReadWriteData() function.
|
||||
@param TimeOut this parameter is used to specify the timeout value
|
||||
for the PioReadWriteData() function.
|
||||
@retval EFI_SUCCESS send out the ATAPI packet command successfully
|
||||
and device received data successfully.
|
||||
and device received data successfully.
|
||||
@retval EFI_DEVICE_ERROR the device failed to send data.
|
||||
|
||||
**/
|
||||
@@ -465,7 +465,7 @@ AtapiPacketCommandOut (
|
||||
if (EFI_ERROR (Status)) {
|
||||
return Status;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Select device via Device/Head Register.
|
||||
//
|
||||
@@ -587,26 +587,26 @@ AtapiInquiry (
|
||||
to fill in the Media data structure of the Block I/O Protocol interface.
|
||||
|
||||
There are 5 steps to reach such objective:
|
||||
1. Sends out the ATAPI Identify Command to the specified device.
|
||||
1. Sends out the ATAPI Identify Command to the specified device.
|
||||
Only ATAPI device responses to this command. If the command succeeds,
|
||||
it returns the Identify data structure which filled with information
|
||||
about the device. Since the ATAPI device contains removable media,
|
||||
it returns the Identify data structure which filled with information
|
||||
about the device. Since the ATAPI device contains removable media,
|
||||
the only meaningful information is the device module name.
|
||||
2. Sends out ATAPI Inquiry Packet Command to the specified device.
|
||||
This command will return inquiry data of the device, which contains
|
||||
the device type information.
|
||||
3. Allocate sense data space for future use. We don't detect the media
|
||||
presence here to improvement boot performance, especially when CD
|
||||
presence here to improvement boot performance, especially when CD
|
||||
media is present. The media detection will be performed just before
|
||||
each BLK_IO read/write
|
||||
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
to record all the information of the IDE device.
|
||||
|
||||
@retval EFI_SUCCESS Identify ATAPI device successfully.
|
||||
@retval EFI_DEVICE_ERROR ATAPI Identify Device Command failed or device type
|
||||
is not supported by this IDE driver.
|
||||
@retval EFI_OUT_OF_RESOURCES Allocate memory for sense data failed
|
||||
@retval EFI_OUT_OF_RESOURCES Allocate memory for sense data failed
|
||||
|
||||
@note Parameter "IdeDev" will be updated in this function.
|
||||
**/
|
||||
@@ -719,7 +719,7 @@ ATAPIIdentify (
|
||||
// WORM
|
||||
//
|
||||
case 0x04:
|
||||
|
||||
|
||||
//
|
||||
// Optical
|
||||
//
|
||||
@@ -758,13 +758,13 @@ ATAPIIdentify (
|
||||
}
|
||||
/**
|
||||
Sends out ATAPI Request Sense Packet Command to the specified device. This command
|
||||
will return all the current Sense data in the device. This function will pack
|
||||
will return all the current Sense data in the device. This function will pack
|
||||
all the Sense data in one single buffer.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
to record all the information of the IDE device.
|
||||
@param SenseCounts allocated in this function, and freed by the calling function.
|
||||
This buffer is used to accommodate all the sense data returned
|
||||
This buffer is used to accommodate all the sense data returned
|
||||
by the device.
|
||||
|
||||
@retval EFI_SUCCESS Request Sense command completes successfully.
|
||||
@@ -850,7 +850,7 @@ AtapiRequestSense (
|
||||
}
|
||||
/**
|
||||
This function is used to parse sense data. Only the first sense data is honoured
|
||||
|
||||
|
||||
@param IdeDev Indicates the calling context.
|
||||
@param SenseCount Count of sense data.
|
||||
@param Result The parsed result.
|
||||
@@ -936,12 +936,12 @@ ParseSenseData (
|
||||
EFI_STATUS
|
||||
AtapiTestUnitReady (
|
||||
IN IDE_BLK_IO_DEV *IdeDev,
|
||||
OUT SENSE_RESULT *SResult
|
||||
OUT SENSE_RESULT *SResult
|
||||
)
|
||||
{
|
||||
ATAPI_PACKET_COMMAND Packet;
|
||||
EFI_STATUS Status;
|
||||
UINTN SenseCount;
|
||||
UINTN SenseCount;
|
||||
|
||||
//
|
||||
// fill command packet
|
||||
@@ -974,7 +974,7 @@ AtapiTestUnitReady (
|
||||
|
||||
Current device status will impact device's response to the Read Capacity
|
||||
Command. For example, if the device once reset, the Read Capacity
|
||||
Command will fail. The Sense data record the current device status, so
|
||||
Command will fail. The Sense data record the current device status, so
|
||||
if the Read Capacity Command failed, the Sense data must be requested
|
||||
and be analyzed to determine if the Read Capacity Command should retry.
|
||||
|
||||
@@ -988,12 +988,12 @@ AtapiTestUnitReady (
|
||||
|
||||
@note Parameter "IdeDev" will be updated in this function.
|
||||
|
||||
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
AtapiReadCapacity (
|
||||
IN IDE_BLK_IO_DEV *IdeDev,
|
||||
OUT SENSE_RESULT *SResult
|
||||
OUT SENSE_RESULT *SResult
|
||||
)
|
||||
{
|
||||
//
|
||||
@@ -1002,7 +1002,7 @@ AtapiReadCapacity (
|
||||
EFI_STATUS Status;
|
||||
EFI_STATUS SenseStatus;
|
||||
ATAPI_PACKET_COMMAND Packet;
|
||||
UINTN SenseCount;
|
||||
UINTN SenseCount;
|
||||
|
||||
//
|
||||
// used for capacity data returned from ATAPI device
|
||||
@@ -1048,9 +1048,9 @@ AtapiReadCapacity (
|
||||
SenseStatus = AtapiRequestSense (IdeDev, &SenseCount);
|
||||
|
||||
if (!EFI_ERROR (SenseStatus)) {
|
||||
ParseSenseData (IdeDev, SenseCount, SResult);
|
||||
|
||||
if (!EFI_ERROR (Status) && *SResult == SenseNoSenseKey) {
|
||||
ParseSenseData (IdeDev, SenseCount, SResult);
|
||||
|
||||
if (!EFI_ERROR (Status) && *SResult == SenseNoSenseKey) {
|
||||
if (IdeDev->Type == IdeCdRom) {
|
||||
|
||||
IdeDev->BlkIo.Media->LastBlock = ((UINT32) Data.LastLba3 << 24) |
|
||||
@@ -1058,7 +1058,7 @@ AtapiReadCapacity (
|
||||
(Data.LastLba1 << 8) |
|
||||
Data.LastLba0;
|
||||
|
||||
IdeDev->BlkIo.Media->MediaPresent = TRUE;
|
||||
IdeDev->BlkIo.Media->MediaPresent = TRUE;
|
||||
|
||||
IdeDev->BlkIo.Media->ReadOnly = TRUE;
|
||||
|
||||
@@ -1077,7 +1077,7 @@ AtapiReadCapacity (
|
||||
} else {
|
||||
|
||||
IdeDev->BlkIo.Media->LastBlock = ((UINT32) FormatData.LastLba3 << 24) |
|
||||
(FormatData.LastLba2 << 16) |
|
||||
(FormatData.LastLba2 << 16) |
|
||||
(FormatData.LastLba1 << 8) |
|
||||
FormatData.LastLba0;
|
||||
if (IdeDev->BlkIo.Media->LastBlock != 0) {
|
||||
@@ -1110,7 +1110,7 @@ AtapiReadCapacity (
|
||||
}
|
||||
/**
|
||||
This function is used to test the current media write-protected or not residing
|
||||
in the LS-120 drive or ZIP drive.
|
||||
in the LS-120 drive or ZIP drive.
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
to record all the information of the IDE device.
|
||||
@param WriteProtected if True, current media is write protected.
|
||||
@@ -1159,8 +1159,8 @@ IsLS120orZipWriteProtected (
|
||||
}
|
||||
|
||||
/**
|
||||
Used before read/write blocks from/to ATAPI device media. Since ATAPI device
|
||||
media is removable, it is necessary to detect whether media is present and
|
||||
Used before read/write blocks from/to ATAPI device media. Since ATAPI device
|
||||
media is removable, it is necessary to detect whether media is present and
|
||||
get current present media's information, and if media has been changed, Block
|
||||
I/O Protocol need to be reinstalled.
|
||||
|
||||
@@ -1409,17 +1409,17 @@ AtapiDetectMedia (
|
||||
This function is called by the AtapiBlkIoReadBlocks() to perform
|
||||
read from media in block unit.
|
||||
|
||||
The main command used to access media here is READ(10) Command.
|
||||
READ(10) Command requests that the ATAPI device media transfer
|
||||
specified data to the host. Data is transferred in block(sector)
|
||||
The main command used to access media here is READ(10) Command.
|
||||
READ(10) Command requests that the ATAPI device media transfer
|
||||
specified data to the host. Data is transferred in block(sector)
|
||||
unit. The maximum number of blocks that can be transferred once is
|
||||
65536. This is the main difference between READ(10) and READ(12)
|
||||
65536. This is the main difference between READ(10) and READ(12)
|
||||
Command. The maximum number of blocks in READ(12) is 2 power 32.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
to record all the information of the IDE device.
|
||||
@param Buffer A pointer to the destination buffer for the data.
|
||||
@param Lba The starting logical block address to read from on the
|
||||
@param Buffer A pointer to the destination buffer for the data.
|
||||
@param Lba The starting logical block address to read from on the
|
||||
device media.
|
||||
@param NumberOfBlocks The number of transfer data blocks.
|
||||
|
||||
@@ -1527,19 +1527,19 @@ AtapiReadSectors (
|
||||
/**
|
||||
This function is called by the AtapiBlkIoWriteBlocks() to perform
|
||||
write onto media in block unit.
|
||||
The main command used to access media here is Write(10) Command.
|
||||
Write(10) Command requests that the ATAPI device media transfer
|
||||
specified data to the host. Data is transferred in block (sector)
|
||||
The main command used to access media here is Write(10) Command.
|
||||
Write(10) Command requests that the ATAPI device media transfer
|
||||
specified data to the host. Data is transferred in block (sector)
|
||||
unit. The maximum number of blocks that can be transferred once is
|
||||
65536.
|
||||
65536.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
to record all the information of the IDE device.
|
||||
@param Buffer A pointer to the source buffer for the data.
|
||||
@param Lba The starting logical block address to write onto
|
||||
@param Buffer A pointer to the source buffer for the data.
|
||||
@param Lba The starting logical block address to write onto
|
||||
the device media.
|
||||
@param NumberOfBlocks The number of transfer data blocks.
|
||||
|
||||
|
||||
@return status is fully dependent on the return status of AtapiPacketCommandOut() function.
|
||||
|
||||
**/
|
||||
@@ -1594,7 +1594,7 @@ AtapiWriteSectors (
|
||||
} else {
|
||||
SectorCount = (UINT16) BlocksRemaining;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Command code is WRITE_10.
|
||||
//
|
||||
@@ -1645,7 +1645,7 @@ AtapiWriteSectors (
|
||||
condition (such as BSY bit is always set ), I think the Soft Reset
|
||||
command should be sent without waiting for the BSY clear and DRDY
|
||||
set.
|
||||
This function is called by IdeBlkIoReset(),
|
||||
This function is called by IdeBlkIoReset(),
|
||||
a interface function of Block I/O protocol.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
@@ -1683,7 +1683,7 @@ AtapiSoftReset (
|
||||
if (EFI_ERROR (Status)) {
|
||||
return EFI_DEVICE_ERROR;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// stall 5 seconds to make the device status stable
|
||||
//
|
||||
@@ -1702,9 +1702,9 @@ AtapiSoftReset (
|
||||
@param BufferSize The size of the Buffer in bytes. This must be a multiple
|
||||
of the intrinsic block size of the device.
|
||||
@param Buffer A pointer to the destination buffer for the data. The caller
|
||||
is responsible for either having implicit or explicit
|
||||
is responsible for either having implicit or explicit
|
||||
ownership of the memory that data is read into.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS Read Blocks successfully.
|
||||
@retval EFI_DEVICE_ERROR Read Blocks failed.
|
||||
@retval EFI_NO_MEDIA There is no media in the device.
|
||||
@@ -1804,11 +1804,11 @@ AtapiBlkIoReadBlocks (
|
||||
if (EFI_ERROR (Status)) {
|
||||
return EFI_DEVICE_ERROR;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Read blocks succeeded
|
||||
//
|
||||
|
||||
|
||||
//
|
||||
// save the first block to the cache for performance
|
||||
//
|
||||
@@ -1840,8 +1840,8 @@ AtapiBlkIoReadBlocks (
|
||||
@retval EFI_NO_MEDIA There is no media in the device.
|
||||
@retval EFI_MEDIA_CHANGE The MediaId is not for the current media.
|
||||
@retval EFI_BAD_BUFFER_SIZE The BufferSize parameter is not a multiple of the
|
||||
intrinsic block size of the device.
|
||||
@retval EFI_INVALID_PARAMETER The write request contains LBAs that are not valid,
|
||||
intrinsic block size of the device.
|
||||
@retval EFI_INVALID_PARAMETER The write request contains LBAs that are not valid,
|
||||
or the data buffer is not valid.
|
||||
|
||||
@retval EFI_WRITE_PROTECTED The write protected is enabled or the media does not support write
|
||||
@@ -1889,7 +1889,7 @@ AtapiBlkIoWriteBlocks (
|
||||
}
|
||||
return Status;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Get the intrinsic block size
|
||||
//
|
||||
|
@@ -1,14 +1,14 @@
|
||||
/** @file
|
||||
UEFI Component Name(2) protocol implementation for ConPlatform driver.
|
||||
|
||||
Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
|
||||
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.
|
||||
Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
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.
|
||||
|
||||
**/
|
||||
|
||||
|
@@ -1,8 +1,8 @@
|
||||
/** @file
|
||||
|
||||
|
||||
UEFI Component Name(2) protocol implementation header file for IDE Bus driver.
|
||||
|
||||
Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
|
||||
|
||||
Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
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
|
||||
|
@@ -1,15 +1,15 @@
|
||||
/** @file
|
||||
Implementation of UEFI Driver Configuration Protocol for IDE bus driver which
|
||||
Implementation of UEFI Driver Configuration Protocol for IDE bus driver which
|
||||
provides ability to set IDE bus controller specific options.
|
||||
|
||||
Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.<BR>
|
||||
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.
|
||||
Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
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.
|
||||
|
||||
**/
|
||||
|
||||
@@ -80,7 +80,7 @@ GetResponse (
|
||||
}
|
||||
|
||||
/**
|
||||
Allows the user to set controller specific options for a controller that a
|
||||
Allows the user to set controller specific options for a controller that a
|
||||
driver is currently managing.
|
||||
|
||||
@param This A pointer to the EFI_DRIVER_CONFIGURATION_ PROTOCOL instance.
|
||||
@@ -91,26 +91,26 @@ GetResponse (
|
||||
that wish to set options for the bus controller.
|
||||
It will not be NULL for a bus driver that wishes to set
|
||||
options for one of its child controllers.
|
||||
@param Language A pointer to a three character ISO 639-2 language identifier.
|
||||
This is the language of the user interface that should be presented
|
||||
to the user, and it must match one of the languages specified in
|
||||
@param Language A pointer to a three character ISO 639-2 language identifier.
|
||||
This is the language of the user interface that should be presented
|
||||
to the user, and it must match one of the languages specified in
|
||||
SupportedLanguages. The number of languages supported by a driver is up to
|
||||
the driver writer.
|
||||
@param ActionRequired A pointer to the action that the calling agent is required
|
||||
@param ActionRequired A pointer to the action that the calling agent is required
|
||||
to perform when this function returns.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS The driver specified by This successfully set the configuration
|
||||
|
||||
@retval EFI_SUCCESS The driver specified by This successfully set the configuration
|
||||
options for the controller specified by ControllerHandle..
|
||||
@retval EFI_INVALID_PARAMETER ControllerHandle is not a valid EFI_HANDLE.
|
||||
@retval EFI_INVALID_PARAMETER ChildHandle is not NULL and it is not a valid EFI_HANDLE.
|
||||
@retval EFI_INVALID_PARAMETER ActionRequired is NULL.
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support setting configuration options for
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support setting configuration options for
|
||||
the controller specified by ControllerHandle and ChildHandle.
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support the language specified by Language.
|
||||
@retval EFI_DEVICE_ERROR A device error occurred while attempt to set the configuration options for the
|
||||
@retval EFI_DEVICE_ERROR A device error occurred while attempt to set the configuration options for the
|
||||
controller specified by ControllerHandle and ChildHandle.
|
||||
@retval EFI_OUT_RESOURCES There are not enough resources available to set the configuration options for the
|
||||
@retval EFI_OUT_RESOURCES There are not enough resources available to set the configuration options for the
|
||||
controller specified by ControllerHandle and ChildHandle
|
||||
**/
|
||||
EFI_STATUS
|
||||
@@ -182,20 +182,20 @@ IDEBusDriverConfigurationSetOptions (
|
||||
Tests to see if a controller's current configuration options are valid.
|
||||
|
||||
@param This A pointer to the EFI_DRIVER_CONFIGURATION_PROTOCOL instance.
|
||||
@param ControllerHandle The handle of the controller to test if it's current configuration options
|
||||
@param ControllerHandle The handle of the controller to test if it's current configuration options
|
||||
are valid.
|
||||
@param ChildHandle The handle of the child controller to test if it's current configuration
|
||||
options are valid. This is an optional parameter that may be NULL. It will
|
||||
@param ChildHandle The handle of the child controller to test if it's current configuration
|
||||
options are valid. This is an optional parameter that may be NULL. It will
|
||||
be NULL for device drivers. It will also be NULL for a bus drivers that
|
||||
wish to test the configuration options for the bus controller. It will
|
||||
not be NULL for a bus driver that wishes to test configuration options for
|
||||
wish to test the configuration options for the bus controller. It will
|
||||
not be NULL for a bus driver that wishes to test configuration options for
|
||||
one of its child controllers.
|
||||
@retval EFI_SUCCESS The controller specified by ControllerHandle and ChildHandle that is being
|
||||
managed by the driver specified by This has a valid set of configuration
|
||||
options.
|
||||
@retval EFI_INVALID_PARAMETER ControllerHandle is not a valid EFI_HANDLE.
|
||||
@retval EFI_INVALID_PARAMETER ChildHandle is not NULL and it is not a valid EFI_HANDLE.
|
||||
@retval EFI_UNSUPPORTED The driver specified by This is not currently managing the controller
|
||||
@retval EFI_UNSUPPORTED The driver specified by This is not currently managing the controller
|
||||
specified by ControllerHandle and ChildHandle.
|
||||
@retval EFI_DEVICE_ERROR The controller specified by ControllerHandle and ChildHandle that is being
|
||||
managed by the driver specified by This has an invalid set of configuration
|
||||
@@ -236,31 +236,31 @@ IDEBusDriverConfigurationOptionsValid (
|
||||
|
||||
@param This A pointer to the EFI_DRIVER_CONFIGURATION_ PROTOCOL instance.
|
||||
@param ControllerHandle The handle of the controller to force default configuration options on.
|
||||
@param ChildHandle The handle of the child controller to force default configuration
|
||||
options on This is an optional parameter that may be NULL. It
|
||||
will be NULL for device drivers. It will also be NULL for a bus
|
||||
@param ChildHandle The handle of the child controller to force default configuration
|
||||
options on This is an optional parameter that may be NULL. It
|
||||
will be NULL for device drivers. It will also be NULL for a bus
|
||||
drivers that wish to force default configuration options for the bus
|
||||
controller. It will not be NULL for a bus driver that wishes to force
|
||||
default configuration options for one of its child controllers.
|
||||
@param DefaultType The type of default configuration options to force on the controller
|
||||
specified by ControllerHandle and ChildHandle.
|
||||
@param ActionRequired A pointer to the action that the calling agent is required to perform
|
||||
@param DefaultType The type of default configuration options to force on the controller
|
||||
specified by ControllerHandle and ChildHandle.
|
||||
@param ActionRequired A pointer to the action that the calling agent is required to perform
|
||||
when this function returns.
|
||||
|
||||
@retval EFI_SUCCESS The driver specified by This successfully forced the
|
||||
default configuration options on the controller specified by
|
||||
@retval EFI_SUCCESS The driver specified by This successfully forced the
|
||||
default configuration options on the controller specified by
|
||||
ControllerHandle and ChildHandle.
|
||||
@retval EFI_INVALID_PARAMETER ControllerHandle is not a valid EFI_HANDLE.
|
||||
@retval EFI_INVALID_PARAMETER ChildHandle is not NULL and it is not a valid EFI_HANDLE.
|
||||
@retval EFI_INVALID_PARAMETER ActionRequired is NULL.
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support forcing the default
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support forcing the default
|
||||
configuration options on the controller specified by ControllerHandle
|
||||
and ChildHandle.
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support the configuration type
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support the configuration type
|
||||
specified by DefaultType.
|
||||
@retval EFI_DEVICE_ERROR A device error occurred while attempt to force the default configuration
|
||||
@retval EFI_DEVICE_ERROR A device error occurred while attempt to force the default configuration
|
||||
options on the controller specified by ControllerHandle and ChildHandle.
|
||||
@retval EFI_OUT_RESOURCES There are not enough resources available to force the default configuration
|
||||
@retval EFI_OUT_RESOURCES There are not enough resources available to force the default configuration
|
||||
options on the controller specified by ControllerHandle and ChildHandle.
|
||||
**/
|
||||
EFI_STATUS
|
||||
|
@@ -1,15 +1,15 @@
|
||||
/** @file
|
||||
Implementation of UEFI driver Dialnostics protocol which to perform diagnostic on the IDE
|
||||
Bus controller.
|
||||
|
||||
Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
|
||||
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.
|
||||
Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
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.
|
||||
|
||||
**/
|
||||
|
||||
@@ -42,24 +42,24 @@ GLOBAL_REMOVE_IF_UNREFERENCED EFI_DRIVER_DIAGNOSTICS2_PROTOCOL gIDEBusDriverDiag
|
||||
@param ChildHandle The handle of the child controller to run diagnostics on
|
||||
This is an optional parameter that may be NULL. It will
|
||||
be NULL for device drivers. It will also be NULL for a
|
||||
bus drivers that wish to run diagnostics on the bus controller.
|
||||
It will not be NULL for a bus driver that wishes to run
|
||||
bus drivers that wish to run diagnostics on the bus controller.
|
||||
It will not be NULL for a bus driver that wishes to run
|
||||
diagnostics on one of its child controllers.
|
||||
@param DiagnosticType Indicates type of diagnostics to perform on the controller
|
||||
specified by ControllerHandle and ChildHandle.
|
||||
@param Language A pointer to a three character ISO 639-2 language identifier.
|
||||
This is the language in which the optional error message should
|
||||
be returned in Buffer, and it must match one of the languages
|
||||
@param Language A pointer to a three character ISO 639-2 language identifier.
|
||||
This is the language in which the optional error message should
|
||||
be returned in Buffer, and it must match one of the languages
|
||||
specified in SupportedLanguages. The number of languages supported by
|
||||
a driver is up to the driver writer.
|
||||
@param ErrorType A GUID that defines the format of the data returned in Buffer.
|
||||
@param BufferSize The size, in bytes, of the data returned in Buffer.
|
||||
@param Buffer A buffer that contains a Null-terminated Unicode string
|
||||
plus some additional data whose format is defined by ErrorType.
|
||||
Buffer is allocated by this function with AllocatePool(), and
|
||||
plus some additional data whose format is defined by ErrorType.
|
||||
Buffer is allocated by this function with AllocatePool(), and
|
||||
it is the caller's responsibility to free it with a call to FreePool().
|
||||
|
||||
@retval EFI_SUCCESS The controller specified by ControllerHandle and ChildHandle passed
|
||||
@retval EFI_SUCCESS The controller specified by ControllerHandle and ChildHandle passed
|
||||
the diagnostic.
|
||||
@retval EFI_INVALID_PARAMETER ControllerHandle is NULL.
|
||||
@retval EFI_INVALID_PARAMETER ChildHandle is not NULL and it is not a valid EFI_HANDLE.
|
||||
@@ -67,18 +67,18 @@ GLOBAL_REMOVE_IF_UNREFERENCED EFI_DRIVER_DIAGNOSTICS2_PROTOCOL gIDEBusDriverDiag
|
||||
@retval EFI_INVALID_PARAMETER ErrorType is NULL.
|
||||
@retval EFI_INVALID_PARAMETER BufferType is NULL.
|
||||
@retval EFI_INVALID_PARAMETER Buffer is NULL.
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support running
|
||||
diagnostics for the controller specified by ControllerHandle
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support running
|
||||
diagnostics for the controller specified by ControllerHandle
|
||||
and ChildHandle.
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support the
|
||||
type of diagnostic specified by DiagnosticType.
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support the language
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support the language
|
||||
specified by Language.
|
||||
@retval EFI_OUT_OF_RESOURCES There are not enough resources available to complete the
|
||||
@retval EFI_OUT_OF_RESOURCES There are not enough resources available to complete the
|
||||
diagnostics.
|
||||
@retval EFI_OUT_OF_RESOURCES There are not enough resources available to return the
|
||||
@retval EFI_OUT_OF_RESOURCES There are not enough resources available to return the
|
||||
status information in ErrorType, BufferSize,and Buffer.
|
||||
@retval EFI_DEVICE_ERROR The controller specified by ControllerHandle and ChildHandle
|
||||
@retval EFI_DEVICE_ERROR The controller specified by ControllerHandle and ChildHandle
|
||||
did not pass the diagnostic.
|
||||
**/
|
||||
EFI_STATUS
|
||||
|
@@ -1,7 +1,7 @@
|
||||
/** @file
|
||||
The file ontaining the helper functions implement of the Ide Bus driver
|
||||
|
||||
Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.<BR>
|
||||
|
||||
Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
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
|
||||
@@ -24,7 +24,7 @@ UINT8 MasterDeviceType = INVALID_DEVICE_TYPE;
|
||||
read a one-byte data from a IDE port.
|
||||
|
||||
@param PciIo The PCI IO protocol instance
|
||||
@param Port the IDE Port number
|
||||
@param Port the IDE Port number
|
||||
|
||||
@return the one-byte data read from IDE port
|
||||
**/
|
||||
@@ -270,7 +270,7 @@ IDEWritePortWMultiple (
|
||||
@param PciIo Pointer to the EFI_PCI_IO_PROTOCOL instance
|
||||
@param IdeRegsBaseAddr Pointer to IDE_REGISTERS_BASE_ADDR to
|
||||
receive IDE IO port registers' base addresses
|
||||
|
||||
|
||||
@retval EFI_UNSUPPORTED return this value when the BARs is not IO type
|
||||
@retval EFI_SUCCESS Get the Base address successfully
|
||||
@retval other read the pci configureation data error
|
||||
@@ -351,7 +351,7 @@ GetIdeRegistersBaseAddr (
|
||||
succeess.
|
||||
|
||||
@param IdeDev The BLK_IO private data which specifies the IDE device
|
||||
|
||||
|
||||
@retval EFI_INVALID_PARAMETER return this value when the channel is invalid
|
||||
@retval EFI_SUCCESS reassign the IDE IO resource successfully
|
||||
@retval other get the IDE current base address effor
|
||||
@@ -370,7 +370,7 @@ ReassignIdeResources (
|
||||
if (IdeDev->Channel >= IdeMaxChannel) {
|
||||
return EFI_INVALID_PARAMETER;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Requery IDE IO port registers' base addresses in case of the switch of
|
||||
// native and legacy modes
|
||||
@@ -593,7 +593,7 @@ DetectIDEController (
|
||||
Detect if there is disk attached to this port
|
||||
|
||||
@param IdeDev The BLK_IO private data which specifies the IDE device.
|
||||
|
||||
|
||||
@retval EFI_NOT_FOUND The device or channel is not found
|
||||
@retval EFI_SUCCESS The device is found
|
||||
|
||||
@@ -715,7 +715,7 @@ InitializeIDEChannelData (
|
||||
Register. DRQ is cleared when the device is finished transferring data.
|
||||
So this function is called after data transfer is finished.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
to record all the information of the IDE device.
|
||||
@param TimeoutInMilliSeconds used to designate the timeout for the DRQ clear.
|
||||
|
||||
@@ -778,7 +778,7 @@ DRQClear (
|
||||
transferring data. So this function is called after data transfer
|
||||
is finished.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
to record all the information of the IDE device.
|
||||
|
||||
@param TimeoutInMilliSeconds used to designate the timeout for the DRQ clear.
|
||||
@@ -901,10 +901,10 @@ DRQReady (
|
||||
}
|
||||
/**
|
||||
This function is used to poll for the DRQ bit set in the Alternate Status Register.
|
||||
DRQ is set when the device is ready to transfer data. So this function is called after
|
||||
DRQ is set when the device is ready to transfer data. So this function is called after
|
||||
the command is sent to the device and before required data is transferred.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used to
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used to
|
||||
record all the information of the IDE device.
|
||||
|
||||
@param TimeoutInMilliSeconds used to designate the timeout for the DRQ ready.
|
||||
@@ -966,7 +966,7 @@ DRQReady2 (
|
||||
This function is used to poll for the BSY bit clear in the Status Register. BSY
|
||||
is clear when the device is not busy. Every command must be sent after device is not busy.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
to record all the information of the IDE device.
|
||||
@param TimeoutInMilliSeconds used to designate the timeout for the DRQ ready.
|
||||
|
||||
@@ -1008,11 +1008,11 @@ WaitForBSYClear (
|
||||
return EFI_SUCCESS;
|
||||
}
|
||||
/**
|
||||
This function is used to poll for the BSY bit clear in the Alternate Status Register.
|
||||
BSY is clear when the device is not busy. Every command must be sent after device is
|
||||
This function is used to poll for the BSY bit clear in the Alternate Status Register.
|
||||
BSY is clear when the device is not busy. Every command must be sent after device is
|
||||
not busy.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used to record
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used to record
|
||||
all the information of the IDE device.
|
||||
@param TimeoutInMilliSeconds used to designate the timeout for the DRQ ready.
|
||||
|
||||
@@ -1051,7 +1051,7 @@ WaitForBSYClear2 (
|
||||
}
|
||||
/**
|
||||
This function is used to poll for the DRDY bit set in the Status Register. DRDY
|
||||
bit is set when the device is ready to accept command. Most ATA commands must be
|
||||
bit is set when the device is ready to accept command. Most ATA commands must be
|
||||
sent after DRDY set except the ATAPI Packet Command.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
@@ -1103,8 +1103,8 @@ DRDYReady (
|
||||
return EFI_SUCCESS;
|
||||
}
|
||||
/**
|
||||
This function is used to poll for the DRDY bit set in the Alternate Status Register.
|
||||
DRDY bit is set when the device is ready to accept command. Most ATA commands must
|
||||
This function is used to poll for the DRDY bit set in the Alternate Status Register.
|
||||
DRDY bit is set when the device is ready to accept command. Most ATA commands must
|
||||
be sent after DRDY set except the ATAPI Packet Command.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
|
@@ -2,7 +2,7 @@
|
||||
Header file for IDE Bus Driver, containing the helper functions'
|
||||
prototype.
|
||||
|
||||
Copyright (c) 2006 - 2007, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
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
|
||||
@@ -28,7 +28,7 @@
|
||||
read a one-byte data from a IDE port.
|
||||
|
||||
@param PciIo The PCI IO protocol instance
|
||||
@param Port the IDE Port number
|
||||
@param Port the IDE Port number
|
||||
|
||||
return the one-byte data read from IDE port
|
||||
**/
|
||||
@@ -153,7 +153,7 @@ IDEWritePortWMultiple (
|
||||
@param PciIo Pointer to the EFI_PCI_IO_PROTOCOL instance
|
||||
@param IdeRegsBaseAddr Pointer to IDE_REGISTERS_BASE_ADDR to
|
||||
receive IDE IO port registers' base addresses
|
||||
|
||||
|
||||
@retval EFI_UNSUPPORTED return this value when the BARs is not IO type
|
||||
@retval EFI_SUCCESS Get the Base address successfully
|
||||
@retval other read the pci configureation data error
|
||||
@@ -187,7 +187,7 @@ ReassignIdeResources (
|
||||
Detect if there is disk attached to this port.
|
||||
|
||||
@param IdeDev The BLK_IO private data which specifies the IDE device.
|
||||
|
||||
|
||||
@retval EFI_NOT_FOUND The device or channel is not found
|
||||
@retval EFI_SUCCESS The device is found
|
||||
|
||||
@@ -212,7 +212,7 @@ InitializeIDEChannelData (
|
||||
Register. DRQ is cleared when the device is finished transferring data.
|
||||
So this function is called after data transfer is finished.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
to record all the information of the IDE device.
|
||||
@param TimeoutInMilliSeconds used to designate the timeout for the DRQ clear.
|
||||
|
||||
@@ -236,7 +236,7 @@ DRQClear (
|
||||
transferring data. So this function is called after data transfer
|
||||
is finished.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
to record all the information of the IDE device.
|
||||
|
||||
@param TimeoutInMilliSeconds used to designate the timeout for the DRQ clear.
|
||||
@@ -280,10 +280,10 @@ DRQReady (
|
||||
|
||||
/**
|
||||
This function is used to poll for the DRQ bit set in the Alternate Status Register.
|
||||
DRQ is set when the device is ready to transfer data. So this function is called after
|
||||
DRQ is set when the device is ready to transfer data. So this function is called after
|
||||
the command is sent to the device and before required data is transferred.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used to
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used to
|
||||
record all the information of the IDE device.
|
||||
|
||||
@param TimeoutInMilliSeconds used to designate the timeout for the DRQ ready.
|
||||
@@ -304,7 +304,7 @@ DRQReady2 (
|
||||
This function is used to poll for the BSY bit clear in the Status Register. BSY
|
||||
is clear when the device is not busy. Every command must be sent after device is not busy.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
to record all the information of the IDE device.
|
||||
@param TimeoutInMilliSeconds used to designate the timeout for the DRQ ready.
|
||||
|
||||
@@ -320,11 +320,11 @@ WaitForBSYClear (
|
||||
);
|
||||
|
||||
/**
|
||||
This function is used to poll for the BSY bit clear in the Alternate Status Register.
|
||||
BSY is clear when the device is not busy. Every command must be sent after device is
|
||||
This function is used to poll for the BSY bit clear in the Alternate Status Register.
|
||||
BSY is clear when the device is not busy. Every command must be sent after device is
|
||||
not busy.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used to record
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used to record
|
||||
all the information of the IDE device.
|
||||
@param TimeoutInMilliSeconds used to designate the timeout for the DRQ ready.
|
||||
|
||||
@@ -341,7 +341,7 @@ WaitForBSYClear2 (
|
||||
|
||||
/**
|
||||
This function is used to poll for the DRDY bit set in the Status Register. DRDY
|
||||
bit is set when the device is ready to accept command. Most ATA commands must be
|
||||
bit is set when the device is ready to accept command. Most ATA commands must be
|
||||
sent after DRDY set except the ATAPI Packet Command.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
@@ -360,8 +360,8 @@ DRDYReady (
|
||||
);
|
||||
|
||||
/**
|
||||
This function is used to poll for the DRDY bit set in the Alternate Status Register.
|
||||
DRDY bit is set when the device is ready to accept command. Most ATA commands must
|
||||
This function is used to poll for the DRDY bit set in the Alternate Status Register.
|
||||
DRDY bit is set when the device is ready to accept command. Most ATA commands must
|
||||
be sent after DRDY set except the ATAPI Packet Command.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
@@ -394,7 +394,7 @@ DRDYReady2 (
|
||||
information it needs to fill the IDE_BLK_IO_DEV data structure,
|
||||
including device type, media block size, media capacity, and etc.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure,used to record
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure,used to record
|
||||
all the information of the IDE device.
|
||||
|
||||
@retval EFI_SUCCESS Identify ATA device successfully.
|
||||
@@ -420,7 +420,7 @@ PrintAtaModuleName (
|
||||
/**
|
||||
This function is used to send out ATA commands conforms to the PIO Data In Protocol.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used to record
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used to record
|
||||
all the information of the IDE device.
|
||||
@param Buffer buffer contained data transferred from device to host.
|
||||
@param ByteCount data size in byte unit of the buffer.
|
||||
@@ -430,7 +430,7 @@ PrintAtaModuleName (
|
||||
@param SectorNumber value of the Sector Number Register
|
||||
@param CylinderLsb value of the low byte of the Cylinder Register
|
||||
@param CylinderMsb value of the high byte of the Cylinder Register
|
||||
|
||||
|
||||
@retval EFI_SUCCESS send out the ATA command and device send required data successfully.
|
||||
@retval EFI_DEVICE_ERROR command sent failed.
|
||||
|
||||
@@ -486,7 +486,7 @@ AtaPioDataOut (
|
||||
some debug information and if there is ERR bit set in the Status
|
||||
Register, the Error Register's value is also be parsed and print out.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used to
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used to
|
||||
record all the information of the IDE device.
|
||||
|
||||
@retval EFI_SUCCESS No err information in the Status Register.
|
||||
@@ -500,7 +500,7 @@ CheckErrorStatus (
|
||||
|
||||
/**
|
||||
This function is used to implement the Soft Reset on the specified device. But,
|
||||
the ATA Soft Reset mechanism is so strong a reset method that it will force
|
||||
the ATA Soft Reset mechanism is so strong a reset method that it will force
|
||||
resetting on both devices connected to the same cable.
|
||||
|
||||
It is called by IdeBlkIoReset(), a interface function of Block
|
||||
@@ -568,7 +568,7 @@ AtaBlkIoReadBlocks (
|
||||
@param BufferSize The size of the Buffer in bytes. This must be a multiple
|
||||
of the intrinsic block size of the device.
|
||||
@param Buffer A pointer to the source buffer for the data.The caller
|
||||
is responsible for either having implicit or explicit
|
||||
is responsible for either having implicit or explicit
|
||||
ownership of the memory that data is written from.
|
||||
|
||||
@retval EFI_SUCCESS Write Blocks successfully.
|
||||
@@ -600,26 +600,26 @@ AtaBlkIoWriteBlocks (
|
||||
to fill in the Media data structure of the Block I/O Protocol interface.
|
||||
|
||||
There are 5 steps to reach such objective:
|
||||
1. Sends out the ATAPI Identify Command to the specified device.
|
||||
1. Sends out the ATAPI Identify Command to the specified device.
|
||||
Only ATAPI device responses to this command. If the command succeeds,
|
||||
it returns the Identify data structure which filled with information
|
||||
about the device. Since the ATAPI device contains removable media,
|
||||
it returns the Identify data structure which filled with information
|
||||
about the device. Since the ATAPI device contains removable media,
|
||||
the only meaningful information is the device module name.
|
||||
2. Sends out ATAPI Inquiry Packet Command to the specified device.
|
||||
This command will return inquiry data of the device, which contains
|
||||
the device type information.
|
||||
3. Allocate sense data space for future use. We don't detect the media
|
||||
presence here to improvement boot performance, especially when CD
|
||||
presence here to improvement boot performance, especially when CD
|
||||
media is present. The media detection will be performed just before
|
||||
each BLK_IO read/write
|
||||
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
to record all the information of the IDE device.
|
||||
|
||||
@retval EFI_SUCCESS Identify ATAPI device successfully.
|
||||
@retval EFI_DEVICE_ERROR ATAPI Identify Device Command failed or device type
|
||||
is not supported by this IDE driver.
|
||||
@retval EFI_OUT_OF_RESOURCES Allocate memory for sense data failed
|
||||
@retval EFI_OUT_OF_RESOURCES Allocate memory for sense data failed
|
||||
|
||||
@note Parameter "IdeDev" will be updated in this function.
|
||||
**/
|
||||
@@ -637,7 +637,7 @@ ATAPIIdentify (
|
||||
condition (such as BSY bit is always set ), I think the Soft Reset
|
||||
command should be sent without waiting for the BSY clear and DRDY
|
||||
set.
|
||||
This function is called by IdeBlkIoReset(),
|
||||
This function is called by IdeBlkIoReset(),
|
||||
a interface function of Block I/O protocol.
|
||||
|
||||
@param IdeDev pointer pointing to IDE_BLK_IO_DEV data structure, used
|
||||
@@ -662,9 +662,9 @@ AtapiSoftReset (
|
||||
@param BufferSize The size of the Buffer in bytes. This must be a multiple
|
||||
of the intrinsic block size of the device.
|
||||
@param Buffer A pointer to the destination buffer for the data. The caller
|
||||
is responsible for either having implicit or explicit
|
||||
is responsible for either having implicit or explicit
|
||||
ownership of the memory that data is read into.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS Read Blocks successfully.
|
||||
@retval EFI_DEVICE_ERROR Read Blocks failed.
|
||||
@retval EFI_NO_MEDIA There is no media in the device.
|
||||
@@ -701,8 +701,8 @@ AtapiBlkIoReadBlocks (
|
||||
@retval EFI_NO_MEDIA There is no media in the device.
|
||||
@retval EFI_MEDIA_CHANGE The MediaId is not for the current media.
|
||||
@retval EFI_BAD_BUFFER_SIZE The BufferSize parameter is not a multiple of the
|
||||
intrinsic block size of the device.
|
||||
@retval EFI_INVALID_PARAMETER The write request contains LBAs that are not valid,
|
||||
intrinsic block size of the device.
|
||||
@retval EFI_INVALID_PARAMETER The write request contains LBAs that are not valid,
|
||||
or the data buffer is not valid.
|
||||
|
||||
@retval EFI_WRITE_PROTECTED The write protected is enabled or the media does not support write
|
||||
|
@@ -1,9 +1,9 @@
|
||||
/** @file
|
||||
This file implement UEFI driver for IDE Bus which includes device identification,
|
||||
Child device(Disk, CDROM, etc) enumeration and child handler installation, and
|
||||
This file implement UEFI driver for IDE Bus which includes device identification,
|
||||
Child device(Disk, CDROM, etc) enumeration and child handler installation, and
|
||||
driver stop.
|
||||
|
||||
Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||
|
||||
Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
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
|
||||
@@ -154,7 +154,7 @@ IDEBusDriverBindingSupported (
|
||||
if (RemainingDevicePath != NULL) {
|
||||
Node = (EFI_DEV_PATH *) RemainingDevicePath;
|
||||
//
|
||||
// Check if RemainingDevicePath is the End of Device Path Node,
|
||||
// Check if RemainingDevicePath is the End of Device Path Node,
|
||||
// if yes, go on checking other conditions
|
||||
//
|
||||
if (!IsDevicePathEnd (Node)) {
|
||||
@@ -190,7 +190,7 @@ IDEBusDriverBindingSupported (
|
||||
if (EFI_ERROR (Status)) {
|
||||
return Status;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Close the I/O Abstraction(s) used to perform the supported test
|
||||
//
|
||||
@@ -237,11 +237,11 @@ IDEBusDriverBindingSupported (
|
||||
Controller,
|
||||
EFI_OPEN_PROTOCOL_GET_PROTOCOL
|
||||
);
|
||||
|
||||
|
||||
if (EFI_ERROR (Status)) {
|
||||
return Status;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// Now further check the PCI header: Base class (offset 0x0B) and
|
||||
// Sub Class (offset 0x0A). This controller should be an IDE controller
|
||||
@@ -258,11 +258,11 @@ IDEBusDriverBindingSupported (
|
||||
//
|
||||
// Examine if it is IDE mode by class code
|
||||
//
|
||||
if ((PciData.Hdr.ClassCode[2] != PCI_CLASS_MASS_STORAGE) || (PciData.Hdr.ClassCode[1] != PCI_SUB_CLASS_IDE)) {
|
||||
if ((PciData.Hdr.ClassCode[2] != PCI_CLASS_MASS_STORAGE) || (PciData.Hdr.ClassCode[1] != PCI_SUB_CLASS_IDE)) {
|
||||
Status = EFI_UNSUPPORTED;
|
||||
} else {
|
||||
} else {
|
||||
Status = EFI_SUCCESS;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return Status;
|
||||
@@ -464,7 +464,7 @@ IDEBusDriverBindingStart (
|
||||
|
||||
if (EnumAll || RemainingDevicePath == NULL) {
|
||||
//
|
||||
// If IdeInit->EnumAll is TRUE or RemainingDevicePath is NULL,
|
||||
// If IdeInit->EnumAll is TRUE or RemainingDevicePath is NULL,
|
||||
// must enumerate all IDE devices anyway
|
||||
//
|
||||
BeginningIdeChannel = IdePrimary;
|
||||
@@ -474,7 +474,7 @@ IDEBusDriverBindingStart (
|
||||
|
||||
} else if (!IsDevicePathEnd (RemainingDevicePath)) {
|
||||
//
|
||||
// If RemainingDevicePath isn't the End of Device Path Node,
|
||||
// If RemainingDevicePath isn't the End of Device Path Node,
|
||||
// only scan the specified device by RemainingDevicePath
|
||||
//
|
||||
Node = (EFI_DEV_PATH *) RemainingDevicePath;
|
||||
@@ -495,7 +495,7 @@ IDEBusDriverBindingStart (
|
||||
//
|
||||
// If RemainingDevicePath is the End of Device Path Node,
|
||||
// skip enumerate any device and return EFI_SUCESSS
|
||||
//
|
||||
//
|
||||
BeginningIdeChannel = IdeMaxChannel;
|
||||
EndIdeChannel = IdeMaxChannel - 1;
|
||||
BeginningIdeDevice = IdeMaxDevice;
|
||||
@@ -1298,7 +1298,7 @@ IDEBlkIoFlushBlocks (
|
||||
}
|
||||
|
||||
/**
|
||||
This function is used by the IDE bus driver to get inquiry data.
|
||||
This function is used by the IDE bus driver to get inquiry data.
|
||||
Data format of Identify data is defined by the Interface GUID.
|
||||
|
||||
@param This Pointer to the EFI_DISK_INFO_PROTOCOL instance.
|
||||
@@ -1306,9 +1306,9 @@ IDEBlkIoFlushBlocks (
|
||||
@param InquiryDataSize Pointer to the value for the inquiry data size.
|
||||
|
||||
@retval EFI_SUCCESS The command was accepted without any errors.
|
||||
@retval EFI_NOT_FOUND Device does not support this data class
|
||||
@retval EFI_DEVICE_ERROR Error reading InquiryData from device
|
||||
@retval EFI_BUFFER_TOO_SMALL IntquiryDataSize not big enough
|
||||
@retval EFI_NOT_FOUND Device does not support this data class
|
||||
@retval EFI_DEVICE_ERROR Error reading InquiryData from device
|
||||
@retval EFI_BUFFER_TOO_SMALL IntquiryDataSize not big enough
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
@@ -1339,7 +1339,7 @@ IDEDiskInfoInquiry (
|
||||
}
|
||||
|
||||
/**
|
||||
This function is used by the IDE bus driver to get identify data.
|
||||
This function is used by the IDE bus driver to get identify data.
|
||||
Data format of Identify data is defined by the Interface GUID.
|
||||
|
||||
@param This Pointer to the EFI_DISK_INFO_PROTOCOL instance.
|
||||
@@ -1347,9 +1347,9 @@ IDEDiskInfoInquiry (
|
||||
@param IdentifyDataSize Pointer to the value for the identify data size.
|
||||
|
||||
@retval EFI_SUCCESS The command was accepted without any errors.
|
||||
@retval EFI_NOT_FOUND Device does not support this data class
|
||||
@retval EFI_DEVICE_ERROR Error reading IdentifyData from device
|
||||
@retval EFI_BUFFER_TOO_SMALL IdentifyDataSize not big enough
|
||||
@retval EFI_NOT_FOUND Device does not support this data class
|
||||
@retval EFI_DEVICE_ERROR Error reading IdentifyData from device
|
||||
@retval EFI_BUFFER_TOO_SMALL IdentifyDataSize not big enough
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
@@ -1380,18 +1380,18 @@ IDEDiskInfoIdentify (
|
||||
}
|
||||
|
||||
/**
|
||||
This function is used by the IDE bus driver to get sense data.
|
||||
This function is used by the IDE bus driver to get sense data.
|
||||
Data format of Sense data is defined by the Interface GUID.
|
||||
|
||||
@param This Pointer to the EFI_DISK_INFO_PROTOCOL instance.
|
||||
@param SenseData Pointer to the SenseData.
|
||||
@param SenseDataSize Size of SenseData in bytes.
|
||||
@param This Pointer to the EFI_DISK_INFO_PROTOCOL instance.
|
||||
@param SenseData Pointer to the SenseData.
|
||||
@param SenseDataSize Size of SenseData in bytes.
|
||||
@param SenseDataNumber Pointer to the value for the identify data size.
|
||||
|
||||
@retval EFI_SUCCESS The command was accepted without any errors.
|
||||
@retval EFI_NOT_FOUND Device does not support this data class
|
||||
@retval EFI_DEVICE_ERROR Error reading InquiryData from device
|
||||
@retval EFI_BUFFER_TOO_SMALL SenseDataSize not big enough
|
||||
@retval EFI_NOT_FOUND Device does not support this data class
|
||||
@retval EFI_DEVICE_ERROR Error reading InquiryData from device
|
||||
@retval EFI_BUFFER_TOO_SMALL SenseDataSize not big enough
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
@@ -1409,12 +1409,12 @@ IDEDiskInfoSenseData (
|
||||
/**
|
||||
This function is used by the IDE bus driver to get controller information.
|
||||
|
||||
@param This Pointer to the EFI_DISK_INFO_PROTOCOL instance.
|
||||
@param This Pointer to the EFI_DISK_INFO_PROTOCOL instance.
|
||||
@param IdeChannel Pointer to the Ide Channel number. Primary or secondary.
|
||||
@param IdeDevice Pointer to the Ide Device number. Master or slave.
|
||||
|
||||
@retval EFI_SUCCESS IdeChannel and IdeDevice are valid
|
||||
@retval EFI_UNSUPPORTED This is not an IDE device
|
||||
@retval EFI_SUCCESS IdeChannel and IdeDevice are valid
|
||||
@retval EFI_UNSUPPORTED This is not an IDE device
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
|
@@ -1,7 +1,7 @@
|
||||
/** @file
|
||||
Header file for IDE Bus Driver.
|
||||
|
||||
Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
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
|
||||
@@ -181,7 +181,7 @@ IDEBusDriverBindingStop (
|
||||
// EFI Driver Configuration Functions
|
||||
//
|
||||
/**
|
||||
Allows the user to set controller specific options for a controller that a
|
||||
Allows the user to set controller specific options for a controller that a
|
||||
driver is currently managing.
|
||||
|
||||
@param This A pointer to the EFI_DRIVER_CONFIGURATION_ PROTOCOL instance.
|
||||
@@ -192,26 +192,26 @@ IDEBusDriverBindingStop (
|
||||
that wish to set options for the bus controller.
|
||||
It will not be NULL for a bus driver that wishes to set
|
||||
options for one of its child controllers.
|
||||
@param Language A pointer to a three character ISO 639-2 language identifier.
|
||||
This is the language of the user interface that should be presented
|
||||
to the user, and it must match one of the languages specified in
|
||||
@param Language A pointer to a three character ISO 639-2 language identifier.
|
||||
This is the language of the user interface that should be presented
|
||||
to the user, and it must match one of the languages specified in
|
||||
SupportedLanguages. The number of languages supported by a driver is up to
|
||||
the driver writer.
|
||||
@param ActionRequired A pointer to the action that the calling agent is required
|
||||
@param ActionRequired A pointer to the action that the calling agent is required
|
||||
to perform when this function returns.
|
||||
|
||||
|
||||
@retval EFI_SUCCESS The driver specified by This successfully set the configuration
|
||||
|
||||
@retval EFI_SUCCESS The driver specified by This successfully set the configuration
|
||||
options for the controller specified by ControllerHandle..
|
||||
@retval EFI_INVALID_PARAMETER ControllerHandle is not a valid EFI_HANDLE.
|
||||
@retval EFI_INVALID_PARAMETER ChildHandle is not NULL and it is not a valid EFI_HANDLE.
|
||||
@retval EFI_INVALID_PARAMETER ActionRequired is NULL.
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support setting configuration options for
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support setting configuration options for
|
||||
the controller specified by ControllerHandle and ChildHandle.
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support the language specified by Language.
|
||||
@retval EFI_DEVICE_ERROR A device error occurred while attempt to set the configuration options for the
|
||||
@retval EFI_DEVICE_ERROR A device error occurred while attempt to set the configuration options for the
|
||||
controller specified by ControllerHandle and ChildHandle.
|
||||
@retval EFI_OUT_RESOURCES There are not enough resources available to set the configuration options for the
|
||||
@retval EFI_OUT_RESOURCES There are not enough resources available to set the configuration options for the
|
||||
controller specified by ControllerHandle and ChildHandle
|
||||
**/
|
||||
EFI_STATUS
|
||||
@@ -228,20 +228,20 @@ IDEBusDriverConfigurationSetOptions (
|
||||
Tests to see if a controller's current configuration options are valid.
|
||||
|
||||
@param This A pointer to the EFI_DRIVER_CONFIGURATION_PROTOCOL instance.
|
||||
@param ControllerHandle The handle of the controller to test if it's current configuration options
|
||||
@param ControllerHandle The handle of the controller to test if it's current configuration options
|
||||
are valid.
|
||||
@param ChildHandle The handle of the child controller to test if it's current configuration
|
||||
options are valid. This is an optional parameter that may be NULL. It will
|
||||
@param ChildHandle The handle of the child controller to test if it's current configuration
|
||||
options are valid. This is an optional parameter that may be NULL. It will
|
||||
be NULL for device drivers. It will also be NULL for a bus drivers that
|
||||
wish to test the configuration options for the bus controller. It will
|
||||
not be NULL for a bus driver that wishes to test configuration options for
|
||||
wish to test the configuration options for the bus controller. It will
|
||||
not be NULL for a bus driver that wishes to test configuration options for
|
||||
one of its child controllers.
|
||||
@retval EFI_SUCCESS The controller specified by ControllerHandle and ChildHandle that is being
|
||||
managed by the driver specified by This has a valid set of configuration
|
||||
options.
|
||||
@retval EFI_INVALID_PARAMETER ControllerHandle is not a valid EFI_HANDLE.
|
||||
@retval EFI_INVALID_PARAMETER ChildHandle is not NULL and it is not a valid EFI_HANDLE.
|
||||
@retval EFI_UNSUPPORTED The driver specified by This is not currently managing the controller
|
||||
@retval EFI_UNSUPPORTED The driver specified by This is not currently managing the controller
|
||||
specified by ControllerHandle and ChildHandle.
|
||||
@retval EFI_DEVICE_ERROR The controller specified by ControllerHandle and ChildHandle that is being
|
||||
managed by the driver specified by This has an invalid set of configuration
|
||||
@@ -260,31 +260,31 @@ IDEBusDriverConfigurationOptionsValid (
|
||||
|
||||
@param This A pointer to the EFI_DRIVER_CONFIGURATION_ PROTOCOL instance.
|
||||
@param ControllerHandle The handle of the controller to force default configuration options on.
|
||||
@param ChildHandle The handle of the child controller to force default configuration
|
||||
options on This is an optional parameter that may be NULL. It
|
||||
will be NULL for device drivers. It will also be NULL for a bus
|
||||
@param ChildHandle The handle of the child controller to force default configuration
|
||||
options on This is an optional parameter that may be NULL. It
|
||||
will be NULL for device drivers. It will also be NULL for a bus
|
||||
drivers that wish to force default configuration options for the bus
|
||||
controller. It will not be NULL for a bus driver that wishes to force
|
||||
default configuration options for one of its child controllers.
|
||||
@param DefaultType The type of default configuration options to force on the controller
|
||||
specified by ControllerHandle and ChildHandle.
|
||||
@param ActionRequired A pointer to the action that the calling agent is required to perform
|
||||
@param DefaultType The type of default configuration options to force on the controller
|
||||
specified by ControllerHandle and ChildHandle.
|
||||
@param ActionRequired A pointer to the action that the calling agent is required to perform
|
||||
when this function returns.
|
||||
|
||||
@retval EFI_SUCCESS The driver specified by This successfully forced the
|
||||
default configuration options on the controller specified by
|
||||
@retval EFI_SUCCESS The driver specified by This successfully forced the
|
||||
default configuration options on the controller specified by
|
||||
ControllerHandle and ChildHandle.
|
||||
@retval EFI_INVALID_PARAMETER ControllerHandle is not a valid EFI_HANDLE.
|
||||
@retval EFI_INVALID_PARAMETER ChildHandle is not NULL and it is not a valid EFI_HANDLE.
|
||||
@retval EFI_INVALID_PARAMETER ActionRequired is NULL.
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support forcing the default
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support forcing the default
|
||||
configuration options on the controller specified by ControllerHandle
|
||||
and ChildHandle.
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support the configuration type
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support the configuration type
|
||||
specified by DefaultType.
|
||||
@retval EFI_DEVICE_ERROR A device error occurred while attempt to force the default configuration
|
||||
@retval EFI_DEVICE_ERROR A device error occurred while attempt to force the default configuration
|
||||
options on the controller specified by ControllerHandle and ChildHandle.
|
||||
@retval EFI_OUT_RESOURCES There are not enough resources available to force the default configuration
|
||||
@retval EFI_OUT_RESOURCES There are not enough resources available to force the default configuration
|
||||
options on the controller specified by ControllerHandle and ChildHandle.
|
||||
**/
|
||||
EFI_STATUS
|
||||
@@ -308,24 +308,24 @@ IDEBusDriverConfigurationForceDefaults (
|
||||
@param ChildHandle The handle of the child controller to run diagnostics on
|
||||
This is an optional parameter that may be NULL. It will
|
||||
be NULL for device drivers. It will also be NULL for a
|
||||
bus drivers that wish to run diagnostics on the bus controller.
|
||||
It will not be NULL for a bus driver that wishes to run
|
||||
bus drivers that wish to run diagnostics on the bus controller.
|
||||
It will not be NULL for a bus driver that wishes to run
|
||||
diagnostics on one of its child controllers.
|
||||
@param DiagnosticType Indicates type of diagnostics to perform on the controller
|
||||
specified by ControllerHandle and ChildHandle.
|
||||
@param Language A pointer to a three character ISO 639-2 language identifier.
|
||||
This is the language in which the optional error message should
|
||||
be returned in Buffer, and it must match one of the languages
|
||||
@param Language A pointer to a three character ISO 639-2 language identifier.
|
||||
This is the language in which the optional error message should
|
||||
be returned in Buffer, and it must match one of the languages
|
||||
specified in SupportedLanguages. The number of languages supported by
|
||||
a driver is up to the driver writer.
|
||||
@param ErrorType A GUID that defines the format of the data returned in Buffer.
|
||||
@param BufferSize The size, in bytes, of the data returned in Buffer.
|
||||
@param Buffer A buffer that contains a Null-terminated Unicode string
|
||||
plus some additional data whose format is defined by ErrorType.
|
||||
Buffer is allocated by this function with AllocatePool(), and
|
||||
plus some additional data whose format is defined by ErrorType.
|
||||
Buffer is allocated by this function with AllocatePool(), and
|
||||
it is the caller's responsibility to free it with a call to FreePool().
|
||||
|
||||
@retval EFI_SUCCESS The controller specified by ControllerHandle and ChildHandle passed
|
||||
@retval EFI_SUCCESS The controller specified by ControllerHandle and ChildHandle passed
|
||||
the diagnostic.
|
||||
@retval EFI_INVALID_PARAMETER ControllerHandle is NULL.
|
||||
@retval EFI_INVALID_PARAMETER ChildHandle is not NULL and it is not a valid EFI_HANDLE.
|
||||
@@ -333,18 +333,18 @@ IDEBusDriverConfigurationForceDefaults (
|
||||
@retval EFI_INVALID_PARAMETER ErrorType is NULL.
|
||||
@retval EFI_INVALID_PARAMETER BufferType is NULL.
|
||||
@retval EFI_INVALID_PARAMETER Buffer is NULL.
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support running
|
||||
diagnostics for the controller specified by ControllerHandle
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support running
|
||||
diagnostics for the controller specified by ControllerHandle
|
||||
and ChildHandle.
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support the
|
||||
type of diagnostic specified by DiagnosticType.
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support the language
|
||||
@retval EFI_UNSUPPORTED The driver specified by This does not support the language
|
||||
specified by Language.
|
||||
@retval EFI_OUT_OF_RESOURCES There are not enough resources available to complete the
|
||||
@retval EFI_OUT_OF_RESOURCES There are not enough resources available to complete the
|
||||
diagnostics.
|
||||
@retval EFI_OUT_OF_RESOURCES There are not enough resources available to return the
|
||||
@retval EFI_OUT_OF_RESOURCES There are not enough resources available to return the
|
||||
status information in ErrorType, BufferSize,and Buffer.
|
||||
@retval EFI_DEVICE_ERROR The controller specified by ControllerHandle and ChildHandle
|
||||
@retval EFI_DEVICE_ERROR The controller specified by ControllerHandle and ChildHandle
|
||||
did not pass the diagnostic.
|
||||
**/
|
||||
EFI_STATUS
|
||||
@@ -427,7 +427,7 @@ IDEBlkIoWriteBlocks (
|
||||
/**
|
||||
Flushes all modified data to a physical block devices
|
||||
|
||||
@param This Indicates a pointer to the calling context which to sepcify a
|
||||
@param This Indicates a pointer to the calling context which to sepcify a
|
||||
sepcific block device
|
||||
|
||||
@retval EFI_SUCCESS Always return success.
|
||||
@@ -438,7 +438,7 @@ IDEBlkIoFlushBlocks (
|
||||
IN EFI_BLOCK_IO_PROTOCOL *This
|
||||
);
|
||||
/**
|
||||
This function is used by the IDE bus driver to get inquiry data.
|
||||
This function is used by the IDE bus driver to get inquiry data.
|
||||
Data format of Identify data is defined by the Interface GUID.
|
||||
|
||||
@param This Pointer to the EFI_DISK_INFO_PROTOCOL instance.
|
||||
@@ -446,9 +446,9 @@ IDEBlkIoFlushBlocks (
|
||||
@param InquiryDataSize Pointer to the value for the inquiry data size.
|
||||
|
||||
@retval EFI_SUCCESS The command was accepted without any errors.
|
||||
@retval EFI_NOT_FOUND Device does not support this data class
|
||||
@retval EFI_DEVICE_ERROR Error reading InquiryData from device
|
||||
@retval EFI_BUFFER_TOO_SMALL IntquiryDataSize not big enough
|
||||
@retval EFI_NOT_FOUND Device does not support this data class
|
||||
@retval EFI_DEVICE_ERROR Error reading InquiryData from device
|
||||
@retval EFI_BUFFER_TOO_SMALL IntquiryDataSize not big enough
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
@@ -460,7 +460,7 @@ IDEDiskInfoInquiry (
|
||||
);
|
||||
|
||||
/**
|
||||
This function is used by the IDE bus driver to get identify data.
|
||||
This function is used by the IDE bus driver to get identify data.
|
||||
Data format of Identify data is defined by the Interface GUID.
|
||||
|
||||
@param This Pointer to the EFI_DISK_INFO_PROTOCOL instance.
|
||||
@@ -468,9 +468,9 @@ IDEDiskInfoInquiry (
|
||||
@param IdentifyDataSize Pointer to the value for the identify data size.
|
||||
|
||||
@retval EFI_SUCCESS The command was accepted without any errors.
|
||||
@retval EFI_NOT_FOUND Device does not support this data class
|
||||
@retval EFI_DEVICE_ERROR Error reading IdentifyData from device
|
||||
@retval EFI_BUFFER_TOO_SMALL IdentifyDataSize not big enough
|
||||
@retval EFI_NOT_FOUND Device does not support this data class
|
||||
@retval EFI_DEVICE_ERROR Error reading IdentifyData from device
|
||||
@retval EFI_BUFFER_TOO_SMALL IdentifyDataSize not big enough
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
@@ -482,18 +482,18 @@ IDEDiskInfoIdentify (
|
||||
);
|
||||
|
||||
/**
|
||||
This function is used by the IDE bus driver to get sense data.
|
||||
This function is used by the IDE bus driver to get sense data.
|
||||
Data format of Sense data is defined by the Interface GUID.
|
||||
|
||||
@param This Pointer to the EFI_DISK_INFO_PROTOCOL instance.
|
||||
@param SenseData Pointer to the SenseData.
|
||||
@param SenseDataSize Size of SenseData in bytes.
|
||||
@param This Pointer to the EFI_DISK_INFO_PROTOCOL instance.
|
||||
@param SenseData Pointer to the SenseData.
|
||||
@param SenseDataSize Size of SenseData in bytes.
|
||||
@param SenseDataNumber Pointer to the value for the identify data size.
|
||||
|
||||
@retval EFI_SUCCESS The command was accepted without any errors.
|
||||
@retval EFI_NOT_FOUND Device does not support this data class
|
||||
@retval EFI_DEVICE_ERROR Error reading InquiryData from device
|
||||
@retval EFI_BUFFER_TOO_SMALL SenseDataSize not big enough
|
||||
@retval EFI_NOT_FOUND Device does not support this data class
|
||||
@retval EFI_DEVICE_ERROR Error reading InquiryData from device
|
||||
@retval EFI_BUFFER_TOO_SMALL SenseDataSize not big enough
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
@@ -508,12 +508,12 @@ IDEDiskInfoSenseData (
|
||||
/**
|
||||
This function is used by the IDE bus driver to get controller information.
|
||||
|
||||
@param This Pointer to the EFI_DISK_INFO_PROTOCOL instance.
|
||||
@param This Pointer to the EFI_DISK_INFO_PROTOCOL instance.
|
||||
@param IdeChannel Pointer to the Ide Channel number. Primary or secondary.
|
||||
@param IdeDevice Pointer to the Ide Device number. Master or slave.
|
||||
|
||||
@retval EFI_SUCCESS IdeChannel and IdeDevice are valid
|
||||
@retval EFI_UNSUPPORTED This is not an IDE device
|
||||
@retval EFI_SUCCESS IdeChannel and IdeDevice are valid
|
||||
@retval EFI_UNSUPPORTED This is not an IDE device
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
@@ -524,7 +524,7 @@ IDEDiskInfoWhichIde (
|
||||
OUT UINT32 *IdeDevice
|
||||
);
|
||||
/**
|
||||
The is an event(generally the event is exitBootService event) call back function.
|
||||
The is an event(generally the event is exitBootService event) call back function.
|
||||
Clear pending IDE interrupt before OS loader/kernel take control of the IDE device.
|
||||
|
||||
@param Event Pointer to this event
|
||||
|
@@ -3,7 +3,7 @@
|
||||
#
|
||||
# This driver will enumerate IDE device and export the blockIo protocol for every device.
|
||||
#
|
||||
# Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||
# Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
#
|
||||
# This program and the accompanying materials
|
||||
# are licensed and made available under the terms and conditions of the BSD License
|
||||
@@ -29,9 +29,9 @@
|
||||
#
|
||||
# VALID_ARCHITECTURES = IA32 X64 IPF EBC
|
||||
#
|
||||
# DRIVER_BINDING = gIDEBusDriverBinding
|
||||
# DRIVER_BINDING = gIDEBusDriverBinding
|
||||
# COMPONENT_NAME = gIDEBusComponentName
|
||||
# COMPONENT_NAME2 = gIDEBusComponentName2
|
||||
# COMPONENT_NAME2 = gIDEBusComponentName2
|
||||
# Variable Guid C Name: gConfigurationGuid Variable Name: L"Configuration"
|
||||
#
|
||||
#
|
||||
@@ -53,7 +53,7 @@
|
||||
[Packages]
|
||||
MdePkg/MdePkg.dec
|
||||
IntelFrameworkPkg/IntelFrameworkPkg.dec
|
||||
IntelFrameworkModulePkg/IntelFrameworkModulePkg.dec
|
||||
IntelFrameworkModulePkg/IntelFrameworkModulePkg.dec
|
||||
|
||||
|
||||
[LibraryClasses]
|
||||
|
@@ -1,7 +1,7 @@
|
||||
// /** @file
|
||||
// IdeBusDxe Localized Strings and Content
|
||||
//
|
||||
// Copyright (c) 2013 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||
// Copyright (c) 2013 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
//
|
||||
// This program and the accompanying materials
|
||||
// are licensed and made available under the terms and conditions of the BSD License
|
||||
@@ -12,8 +12,8 @@
|
||||
//
|
||||
// **/
|
||||
|
||||
#string STR_PROPERTIES_MODULE_NAME
|
||||
#language en-US
|
||||
#string STR_PROPERTIES_MODULE_NAME
|
||||
#language en-US
|
||||
"IDE Bus DXE Driver"
|
||||
|
||||
|
||||
|
@@ -1,14 +1,14 @@
|
||||
/** @file
|
||||
Header file for IDE Bus Driver's Data Structures
|
||||
|
||||
Copyright (c) 2006 - 2007, Intel Corporation. All rights reserved.<BR>
|
||||
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
|
||||
Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
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.
|
||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
|
||||
**/
|
||||
|
||||
@@ -142,7 +142,7 @@ typedef struct {
|
||||
//
|
||||
// 1 second
|
||||
//
|
||||
#define ATATIMEOUT 1000
|
||||
#define ATATIMEOUT 1000
|
||||
|
||||
//
|
||||
// ATAPITIMEOUT is used for waiting operation
|
||||
@@ -152,7 +152,7 @@ typedef struct {
|
||||
//
|
||||
// 1 second
|
||||
//
|
||||
#define ATAPITIMEOUT 1000
|
||||
#define ATAPITIMEOUT 1000
|
||||
|
||||
//
|
||||
// ATAPILONGTIMEOUT is used for waiting read and
|
||||
@@ -162,12 +162,12 @@ typedef struct {
|
||||
//
|
||||
// 2 seconds
|
||||
//
|
||||
#define CDROMLONGTIMEOUT 2000
|
||||
#define CDROMLONGTIMEOUT 2000
|
||||
|
||||
//
|
||||
// 5 seconds
|
||||
//
|
||||
#define ATAPILONGTIMEOUT 5000
|
||||
#define ATAPILONGTIMEOUT 5000
|
||||
|
||||
//
|
||||
// 10 seconds
|
||||
|
@@ -1,7 +1,7 @@
|
||||
/** @file
|
||||
Implements EFI Component Name Protocol for VGA Mini Port Driver.
|
||||
|
||||
Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
|
||||
|
||||
Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
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
|
||||
|
@@ -1,7 +1,7 @@
|
||||
/** @file
|
||||
Implements EFI Driver Binding Protocol and VGA Mini Port Protocol for VGA Mini Port Driver.
|
||||
|
||||
Copyright (c) 2006 - 2009, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
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
|
||||
@@ -306,14 +306,14 @@ PciVgaMiniPortDriverBindingStop (
|
||||
This function implements EFI_VGA_MINI_PORT_PROTOCOL.SetMode().
|
||||
If ModeNumber exceeds the valid range, then EFI_UNSUPPORTED is returned.
|
||||
Otherwise, EFI_SUCCESS is directly returned without real operation.
|
||||
|
||||
|
||||
@param This Protocol instance pointer.
|
||||
@param ModeNumber Mode number. 0 - 80x25 1-80x50
|
||||
|
||||
@retval EFI_SUCCESS The mode was set
|
||||
@retval EFI_UNSUPPORTED ModeNumber is not supported.
|
||||
@retval EFI_DEVICE_ERROR The device is not functioning properly.
|
||||
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
@@ -328,4 +328,4 @@ PciVgaMiniPortSetMode (
|
||||
|
||||
return EFI_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
|
@@ -1,7 +1,7 @@
|
||||
/** @file
|
||||
Internal include file for VGA Mini Port Driver.
|
||||
|
||||
Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
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
|
||||
@@ -252,14 +252,14 @@ PciVgaMiniPortComponentNameGetControllerName (
|
||||
This function implements EFI_VGA_MINI_PORT_PROTOCOL.SetMode().
|
||||
If ModeNumber exceeds the valid range, then EFI_UNSUPPORTED is returned.
|
||||
Otherwise, EFI_SUCCESS is directly returned without real operation.
|
||||
|
||||
|
||||
@param This Protocol instance pointer.
|
||||
@param ModeNumber Mode number. 0 - 80x25 1-80x50
|
||||
|
||||
@retval EFI_SUCCESS The mode was set
|
||||
@retval EFI_UNSUPPORTED ModeNumber is not supported.
|
||||
@retval EFI_DEVICE_ERROR The device is not functioning properly.
|
||||
|
||||
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
|
@@ -3,13 +3,13 @@
|
||||
//
|
||||
// VGA Mini Port Driver that manages VGA device and produces the VGA Mini Port Protocol.
|
||||
//
|
||||
// Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||
// Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
//
|
||||
// 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.
|
||||
//
|
||||
|
@@ -1,7 +1,7 @@
|
||||
## @file
|
||||
# VGA Mini Port Driver that manages VGA device and produces VGA Mini Port Protocol.
|
||||
#
|
||||
# Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||
# Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
#
|
||||
# This program and the accompanying materials
|
||||
# are licensed and made available under the terms and conditions of the BSD License
|
||||
@@ -29,7 +29,7 @@
|
||||
# VALID_ARCHITECTURES = IA32 X64 IPF EBC
|
||||
# DRIVER_BINDING = gPciVgaMiniPortDriverBinding;
|
||||
# COMPONENT_NAME = gPciVgaMiniPortComponentName;
|
||||
# COMPONENT_NAME2 = gPciVgaMiniPortComponentName2;
|
||||
# COMPONENT_NAME2 = gPciVgaMiniPortComponentName2;
|
||||
#
|
||||
|
||||
[Sources]
|
||||
|
@@ -1,7 +1,7 @@
|
||||
// /** @file
|
||||
// VgaMiniPort Localized Strings and Content
|
||||
//
|
||||
// Copyright (c) 2013 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||
// Copyright (c) 2013 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
//
|
||||
// This program and the accompanying materials
|
||||
// are licensed and made available under the terms and conditions of the BSD License
|
||||
@@ -13,8 +13,8 @@
|
||||
//
|
||||
// **/
|
||||
|
||||
#string STR_PROPERTIES_MODULE_NAME
|
||||
#language en-US
|
||||
#string STR_PROPERTIES_MODULE_NAME
|
||||
#language en-US
|
||||
"VGA Mini Port DXE Driver"
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user