MTK 平台相机bringup流程_天天热点评

和你一起终身学习,这里是程序员Android


(资料图片仅供参考)

经典好文推荐,通过阅读本文,您将收获以下知识点:

一、Camera 框架介绍二、Camera Bringup 需要配置的文件三、复盘总结

一、Camera 框架介绍

Camera 的框架分为 Kernel 部分和 hal 部分,其中kernel部分主要有两块:

image sensor driver,负责具体型号的sensor的id检测,上电,以及在preview、capture、初始化、3A等等功能设定时的寄存器配置;

isp driver,通过DMA将sensor数据流上传;HAL层部分主要有三部分组成:

imageio,主要负责数据buffer上传的pipe;

drv,包含imgsensor和isp的hal层控制;

feature io,包含各种3A等性能配置;

二、Camera Bringup 需要配置的文件

(本文以hi1634q型号的前摄为例,平台是mt6789,kernel版本为5.10)

2.1、Device Config Files

修改时删除多余的 sensor driver name,只保留自己的即可;

/device/mediateksample/k6789v1_64ProjectConfig.mk

/device/mediatek/mt6789CameraConfig.mkdevice-camera.mk

注意:CUSTOM_HAL_IMGSENSOR 、CUSTOM_HAL_SUB_IMGSENSOR 、CUSTOM_KERNEL_IMGSENSOR 、CUSTOM_KERNEL_SUB_IMGSENSOR 这四个必须都要指定 sensor name;不能遗漏

/device/mediatek/common/kernel-headers kd_imgsensor.h

指定 sensor name 和 sensor model id !这里一定要check不能出错!

2.2、Kernel Config Files

/kernel-5.10/arch/arm64/configs mgk_64_k510_defconfig

修改时删除多余的 sensor driver name,只保留自己的即可;

/kernel-5.10/drivers/misc/mediatek/imgsensor/inc kd_imgsensor.h

指定 sensor name 和 sensor model id 和 device config files 那边修改一样!这里一定要check不能出错!

/kernel-5.10/arch/arm64/boot/dts/mediatek cust_mt6789_camera.dtsi

(1)修改 cust_mt6789_camera.dtsi 中 pio 节点的各个Pin number,其中 1 对应 sensor index, 最好是将其他不相关的 sensor 定义都删除,排除干扰,提供一个干净整洁的代码!并将文件中 kd_camera_hw1 节点中的 pin 增加对应节点,rst 引脚和 mclk 引脚需要根据原理图上的信息去 map 查找,具体对应的是哪个 gpio引脚,pinctrl也只需要保留对应节点即可(必须从0开始递增,否则遍历会出错!),如下图红圈部分:

(2) 在 cust_mt6789_camera.dtsi 文件中 kd_camera_hw1 节点中将采用 PMIC 供电方式的 pin 增加如下子节点,再加一个 cust-sensor = “sensor_mipi_raw”,或者是 cam1_enable_sensor = “sensor_mipi_raw ”(方便匹配指定sensor):

(3)在对应的 i2c 总线中定义 camera 设备,i2c0 到 i2c8,具体是哪一条 i2c 路线需要到原理图查找,同时设备在 i2c 线上的地址是 sensor 的物理地址的高七位的值(实际过程中此地址只需要不和 i2c 路线的其它设备地址冲突即可,但是为了便于查找,尽量使用高七位的地址),同时删除无关的设备配置,包括其它的camera sensor、eeprom 相关、点亮 sensor 的原理图上不存在的引脚配置。

/kernel-5.10/drivers/misc/mediatek/imgsensor/src/common/v1_1 hi1634q_mipi_raw

此目录下添加驱动文件,仿照类似型号 sensor 修改成自己的,然后改成自己的名字,删除 mipi_raw 下的eeprom 以及 makefile 中的 eeprom 相关,排除干扰项。

到 sensor.c 和 sensor.h 文件修改具体内容,主要包括 imgsensor_info、init_setting、preview_setting 等 mode setting 中的数据、winsize_info 数据修改,最后修改 driver 的入口函数 XXX_MIPI_RAW_SensorInit(),一般在 sensor.c 文件最下面。

imgsensor_sensor_list.cimgsensor_sensor_list.h

imgsensor_sensor_list.h 中添加相应的 sensor 的 init(入口函数) 的函数;

imgsensor_sensor_list.c 中添加相应的 sensor 的id、name、init(入口函数) ,注意顺序和 vendor 层相对应,此处需要注意的是最好把位置放在你对应sensor idx 的位置上,这样就不会有匹配出错的情况出现。

imgsensor_pwr_seq.c此文件中修改引脚电压值以及上电延时等信息,注意 sensor driver name 的大小写,同时严格按照 sensor data 上电模块的说明,添加延时。需要注意的是 AVDD, DVDD, DOVDD 的电压需要确认是否正确,并且在上完前两路电之后第三路电最好加个 1ms 的延迟,不然可能会出现意料之外的问题;

/kernel-5.10/drivers/misc/mediatek/imgsensor/src/common/v1_1/camera_hw/ imgsensor_cfg_table.c

此处修改硬件配置信息,主要是三路电的配置,是 regulator 还是 gpio类型的,如果 sensor 原理图有其它引脚,也可以继续添加,同时删除原理图不存在的引脚,例如 pdn 引脚。

2.3、Vender Config Files

/vendor/mediatek/proprietary/custom/common/hal/imgsensor_src sensorlist.cpp

Note: sensorlist.cpp 中的 SensorList[] 与 imgsensor_sensor_list.c 中的 gimgsensor_sensor_list 的 sensor 的顺序必须一致,否则 user space 和 kernel space 在通过 ioctl 传递命令 id 时会对应错误。

/vendor/mediatek/proprietary/custom/mt6789/hal/imgsensor_src cfg_setting_imgsensor.cpp

注意:kernel 底层的MCLK_0/1/2 ----> 分别对应HAL层的 MCLK_1/2/3

Tunning文件Note:

(1)Tuning Parameter 与 Metadata 可以采用下图作为参考,参考复制对应文件夹并将其中所有的Sensor Name、Sensor Id等更改成当前需要porting的sensor的对应名称,一共三处。此处需要注意:参考的sensor tunning 配置必须对应上,例如 前摄只能参考和 sub 相关的文件配置,否则会出现踩内存现象;

(2) 修改过程中注意 sensor name 和 driver 驱动的大小写问题即可,具体的 mediatek 信息不会影响点亮阶段,但会对后续的出图细节有影响,需要点亮之后再进行调试

(3)Kernel 版本号可以根据当前 Project 的 ProjectConfig.mk 中的 LINUX_KERNEL_VERSION 得知。

Driver 是 v1_1 或者其他版本可以通过 Platform 下的 Makefile 中的 COMMON_VERSION 得知。

/vendor/mediatek/proprietary/custom/mt6789/hal/imgsensor/ver1/

/vendor/mediatek/proprietary/custom/mt6789/hal/imgsensor_metadata/

/vendor/mediatek/proprietary/custom/common/hal/imgsensor_metadata/sensor/

/vendor/mediatek/proprietary/scripts/soong/mtkcam/ mtkcamvars.go

/vendor/mediatek/proprietary/tools/dct/dws/mt6789 k6789v1_64.dws

dws(设备树相关)check gpio,一般不需要改动。

/vendor/mediatek/proprietary/hardware/mtkcam/include/mtkcam/drv/ IHalSensor.h

检查一下信息是否和 kernel 层信息相同或者是否需要添加 sensor ,一般不需要改动。

三、复盘总结

通过上面的代码流程,可以知道上开机时,camera模块先会将所有的MCLK打开,然后对依次对对应的sensor进行上电,读取ID(判断I2C是否正常通讯)。这部分调试过程中遇到的问题总结如下:

3.1、注意事项

kernel 重要的是 module 的驱动代码和设备树添加,驱动代码的改动需要根据模组厂给的配置文档,一般里面包含了驱动的所有信息,包括一些 dts 配置、init setting、i2c_addr、分辨率(注意屏比例)、上电时序等一些重要信息device 中 config.mk 文件修改后,要将 out 相关所有目录删除,再全部编译,否则会导致踩内存的橙色界面vender 参考的 sensor tunning 配置必须对应上,例如 前摄只能参考和 sub 相关的文件配置,否则会出现踩内存现象参考 sensor 进行复制替换时注意大小写的问题!!!注意排除干扰项、无关项,单独点亮一颗 sensor 时,先到 config 文件删除其余无关的 sensor 驱动,eeprom 相关的也删除,camera 设备原理图没有的引脚也要到 dtsi 和上电相关的文件 cfg_table.c 中删除。

3.2、ID读取不到,I2C不通

检查上电时序,3项电压(AVDD/DVDD/IOVDD)是否正确;检查 kernerl 层的 imgsensor_sensor_list.c 和 vendor 层的 sensorlist.cpp 中的位置是否一致。I2C地址及通道设置是否正确;确认 i2c 可以正常通信,通过万用表看看有无电流,万用表也可以用来测量配置的 regulator 是否正确,测量电压时首先屏蔽 imgsensor_hw.c 中的下电代码,最后编译完成,通过 i2c write/read 工具读写寄存器,将对应 regulator 的所有电源全部打开,之后测量电压。检查 cfg_setting_imgsensor.cpp 中 MCLK 和 HW 链接配置是否正确;如果还是无法读到 sensor id,先熟悉以下驱动代码以及上电代码,通过打印 log 的方式检查具体执行到哪个模块:camera 的入口在 imgsensor.c 最下方的 init 函数,通过它绑定一个 platform 的驱动,我们在到驱动对应的 probe 函数下看它如何执行,主要包括设备的匹配注册,imgsensor_hw_init,imgsensor_proc_init,sensorlist_init,其中上电部分的代码通过 imgsensor_hw_init 到达 imgsensor_hw.c 文件,获取硬件信息配置之后分别到平台定义的标准化接口 mclk.c、regulator.c、gpio.c 中执行标准化接口,这样一路打印 log,大概率会发现上电过程哪里出现问题,根据问题去检查对应模块。读到 sensor id 之后,如果相机无法预览,需要到 imgsensor.c 以及驱动代码中检查 open 之后的执行情况,check 驱动中的 init_setting 、mode setting 、imgsensor_winsize_info 是否正确。

3.3、Camera 启动时间过长

检查 Sensor 上电时序要求的延时,是否有偏长的情况;去掉多余的 I2C 地址,因为大部分驱动会多添加一些地址;OTP的加载调整到每次开机时第一次打开加载,之后不加载;sensorInit如果时间过长,可以调节I2C speed(400->1000);

原文链接:https://blog.csdn.net/Sugar_wolf/article/details/127512088

【腾讯文档】Camera学习知识库https://docs.qq.com/doc/DSWZ6dUlNemtUWndv

友情推荐:

Android 开发干货集锦

至此,本篇已结束。转载网络的文章,小编觉得很优秀,欢迎点击阅读原文,支持原创作者,如有侵权,恳请联系小编删除,欢迎您的建议与指正。同时期待您的关注,感谢您的阅读,谢谢!

点击阅读原文,为大佬点赞!

标签:

MTK 平台相机bringup流程_天天热点评

和你一起终身学习,这里是程序员Android经典好文推荐,通过阅读本文,

程序员客栈 06-20 11:41:08

怎么查驾驶证信息真假_怎么查驾驶证信息

1、进入交管12123软件首页,登录账号,点击驾驶证。2、进入驾驶证页面

互联网 06-20 11:18:33

全球视点!中南建设:公司目前没有AI智能化基地建设

南方财经6月20日电,中南建设在互动平台表示,公司南通海门柳岸春风项

搜狐号-南财快讯 06-20 10:58:23

【寻味中华 | 文博】“日光镜”:工艺失传的古代“黑科技”_天天速递

这些铜镜通过古丝绸之路传到中亚和西亚地区,其精美纹饰和高超工艺受到

中国新闻网 06-20 10:20:46

安徽新增8家境内上市公司居全国第6位

安徽新增8家境内上市公司居全国第6位

合肥在线-江淮晨报 06-20 10:13:56

基金分红:鹏华中债1-3年农发行债券指数基金6月28日分红-每日看点

6月20日发布《鹏华基金管理有限公司关于鹏华中债1-3年农发行债券指数证

证券之星 06-20 09:44:23

世界速读:cf永久枪奖励_cf永久枪

1、cf手游中的源武器还是比较容易获得永久的,cf手游是受到众多玩枪战

互联网 06-20 09:16:04

机构策略:股指预计维持震荡格局 关注半导体、计算机设备等板块 世界头条

中信证券指出,从政策端看,年初以来,国家相关部门陆续发布重磅政策文

证券时报网 06-20 08:45:07

世界播报:校园篮球和职业篮球的双向奔赴

广东工业大学陈国豪在比赛中(右二)。主办方供图当广东工业大学队的曾

中国青年报 06-20 07:50:59

焦点关注:拖鞋品牌大全_拖鞋品牌

1、冬天到了,家里的普通拖鞋也逐渐换成了棉拖鞋。在选择棉拖鞋的时候

互联网 06-20 07:13:01

小规模税费减免的会计分录_小规模减免税会计分录 全球热推荐

1、增值税减免,借记应交税费-应交增值税-减免税额,贷记营业外收入。2

互联网 06-20 05:54:26

天天热点!隆基绿能多项创新亮相光伏展

中工网讯(工人日报-中工网记者毛浓曦)6月14日~16日,光伏行业展会In

中工网-工人日报 06-20 04:46:16

当前速读:故交是什么意思啊 故交如真金作者

1、好朋友就像真金一样。2、经得起磨炼与考验-------------------------------------

城市网 06-20 02:03:21

对部门和公司的建议_对公司或部门工作建议-环球视讯

1、以下的内容希望能够帮到你1】尊敬的领导:我叫**,于*年*月*日进入

互联网 06-20 00:37:49

精工科技:拟收购控股子公司精功机器人剩余40%股权

精工科技公告,公司拟以1,200万元收购智杰科技持有的精功机器人40%股权

上海证券报·中国证券网 06-19 22:29:44

龟头发白发紫是什么原因_龟头发白

1、存在有真菌性的龟头炎可以表现为龟头色泽发白,其上覆盖有一层白色

互联网 06-19 21:44:31

北京家具公司(关于北京家具公司的介绍)-环球聚看点

1、北京五木家具有限公司,是一家专业生产板式家具的企业。2、公司创建

聚焦网 06-19 21:13:14

关注:新华视点|部分地方“天价”奢华粽子现象调查

新华社北京6月19日电 题:部分地方“天价”奢华粽子现象调查新华社“

新华网 06-19 20:17:52

霸气的搞笑语录大全|环球看点

1、“我爱你”那又能怎么样,三个字的首字母加起来,还不是个玩字。2、

互联网 06-19 19:12:01

天天新资讯:水空调品牌(水空调)

诸多的对于水空调品牌,水空调这个问题都颇为感兴趣的,为大家梳理了下

互联网 06-19 18:39:26

北京市住建委:非住宅依据价值对等原则可进行不同用途产权调换-当前看点

北京市住房和城乡建设委员会、北京市规划和自然资源委员会联合印发《关

青瞳视角 06-19 18:04:09

今日热讯:6月22日起,北京鼓楼延长开放时间至20时30分

新京报讯据北京钟鼓楼消息,为满足游客的参观需求,从6月22日起,北京

新京报 06-19 17:36:50

夏季保安大练兵 筑牢辖区安全线

荆楚网(湖北日报网)讯(通讯员刘晨光)为进一步提高辖区保安服务质量

荆楚网 06-19 16:55:03

全国二本大学排名前一百 2023最新二本院校排名一览-百事通

2023二本大学排名前十为:广东财经大学、贵州医科大学、重庆医科大学、

互联网 06-19 16:58:25

环球新消息丨象山县旦门山岛二次法拍成功,李国柱成新一任“岛主”

财联社6月18日讯(编辑俞琪)上个月,象山县旦门山岛的法拍事件引起了

互联网 06-19 16:02:34

少年智力开发报答案网六年级数学_少年智力开发报答案网六年级

1、好好学习,天天向上。2、光靠别人给你答案和卷子,你是不会有进步的

互联网 06-19 15:55:29

​汉文帝因身世之谜成弱势皇帝 全球观天下

​汉文帝刘恒,高祖刘邦第四子,母亲薄姬,曾受封代王。刘邦死后,吕后

星岛环球网 06-19 15:14:02

快讯!阿联酋与卡塔尔正式复交 两国使领馆重新开放

海外网6月19日电据路透社报道,卡塔尔外交部6月19日在社交平台表示,卡

海外网 06-19 14:48:26

每日速看!黑龙江佳木斯可提供SKG吸尘器维修服务地址在哪

1、请电话咨询维修服务400-822-0888

互联网 06-19 14:15:31

全能音频转换器破解版_全能音频转换器

1、全能音频转换器支持目前所有流行的音频、视频格式。2、如:MP3、MP2

互联网 06-19 13:56:05

每日观点:佳驰科技6月19日上交所首发上会,军品业务收入占比超95%

乐居财经李礼6月19日,据上交所网站,上交所上市审核委员会2023年第54

乐居财经 06-19 13:05:51

点了份黑椒猪排饭,2000元没了!这个新骗局很多人中招→-每日消息

注意!新型诈骗手段再出炉有男子订了一份30元的黑椒猪排最后竟花了2000

南宁晚报 06-19 12:24:51

腾讯端午节限制未成年人游戏时长引质疑

近日,腾讯游戏发布端午节假期未成年人限玩通知,6月22日至24日,未成

中关村在线 06-19 11:54:27

雨雨雨!热热热!本周暴雨与高温谁唱主角?

本周南方降雨势头仍然不减苏皖湘赣等地暴雨致灾风险高北方高温这几日暂

环球网 06-19 11:34:04

天天速递!“电动化帕萨特”这么快就来了?这10个点你得整明白了

大众ID Aero概念车的亮相,表明了大众在新能源汽车市场继续加码的

个人图书馆-二师兄玩车 06-19 10:47:45

【发现最美铁路】行走文化廊道,让八闽“诗和远方”触手可及_热消息

行走文化廊道,领略人文之美。连日来,由中央网信办网络社会工作局、国铁

未来网 06-19 10:51:44

刚刚发布,继续黄色预警!|信息

无锡市气象台2023年06月19日07时04分继续发布暴雨黄色预警信号:预计今

无锡日报 06-19 10:14:12

宁夏第十六届运动会开幕

人民日报宁夏中卫6月18日电(记者刘峰)16日,宁夏回族自治区第十六届

人民日报 06-19 09:47:16

中信证券:光模块有望加速半导体制冷(TEC)国产化

中信证券研报表示,半导体制冷(TEC)凭借高效、节能、环保和长寿命等

众赢智投 06-19 09:26:28

当前讯息:碳博会折射能源转型趋势: 从“资源依赖”走向“技术依赖”

【碳博会折射能源转型趋势:从“资源依赖”走向“技术依赖”】以“走向

经济参考报 06-19 09:32:23

江铃乐行新能源品牌发布 解码“美好生活的全场景专家”|焦点

2023年前5个月,新能源商用车累计销售13 1万辆,同比增长47 7%,高于汽车

汽车时代网 06-19 09:35:54

怎么蒸螃蟹好吃又简单视频做法_怎么蒸螃蟹具体做法

1、螃蟹的做法螃蟹的做法洗螃蟹:把螃蟹放在洗碗槽里先用清水泡一会。2

互联网 06-19 09:33:24

今头条!下拉菜单自动关联匹配_excel下拉菜单自动关联单元格数据

1、=IF(A1=Sheet1!A1,Sheet1!B1, " ")或者是用VLOOKUP也行。本文就为大

互联网 06-19 09:19:12

我中了七亿大奖-我中了3亿7000万 时快讯

1、把票寄给我,我帮你领。2、要不寄过来,要不就撕了扔垃圾篓,在愁头

互联网 06-19 08:45:03

小爱音箱app下载安装 ,体验小米AI_当前通讯

小爱同学虚拟形象假如我们想在手机上体验下怎么办呢?根据用户评论反馈

红五百科 06-18 21:41:35

渐渐的忘记忘记了时间是什么歌(渐渐的忘记 忘记了时间)|环球焦点

导读1、胡歌的《忘记时间》,是电视剧《仙剑奇侠传三》的片尾曲。2、歌

互联网 06-18 21:12:18

美国商务签证被拒原因 美国商务签证

1、1 有效护照:B1 B2签证申请人的护照有效期必须比申请人预计在美停留

城市网 06-18 20:22:31

每日报道:《股东来了》浙江片区 | 兴业证券浙江分公司走进高校等系列活动

潮新闻客户端通讯员李菡为提升社会公众金融投资知识和对非法证券期货活

凯迪网 06-18 19:42:43

全球热文:尼泊尔东部洪水致1死17人失踪

尼泊尔东部桑库瓦萨巴县警方18日说,当地一条河流17日夜间因大雨泛滥成

中评网 06-18 18:58:50

bf aromatherapy 要闻

1、BF是BelovedFormula的简称,中文名芳城市,是一个专业的芳疗护肤品

互联网 06-18 18:06:52

“数字政府”便民利企 数字经济赋能振兴——“数字吉林”建设一线观察
简讯:“让科学梦想在学生心中生根发芽”(在一线)
肠胃炎千万不能吃的食物_肠胃炎要怎么调理
合肥市气象台发布黄色暴雨预警 当前报道
虚拟世界入口-PICO 4 Pro VR 一体机|当前观点
天天热点评!开新唱起来收官之战!盛世梨园我来唱郑州总冠军出炉!
快看点丨云梦六个村入选“湖北省乡村振兴示范村创建名单”
excel文件怎么添加水印(excel文档如何添加水印) 当前报道
一分钟入戏三分钟追完,如何看待追剧短视频?|天天报道
米体:查洛巴来到米兰旅游并观看时装周活动,国米正尝试引进他 世界今日讯
"五四先驱"的名言有哪些? 天天微头条
汪新宇 每日时讯
新动态:这个618,我把钱花在了线下
世界看热讯:苏州家校通app下载_苏州市家校路路通
柏启木海南个体001_关于柏启木海南个体001概略
【新视野】黄金etf-黄金etf什么概念
环球快看:征途2经典版礼包 征途2 2019新手礼包通用)
全球新动态:解释误差复映规律 什么是误差复映规律
夏侯惇怎么读音_夏侯惇怎么读
北京沙化土地面积减少近60% 推进京津冀生态环境联防联治
越西县气象台发布雷电黄色预警信号【III级/较重】【2023-06-17】
今日热议:枸杞苗粥_关于枸杞苗粥概略
双预警!安徽发布地质灾害预警和暴雨预警 天天速看料
「庆阳e评」夏日,到合水纳凉_环球播资讯
美经济学家:尽管美国通胀放缓 但高物价仍是消费者“痛点”-全球热资讯
当前速递!我才发现好多人考试写了雷军,你们有没有类似的经历呢?
声动中国丨太过瘾了!“村超”加油
每日精选:物联网薪水_物联网工资一般多少
手机怎样关闭后台软件减少耗电|微动态
高温天如何防暑防晒?医生来支招
游戏根目录是哪(游戏根目录是啥意思)-环球看点
当前快报:买超夸张嘉倪年轻_网友:这是又想骗人生孩子了!
当前速看:多彩活动,为老年幸福生活“加码”
美国17岁少女开车睡着,车上一家4口全堕崖丧生
【世界独家】浅谈主动型量化公募,再谈国金量化
10分钟→5分钟!重庆轨道交通谢家湾站实现站内换乘,开通首日记者实地体验
瓷砖什么材质的质量好(瓷砖什么材质的质量好而且没有臭味)_全球速读
天天视讯!父亲节将至 这份送给父亲的健康指南请收好
英媒:美光向其中国工厂再投资43亿元,宣称“致力于发展中国市场”
英媒:美光向其中国工厂再投资43亿元,宣称“致力于发展中国市场”
wps剪贴板怎么打开(wps粘贴板怎么打开)-当前资讯
丰田海狮9座商务车价格,丰田海狮9座落地价多少钱 精选
天天热议:AMD新款显卡RX 6650 XT性价比高 更受消费者青睐
碳化深度啥意思(碳化深度是什么意思) 看点
《干物女》歌词_林宇中 干物女 歌词|当前动态
当前资讯!武磊5分钟双响!单刀过掉门将打入空门!
土豆切好后要泡多久的水_环球关注
世界球精选!kdj是什么意思图解 kdj是什么意思
朔州市“金融惠企 赋能转型”政银企对接会召开
观热点:“千万工程”20年 | 浙江:一枝花共富一方百姓
x 广告
x 广告

Copyright ©  2015-2022 纵横纤维网版权所有  备案号:浙ICP备2022016517号-12   联系邮箱:51 46 76 11 3 @qq.com