高通 MSM8K bootloader之一: SBL1】的更多相关文章

一. MSM8K Boot Flow 图1: 高通MSM8K平台bootloader启动流程基本类似,但具体各平台,比如MSM8974.MSM8916.MSM8994等,会有微小区别. 从上图,可以看出高通8K平台的boot过程非常不一般啊.相比MTK平台,或者高通7K平台,复杂了非常多. 下图是高通文档对启动流程的说明, 已经很清楚了,我这边就直接贴出来啦. 图2: 系统上电后从RPM PBL启动到 APPS PBL 然后SBL1 ,再启动APPSBL 等等,整个过程看似非常复杂,但其实很多代…
MSM8K Boot Flow  转自:http://www.cnblogs.com/liang123/p/6325257.html            http://blog.csdn.net/Fybon/article/details/37565227            http://blog.csdn.net/loongembedded/article/details/52356051 图1: 高通MSM8K平台bootloader启动流程基本类似,但具体各平台,比如MSM8974.…
前面说过高通平台,系统crash发生时,抓取crash ramdump非常重要,否则很难定位crash原因. 平台默认抓取ramdump的方法都有很强的局限性,如下: 1.PC端工具QPST提供的 Memory Debug Application工具. 局限性:完全信赖PC 2.sbl1将crash现场dump到外置sdcard.  boot_sd_ramdump.c 局限性:很多手机根本没有配置外置sdcard. 3.今天再看高通代码,还有种ram dump 方法,直接dump到raw par…
介绍了Android SurfaceFlinger层次以下的图形合成和显示系统,主要基于高通MSM8k MDP4x平台. 做为Android Display专题.SurfaceFlinger的详细介绍参见链接文章. Android GDI之SurfaceFlinger SurfaceFinger按英文翻译过来就是Surface投递者.SufaceFlinger的构成并不是太复杂,复杂的是他的客户端建构.SufaceFlinger主要功能是: )将Layers(Surfaces)内容的刷新到屏幕上…
本文转载自:http://blog.csdn.net/fang_first/article/details/49615631 ====================基本知识======================= LK是(L)ittle (K)ernel的缩写. 高通平台android普遍采用LK作为其bootloader,LK是一个开源项目.但是,LK只是整个系统的引导部分,所以它不是独立存在.LK是一个功能及其强大的bootloader,但现在只支持arm和x86平台. LK的一个显…
来公司上班现在已经整整一个月了,蔽人不才,能力有限,学习进度缓慢,不过也是有一点点的收获与心得,在这里写出来与大家分享,养成良好的记录习惯也免得后忘记. 不啰嗦了,开入正题.来公司一个月左右的时间,主要接触了高通android4.0和android2.3的LCD驱动,当然在bootloader下LCD的驱动我也调试的. (1) kernel 先来说一下kernel里LCD的移植,之前从来没有接触过LINUX里LCD的驱动,所以刚一开始我竟然连MIPI接口.LCDC接口这些最基本的都不知道,鄙视一…
本文转载自:http://www.itgo.me/a/x6305658852004979994/lcd%20qcom 来自 :http://blog.csdn.net/dacaozuo/article/details/7796476来公司上班现在已经整整一个月了,蔽人不才,能力有限,学习进度缓慢,不过也是有一点点的收获与心得,在这里写出来与大家分享,养成良好的记录习惯也免得后忘记. 不啰嗦了,开入正题.来公司一个月左右的时间,主要接触了高通android4.0和android2.3的LCD驱动,…
1.bootloader是什么? 简单地说,bootloader 就是在操作系统内核运行之前运行的一段小程序.通过这段小程序,我们可以初始化硬件设备.建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境. Android系统基于Linux,所以bootloader部分也是与传统的嵌入式设备上运行的Linux没有什么区别.由于除Google外的大部分Android厂商都没有提供bootloader的源代码,所以分析手机设备的bootloader…
====================基本知识=======================LK是(L)ittle (K)ernel的缩写.高通平台android普遍采用LK作为其bootloader,LK是一个开源项目.但是,LK只是整个系统的引导部分,所以它不是独立存在.LK是一个功能及其强大的bootloader,但现在只支持arm和x86平台.LK的一个显著的特点就是它实现了一个简单的线程机制(thread),和对高通处理器的深度定制和使用. 启动流程 1. 芯片上电复位到地址0, R…
此次移植打算分成两个模块来说,bootloader部分和kernel部分.在实际的移植调试过程中也是这么分成了两个部分分别调试. 高通平台中的bootloader叫做LK(Little Kernel,对于LCM来说LK部分相当重要,它不仅要负责开机部分的LCD显示任务,还要负责传参给kernel的LCM驱动,指导kernel选择合适的LCM参数. 1.LK中LCM启动流程 注:read_panel_id()和read_panel_id_ddr3()为私有添加,非高通库上代码. 在这个流程图中,需…
本文转载自:http://www.mobile-open.com/2016/970947.html 高通平台中的bootloader叫做LK(Little Kernel,对于LCM来说LK部分相当重要,它不仅要负责开机部分的LCD显示任务,还要负责传参给kernel的LCM驱动,指导kernel选择合适的LCM参数. 1.LK中LCM启动流程 注:read_panel_id()和read_panel_id_ddr3()为私有添加,非高通库上代码.   在这个流程图中,需要着重了解的有oem_pa…
一部分是开源的,可以从codeaurora.org上下载,还有一部分是高通产权的,需要从高通的网站上下载. 将高通产权的代码放到:vendor/qcom/proprietary 1. 设置bms一些参数 @msm-pm8226.dtsi中     pm8226_bms: qcom,bms{        qcom,low-soc-calculate-soc-threshold = <15>; //认为是低电压的soc(15%)        qcom,low-soc-calculate-soc…
转自:http://blog.csdn.net/radianceblau/article/details/73229005 http://www.aiuxian.com/article/p-1414261.html http://www.xuebuyuan.com/2209890.html 对于嵌入式工程师了解芯片启动过程是十分有必要的,在分析.调试各种问题的时候都有可能涉及到这方面的知识.同时这部分知识也是比较复杂的,因为其中涉及到芯片内部架构,启动各个阶段软件代码执行顺序,启动模式等等.下面…
原文网址:http://blog.csdn.net/dongwuming/article/details/12784535 1.高通平台android开发总结 1.1 搭建高通平台环境开发环境 在高通开发板上烧录文件系统 建立高通平台开发环境 高通平台,android和 modem 编译流程分析 高通平台 7620 启动流程分析 qcril 流程分析,设置sim卡锁 python scons 语法学习 Python 语言之 scons 工具流程分析: 1.2 搭建高通平台环境开发环境 高通and…
点击打开链接 1. repo init -u git://review.sonyericsson.net/platform/manifest -b volatile-jb-mr1-yangtze 2. https://wiki.sonyericsson.net/androiki/CN3-II/Bringup_Trail_FC34  如何编译3. https://wiki.sonyericsson.net/androiki/PLD_CM/Yangtze  如何编译和flash4. https://…
高通msm是Mobile Station Modem 的缩写,即移动基带工作站,是指带有基带芯片的移动处理器,实际就是基带内置的手机处理器(soc)系列. qsd是qualcomm snapdragon的缩写,只给了高通的第一批次scorpion架构处理器,只有qsd8250,qsd8650,qsd8250a,qsd850a使用,后来不再使用,也就是目前snapdragon--骁龙的称呼的来历,属于名誉性定名,用来纪念高通的第一批次的arm v7处理器. apq是ap only,即applica…
处理器信息 8994包含如下子系统: 子系统 处理器 含义 APSS 4*Cortex-A53 应用子系统 APSS 4*Cortex-A57 应用子系统 LPASS QDSP6 v5.5A(Hexagon) 低功耗音频子系统 RPM Cortex-M3 资源功耗管理子系统 Modem QDSP6 v5(Hexagon) 调制解调(基带)处理子系统 从上表中可以看出,8994包含应用处理子系统.资源功耗管理子系统.调制子系统.低功耗音频子系统.其中应用处理子系统由4个A53和4个A57组成, 资…
目录(?)[-] Kernel Space Display架构介绍 函数和数据结构介绍 函数和数据结构介绍 函数和数据结构介绍 数据流分析 初始化过程分析 User Space display接口 Kernel display接口 典型应用flow分析 介绍 Surface manager(surface flinger)简介 架构分析 流程分析 根据前面的介绍,surfaceflinger作为一个server process,上层的应用程序(作为client)通过Binder方式与其进行通信.…
高通方案的Android设备主要有以下几种开机模式,Android.EDL.Fastboot.Recovery和FFBM,其进入及退出的方式如下表. 开机模式 屏幕显示 冷启动 热启动 按键退出 命令退出 Android/Normal Android界面 按Power键 adb reboot 手机短按,VR长按Power键 adb shell reboot -p(关机) Recovery/OTA/卡刷 Recovery界面 按住OK键(Vol+),再按Power键 adb reboot reco…
一.下载源码 高通芯片代码下载地址:https://chipcode.qti.qualcomm.com/ . *_amss_standard_oem : 高通私有源码(*为sdm845-la--. *. CAF : 高通对应的谷歌源码 二.编译源码: 1.将高通私有部分源码拷贝到谷歌源码(caf)对应目录下: cp -rf amss_standard_oem/LINUX/android/vendor/qcom/proprietary caf/vendor/qcom/ 2.拷贝camx部分代码到对…
lk部分:(实现LCD兼容) 1. 函数定位 aboot_init()来到target_display_init(): 这就是高通原生lk LCD 兼容的关键所在.至于你需要兼容多少LCD 就在while()设置了,具体代码就不跟下去了. 然后根据target中的不同文件来判断是否进入哪一个函数来处理: target_display_init() 函数里有很重要函数就是gcdb_display_init(); 如果平台支持屏幕最大个数自动检测,msm8953支持兼容两个屏.(GCDB:Globa…
本文转载自:http://blog.csdn.net/zhangchiytu/article/details/6777039 高通7系列硬件架构分析 如上图,高通7系列 Display的硬件部分主要由下面几个部分组成: A.MDP 高通MSM7200A内部模块,主要负责显示数据的转换和部分图像处理功能理,如YUV转RGB,放大缩小.旋转等.MDP内部的MDP DMA负责数据从DDR到MDDI Host的传输(可以完成RGB之间的转换,如RGB565转成RGB666,这个转换工能载目前的code…
处理器信息 8994包括例如以下子系统: 子系统 处理器 含义 APSS 4*Cortex-A53 应用子系统 APSS 4*Cortex-A57 应用子系统 LPASS QDSP6 v5.5A(Hexagon) 低功耗音频子系统 RPM Cortex-M3 资源功耗管理子系统 Modem QDSP6 v5(Hexagon) 调制解调(基带)处理子系统 从上表中能够看出,8994包括应用处理子系统.资源功耗管理子系统.调制子系统.低功耗音频子系统.当中应用处理子系统由4个A53和4个A57组成.…
刷机工具安装 1. 安装QPST.WIN.2.7 Installer-00448.3 2. 安装python2.7,并配置其环境变量 刷机方法 1.将编译后的刷机文件拷贝到如下目录:SC20_CE_prebuilt_for_QFIL_Android7.1\LINUX\android\out\target\product\msm8909 注意保留原来文件夹里的splash.img文件 2.运行SC20_CE_prebuilt_for_QFIL_Android7.1文件及里的build.bat 3.…
本文转载自:http://www.voidcn.com/blog/u012296694/article/p-1669831.html 前言 8926平台的sensor架构与之前的平台完全不同,实际上已经脱离了linux.此平台所有的sensor由adsp芯片控制,代码在modem端,编译和烧录也完全不同,下面以TSL2581为例进行说明. 一. 驱动 集成光传感器TSL2581     1. 驱动程序结构可以参考高通默认的光感驱动文件sns_dd_als_bh1721.c或sns_dd_als_…
一.AR概念: 增强现实(Augmented Reality,简称AR),是在虚拟现实的基础上发展起来的新技术,也被称之为混合现实.是通过计算机系统提供的信息增加用户对现实世界感知的技术,将虚拟的信息应用到真实世界,并将计算机生成的虚拟物体.场景或系统提示信息叠加到真实场景中,从而实现对现实的增强. 二.工具: 在这里我们主要是用高通的Vuforia SDK来演示如何在Unity下制作一个简单的AR的demo,Vuforia SDK是一套很完整的可以直接调用的AR API,而假如想深入了解SDK…
很简单就可以用Unity3D做出增强现实的一个小例子 新人第一次写博客,若出现错误望指正^_^ 需要下载de东西: unity3d 5.0 http://unity3d.com/get-unity  下的personal edition(免费版) 先注册了一个unity的账号的说(免费的也能用,就没去找破解版的...) vuforia sdk4.0 https://developer.vuforia.com/downloads/sdk  这个也要注册,后边创建识别的图片也需要注册的,所以就不要偷…
最近工作上有碰到sensor的相关问题,正好分析下其流程作个笔记. 这个笔记分三个部分: sensor硬件和驱动的工作机制 sensor 上层app如何使用 从驱动到上层app这中间的流程是如何 Sensor硬件和驱动的工作机制 先看看Accerometer +Gyro Sensor的原理图: 总结起来分四个部分(电源,地,通信接口,中断脚).电源和地与平台和芯片本身有关系,与我们分析的没有多少关系,根据sensor的特性保证sensor正常工作的上电时序.关于通信接口,sensor与ap之间通…
高通AR和友盟SDK的AndroidManifest.xml合并 因为高通的AR在android中一开始就要启动,所有主Activity要设置为高通的Activity,即android:name="com.qualcomm.QCARUnityPlayer.QCARPlayerNativeActivity" 的主Activity. 在友盟的AndroidManifest.xml中删除主Activity,复制高通的主Activity和其他Activity,以及高通相关的权限. <?x…