到现在都与处理器接触较多。更深入的驱动主要是前端视频采集。控制TI的DM64xx,DM3730。纪氏A31等待。他们发现,它们的使用的基本框架的是不一样的。
当然,典型camera例如ov系列,decode例如tvp系列是作为i2c_client现有。构大致都相似。
在这里姑且将採集前端称为vpfe:
1.如dm3730的内核2.6.32版本号中。其採用master和slave的驱动架构,来进行attrach操作的。这就使得vpfe和camera的架构须要以v4l2_int_device_register()的架构来进行关联,使得程序不得不模板化。
2.如dm6446,我所看的vpfe是直接通过操作tvp5146驱动模块的提供一个专门的导出控制函数,这样看上去高效,可是可移植性就差了非常多。
3.在全知A31里面看到的是以sub_device存在。v4l2_i2c_new_subdev_board这个函数来完毕,vpfe将这个sub_device和camera i2c_client进行关联,故在这端就以调用v4l2_subdev_call的形式去调用camera提供的op接口,而这个接口使得编程也一样模块块。
但移植性争强。
可是不管何种模式,都是基于V4L2的基本控制命令来完毕的,操作的都是一个video_device而已,仅仅是以下的分支操作所採用的流和控制camera技术,由vpfe该框架决定。
版权声明:本文博客原创文章,博客,未经同意,不得转载。