高通平台msm8909 LK 实现LCD 兼容
2015-10-29 18:56
288 查看
http://blog.csdn.net/u011312250/article/details/48974805
前段时间小米出现红米note2 换屏门,现在我们公司也要上演了;有两个供应商提供不同IC 的LCD panel。
软件区分的办法是读取LCD IC 的ID 寄存器,下面解析高通平台LK中LCD兼容的过程。
废话不多说了直接从 target_display_init() .第一次开代码时不理解为什么会有 do{} while(),这就是高通原生lkLCD 兼容的关键所在。至于你需要兼容多少LCD 就在while()设置了,具体代码就不跟下去了。
gcdb_display_init () 在该函数中有一个重要的函数就是 oem_panel_select(),该函数就是根据你的hw_id 确定使用哪一款LCD,hw_id 这个是在高通的私有代码中传过来的。
auto_pan_loop 是所在文件定义的全局变量,在有些高通平台是注释掉的,该变量定义为全局静态变量的好处就是当最开始的do{}while()执行循环的时候该值在一直递增。
接下来介绍另外一个函数 mdss_dsi_read_panel_signature(),这个是高通定义好的读取ID的函数。
调用过程
前段时间小米出现红米note2 换屏门,现在我们公司也要上演了;有两个供应商提供不同IC 的LCD panel。
软件区分的办法是读取LCD IC 的ID 寄存器,下面解析高通平台LK中LCD兼容的过程。
废话不多说了直接从 target_display_init() .第一次开代码时不理解为什么会有 do{} while(),这就是高通原生lkLCD 兼容的关键所在。至于你需要兼容多少LCD 就在while()设置了,具体代码就不跟下去了。
gcdb_display_init () 在该函数中有一个重要的函数就是 oem_panel_select(),该函数就是根据你的hw_id 确定使用哪一款LCD,hw_id 这个是在高通的私有代码中传过来的。
auto_pan_loop 是所在文件定义的全局变量,在有些高通平台是注释掉的,该变量定义为全局静态变量的好处就是当最开始的do{}while()执行循环的时候该值在一直递增。
接下来介绍另外一个函数 mdss_dsi_read_panel_signature(),这个是高通定义好的读取ID的函数。
调用过程
相关文章推荐
- Leetcode -- Best Time to Buy and Sell Stock IV
- 为Web程序员准备的10个最棒的jQuery视频插件
- 考研系列一-线性表类(顺序存储)
- 2015年9大优秀项目管理工具集锦
- 你的理想在哪
- 数据结构之后缀数组
- 2015年9大优秀项目管理工具集锦
- js移动div改进(兼容)
- php设计模式笔记--总结篇
- 在Eclipse中使用maven创建项目
- 黑马程序员-常用Java API介绍
- String ->date: 思想:把日期装换成字符串
- C++学习笔记
- Android开发中调用Spring CXF整合发布的WebService接口为什么抛出异常错误?
- Android开发中调用Spring CXF整合发布的WebService接口为什么抛出异常错误?
- Android开发中调用Spring CXF整合发布的WebService接口为什么抛出异常错误?
- Android开发中调用Spring CXF整合发布的WebService接口为什么抛出异常错误?
- Android开发中调用Spring CXF整合发布的WebService接口为什么抛出异常错误?
- 数据结构之伸展树
- 关于mysql的错误 - no query specified