Re: [edk2] [PATCH 2/2] MdeModulePkg: Check D2H register status in AhciPioTransfer

2014-08-10 Thread Tian, Feng
Hi, Sava & Reza Yes, I agree making this change should be acceptable for more device compatibilities. Now we are discussing the place of break statement in new patch:). My idea is if D2H is received and the error bit of status register is NOT set, we should continue checking if all datum are

Re: [edk2] [PATCH 2/2] MdeModulePkg: Check D2H register status in AhciPioTransfer

2014-08-10 Thread Tian, Feng
Hi, Reza IMHO, it should jump out the loop at the below point if we put break statement inside the new if. PrdCount = *(volatile UINT32 *) (&(AhciRegisters->AhciCmdList[0].AhciCmdPrdbc)); if (PrdCount == DataCount) { break; } As I have no the test env, could y

Re: [edk2] [PATCH 2/2] MdeModulePkg: Check D2H register status in AhciPioTransfer

2014-08-10 Thread Reza Jelveh
On 10/08/14 11:29, Reza Jelveh wrote: > Meanwhile I'll see what I can do about the PIO Setup FIS in Qemu. Actually John Snow just contributed a patch to fix this. That leaves the question of whether the break should be inside or outside the new if. Is there actually any reason why a D2H FIS would

Re: [edk2] [PATCH 2/2] MdeModulePkg: Check D2H register status in AhciPioTransfer

2014-08-10 Thread Reza Jelveh
On 10/08/14 02:53, A. Sava wrote: > Hi Feng & Reza, > > In Qemu's case, it won't break out on a Setup FIS, because currently for > PIO commands, Qemu does not put at all a PIO Setup FIS at the end, but only > a D2H FIS. Perhaps other controllers with a similar problem also have > similar implement