高通平台:USB充电【转】
USB Battery Charging V1.2 Specification 定义了USB充电器的类型或者叫做充电源。
1. 支持的充电器类型
1.1 Standard Downstream Port(SDP)
这种USB端口存在于主机PC中,这个是与USB的规格书一致的。
当一个USB外设接到SDP端口上的时候,有下列几种情况:
- 当总线挂起的时候电流应该小于2.5mA.
- 如果总线没有挂起并且没有配置,或者连接到一个总线供电的hub上,电流应该小于100ma
- 如果总线没有挂起且配置好了,电流应该小于等于200ma。
1.2 DCP 或者叫做wall charger
这些充电端口可以供应高达1500ma的电流给移动设备充电。
然而这些DCP端口不支持通过USB接口进行数据传输。
电池充电规格书定义了数据线应该被短接在这种DCP情况下。
充电类型的检查依赖于这些数据线。
1.3 charging Dedicated Port (CDP)
CDP端口是一个在主机端的特殊端口,能够提供高达1500ma的电流,与此同时,可以枚举设备以供正常的USB使用。
1.4 Proprietary charger (专有的充电器)
这些适配器不像正常的标准充电器那样,短接数据线。他们有自己的组合,上拉或者下拉数据线。
1.5 Floated charger
这种类型的充电器被看做是不兼容的充电器类型。USB数据线没有短接并且是悬空的。
因此,与标准类型的充电器相比,当充电检测上拉或者下拉的时候,电压的范围将决定了,他不会
被识别成是DCP.
2 USB充电的架构
下面有几种配置给USB充电和充电器类型的检测。
- 基于外部充电芯片的充电器检测(SMB充电器检测)
- 内部的USB PHY充电器检测逻辑
基于USB PHY的充电子系统有以下一些基本模块:
- USB core负责让OTG driver知道充电器的连接。
- 高通平台的电池充电是被PMIC或者外部的充电芯片所控制。它必须知到充电器类型和最大充电电流。
- 原生的电池驱动直接与PMIC进行交互。这个驱动通知PMIC开始使用USB VBUS进行充电并且指明可以获取的最大的电流。
PS:这里的电池驱动估计说的不对,或者我自己理解有误,从代码上看应该是USB的驱动检测到充电器类型之后,把这一信息通知给PMIC.
3 充电检测算法
在通用的充电器检测模型中,提到了几个阶段:
- Data Contact Detect(DCD)—— 这个是硬件块使用的,用来帮助检测当USB数据线与pin脚连接起来。
- Primary detection - 这个阶段用来区分是连接在了主机上面还是或者是一个大电流的设备上面。(SDP VS DCP/CDP)
- Secondary detection - 这个最终阶段,决定了是连接到了DCP 还是CDP。
高通平台:USB充电【转】的更多相关文章
- 【转】高通平台android 环境配置编译及开发经验总结
原文网址:http://blog.csdn.net/dongwuming/article/details/12784535 1.高通平台android开发总结 1.1 搭建高通平台环境开发环境 在高通 ...
- 高通平台的bootloader过程【转】
====================基本知识=======================LK是(L)ittle (K)ernel的缩写.高通平台android普遍采用LK作为其bootloade ...
- 高通平台Bootloader启动流程【转】
本文转载自:http://blog.csdn.net/fang_first/article/details/49615631 ====================基本知识============= ...
- [修改高通平台WIFI MAC 地址] & [adb over wifi]
[修改高通平台WIFI MAC 地址]fccmd --helpfccmd startfccmd getwifimacfccmd setwifimac 74:AC:5F:F5:D7:40 [adb ov ...
- 高通平台 lcd driver 调试小结
一.概述 1.1 简介 本文档主要包括LCD模块的驱动流程分析.Framebuffer相关知识.Gralloc等相关内容,以及LCD调试的一些经验和相关bug的分析和讲解. 1.2 开发环境 And ...
- 高通平台msm8909 LK 实现LCD 兼容
前段时间小米出现红米note2 换屏门,现在我们公司也要上演了:有两个供应商提供不同IC 的LCD panel. 软件区分的办法是读取LCD IC 的ID 寄存器,下面解析高通平台LK中LCD兼容的过 ...
- android 6.0 高通平台sensor 工作机制及流程(原创)
最近工作上有碰到sensor的相关问题,正好分析下其流程作个笔记. 这个笔记分三个部分: sensor硬件和驱动的工作机制 sensor 上层app如何使用 从驱动到上层app这中间的流程是如何 Se ...
- 高通平台MSM8916LCM模块移植(一)-bootloader部分
此次移植打算分成两个模块来说,bootloader部分和kernel部分.在实际的移植调试过程中也是这么分成了两个部分分别调试. 高通平台中的bootloader叫做LK(Little Kernel, ...
- Android : 高通平台Camera调试之SetpropKey/camxoverridesettings.txt
高通相关网址:Createpoint: https://createpoint.qti.qualcomm.com(可下载文档,Release Note等)Chipcode: https://chipc ...
随机推荐
- luoguP4449 于神之怒加强版
题意 默认\(n\leqslant m\). 一波莫反后可得: \(\sum\limits_{T=1}^{n}\frac{n}{T}\frac{m}{T}\sum\limits_{d|T}d^k\mu ...
- Android组件体系之Activity启动模式解析
本文主要分析Activity的启动模式及使用场景. 一.Activity启动模式浅析 1.standard 标准模式,系统默认的启动模式.在启动Activity时,系统总是创建一个新的Activity ...
- 编译Netty源码遇到的一些问题-缺少io.netty.util.collection包
缺少包和java类 下载好Netty的源码后,导入到IDE,运行自带的example时编译不通过. 如下图,是因为io.netty.util.collection的包没有 点进去看,确实没有这个包 发 ...
- 浅析JNDI注入Bypass
之前在Veracode的这篇博客中https://www.veracode.com/blog/research/exploiting-jndi-injections-java看到对于JDK 1.8.0 ...
- What happened when new an object in JVM ?
原文链接:https://www.javaspring.net/java/what-happened-when-new-an-object-in-jvm I. Introduction As you ...
- Dynamics 365-当OrganizationServiceProxy是Null的时候
不少从事D365研发工作的朋友,可能或多或少都经历过这么一种情况,使用CrmServiceClient对象初始化一个实例,然后发现OrganizationServiceProxy对象是null.不仅如 ...
- arcgis api 4.x for js 自定义叠加图片图层实现地图叠加图片展示(附源码下载)
前言 关于本篇功能实现用到的 api 涉及类看不懂的,请参照 esri 官网的 arcgis api 4.x for js:esri 官网 api,里面详细的介绍 arcgis api 4.x 各个类 ...
- android sdk tools里找不到draw9patch.bat 如何制作.9.png 格式图片
1.什么是.9.png格式 .9.png格式的图片可以在安卓平台指定拉伸区域,防止图片失真,一般用作背景图. 2.前提 最近项目中要用到.9.png格式图片,想着这个简单使用draw9patch.ba ...
- tp、tftp、nfs--服务器搭建
服务器 1. ftp服务器 1.1检查是否安装 vsftpd -version 1.2 安装 sudo apt-get install vsftpd 1.3卸载 sudo apt-get remove ...
- Oracle 11g Dataguard参数详解
https://www.jb51.net/article/52269.htm注:本文译自<Oracle Data Guard 11g Handbook> Page 78 – Page 88 ...