摘要:
这几天遇到了64bit Win8下的一个Bug,我们的chip是支持ScatterGather的,但是在做DMA之前,我们修改对应的Memory却没有生效。DMA传输出去的内容还是之前没有改过的。回来的路上,看了下面这篇文章,终于明白其中的原因了。www.microsoft.com/whdc/driver/kernel/dma.mspxDevice跟Memory进行传输DMA的时候,Device能访问的地址访问受Device本身的寻址范围所限。在我的环境下,Chip是32bit的Bus,所以只能访问0-4G的地址,而系统是64bit的,有些Memory(Mem1)的物理地址在4G以上的空间。导 阅读全文