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-bounces@lists.01.org] On Behalf Of Shaveta Leekha Sent: Monday, August 08, 2016 5:24 PM To: Linaro UEFI Mailman List linaro-uefi@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