摄像头驱动的Linux内核配置

来源:互联网 发布:淘宝运营收费标准 编辑:程序博客网 时间:2024/06/06 07:18

        做完了一个“机房监控系统”的小项目,写几篇博客,总结一下前一阶段的学习体会,都是经验之谈。今天是第一篇,讲一下加载摄像头驱动的内核配置。

    内核配置方面的资料网络上会有很多,因此我只重点讲一些注意的问题。

    我们的内核是s3c2440_kernel2.4.18_r2.0,摄像头是ZC301P。内核支持ov511的驱动,因此应该首先确定你的摄像头需要的驱动。

    我们的摄像头使用spca5xx-LE,详细信息可以查看

    http://www.fish888.com/spca5xx-LE-t99533

    我们下载的是usb-2.4.31.patch补丁包(已上传在我的资源),将这个文件拷贝到drivers/usb/目录下,

    执行patch -p1 <usb-2.4.31LE06.patch,会产生spca5xx文件夹和Makefile.rej和Config.in.rej两个文件,按照这两个文件,修改你的Makefile和Config.in,这样就打好了补丁。

    回到内核主目录,执行make menuconfig,在Multimedia devices选项中,添加Video For Linux为*类型,即添加进内核,然后进入usb的配置目录,会发现你添加的设备已经在选项卡里了,添加为M,即模块。保存退出。

    依次执行make dep zImage modules,就可以获得所需要的内核和驱动文件了。

        这里应该注意一点,RedHat 的内核是非标准内核,他将 remap_page_range从4个参数擅自 更改为5个参数。然而这5个参数的remmap_page_range是内核2.5.0中使用的 ,2.6中也已经弃用了。换句话说,就是RedHat linux 自己制造了不兼容!!!

       其后果就是,摄像头无法使用mmap方式采集数据。解决的方法就是在spca5xx.c中打开 RH9_REMAP宏。(但结果是我们打开了这个宏,依然无法使用mmap方法,时间紧张,尚有待研究解决)。

 

 

 

 

 

原创粉丝点击