社区
驱动程序开发区
帖子详情
求助关于摄像头静态编译改为动态编译的问题
combattre
2014-09-21 09:37:05
最近在做将静态编译进内核的摄像头驱动ov2655动态编译成ko模块进行动态加载。
静态编译进内核时摄像头是正常的,但将代码改编译成ko模块,动态加载到系统后发现/dev下无法生成设备节点,经测ov2655.c里的probe函数也没调起来,__init是跑起来了
__init函数里就i2c_add_driver(&sensor_i2c_driver)
请问需要怎样去调试和修改??
...全文
359
7
打赏
收藏
求助关于摄像头静态编译改为动态编译的问题
最近在做将静态编译进内核的摄像头驱动ov2655动态编译成ko模块进行动态加载。 静态编译进内核时摄像头是正常的,但将代码改编译成ko模块,动态加载到系统后发现/dev下无法生成设备节点,经测ov2655.c里的probe函数也没调起来,__init是跑起来了 __init函数里就i2c_add_driver(&sensor_i2c_driver) 请问需要怎样去调试和修改??
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
combattre
2014-10-11
打赏
举报
回复
板级初始化是静态注册i2c client,是在i2c adapter注册之前完成。查看了下静态编译进内核的camera驱动,初始化i2c_add_driver后调用了probe函数后才动态生成了设备。不是在板级配置文件中配置的。 我也尝试过在板级配置文件中,配置i2c client,但是目前还是追其platform data 目前对i2c_add_driver这还存在一点问题。 如果静态编译进内核时,camera驱动init函数调用i2c_add_driver后,就能正常的调用该驱动的probe函数,接着注册camera的i2c client。 如果我选择编译成模块,则就执行不到probe函数。若我在板级配置文件中静态配置了i2c client,则probe函数能被执行。 但是静态时i2c client又是在probe函数里动态生成,所以这个地方有点乱。还得理一下
fly 100%
2014-10-10
打赏
举报
回复
看看板级的i2c初始化名字 和驱动中的device 名字是不是匹配上了 3.0 是靠名字匹配的 其他的没研究过
猪头三小队长
2014-10-08
打赏
举报
回复
生成节点(设备)要自己mknod,不过没有调用到probe的话那一定是出问题了,如果没有调用到probe,连设备号都没有分给你,肯定没法生成节点。 i2c的linux驱动我没写过,但是按照一般规则,你只需要把设备id注册进去,系统就可以自己找到对应的驱动并probe。实在不行,你就在init里面直接自己调用probe,反正i2c也没什么热插拔一说。
combattre
2014-09-22
打赏
举报
回复
相似的看了。初始化init是一模一样的。但是摄像头就是无法使用。probe函数也没调用到
LouisScola
2014-09-22
打赏
举报
回复
不是很熟悉linux驱动的话,就找一个相似的可动态加载的i2c驱动看看,然后修改
combattre
2014-09-22
打赏
举报
回复
引用 3 楼 falloutmx 的回复:
需要在内核代码里加上这个设备,应该是i2c_board_info
没有反应,无法在dev生成设备节点video啊
falloutmx
2014-09-22
打赏
举报
回复
需要在内核代码里加上这个设备,应该是i2c_board_info
vmware+redhat9
摄像头
驱动安装之方法二
升级2.4.20内核到2.6.18然后
编译
安装
摄像头
驱动gspca============================= 时间:2007-01-08作者:飘扬首发:http://www.piaoyang.org/blog Q Q: 47720194邮箱:piaoyang168#163....言由于开发环境需要在...
牛客周赛 Round 13 解题报告 | 珂学家 | 乘法原理场 + BFS上组合 + 众数贪心
面试战况为4对1拷打,虽然没有手撕,但鼠鼠受到了终极八股+项目拷打上来自我介绍+项目 讲10minSql相关:mvcc,事务,索引。狠狠破防了,以为很会了,狠狠被打击了1.自我介绍数据库2.数据库的4个特性(不是事务的特性...
OpenCV学习笔记(三十一)——让demo在他人电脑跑起来 OpenCV学习笔记(三十二)——制作
静态
库的demo,没有dll也能hold住 OpenCV学习笔记(三十三)——用haar特征训练自己
学MFC的时候就知道这个事情了,那时候记得老师强调多次,如果写的demo想在人家那里演示一下,一定要选择
静态
库使用mfc,而不是选择
动态
链接库,否则在人家电脑里没有对应的dll文件,是无法运行起来的。可见老师在这...
(十二)opencv开发的一点经验
学MFC的时候就知道这个事情了,那时候记得老师强调多次,如果写的demo想在人家那里演示一下,一定要选择
静态
库使用mfc,而不是选择
动态
链接库,否则在人家电脑里没有对应的dll文件,是无法运行起来的。可见老师在这...
Ubuntu 3D桌面完全教程
所以
改为
“主服务器”,能确保得到最新的Ubuntu更新软件。 (3)回到“更新管理器”窗口,点击“检查”按钮; 经过比较长的一段时间下载文件之后,会列出需要更新的软件列表(默认已经全选); 点击“安装更新...
驱动程序开发区
1,318
社区成员
2,173
社区内容
发帖
与我相关
我的任务
驱动程序开发区
主要是开发驱动技术
复制链接
扫一扫
分享
社区描述
主要是开发驱动技术
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章