高通Qualcomm平台lk(light kernel)启动流程3——到高通lcm屏点亮

简介: 0lk 启动总体流程1lk启动流程代码lk app aboot abootclk target msm8953 target_displayclk dev gcdb display gcdb_displayc更多相关文章:《高通Qual...

更多相关文章:

《高通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

0、lk 启动总体流程

这里写图片描述

1、lk启动流程代码

lk/ app/ aboot/ aboot.c

aboot_init()先判断如果是正常启动则goto normal_boot,否则就根据物理按键判断哪种启动方式,是boot_into_fastboot还是boot_into_recovery(《高通Qualcomm平台lk(light kernel)启动流程2——aboot_init()》)。

这里写图片描述

normal_boot有一步就是初始化目标屏幕,target_display_init()是lcm在lk初始化唯一的一条入口函数。

这里写图片描述

lk/ target/ msm8953/ target_display.c

target_display_init()函数里有很重要的函数就是gcdb_display_init(),里面有 do{…} while(),这是高通原生lk LCD兼容的关键所在 。如果平台支持屏幕最大个数自动检测,msm8953支持兼容两个屏。(GCDB:Global Component Database全局组件数据库)

这里写图片描述

lk/ dev/ gcdb/ display/ gcdb_display.c

  • gcdb_display_init()

gcdb_display_init()初始化pll_clk_funcpower_funcbl_func等功能,初始化好之后就调用msm_display_init()函数。

gcdb_display_init ()在该函数中有一个重要的函数就是 oem_panel_select(),该函数就是根据你的hw_id 确定使用哪一款LCD,hw_id 这个是在高通的私有代码中传过来的。
Oem_panel_select()->target/msm8953/oem_panel.c

  • msm_display_init()

msm_display_init()里先Turn on panel,再Turn on backlight

这里写图片描述

  • Turn on backlight(bl_func(1))

gcdb_display_init ()打开背光函数bl_func(1)指向函数mdss_dsi_bl_enable

这里写图片描述

  • Turn on panel(power_func(1,…))

屏幕上电函数power_func(1,…)指向函数mdss_dsi_panel_power

/* add by Bert for panel exist checking 20161125 Begin */
ret = mdss_dsi_panel_reset(enable);
if (ret) {dprintf(CRITICAL, "panel reset failed\n");return ret;}

ret = qup_blsp_i2c_device_init();
if (ret) {dprintf(CRITICAL, "qup blsp i2c touchpanel init ret=%d\n",ret);}

ret = goodix_ic_package_check();
if (ret==false) {dprintf(CRITICAL, "qup blsp i2c touchpanel check ret=%d\n",ret);}
/* add by Bert for panel exist checking 20161125 End */

这里写图片描述

static struct gpio_pin enable_gpio = {"msmgpio", 61, 3, 1, 0, 1};

这里写图片描述

Wu_Being博客声明:本人博客欢迎转载,请标明博客原文和原链接!谢谢!
《高通Qualcomm平台lk(light kernel)启动流程3——到高通lcm屏点亮》: http://blog.csdn.net/u014134180/article/details/78177040

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

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

目录
相关文章
|
2月前
|
存储 芯片
【TFT彩屏移植】STM32F4移植1.8寸TFT彩屏简明教程(一)
【TFT彩屏移植】STM32F4移植1.8寸TFT彩屏简明教程(一·)
156 0
|
2月前
|
存储
【TFT彩屏移植】STM32F4移植1.8寸TFT彩屏简明教程(二)
【TFT彩屏移植】STM32F4移植1.8寸TFT彩屏简明教程(二)
105 0
|
7月前
|
内存技术
Motorola MVME147S MPU VME 模块
MVME147S 模块配备MC68030微处理器和MC68882浮点协处理器,具有共享DRAM(无奇偶校验版为MVME147SRF),4个RS-232C串口,SCSI接口,时钟/日历,2K CMOS RAM,4个ROM插口,VME总线中断器和控制器,支持A32/D32、A24/D16。还包括复位开关、打印机端口、滴答定时器、看门狗和以太网接口(MVME147SRF除外)。模块设计用于0至55摄氏度的强制空气冷却环境,使用25瓦负载板和3个100 CFM轴流风扇进行冷却测试。实际冷却效果取决于环境温度和气流,至少需要10 CFM,更高气流可扩展工作温度范围。
|
7月前
|
IDE 物联网 开发工具
【瑞萨MCU】玩转 HMI-Board 之 MDK + RASC 点灯
【瑞萨MCU】玩转 HMI-Board 之 MDK + RASC 点灯
|
7月前
|
缓存 内存技术
Motorola摩托罗拉 MVME2400系列 VME处理器模块
Motorola摩托罗拉 MVME2400系列 VME处理器模块
|
编解码 Linux
基于瑞芯微RV1109 Linux触摸屏GT911驱动调试心得(二)-设备树刷厂商给的触摸屏固件
基于瑞芯微RV1109 Linux触摸屏GT911驱动调试心得(二)-设备树刷厂商给的触摸屏固件
326 0
|
编解码 Linux
基于瑞芯微RV1109 Linux触摸屏GT911驱动调试心得
基于瑞芯微RV1109 Linux触摸屏GT911驱动调试心得
991 0
|
开发工具
瑞芯微RV1109配置7寸电容触摸屏的方向修改笔记
瑞芯微RV1109配置7寸电容触摸屏的方向修改笔记
127 0
|
Shell 芯片
荔枝派Zero(全志V3S)驱动开发之RGB LED灯
查看 V3S 原理图,查看 RGB LED对应的引脚 PG0 -> green LED PG1 -> blue LED PG2 -> red LED
422 0
|
人工智能 机器人 云计算
Xilinx Zynq-7015 SoC工业级核心板 SOM-XQ7Z15 Cortex-A9 + Artix-7
SOM-XQ7Z15是广州星嵌电子科技有限公司新推出的一款基于Xilinx Zynq-7000系列XC7Z015高性能低功耗处理器设计的异构多核工业级核心板,处理器集成PS端单/双核ARM Cortex-A9 + PL端Artix-7架构28nm可编程逻辑资源、最大频率766MHz,支持6.25G的高速SerDes,可支持PCIe、SATA、SFP等。
Xilinx Zynq-7015 SoC工业级核心板 SOM-XQ7Z15 Cortex-A9 + Artix-7