summaryrefslogtreecommitdiff
path: root/MdeModulePkg/Bus/Ata
AgeCommit message (Collapse)Author
2012-03-16Introduce tow non-blocking task lists to AtaBus. One maintains the sub-task ↵qianouyang
which is related to running Ata Task and the other is for waiting Ata Task. And it will not pass any task to AtaAtapiPassThru until the previous Ata task has been finished or met error. Signed-off-by: qianouyang Reviewed-by: czhang46 erictian git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13105 6f19259b-4bc3-4df7-8a09-765794883524
2011-12-21MdeModulePkg: Fix a bug in GetNextTargetLun()/GetNextTarget() when two ↵erictian
cdroms attached Signed-off-by: erictian Reviewed-by: rsun3 git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12890 6f19259b-4bc3-4df7-8a09-765794883524
2011-12-12MdeModulePkg: Fix a bug that UnregisterAtaDev() will return error when SSP ↵erictian
protocol is not installed Signed-off-by: erictian Reviewed-by: li-elvin git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12835 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-28Update code to pass build on VS2008 with /Od compiler option.lgao4
Signed-off-by: lgao4 Reviewed-by: rsun3 Reviewed-by: ftian git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12792 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-25Allocate aligned buffer to satisfy the IoAlign requirement of high level ↵lzeng14
protocol. Signed-off-by: lzeng14 Reviewed-by: erictian git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12788 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-15In AtaAtapiPassThru driverqianouyang
1. move the non-blocking task related setting ahead to store the MapTable and PageCount in case there is a IO operation error happened then the error handler code could use those information to release the resource. 2. Enlarge the TPL protective area to make sure the simulative delay time is accurate when there is mixing usage of Non blocking and blocking I/O. Signed-off-by: qianouyang Reviewed-by: erictian git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12712 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-15Correct AtaAtapiPassThru module packaging info.erictian
Signed-off-by: erictian Reviewed-by: lgao4 git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12706 6f19259b-4bc3-4df7-8a09-765794883524
2011-11-03MdeModulePkg: ATA performance tuning.erictian
1. Boost IDE mode boot when slave device is absent. 2. Use D2H FIS to check if the PIO OUT/DMA IN/DMA OUT transfer is finished or error happened. ATA PIO IN has special check as it may just receive PIO SETUP FIS for success case. 3. Add command status register check for IDE DMA transfer. 4. ScsiDiskReadCapacity() in ScsiDisk should return EFI_SUCCESS if SENSE Data request is success. Signed-off-by: erictian Reviewed-by: rsun3 Reviewed-by: xdu2 Reviewed-by: mdkinney git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12658 6f19259b-4bc3-4df7-8a09-765794883524
2011-10-31MdeModulePkg: Remove variables that are set, but not usedjljusten
GCC 4.6 generates a warning when a variable is set, but never used. Signed-off-by: jljusten Reviewed-by: lgao4 Reviewed-by: erictian Reviewed-by: rsun3 git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12617 6f19259b-4bc3-4df7-8a09-765794883524
2011-10-19If the data buffer described by InDataBuffer/OutDataBuffer and ↵erictian
InTransferLength/OutTransferLength is too big to be transferred, EFI_BAD_BUFFER_SIZE should be returned Signed-off-by:erictian Reviewed-by:li-elvin git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12549 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-01Remove, correct and refine some debug messages.lzeng14
Signed-off-by: lzeng14 Reviewed-by: erictian Reviewed-by: qianouyang Reviewed-by: niruiyu git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12248 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-06Fix the comments to follow UEFI Spec regarding how to check an EFI_HANDLE is ↵niruiyu
valid/invalid. Signed-off-by: niruiyu Reviewed-by: lgao4 git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11987 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-05Return the correct status at the last of UnregisterAtaDevice.li-elvin
Signed-off-by: li-elvin Reviewed-by: erictian, hhuan13 git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11973 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-30Fix a potential memory free failure bug in AtaAtapiPassThruerictian
Signed-off-by: erictian Reviewed-by: rsun3 git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11932 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-14ScsiBus/ScsiDisk enhancement for no_media state.erictian
Ahci enumeration logic tuning for boot performance. Signed-off-by:erictian Reviewed-by:qianouyang, hhuan13 git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11820 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-30Update code to pass packaging tool.lzeng14
Signed-off-by: lzeng14 Reviewed-by: lgao4 git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11712 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-26Add more status code in drivers.li-elvin
Signed-off-by: li-elvin Reviewed-by: jyao1 Reviewed-by: lgao4 Reviewed-by: erictian git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11706 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-19fix memory leak at AccessAtaDevice() of AtaBus.erictian
Signed-off-by: ftian Reviewed-by: qouyang git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11679 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-19Update the function's descriptions (which is in AtaBus, AtaAtapiPassThru, ↵qianouyang
Partition drivers) to make them be consistent with the code. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11678 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-06Add Pointer check for NULL before referring it and remove unnecessary ↵qianouyang
pointer check in AtaAtapiPassThru and Partition Drivers. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11627 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-041. Enabled SSP(StorageSecurityCommandProtocol) for ATA devices.hhuan13
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11614 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-03Add BlockIO2 Protocol.qianouyang
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11606 6f19259b-4bc3-4df7-8a09-765794883524
2011-04-25Change BlockIo drivers to return EFI_NO_MEDIA or EFI_MEDIA_CHANGED even the ↵niruiyu
Buffer/BufferSize/Lba is invalid so that caller can probe the media status easier. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11584 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-10fix null DevicePath issue.erictian
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11360 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-08fix a invalid pointer conversion when builing 32bit image.erictian
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11352 6f19259b-4bc3-4df7-8a09-765794883524
2011-01-061. fix AtaPassThru.PassThru() sct failureerictian
2. avoid reenumerate existing device to reduce boot time at AtaBus. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11232 6f19259b-4bc3-4df7-8a09-765794883524
2010-10-28S.M.A.R.T feature enableerictian
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10985 6f19259b-4bc3-4df7-8a09-765794883524
2010-10-19return EFI_DEVICE_ERROR if the Status value is not EFI_SUCCESS.erictian
it's because BlockIo.Reset() only has two possible values: EFI_SUCCESS and EFI_DEVICE_ERROR according to UEFI2.3 spec git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10956 6f19259b-4bc3-4df7-8a09-765794883524
2010-10-14fix 32bit build warningerictian
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10935 6f19259b-4bc3-4df7-8a09-765794883524
2010-09-30remove additional space from comments and pass ICC/GCC44 builderictian
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10903 6f19259b-4bc3-4df7-8a09-765794883524
2010-09-29add native ide/ahci drivererictian
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10901 6f19259b-4bc3-4df7-8a09-765794883524
2010-09-02Fill AtaDeviceHeader field in ATA command blockqhuang8
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10849 6f19259b-4bc3-4df7-8a09-765794883524
2010-07-26Update AtaBus module to use Uefi.h as the master header file as it is a pure ↵qhuang8
UEFI driver. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10693 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-24Update the copyright notice formathhtian
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10420 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-17fix ia32 build error.erictian
With IA32 tool chain, we can not use a 64bit data to divide a 32 bit data. MS tool chain may introduce an intrinsic function. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10267 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-17The ATA alignment_logic_in_phy_blocks field doesn’t directly report the ↵erictian
lowest aligned LBA. Instead, there’s some modulo arithmetic involved. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10265 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-241. Correct File header to ## @filelgao4
2. Remove unnecessary .common] postfix on section. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10052 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-26Clean up AtaBus driver to not depend on PI IdeControllerInit Protocol ↵qhuang8
definitions git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9821 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-31Fix minor coding style issues.qhuang8
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9655 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-31Remove the hard-code IoAlign in BlockIo.Media; instead, this value should ↵qhuang8
inherit from lower Ata Pass Thru protocol instance. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9654 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-30Fix bug that that the template does not match fields in structure ↵qhuang8
EFI_BLOCK_IO_MEDIA git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9645 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-25Add assertion to ensure the boolean value must be 0 or 1 before the use of ↵qhuang8
array index git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9602 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-241. Fix bug in some boundary cases to calculate SectorCountExp.qhuang8
2. Add assertion to ensure the boolean value must be 0 or 1 before the use of array index git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9597 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-22Add new UEFI driver AtaBusDxe:qhuang8
1. Layer on UEFI 2.2 ATA pass through protocol to perform ATA transaction. 2. Produce Block IO and DiskInfo protocol for each ATA devices. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9585 6f19259b-4bc3-4df7-8a09-765794883524