【发布时间】:2014-02-06 22:40:37
【问题描述】:
我在驱动程序中使用 kmalloc 分配内存,并将此地址传递给我的硬件 寄存器写入。我的问题是硬件何时完成写作(我的 驱动程序收到中断通知),我该如何刷新缓存 我的驱动程序可以看到硬件写入的内容吗?
谢谢。
【问题讨论】:
标签: linux-kernel
我在驱动程序中使用 kmalloc 分配内存,并将此地址传递给我的硬件 寄存器写入。我的问题是硬件何时完成写作(我的 驱动程序收到中断通知),我该如何刷新缓存 我的驱动程序可以看到硬件写入的内容吗?
谢谢。
【问题讨论】:
标签: linux-kernel
当您使用流式 DMA 映射时,dma_map_* 和 dma_unmap_* 函数会在需要时负责刷新缓存。
如果您需要多次使用同一个流式 DMA 区域并在 DMA 传输之间访问数据,您可以使用 dma_sync_* 函数。
【讨论】: