驱动三大件调试流程
三大件调试资料收集
调试前要确保模组都有2套以上,调试主板2片以上,主板能正常开机,主板工作电流正常。 三大件属于主板外围料件,调试前请向项目经理索取模组及相关调试资料。
LCD资料汇总
- 模组厂名称
- 模组厂FAE联系方式
- 芯片规格书
- 模组规格书
- 模组原理图
- LCD驱动点亮代码
TP资料汇总
- 模组厂名称
- 模组厂FAE联系方式
- 芯片规格书
- 模组规格书
- 模组原理图
- 对应平台的TP驱动移植代码
Camera资料汇总
- 模组厂名称
- 模组厂FAE联系方式
- 芯片规格书
- 模组规格书
- 模组原理图
- 对应平台的Camera驱动移植代码
确认资料信息
拿到资料后,确认三大件资料信息和手上的模组是否对应,检查模组规格书是否满足点亮要求,详细确认内容如下:
- LCD资料确认
- 模组规格书上的LCD分辨率及尺寸
- 模组规格书上的丝印数据是否和待调试模组丝印一致
- 模组规格书上的pin定义是否和主板原理图pin定义一致
- 模组规格书上的通信总线
- 打电话联系给的FAE,确认下给的驱动点亮代码是否正确
- TP资料确认
- 模组规格书上的TP的芯片是否和提供的芯片规格书一致
- 模组规格书上的丝印数据是否和待调试模组丝印一致
- 模组规格书上的pin定义是否和主板原理图pin定义一致
- 模组规格书上的通信总线I2C slave地址确定,I2C总线号
- 打电话联系给的FAE,确认下给的驱动点亮代码是否正确
- Camera资料确认
- 模组规格书上的Camera像素大小
- 模组规格书上的丝印数据是否和待调试模组丝印一致
- 模组规格书上的pin定义是否和主板原理图pin定义一致
- 模组规格书上的通信总线I2C slave地址确定,I2C总线号
- 确认模组实际结构安装是否符合模组规格书上的小人头安装位置
- 打电话联系给的FAE,确认下给的驱动点亮代码是否正确
代码移植
LCD、TP、Camera驱动代码移植请参考MTK官网提供的 Driver_All_IN_One 文档,里面有详细的代码移植规范及注意事项。
调试
LCD调试注意事项
- 上电是否符合芯片规格书的上电时序
- 检查控制管脚配置是否符合主板及模组设计
- 确认驱动移植代码是否编译进内核
- 量测通讯协议是否满足要求
- 检查分辨率是否配置正确
- 调整mipi时序符合芯片规格书要求
TP调试注意事项
- 上电是否符合芯片规格书的上电时序
- I2C总线及Slave地址是否配置正确
- 确认驱动移植代码是否编译进内核
- 复位脚和中断脚的电平及触发方式是否正确
- TP固件和配置参数是否需要调整
Camera调试注意事项
- 上电是否符合芯片规格书的上电时序
- I2C总线及Slave地址是否配置正确
- 确认驱动移植代码是否编译进内核
- Camera PDN和RST状态脚确认
- hal层效果文件移植是否正确
三大件编译验证技巧
-
LCD 初期调试阶段可以只编译bootloader来验证是否可以点亮,点亮后在移植bootloader的LCD代码到内核验证,这样可以增加调试验证代码速度
-
TP 只编译下载内核,增加调试验证代码速度,如果i2c通信失败,可以移植开源i2c-tools工具来测试验证tp的驱动是否注册到i2c总线上
-
Camera 整编系统验证,camera如果在调试中遇到打开失败的情况需要恢复出厂设置,这样Android系统才会从新加载Camera库。 效果文件可以直接通过换so库的方试,方便调试效果的时候来验证。 在点亮时可以不移植hal效果参数,只移植内核驱动,hal效果参数随便使用一个效果,先验证camera是否能点亮
调试文档总结
- 调试过程中出现的问题及分析方法需要写好总结