Qualcomm Camera sensor bring up!
本文主要针对高通平台SM7250进行描述,当然高通平台可能基本都差不多【第一个项目】
—only for sensor probe sucess.
0. 准确
【0】. 不管是哪个平台都要先去看平台camera bring up 的文档,确认需要配置的内容;
【1】. 拿到sensor 的硬件图用来配置sensormodule.xml;
【2】. 拿到sensor的Datasheet,用来配置sensor.xml;
【3】. 拿到项目硬件图用来配置kernel层的dtsi和pinctrl。
【4】. 配置完成后先检查上电是否成功,I2C,sensor初始化。
1. Kernel 底层驱动配置
主芯片GPIO分布
① Kernenl层的驱动配置主要是关于sensor的上下电、i2c通讯的配置,高通有专门的dtsi来配置上下电、cci等配置。通过硬件电路图配置相应的引脚。CAM_MCLK、CCI_I2C_SDA/SCL、MIPI_CSI、CAM_ID2这些引脚与CPU芯片中GPIO的连接是多少。
首先查看电路图中相关sensor的引脚分别连接到哪里。
② 电路图中会写明每个sensor的AVDD、DVDD、IOVDD对应的上电接口。
③ 确认AVDD、DVDD、IOVDD是否存在使能口上电。
1.1 dtsi
主要是实现sensor的上下电、时钟、I2C的硬件连接配置。这部分要拿到相关sensor的硬件图和datasheet以及sensor的xml配置,其实主要是让sensor保证GPIO上电和电压范围和I2C是通的。
首先查看代码库中的配置格式,其次是先表明白AVDD、DVDD、IOVDD的电源的接口是怎么上电的。是否有上电使能口。
上电的操作一般分为两种,一种是PMIC供电,另外一种的GPIO供电,根据高通文档说明,两种的定义不太相同。根据硬件图来确定供电口。
SM7250平台中,AVDD是有使能口打开电源的,DVDD和IOVDD是PMIC供电的。所以对于使能口需要在dtsi中单独去定义的。
这部分的定义如下:
camera_vana0_ldo: gpio-regulator@0 {
compatible = "