我是一名为嵌入式系统创建AHCI接口的硬件开发人员。我想知道PRD DMA数据的创建位置和分配给PRD的位置。由于SATA使用DWORDS,我假设数据将与4个字节的倍数对齐。我没有太多的Linux经验,如果有人能指出我正确的方向,我将不胜感激。
谢谢
答案 0 :(得分:1)
ahci控制器充当系统内存和SATA设备之间的数据移动引擎。以读操作为例,粗略的顺序如下:
PRD条目由软件(驱动程序)创建/分配,可以通过命令表定位/检索,也就是说,硬件可以找到命令表,然后检索所有PRD条目。此外,ahci规范定义PRD地址和字节计数为WORD对齐(最小)