RK3399 Android上面调试IMX291 Camera驱动
2017-06-07 20:37
351 查看
由于官方代码没有IMX291的驱动,所以想把IMX214的驱动进行移植,刚开始的做法跟这位仁兄差不多
http://developer.t-firefly.com/archiver/tid-1615.html?page=1
在cam_board.xml中增加的IMX291相关配置,根据hardware/rockchip/camera/SiliconImage/isi/drv/IMX214添加了一份IMX291,修改相关寄存器地址与值编译生成libisp_isi_drv_IMX291.so,然后上电发现Camsys驱动platform_driver_register后没有进入camsys_platform_probe函数,也就是说Camsys没跑起来,那后面的i2c操作没办法成功
修改dts需增加isp_mmu配置:
&isp0 {
status = "okay";
};
&isp1 {
status = "okay";
};
+&isp0_mmu {
+ status = "okay";
+};
+
+&isp1_mmu {
+ status = "okay";
+};
之外需要MCLK输出为37.125MHz或者74.25MHz,以为imx291只能在这两个clk下正常工作
输出37.125MHz需要修改时钟源及分频方式
camsys跑起来了但是设备注册失败:
D CameraHal: Check IMX291 ID: reg: 0x16 val: 0x0 default: 0x2
E CameraHal: IMX291 device register failed!
这是驱动读取sensor id与默认值不匹配导致驱动注册失败,后来问了索尼的代理,原来imx291没有id
采用哪组MIPI接口,RST脚,MCKL时钟都是在cam_board.xml分别配phyIndex,SensorGpioRst,SensorMclk
但是发现<SensorMclk mclk="24000000" delay="1000"></SensorMclk>该时钟配置没生效,i2c通信也有问题
先在这立个帖子,如果有朋友也在RK上面移植新的camera驱动请私信或加Q47411296
http://developer.t-firefly.com/archiver/tid-1615.html?page=1
在cam_board.xml中增加的IMX291相关配置,根据hardware/rockchip/camera/SiliconImage/isi/drv/IMX214添加了一份IMX291,修改相关寄存器地址与值编译生成libisp_isi_drv_IMX291.so,然后上电发现Camsys驱动platform_driver_register后没有进入camsys_platform_probe函数,也就是说Camsys没跑起来,那后面的i2c操作没办法成功
修改dts需增加isp_mmu配置:
&isp0 {
status = "okay";
};
&isp1 {
status = "okay";
};
+&isp0_mmu {
+ status = "okay";
+};
+
+&isp1_mmu {
+ status = "okay";
+};
之外需要MCLK输出为37.125MHz或者74.25MHz,以为imx291只能在这两个clk下正常工作
输出37.125MHz需要修改时钟源及分频方式
camsys跑起来了但是设备注册失败:
D CameraHal: Check IMX291 ID: reg: 0x16 val: 0x0 default: 0x2
E CameraHal: IMX291 device register failed!
这是驱动读取sensor id与默认值不匹配导致驱动注册失败,后来问了索尼的代理,原来imx291没有id
采用哪组MIPI接口,RST脚,MCKL时钟都是在cam_board.xml分别配phyIndex,SensorGpioRst,SensorMclk
但是发现<SensorMclk mclk="24000000" delay="1000"></SensorMclk>该时钟配置没生效,i2c通信也有问题
先在这立个帖子,如果有朋友也在RK上面移植新的camera驱动请私信或加Q47411296
相关文章推荐
- [RK3399][Android7.1] 调试笔记 --- camera中的cam_board.xml
- 请把Camera hold住 - Android高通平台调试Camera驱动全纪录
- 请把Camera hold住 - Android高通平台调试Camera驱动全纪录
- [RK3399][Android7.1] Display中的edp驱动调用流程
- [RK3399][Android7.1] 调试笔记 --- DDR中clock相关配置
- 在android 4.0 上面移植camera的一些心得 包括 单双camera 型号 hi253 gc0308 hi704 hm2055 ut2055 上层代码的调试
- Android高通平台调试Camera驱动全纪录
- [RK3399][Android7.1] 调试笔记 --- 系统使用的zygote.rc文件
- [RK3399][Android7.1] 调试笔记 --- DDR的开机频率和大小
- [RK3399][Android7.1] 调试笔记 --- 检测应用是32还是64位方法
- [RK3399][Android7.1] 调试笔记 --- DDR工作频率的获取和设置
- 请把Camera hold住 - Android高通平台调试Camera驱动全纪录
- Android高通平台调试Camera驱动全纪录
- [RK3399][Android7.1] 调试笔记 --- 查看当前DDR的工作频率
- 请把Camera hold住 - Android高通平台调试Camera驱动全纪录
- 请把Camera hold住 - Android高通平台调试Camera驱动全纪录
- [RK3399][Android7.1] 调试笔记 --- 串口打印输出乱码
- [RK3399][Android7.1] 调试笔记 --- 默认板子无法亮屏
- [RK3399][Android7.1] DDR动态频率调节驱动小结
- [RK3399][Android7.1] 调试笔记 --- DDR动态调节功能开启