Hi,

As per the spec and the code in "AhciMode.c"

  // According to AHCI 1.3 spec, a PRDT entry can point to a maximum 4MB data 
block.

Does it mean, only one PRD entry is getting transferred successfully?
But as the data I am writing onto SATA HDD is 30MB big, what about the rest of 
PRDs?
What could be went here?

Thanks and Regards,
Shaveta

-----Original Message-----
From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of Shaveta 
Leekha
Sent: Monday, August 08, 2016 5:24 PM
To: Linaro UEFI Mailman List <linaro-u...@lists.linaro.org>; 
edk2-devel@lists.01.org
Subject: [edk2] SATA AHCI issue

Hi,

I am facing one Timeout issue while writing big file over my SATA HDD.
It in the code of "AhciDmaTransfer " from file AhciMode.c

  //
  // Wait for command compelte
  //
  FisBaseAddr = (UINTN)AhciRegisters->AhciRFis + Port * sizeof 
(EFI_AHCI_RECEIVED_FIS);
  Offset      = FisBaseAddr + EFI_AHCI_D2H_FIS_OFFSET;
Status = AhciWaitMemSet (
               Offset,
               EFI_AHCI_FIS_TYPE_MASK,
               EFI_AHCI_FIS_REGISTER_D2H,                               This 
MemSet check fails, what could be the issue?
               Timeout
               );

TimeOut occur while checking FIS_REGISTER_D2H.
Any idea about this time out issue?

Can it be "Due to un-aligned PRD? Are there multiple PRDs created or single 
PRD?"

As I am able to write maximum 4MB file on SATA HDD, file above 4MB size failed 
by giving TIMEOUT_ERROR.

Thanks and Regards,
Shaveta


_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to