如果我想实现自己板子的dma驱动,那需要在哪部分实现代码呢?
还有,我看到kernel的crypto目录下async_tx.c中说是使用dmaengine来实现数据得异步传输,但似乎kernel的其他模块(好像只有raid模块)都没有使用,这部分与dmaengine是个什么关系,主要作用?
个人水平有限,问题也许不很恰当,各位多多指教,小弟拜谢!!
/sun171
_______________________________________________
Linux 内核开发中文邮件列表
Linux-...@zh-kernel.org
http://zh-kernel.org/mailman/listinfo/linux-kernel
Linux 内核开发中文社区: http://zh-kernel.org
可以简单的理解为dmaengine是一个抽象层,为Linux的驱动程序提供了一种不需要
考虑具体的DMA控制器而进行DMA操作的能力;DMA控制器的驱动就是某个控制器的
驱动程序,可以看作dmaengine的后端,它真正的来完成DMA操作。
> 如果我想实现自己板子的dma驱动,那需要在哪部分实现代码呢?
>
> 还有,我看到kernel的crypto目录下async_tx.c中说是使用dmaengine来实现数
> 据得异步传输,但似乎kernel的其他模块(好像只有raid模块)都没有使用,这
> 部分与dmaengine是个什么关系,主要作用?
dmaegnine实现了一个子系统,但是内核对于其他设备驱动提供的于DMA相关的API
却肯能不在这里,你可以看看文档 Documentation/DMA-API.txt。
/大头阿当