微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 手机设计讨论 > MTK手机平台交流 > MTK 6515M camera 兼容问题!

MTK 6515M camera 兼容问题!

时间:10-02 整理:3721RD 点击:
请教下mtk平台6515M,如何配置多个CAMERA,我想配置两组camera(一组包括前后camera 2个),现在我在config下的projectconfig.mk文件中配置了两组camera 共4个,现在发现只有一组能工作,我抓log发现是平台层在读取camera驱动列表时,只会读取前面的两个(就是在kd_sensorlist.c文件中的camera列表),我要是调换列表的顺序,发现只有列表前面的两个camera能正常工作,后两个不能正常工作,求各位驱动大侠解答,谢谢!

将projectconfig.mk
上传上来看看。
看你是怎么配的。

CUSTOM_HAL_IMGSENSOR =  gc2035_yuv gc0329_yuv hi253_yuv hi704_yuv
CUSTOM_KERNEL_IMGSENSOR =  gc2035_yuv gc0329_yuv hi253_yuv hi704_yuv
CUSTOM_HAL_MAIN_IMGSENSOR = hi253_yuv gc2035_yuv
CUSTOM_HAL_MAIN_BACKUP_IMGSENSOR =  
CUSTOM_HAL_SUB_IMGSENSOR =  hi704_yuv  gc0329_yuv
CUSTOM_HAL_SUB_BACKUP_IMGSENSOR =
CUSTOM_KERNEL_MAIN_IMGSENSOR =  hi253_yuv gc2035_yuv
CUSTOM_KERNEL_MAIN_BACKUP_IMGSENSOR =
CUSTOM_KERNEL_SUB_IMGSENSOR =  hi704_yuv gc0329_yuv
CUSTOM_KERNEL_SUB_BACKUP_IMGSENSOR =

这个配置看起来没有问题,你可以修改成下面的样子试一下
CUSTOM_HAL_IMGSENSOR =  gc2035_yuv gc0329_yuv hi253_yuv hi704_yuv
CUSTOM_KERNEL_IMGSENSOR =  gc2035_yuv gc0329_yuv hi253_yuv hi704_yuv
CUSTOM_HAL_MAIN_IMGSENSOR = hi253_yuv
CUSTOM_HAL_MAIN_BACKUP_IMGSENSOR =  gc2035_yuv
CUSTOM_HAL_SUB_IMGSENSOR =  hi704_yuv  
CUSTOM_HAL_SUB_BACKUP_IMGSENSOR = gc0329_yuv
CUSTOM_KERNEL_MAIN_IMGSENSOR =  hi253_yuv
CUSTOM_KERNEL_MAIN_BACKUP_IMGSENSOR = gc2035_yuv
CUSTOM_KERNEL_SUB_IMGSENSOR =  hi704_yuv
CUSTOM_KERNEL_SUB_BACKUP_IMGSENSOR =gc0329_yuv

另外看看你这4个CAMERA的函数。可能是有CAM不管有没有读到正确的ID都返回了挂载成功的值了。

这个配置我试过了,还是没有用的哦,你方便给个QQ号嘛,好向您好好讨教下,呵呵呵!

这论坛上交流吧。
你看一下LOG信息,为什么只能用一个CAM。
是不是有什么地方限制了CAM的个数了?

恩,我现在在LOG中就是发现在kd_sensorlist.c该文件中,在读取kdSensorList这个列表时,他就只读取前2个,不清楚它为什么不望下读取呢?所以我一调换列表的配置顺序,在前面的camera就能正常工作了

可能还是你加驱动时出了问题。如果不做兼容是不是两个CAM都可以分别使用?
然后查看一下你的几个CAM的ID是不是有写成重复的(一样的ID值)

LZ有解决吗?我在看camera部分代码的时候,也有这个问题,代码中没有找到扫描sensor的那个过程。g_pSensorFunc只是去获取列表的首地址,是通过drvIdx的值来获取对应的驱动函数接口,但是我反推算出不管是后摄还是前摄drvIdx永远都是等于0的,这样的话,他只能获取到数组0的位置,搞不懂他是如何获取到具体的驱动函数的,望知道的解答一下。


还没解决呀,现在发现的新情况是,我加载2个后摄,一个前摄,他们是正常工作的,而且drvldx的值也会是0,1,2.但是加载2个后摄,2个前摄就出问题了!

你可以查看一下kd_camera_hw.c这个里面pinSet数组中有没有添加对应的前摄兼容

我现在也要做兼容,配置了宏没有作用,请指点下,哪还有问题?  谢谢!

我要做3个摄像头的兼容,但是只能读取前面两个驱动!drvldx的值也会是0,1。  这是哪的问题

同求,请问你解决了这个问题了吗?

no办法!

我看了你的mk文件,原因其实是你写的不规范!导致无法遍历完全sensor_list里面的全部sensor。
=号跟sensor_name之间不要有空格,相邻两个sensor name只能有一个空格,最后一个sensor name后面不要有空格。
另外注意的就是两个sensor_list里面sensor的顺序一定要一样!
我兼容过六颗摄像头,没理由不得!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top