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