高通平台分析步骤
- 格式:doc
- 大小:41.50 KB
- 文档页数:5
todo⾼通AndroidUEFI中的LCD分析(1):启动流程分析背景之前学习的lk阶段点亮LCD的流程算是⽐较经典,但是⾼通已经推出了很多种基于UEFI⽅案的启动架构。
所以需要对这块⽐较新的技术进⾏学习。
同事遇到了⼀个UEFI阶段LCD显⽰异常,⽽kernel正常的问题;但我解决不了。
分析在⾼通UEFI架构中,通过Protocol来调⽤对应的功能。
因此实际上的函数调⽤并不是显式的,⽽是包裹在Protocol中进⾏。
⾼通UEFI显⽰有关的⽂件有:BOOT.XF.4.1/boot_images/QcomPkg/Drivers/DisplayDxe/DisplayDxe.cBOOT.XF.4.1/boot_images/QcomPkg/Application/QcomChargerApp/QcomChargerAppDisplay.cBOOT.XF.4.1/boot_images/QcomPkg/Application/QcomChargerApp/QcomChargerAppDisplay.hBOOT.XF.4.1/boot_images/QcomPkg/Drivers/DisplayDxe/DisplayDxe.cBOOT.XF.4.1/boot_images/QcomPkg/Drivers/DisplayDxe/DisplayDxe.hBOOT.XF.4.1/boot_images/QcomPkg/Drivers/DisplayDxe/DisplayDxe.infBOOT.XF.4.1/boot_images/QcomPkg/Drivers/DisplayDxe/DisplayPwrCtrlProtocol.cBOOT.XF.4.1/boot_images/QcomPkg/Drivers/DisplayDxe/DisplayPwrProtocol.cBOOT.XF.4.1/boot_images/QcomPkg/Include/Library/BootDisplay.hBOOT.XF.4.1/boot_images/QcomPkg/Include/Library/DisplayLib.hBOOT.XF.4.1/boot_images/QcomPkg/Include/Library/DisplayUtils.hBOOT.XF.4.1/boot_images/QcomPkg/Include/Library/ExternalDisplayDriver.hBOOT.XF.4.1/boot_images/QcomPkg/Include/Protocol/EFIDisplayPwr.hBOOT.XF.4.1/boot_images/QcomPkg/Include/Protocol/EFIDisplayPwrCtrl.hBOOT.XF.4.1/boot_images/QcomPkg/Include/Protocol/EFIDisplayUtils.hBOOT.XF.4.1/boot_images/QcomPkg/Library/BootDisplayLib/BootDisplay.cBOOT.XF.4.1/boot_images/QcomPkg/Library/BootDisplayLib/BootDisplayLib.infBOOT.XF.4.1/boot_images/QcomPkg/Library/DisplayLib/DisplayLib.cBOOT.XF.4.1/boot_images/QcomPkg/Library/DisplayLib/DisplayLib.infBOOT.XF.4.1/boot_images/QcomPkg/Library/ExternalDisplayLib/ExtDisplay_driver.cBOOT.XF.4.1/boot_images/QcomPkg/Library/ExternalDisplayLib/ExternalDisplayLib.decBOOT.XF.4.1/boot_images/QcomPkg/Library/ExternalDisplayLib/ExternalDisplayLib.infBOOT.XF.4.1/boot_images/QcomPkg/Library/ExternalDisplayLib/ExternalDisplayLibStub.infBOOT.XF.4.1/boot_images/QcomPkg/Include/Library/HALMDPLib.hBOOT.XF.4.1/boot_images/QcomPkg/Include/Library/MDPLib.hBOOT.XF.4.1/boot_images/QcomPkg/Include/Library/MDPPeripherals.hBOOT.XF.4.1/boot_images/QcomPkg/Include/Library/MDPPlatformLib.hBOOT.XF.4.1/boot_images/QcomPkg/Include/Library/MDPSystem.hBOOT.XF.4.1/boot_images/QcomPkg/Include/Library/MDPTypes.hBOOT.XF.4.1/boot_images/QcomPkg/Library/MDPLib/DisplayUtils.cBOOT.XF.4.1/boot_images/QcomPkg/Library/MDPLib/MDPClocks.cBOOT.XF.4.1/boot_images/QcomPkg/Library/MDPLib/MDPClocksBoot.cBOOT.XF.4.1/boot_images/QcomPkg/Library/MDPLib/MDPConfig.cBOOT.XF.4.1/boot_images/QcomPkg/Library/MDPLib/MDPEDID.cBOOT.XF.4.1/boot_images/QcomPkg/Library/MDPLib/MDPLib.cBOOT.XF.4.1/boot_images/QcomPkg/Library/MDPLib/MDPLib.infBOOT.XF.4.1/boot_images/QcomPkg/Library/MDPLib/MDPLibBoot.infBOOT.XF.4.1/boot_images/QcomPkg/Library/MDPLib/MDPLib_i.hBOOT.XF.4.1/boot_images/QcomPkg/Library/MDPLib/MDPPanel.cBOOT.XF.4.1/boot_images/QcomPkg/Library/MDPLib/MDPPeripherals.cBOOT.XF.4.1/boot_images/QcomPkg/Library/MDPLib/MDPSystem.cBOOT.XF.4.1/boot_images/QcomPkg/Library/MDPLib/MDPSystemBoot.cBOOT.XF.4.1/boot_images/QcomPkg/Library/MDPLib/MDPVersion.cBOOT.XF.4.1/boot_images/QcomPkg/Library/NullLibs/MDPPlatformLibNull/MDPPlatformLibNull.cBOOT.XF.4.1/boot_images/QcomPkg/Library/NullLibs/MDPPlatformLibNull/MDPPlatformLibNull.infBOOT.XF.4.1/boot_images/QcomPkg/SocPkg/AgattiPkg/Library/MDPPlatformLib/MDPPlatformLib.cBOOT.XF.4.1/boot_images/QcomPkg/SocPkg/AgattiPkg/Library/MDPPlatformLib/MDPPlatformLib.infBOOT.XF.4.1/boot_images/QcomPkg/SocPkg/AgattiPkg/Library/MDPPlatformLib/MDPPlatformLibPanelCommon.cBOOT.XF.4.1/boot_images/QcomPkg/SocPkg/AgattiPkg/Library/MDPPlatformLib/MDPPlatformLibPanelCommon.hBOOT.XF.4.1/boot_images/QcomPkg/SocPkg/AgattiPkg/Library/MDPPlatformLib/MDPPlatformLibPanelConfig.hBOOT.XF.4.1/boot_images/QcomPkg/SocPkg/AgattiPkg/Library/MDPPlatformLibBoot/MDPPlatformLib.cBOOT.XF.4.1/boot_images/QcomPkg/SocPkg/AgattiPkg/Library/MDPPlatformLibBoot/MDPPlatformLibBoot.infBOOT.XF.4.1/boot_images/QcomPkg/SocPkg/KamortaPkg/Library/MDPPlatformLib/MDPPlatformLib.cBOOT.XF.4.1/boot_images/QcomPkg/SocPkg/KamortaPkg/Library/MDPPlatformLib/MDPPlatformLib.infBOOT.XF.4.1/boot_images/QcomPkg/SocPkg/KamortaPkg/Library/MDPPlatformLib/MDPPlatformLibPanelCommon.cBOOT.XF.4.1/boot_images/QcomPkg/SocPkg/KamortaPkg/Library/MDPPlatformLib/MDPPlatformLibPanelCommon.hBOOT.XF.4.1/boot_images/QcomPkg/SocPkg/KamortaPkg/Library/MDPPlatformLib/MDPPlatformLibPanelConfig.hBOOT.XF.4.1/boot_images/QcomPkg/SocPkg/KamortaPkg/Library/MDPPlatformLibBoot/MDPPlatformLib.cBOOT.XF.4.1/boot_images/QcomPkg/SocPkg/KamortaPkg/Library/MDPPlatformLibBoot/MDPPlatformLibBoot.inf对外的Protocol有关⽂件:BOOT.XF.4.1/boot_images/QcomPkg/Include/Protocol/EFIDisplayPwr.hBOOT.XF.4.1/boot_images/QcomPkg/Include/Protocol/EFIDisplayPwrCtrl.hBOOT.XF.4.1/boot_images/QcomPkg/Include/Protocol/EFIDisplayUtils.hProtocol接⼝学习UEFI,⽐较关键的是:0、了解UEFI是如何实现的1、了解XXX_PROTOCOL定义中有什么接⼝可以使⽤:⽅便我们找到实现的原型2、找到对应的XXX_PROTOCOL_GUID是多少:⽅便我们找到哪⾥调⽤了对应的接⼝EFIDisplayPwr.h路径:BOOT.XF.4.1/boot_images/QcomPkg/Include/Protocol/EFIDisplayPwr.h声明了对应的EFI_DISPLAY_POWER_PROTOCOL_GUID,但没有调⽤。
高通校准平台操作流程下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。
文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor. I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classic articles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!高通校准平台操作流程一、准备工作阶段。
在开始使用高通校准平台之前,需要做好充分的准备。
高通工具使用指导书文档密级内部学习高通工具使用指导书(QXDM、QPST、QCAT)作者:白志伟日期:2015.5.29华锐通讯科技有限公司高通工具使用指导书文档密级内部学习目录1.版本路径 (3)1.1 QXDM 路径 (3)1.2 QPST路径 (3)1.3 QACT 路径 (3)2. QPST 的使用 (3)2.1 QPST简介 (3)2.2 QPST 安装 (3)2.3 QPST使用 (6)2.3.1 QPST configuration (6)2.3.2 EFS Explorer (7)2.3.3 software download (9)2.3.3 QCNview (20)2.3.4 memory debug application (21)2.3.5 service programming (22)2.3.6 PRL editor (27)3. QXDM的使用 (28)3.1 QXDM简介 (28)3.2 QXDM 安装 (28)3.3 在线激活QXDM (29)3.4 QXDM使用 (30)3.4.1 com口连接 (30)3.4.2 log窗口(快捷键F1) (32)3.4.3 message窗口(快捷键F3) (32)3.4.4 item 窗口(快捷键F11) (33)3.4.5 设置log view configuration (33)3.4.6 设置message view configuration (38)3.4.7 log过滤 (43)3.4.8 mach item 查找log (45)3.4.9 log保存 (45)3.4.10 log自动保存 (46)3.4.11 command 命令输入框 (46)3.4.12 nv browser (47)3.4.13 status 查看设备网络状态 (47)3.4.14 item replay (48)3.4.15 清空log (48)3.4.16 查看WCDMA网络搜网状态 (49)3.4.17 查询WCDMA当前收发功率 (49)3.4.18 查看终端注册到WCDMA网络状态 (50)3.4.19 查看功控信息 (50)华锐通讯科技有限公司高通工具使用指导书文档密级内部学习3.4.20 ppp extractor功能 (51)3.4.21 evdo搜网状态 (52)3.4.22 查看evdo注册网络信息 (52)4.3.23 EVDO连接态注册信息查看 (52)4.3.24查看lte 信号强度 (53)4.3.25查看小区重选 (53)4. QCAT 简介 (54)1.版本路径1.1 QXDM 路径\\192.168.99.240\software\Qualcomm\Software Tools\QXDM Software Code1.2 QPST路径\\192.168.99.240\software\Qualcomm\Software Tools\QPST Software Code1.3 QACT 路径\\192.168.99.240\software\Qualcomm\Software Tools\QACT Software Code每个工具都需要获取最新的版本进行安装2. QPST 的使用2.1 QPST简介QPST是高通公司开发的一套软件,该工具可以对设备的内部参数进行读写和操作,用于使用高通平台的设备的EFS管理、图像捕捉、软件下载等。
2010-04-1610:41高通7系列硬件架构分析如上图,高通7系列Display的硬件部分主要由下面几个部分组成:A、MDP高通MSM7200A内部模块,主要负责显示数据的转换和部分图像处理功能理,如YUV转RGB,放大缩小、旋转等。
MDP内部的MDP DMA负责数据从DDR到MDDI Host 的传输(可以完成RGB之间的转换,如RGB565转成RGB666,这个转换工能载目前的code中没有使用)。
B、MDDI一种采用差分信号的高速的串行数据传输总线,只负责数据传输,无其它功能;其中的MDDI Hosat提供并行数据和串行数据之间的转换和缓冲功能。
由于外面是VGA的屏幕,数据量较大,为了减少对EBI2总线的影响,传输总线使用MDDI,而非之前的EBI2。
C、MDDI Bridge由于现在采用的外接LCD并不支持MDDI接口,故需要外加MDDI转换器,即MDDI bridge,来把MDDI数据转换成RGB接口数据。
这里采用的EPSON MDDIBridge 还有LCD Controller功能,可以完成其它一些数据处理的功能,如数据格式转换、支持TV-OUT、PIP等;并且还可以提供一定数量的GPIO。
目前我们主要用它把HOST 端MDDI传递过来的显示数据和控制数据(初始化配置等)转换成并行的数据传递给LCD。
D、LCD module主要是LCD Driver IC和TFT Panel,负责把MDDI Bridge传来的显存中的图像示在自己的Panel上。
2010-04-1610:45Android display SW架构分析下面简单介绍一下上图中的各个Layer:*蓝色部分-用户空间应用程序应用程序层,其中包括Android应用程序以及框架和系统运行库,和底层相关的是系统运行库,而其中和显示相关的就是Android的Surface Manager,它负责对显示子系统的管理,并且为多个应用程序提供了2D和3D图层的无缝融合。
矩阵键盘口使用注意事项1 问题描述客户拿到机器测试时发现按键同时按两位会出现三位数字,当快速按下1、2两个按键时,屏幕显示是1、2、3。
问题在每台机器上都存在。
2 重现条件拿到客户样机在公司进行开机测试复现,问题100%出现。
3 原理分析(1)分析过程1、矩阵键盘电路设计具体电路如下:2、目前模块专用支持矩阵键盘的脚是已经被占用或者是未连线出来,所以客户目前使用的是带有中断功能的GPIO口作为矩阵键盘的输入输出脚。
3、我们使用的代码是直接使用高通平台的矩阵键盘原生代码。
4、将示波器四个脚接在客户的KCOL0、KCOL1、KCOL2、KROW0四个脚位上,测试波形如下,从图中可以看出波形有很多细高电平(1.8V),显得非常不正常,还有电平只有半高(0.9V),并且逻辑不对。
5、而按单个按键是正常的原因一个键按下去时单个下降沿触发正常,即使后面的波形不正常也可以掩盖问题。
但当监控扫描中断时同行不同列的多个按键时就会出现异常,按两个键可能会出现异常,就如客户出现的3个数字这种情况。
6、下面是改正软件配置后的正常波形,从波形中可以看出1(KROW0)默认是高电平,其他3根线是KCOL线(3为KCOL0、1为KCOL1、4为KCOL2)默认是低电平,当按下按键7时,列KCOL先全部拉高然后进行中断扫描,KROW0默认一直为高,触发进行拉低,KROW0在KCOL0拉低时相对应触发拉低,其他KCOL拉低时KROW0没反应,表示只有按键7有效。
同理当按下按键8时,KROW0在KCOL1拉低时触发拉低,图如下:(2)分析原因1、首先说明矩阵按键原理,行row设为输入,且内部上拉,也就是默认输入高电平;列col为输出,默认输出低电平;配置行输入为下降沿中断触发;当有按键按下去时,行列有个脚接通,这时候行会被拉低进入中断;在中断处理函数中,先将所有列电平信号置高,然后再逐一拉低,读取行的电平信号是否为低(列扫描),当扫描到某列时读取的行电平为低,说明该列的按键被按下。
一,下载分析步骤:高通软件分为烧录部分(ARM9)和下载部分(ARM11),MEMORY在贴片前要先烧录ARM9部分。
高通7227平台为例,当软件只有AMR9部分时开机电流会跑到150mA左右才正常(其它平台电流不一定一样)。
正常下载方式夹具需要VBAT(电池电压,设置为通道1)和VCHG(充电电压,设置为通道2)两路电压同时设置为3.8V供电。
当电脑设备管理器能找到ADB interface(fastboot mode)端口就能下载ARM11软件。
正常下载时手机不能找到ADB端口时,故障分析步骤如下:(1)小电流(70mA以下)和大电流(200mA以上)请考虑贴片或物料问题,参考原理图分析问题。
(2)固定不动电流(70mA)较大可能是MEMORY里没有ARM9软件或软件不能运行造成。
正常的板子拆下MEMORY,开机电流就是固定在70mA。
固定不动电流(100 mA)可能是ARM9软件错误或CPU不能正常工作造成。
(3)电流在70至150 mA间跳动,但连接到PC不能找到ADB端口。
此时需要加LCD看板子的状态,正常是开机后进入fastboot mode(LCD显示纯黑色背景,有三行英文字符);不正常的大多是开机白屏,多是CPU或软件问题。
备注:当一块板子在下载位不能下载时,要清楚知道板子的状态。
以上描述针对从未下载过ARM11软件的板子。
当下载ARM11失败的(开机白屏或定在开机LOGO不动的),要重新下载软件只能通过强行进入下载模式去下载软件,因为用正常下载方式只能进入关机充电模式;如果强行进入下载模式无效则只能拆下MEMORY重新烧录。
二,校准分析(BT1):->A00001 Serial Connect:开机后,PC识别手机端口。
如果PC在设备管理器上识别端口,但测试程序还是不能连接端口,此时要检查QPST有没有把端口加入。
->A00002 Change Mode to FTM:转化模式进入工程测试模式(BT1时是在FTM模式下运作)->A00003 SWVersion1201-151-286-562-M76XX-TFNCKNLYM-60301->A00004 CheckSW: 1.00 1.00 1.00软件版本检查,每一个ARM11软件会有一个版本号,如果一款机子在生产过程中有软件升级,那么测试时需要在配置文件中将软件版本号修改对应起来->W11000 BC1_Range0_MaxPower 10.89 7.50 ->W11001 BC1_Range1_MaxPower 19.82 10.00->W11003 BC1_Range3_MaxPower 27.85 24.00BC1(WCDMA2100频段)的功率检查,此项测试BC1频段在一个指定的频点上Range0、1、3功率是否达标(下限值分别是7.5dbm、10.0 dbm、24.0 dbm)。
当仪器没有测到值时程序会弹出‘GET TO PDMPOWER’提示,如果只是值差一些则会报具体哪一个功率级测试不过,测试值是多少。
->W12000 BC1_LinFreComR0_0: 1.58 -2.00 6.50->W12000 BC1_LinFreComR0_15: -1.13 -2.00 6.50->W12001 BC1_LinFreComR1_0: 8.62 3.50 12.50->W12001 BC1_LinFreComR1_15: 5.07 3.50 12.50->W12003 BC1_LinFreComR3_0: 11.21 7.50 16.50->W12003 BC1_LinFreComR3_15: 9.71 7.50 16.50BC1频段16个频点在Range0、1、3功率级上的线性比较补偿校准,这部分校准多在试产时匹配或参数没调好而出现错误,量产时则很少。
->W14001 BC1_RxCompDVGAOffset_0: 204.00 110.00 350.00->W14001 BC1_RxCompDVGAOffset_15: 200.00 110.00 350.00BC1频段16个频点在一个固定的接收强度下接收放大器工作的数值计算->W14002 BC1_RxCompLNAR1Offset_0: 310.00 0.00 375.00->W14002 BC1_RxCompLNAR1Offset_15: 300.00 0.00 375.00->W14003 BC1_RxCompLNAR2Offset_0: 478.00 300.00 550.00 ->W14003 BC1_RxCompLNAR2Offset_15: 472.00 300.00 550.00 ->W14003 BC1_RxCompLNAR3Offset_0: 645.00 450.00 720.00 ->W14003 BC1_RxCompLNAR3Offset_15: 635.00 450.00 720.00 BC1频段16个频点在三个接收强度下的线性偏移补偿校准其它WCDMA频段的校准过程是一样的,参考BC1。
-> Enter Mode GSM850_TX->G11001 GSM850_TXPOWERMax: 33.72 32.00 -- ->G11002 GSM850_TXPOWERMin: -22.68 -- -17.00 -> Tx Power Calibration F1->G11001 GSM850_TXPOWERMax: 33.89 32.00 -- ->G11002 GSM850_TXPOWERMin: -22.48 -- -17.00 -> Tx Power Calibration F2GSM850频段最大和最小功率校准,F1和F2分别是最小信道数和最大信道数。
其它GSM三个频段测试都相同。
-> Enter Mode GSM850_RX->G12000 GSM850_RxGainOffset0_0: 2230.00 1800.00 2500.00 ->G12000 GSM850_RxGainOffset0_7: 2250.00 1800.00 2500.00 ->G12001 GSM850_RxGainOffset1_0: 2007.00 1600.00 2400.00 ->G12001 GSM850_RxGainOffset1_7: 2027.00 1600.00 2400.00 ->G12002 GSM850_RxGainOffset1_0: 1719.00 1300.00 2000.00 ->G12002 GSM850_RxGainOffset1_7: 1740.00 1300.00 2000.00 ->G12003 GSM850_RxGainOffset1_0: 1535.00 1100.00 1900.00 ->G12003 GSM850_RxGainOffset1_7: 1553.00 1100.00 1900.00->G12003 GSM850_RxGainOffset1_0: 1249.00 1100.00 1900.00->G12003 GSM850_RxGainOffset1_7: 1265.00 1100.00 1900.00GSM850频段8个频点在5个接收信号强度下增益调整偏移量校准。
其它GSM三个频段测试都相同,但DCS和PCS频段会取16个频点测试。
->B10001 G-Sensor P P P PASS ->B10003 E-Sensor P P P PASSL-Sensor P P P PASSFM P P P PASS此项是CPU识别外设的测试,CPU发出一个指令给外设然后接收到一个外设的响应信号就算识别到了外设。
但有些机型因为外设响应时间过长或软件原因,测试时不一定会全部测试,有些会屏蔽掉。
如果测试此项不良,可进入MAT测试来验证此项功能是否正常来判断程序是否误测。
三,终测分析(BT2):1.不读卡问题:高通平台的校准测试(BT1)是在工程测试模式(FTM)下进行的,在FTM模式下手机会把读卡和通讯功能关闭。
BT2测试是插卡的呼叫测试,手机只有在用户模式(online)下才读卡。
一般BT1测试完成后,程序会把手机从FTM模式转变成online模式。
BT2测试不读卡,可用QRCT工具查看手机的模式状态,还在FTM模式则返回BT1重新测试;在LPF或offline模式,用QRCT不能将模式转变成online,就要加LCD查看手机会不会被勾选成飞行模式。
2.测试不能建立呼叫连接问题:在手机是能读卡的前提下测试,开机后等待手机完全开启再尝试进行测试。
因为智能手机的开机过程较长,只是找到端口还不能保证手机的射频部分开启。
如遇到读卡但呼叫不上的问题,可等手机完全开启,再看仪器与手机是否建立连接来判断手机是否真的有问题;还是操作员过快点击测试连接而造成手机未完全开启,测试延时已过还未建立呼叫连接而造成的。
四,M AT测试:MAT各项测试的不良问题分析可参考维修指南,需要特别指出的是:由于智能机项目CPU与很多外接设备是通过I2C信号并行连接,如果其中连接的任何一个外设故障影响I2C线通讯不正常,则会造成I2C线上所连接的所有外设不能工作。
所以当遇到I2C线连接部分功能不正常时,请一并检查其他I2C连接设备的功能,这样才能找到问题的真正原因。