Hi, Shaveta
No, we will create multiple PRDs if the transfer length is larger than 4M. each PRD could represent a 4M transfer request and the maximum number of PRD for each command is 65535.
How do you access the HDD? At block level or file level? It happens at all HDDs or only one specific brand model?
Thanks Feng
-----Original Message----- From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Shaveta Leekha Sent: Monday, August 8, 2016 8:07 PM To: Linaro UEFI Mailman List linaro-uefi@lists.linaro.org; edk2-devel@lists.01.org Subject: Re: [edk2] SATA AHCI issue
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 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel