[lcm] Qualcomm平台兼容多显示屏lcd的方法&并从lk传输到kernel过程

简介: 1如何兼容不同的LCD模组1-1 通过LCD_ID的电平状态区分1-2 通过IC的ID区分1-3 通过LCD_ID和IC ID的结合区分2LCD初始化过程3读取LK屏的ID传输到kernel3-1 LK把相关参数报存到pbuf3-2 kernel...

更多相关文章:

《高通Qualcomm平台lk(light kernel)启动流程1——aboot_init()之前》:
http://blog.csdn.net/u014134180/article/details/78133916
《高通Qualcomm平台lk(light kernel)启动流程2——aboot_init()》:
http://blog.csdn.net/u014134180/article/details/78132580
《高通Qualcomm平台lk(light kernel)启动流程3——到高通lcm屏点亮》:
http://blog.csdn.net/u014134180/article/details/78177040

《[lcm] Qualcomm Android Display Subsystem 架构》
http://blog.csdn.net/u014134180/article/details/78129502

《[lcm] Qualcomm平台的显示屏lcd驱动移植步骤》:
http://blog.csdn.net/u014134180/article/details/78129499
《[lcm] Qualcomm平台兼容多显示屏lcd的方法&并从lk传输到kernel过程》:
http://blog.csdn.net/u014134180/article/details/78166978
《[lcm] Qualcomm平台显示屏lcd添加I2C读取功能》:
http://blog.csdn.net/u014134180/article/details/78176160

1、如何兼容不同的LCD模组

1-1 通过LCD_ID的电平状态区分

不同LCD模组的LCD_ID电平状态需不同。如下图P3590硬件原理图,通过 LCD_ID0和 LCD_ID1 pin电平状态的搭配可以兼容四类 LCD模组。

这里写图片描述

Bootable\bootloader\lk\target\msm8953\oem_panel.c

这里写图片描述

这里写图片描述

1-2 通过IC的ID区分

这种方法仅能区分不同IC的LCD模组。

1-3 通过LCD_ID和IC ID的结合区分

如下图P6600硬件原理图,通过 LCD_ID,并配置I2C获取IC的ID来区分不同屏幕。

这里写图片描述

Bootable\bootloader\lk\target\msm8953\oem_panel.c

这里写图片描述

这里写图片描述

这里写图片描述

2、LCD初始化过程

Bootable\bootloader\lk\target\msm8953\oem_panel.c

这里写图片描述

3、读取LK屏的ID传输到kernel

3-1 LK把相关参数报存到pbuf

Bootable\bootloader\lk\dev\gcdb\display\gcdb_display_param.c

这里写图片描述

这里写图片描述

这里写图片描述

3-2 kernel获取LK保存的pbuf

\kernel\init\main.c

这里写图片描述

这里写图片描述

这里写图片描述

3-3 解析出所用的LCD并初始化

\kernel\drivers\video\msm\mdss\mdss_dsi.c

这里写图片描述

这里写图片描述

Wu_Being博客声明:本人博客欢迎转载,请标明博客原文和原链接!谢谢!
《[lcm] Qualcomm平台兼容多显示屏lcd的方法&并从lk传输到kernel过程》: http://blog.csdn.net/u014134180/article/details/78166978

Wu_Being 吴兵博客接受赞助费二维码

如果你看完这篇博文,觉得对你有帮助,并且愿意付赞助费,那么我会更有动力写下去。

目录
相关文章
高通平台开发系列讲解(USB篇)USB端口的说明及切换方法
高通平台开发系列讲解(USB篇)USB端口的说明及切换方法
953 0
高通平台开发系列讲解(USB篇)USB端口的说明及切换方法
|
内存技术 Perl
MTK DDR不能兼容分析
MTK DDR不能兼容分析
321 0
|
XML Java Linux
【Linux 第三方库】linux 交叉编译dbus,expat
【Linux 第三方库】linux 交叉编译dbus,expat
770 0
|
4月前
|
开发工具 git
使用Git下载指定版本或指定commit
使用Git下载指定版本或指定commit
|
Java API Maven
【异常】Caused by: java.lang.ClassNotFoundException: javax.xml.bind.annotation.XmlType
【异常】Caused by: java.lang.ClassNotFoundException: javax.xml.bind.annotation.XmlType
530 0
|
Java 数据库 Android开发
一个Android App最少有几个线程?实现多线程的方式有哪些?
本文介绍了Android多线程编程的重要性及其实现方法,涵盖了基本概念、常见线程类型(如主线程、工作线程)以及多种多线程实现方式(如`Thread`、`HandlerThread`、`Executors`、Kotlin协程等)。通过合理的多线程管理,可大幅提升应用性能和用户体验。
483 15
一个Android App最少有几个线程?实现多线程的方式有哪些?
|
编解码 Android开发
selinux报avc denied权限和编译报neverallow 解决方案
selinux报avc denied权限和编译报neverallow 解决方案
1564 1
|
人工智能
AI问题之Chain of Thought (CoT)的核心思想是什么
AI问题之Chain of Thought (CoT)的核心思想是什么
|
存储 Linux Android开发
RK3568 Android/Linux 系统动态更换 U-Boot/Kernel Logo
RK3568 Android/Linux 系统动态更换 U-Boot/Kernel Logo
2562 0
|
机器学习/深度学习 监控 算法
【数学建模竞赛】优化类赛题常用算法解析
【数学建模竞赛】优化类赛题常用算法解析
861 2

热门文章

最新文章