推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

MTK-camera驱动流程总结

更新时间:2020-11-06 09:25:17 大小:9M 上传用户:xuzhen1查看TA发布的资源 标签:mtk 下载积分:0分 评价赚积分 (如何评价?) 收藏 评论(1) 举报

资料介绍

Kernel部分主要有两块:一块是 Image sensor驱动,负责具体型号的 sensor的id检测,上电,以及在 preview,capture,初始化,3A等等功能设定时的寄存器配置。另一块是 isp driver,通过DMA将 sensor数据流上传。
本篇主要介绍 Image sensor驱动的流程
HAL层这边主要分3块,一块是 ImageIo,主要是数据 buffer上传的pipe。一块是dv,包含 imgsensor和isp的hal层控制。最后是 feature io,包含各种3A等性能配置本篇对HAL涉入不深,只在分析开机过程的id检测时会分析hal层的控制,属于第二块。

要发生在两个时间点:开机过程中 camera的动作以及打开应用时 camera的动作开机时,camera完成了 sensor框架的初始化,id检测,以及上下电操作。
打开应用时,camera会有上电,完成寄存器的初始配置,向上层传送基本参数及配置信息,以及 preview和 capture模式循环。

支持的 command汇总,包括 camera开机过程中上电,id检测以及 Imagesensor的参数获取KDIMGSENSORIOC X SET DRIVER T KDIMGSENSORIOC T CHECK IS ALIVE ix两个func在开机初始化检测id会被ha层调用
mediatek/platform/mt6582/hardware/camera/core/drv/imgsensor/imgsensor drv cpp impSearchSensor在开机过程中被调用,用于检测id,匹配 main/sub imagesensor

内层循环根据上面的 sensor列表来,最大支持兼容16颗 sensor,hal层特效,如果没有整合特定 Imagesensor的hal层代码,这边会直接退出
get CameraDefault调用很重要,hal层 camera的所有特效参数,包括3A,shading都在这边设定 get Camera Default通过之前的 Sensorlist来连接特定 Imagesensor的具体实现。下表是2675的特效参数获取函数

部分文件列表

文件名 大小
MTK-camera驱动流程总结.pdf 9M

全部评论(1)