DMA 使用基本配置

还真没有裸配的代码,我倒是有我们开发板的dma裸配的代码,不过不是三星的。
大体上来讲,我个人认为使用dma代码无非以下几个方面:
1、配置源,目的地址(需要注意的是物理地址)。
2、配置传输的改变方式(源,目的地址是递增,减少,还是不变)
3、配置传输的位宽(源,目的的位宽)
4、需要传输的大小
5、配置传输的接口方式(mem到外设,外设到mem,三星我记得好像是各个外设固定分配的通道)
6、配置传输的链接方式(连续传输,link list传输,reload传输之类的)
7、中断的使用(是否使能,中断处理函数获得当前的传输状态:源,目的地址等等)
8、dma的传输使能
当然还有什么dma的空间申请啊之类的周边工作,你可以根据三星的寄存器手册来看它的驱动,网上讲这个的也比较多

你可能感兴趣的:(DMA 使用基本配置)