关于linux下2440的DMA的使用,求助
最近在学linux驱动,手里面有一个摄像头OV7620,我想写它的驱动,它的输出八位数据接在2440的io上,通过外部触发的方式,把数据通过DMA传到内存。所以我就在学DMA的linux工作方法,内核好像是给24系列提供了使用dma的接口,s3c2410_dma_request,s3c2410_dma_devconfig,s3c2410_dma_config,s3c2410_dma_enquen以及回掉函数等,我也试着配置了一下,但是最终没有成功,对这些函数的认识不是很深刻,比如s3c2410_dma_config的参数dcon,等等
所以,有没有做过类似事情的朋友能够给我一些源代码,让我参考参考啊,或者是给我提供一些思路什么的,弄了一周了,真心不知道怎么去挖掘了,谢谢!我的邮箱403245851@qq.com :)
用dma的时候,一会儿开发板屏黑了,一会儿蜂鸣器响了,是什么问题呢?:dizzy: 猜想LCD framebuffer等内存被DMAing越界覆盖了,检查配置的DMA长度等。 还是看看2440的数据手册中关于DMA的配置把,然后在驱动中使用ioremap的方式将物理地址映射为虚拟地址,然后在操作,注意不要让内存泄漏
页:
[1]