高通CP Crash分析调试】的更多相关文章

1. 转换tlcore文件 获取 EBICS0.BIN tl2elf --qconly tlcore 2.使用T32 命令把Riva的dump信息从EBICS0文件分离出来 data.load.BINARY EBICS0.BIN 0x80000000  d.SAVE.BINARY wcn0.bin 0x8f000000++0x700000 3. 使用UltraEditor打开bin文件 搜索关键字:ERR crash log report 就能得到出现问题的文件和错误的代码行…
之前一段时间有幸在高通android平台上调试2款camera sensor,一款是OV的5M YUV sensor,支持jpeg out,同时也支持AF,调试比较比较简单,因为别的项目已经在使用了,只是把相关的驱动移植过来就好:另一款是Samsung的一款比较新的3M YUV FF sensor,在最新项目中要使用的,本文以调试该sensor为例,从底层驱动的角度分享一下高通android平台下调试camera的经验,而对于高通平台camera部分的架构以及原理不做过多的介绍. 一.准备工作…
一.概述 1.1 简介 本文档主要包括LCD模块的驱动流程分析.Framebuffer相关知识.Gralloc等相关内容,以及LCD调试的一些经验和相关bug的分析和讲解. 1.2  开发环境 Android:4.0 Kernel: Linux3.0 Ubuntu:需要 10.04以及之后的版本 Gcc: 4.4.3 toolchain 1.3  硬件平台 Msm8x25,pmic(pm8029) 1.4  操作系统 Android:4.0,  Kernel: 3.0 1.5  开发工具 VIM…
本文转载自: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…
高通在MSM8998上引入了UEFI,用来代替LK(Little Kernel).高通UEFI由XBL和ABL两部分组成.XBL负责芯片驱动及充电等核心应用功能.ABL包括芯片无关的应用如fastboot.XBL核心是none-HLOS boot_image代码的一部分,属于高通私有代码.ABL则在开源Linux Android代码树里.LK的设备驱动都放在了XBL核心,Linux加载启动及fastboot等功能组件则作为独立的UEFI应用存在.有关UEFI.XBL及ABL的详细介绍,请参见高通…
本文转载自:http://blog.csdn.net/liwei16611/article/details/53955711 1.Sensor slave配置 结构体msm_camera_sensor_slave_info定义在media/msm_cam_sensor.h中: struct msm_camera_sensor_slave_info {char sensor_name[32];              //sensor名称char eeprom_name[32];        …
本文转载自:http://blog.csdn.net/gabbzang/article/details/12063031 http://blog.csdn.NET/dwyane_zhang/article/details/6775738 没事做整理一下GPS的流程,也算给自己一个交代. 1.硬件抽象层: 高通MSM的硬件层代码在:hardware/qcom/gps/loc_api下,高通的GPS集成在baseband侧,与Modem部分一样,同样是基于share Memory上高通自有的RPC协…
来公司上班现在已经整整一个月了,蔽人不才,能力有限,学习进度缓慢,不过也是有一点点的收获与心得,在这里写出来与大家分享,养成良好的记录习惯也免得后忘记. 不啰嗦了,开入正题.来公司一个月左右的时间,主要接触了高通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驱动,…
目录(?)[-] Kernel Space Display架构介绍 函数和数据结构介绍 函数和数据结构介绍 函数和数据结构介绍 数据流分析 初始化过程分析 User Space display接口 Kernel display接口 典型应用flow分析 介绍 Surface manager(surface flinger)简介 架构分析 流程分析 根据前面的介绍,surfaceflinger作为一个server process,上层的应用程序(作为client)通过Binder方式与其进行通信.…
1.bootloader是什么? 简单地说,bootloader 就是在操作系统内核运行之前运行的一段小程序.通过这段小程序,我们可以初始化硬件设备.建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境. Android系统基于Linux,所以bootloader部分也是与传统的嵌入式设备上运行的Linux没有什么区别.由于除Google外的大部分Android厂商都没有提供bootloader的源代码,所以分析手机设备的bootloader…
http://blog.csdn.net/mike8825/article/details/69489865?locationnum=3&fps=1 1.DTS相应修改: DTS相关代码:kernel/arch/arm/boot/dts/qcom/msm8909-qrd-skuc.dtsi: sound { compatible = "qcom,msm8x16-audio-codec"; qcom,model = "msm8909-skuc-snd-card"…
lk SPI驱动 1. 初始化时钟 在lk中,我们是从kmain开始执行下来的,而执行顺序则是先初始化时钟,也就是在platform_early_init函数中开始执行的: 在这里我们需要修改这个函数中的platform_clock_init();,我们来这里看这个函数,平台为msm8909: void platform_clock_init(void) { clk_init(msm_clocks_msm8909, ARRAY_SIZE(msm_clocks_msm8909)); } msm_c…
高通相关网址:Createpoint: https://createpoint.qti.qualcomm.com(可下载文档,Release Note等)Chipcode: https://chipcode.qti.qualcomm.com(下载私有代码)开源代码: https://www.codeaurora.org/xwiki/bin/QAEP/release(下载开源代码)Case和文档: https://support.cdmatech.com(Case,文档,工具等) 调试平台信息:[…
高通 sensor 从native到HAL 高通HAL层之Sensor HAL 高通HAL层之bmp18x.cpp 问题现象: 当休眠后,再次打开preesure sensor的时候,会出现隔一段时候后,APK才会出现数据:(数据有时候会很难出现) 问题分析: 从上面几节中,我们可以知道,framework到HAL是通过调用sensors.msm8909.so调用到函数PressureSensor::readEvents中取出的: int PressureSensor::readEvents(s…
http://mobile.pconline.com.cn/337/3379352.html [PConline 杂谈]如果你向朋友请教买一台怎样的台式机或者笔记本的话,很多时候那朋友会根据你对电脑的使用需求而作一个性能划分,如“你只是需要处理一些简单的文档,对游戏的要求也并不高,选择Intel i3的处理器就已经足够了.”这里虽然有为Intel做广告之嫌,但Intel这么多年来对i系列处理器的深耕,效果在这里就显示出来. 高通与MTK瓜分天下?手机处理器品牌分析 以上的话题好像与本文关于移动(…
1 QC 2.0 1.1 高通Quick Charge 2.0 高速充电原理分析 高通的QC2.0高速充电须要手机端和充电器都要支持才行. 当将充电器端通过数据线连到手机上时,充电器默认的是将D+和D-短接的,这样手机端探測充电器类型是DCP(參见本人还有一篇博文<高通平台USB2.0和3.0接口充电器识别原理>).手机以默认的5V电压充电,接着步骤例如以下: 1) 假设手机端使能了高速充电协议.Android用户空间的hvdcp(high voltage dedicated charger…
本文转载自:https://blog.csdn.net/radianceblau/article/details/73498303 本系列导航: linux驱动由浅入深系列:高通sensor架构实例分析之一(整体概览+AP侧代码分析) linux驱动由浅入深系列:高通sensor架构实例分析之二(adsp驱动代码结构)Linux驱动由浅入深系列:高通sensor架构实例分析之三(adsp上报数据详解.校准流程详解) 上一篇文章中我们了解了高通sensor的整体架构及对AP侧的代码进行了分析,这篇…
本文转载自:https://blog.csdn.net/radianceblau/article/details/76180915 本系列导航: linux驱动由浅入深系列:高通sensor架构实例分析之一(整体概览+AP侧代码分析) linux驱动由浅入深系列:高通sensor架构实例分析之二(adsp驱动代码结构)linux驱动由浅入深系列:高通sensor架构实例分析之三(adsp上报数据详解.校准流程详解) 从adsp获取数据的方法分为同步.异步两种方式,但一般在实际使用中使用异步方式,…
一.HVX简介 HVX(“Hexagon矢量扩展”,Hexagon-六边形.Vector-矢量.Extensions-扩展)是Hexagon 680 DSP的典型特性,能够在执行图像处理应用中的计算负载当中发挥重要作用,比如虚拟现实.增强现实.图像处理.视频处理.计算视觉等.此前这些任务均是由CPU或GPU来执行,如今交给Hexagon 680 DSP,能够达到更加高效.功耗更低的效果. HVX之所以这么重要是因为它能比CPU处理像素的速度更快,CPU只能在同一时间处理1个或2个像素.但有了HV…
本文转载自:http://www.voidcn.com/blog/Winva/article/p-6044730.html 4.3. Camera 参考文档: 1) 80-NA157-22_PRESENTATION- MSM8974-APQ8074-MSM8X26-APQ8084 LINUX CAMERA OVERVIEW.pdf 2) 80-NE717-1_MSM8974-APQ8074-MSM8X26 LINUX CAMERA SOFTWARE DESIGN DOCUMENT.pdf 3)…
原文网址:http://blog.csdn.net/dongwuming/article/details/12784535 1.高通平台android开发总结 1.1 搭建高通平台环境开发环境 在高通开发板上烧录文件系统 建立高通平台开发环境 高通平台,android和 modem 编译流程分析 高通平台 7620 启动流程分析 qcril 流程分析,设置sim卡锁 python scons 语法学习 Python 语言之 scons 工具流程分析: 1.2 搭建高通平台环境开发环境 高通and…
一. 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.…
====================基本知识=======================LK是(L)ittle (K)ernel的缩写.高通平台android普遍采用LK作为其bootloader,LK是一个开源项目.但是,LK只是整个系统的引导部分,所以它不是独立存在.LK是一个功能及其强大的bootloader,但现在只支持arm和x86平台.LK的一个显著的特点就是它实现了一个简单的线程机制(thread),和对高通处理器的深度定制和使用. 启动流程 1. 芯片上电复位到地址0, R…
转自:http://blog.csdn.net/radianceblau/article/details/73229005 http://www.aiuxian.com/article/p-1414261.html http://www.xuebuyuan.com/2209890.html 对于嵌入式工程师了解芯片启动过程是十分有必要的,在分析.调试各种问题的时候都有可能涉及到这方面的知识.同时这部分知识也是比较复杂的,因为其中涉及到芯片内部架构,启动各个阶段软件代码执行顺序,启动模式等等.下面…
本文转载自:http://blog.xeonxu.info/blog/2012/12/04/zai-gao-tong-ping-tai-androidhuan-jing-xia-bian-yi-nei-he-mo-kuai/ 高通Android环境中Linux内核会作为Android的一部分进行编译,直接使用make即可一次性从头编到尾.而有的平台比如Marvell,内核的编译操作相对比较独立,必须使用标准的内核编译命令进行单独编译.一般来说,用高通的这种方式比较傻瓜化,一步到底的感觉:而用Ma…
本文转载自:http://blog.sina.com.cn/s/blog_c0de2be70102vyn1.html 1  camera基本代码架构 高通平台对于camera的代码组织,大体上还是遵循Android的框架:即上层应用和HAL层交互,高通平台在HAL层里面实现自己的一套管理策略:在kernel中实现sensor的底层驱动.但是,对于最核心的sensor端的底层设置.ISP效果相关等代码则是单独进行了抽离,放在了一个 daemon进程中进行管理: 图1 Qualcomm平台camer…
PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明   本文作为本人csdn blog的主站的备份.(BlogID=117) 环境说明 高通865 android盒子 Hexagon_SDK 前言   由于业务需求,我们需要展示高通865的cpu/gpu/dsp的使用率,其中cpu/gpu是非常简单的.但是对于dsp来说,我找了许久,才发现了一点点端倪,下面就是这一部分成果. 高通cDSP使用率查询   要实现高…
最近工作上有碰到sensor的相关问题,正好分析下其流程作个笔记. 这个笔记分三个部分: sensor硬件和驱动的工作机制 sensor 上层app如何使用 从驱动到上层app这中间的流程是如何 Sensor硬件和驱动的工作机制 先看看Accerometer +Gyro Sensor的原理图: 总结起来分四个部分(电源,地,通信接口,中断脚).电源和地与平台和芯片本身有关系,与我们分析的没有多少关系,根据sensor的特性保证sensor正常工作的上电时序.关于通信接口,sensor与ap之间通…