标签: linux-kernel
我在驱动程序中使用kmalloc分配内存,并将此地址传递给我的HW 注册以写入。我的问题是HW完成写作(我的 驱动程序通过中断得到通知),如何刷新缓存呢 我的司机可以看到HW写的是什么?
谢谢。
答案 0 :(得分:0)
当您使用流DMA映射时,dma_map_ *和dma_unmap_ *函数会在需要时处理刷新缓存。
dma_map_
dma_unmap_
如果您需要多次使用相同的流DMA区域并触摸DMA传输之间的数据,则可以使用dma_sync_ *函数。
dma_sync_
阅读Documentation/DMA-API-HOWTO.txt了解详情。