【高通平台USB模块】fastboot模式出端口流程介绍一
文章目录
-
-
- 一、recovery模式下端口
-
-
-
- 1. init.rc服务是开机自启的
-
- 2.recovery模式的端口
-
-
-
第二部分:Fast Boot模式下的端口出口配置
-
第3步:通过Fast Boot服务配置USB设备的初始参数
- 第4步:系统通过USB接口的配置文件向外部设备通知可用端口信息
-
总结
-
提示:以下是本篇文章正文内容,下面案例可供参考
一、recovery模式下端口
1. init.rc服务是开机自启的
进行服务修复操作时,请确保从系统根目录下的bin目录中执行指定命令。
对于socket的恢复处理,请关注连接到网络流媒体的第422个系统实例。
配置文件中将seclabel字段设置为u:r:recovery:s0。
在开发环境中运行 Recovery 功能模块时,请确保主程序入口函数名为 recovery_main.cpp。


进入recovery服务,会判断Property的信息
2.recovery模式的端口
Recovery模式的出口位置位于...中作为条件判断进行处理,在此条件下系统会记录sys USB配置文件中的端口类型信息
二,fastboot模式端口出口
Fastboot服务的定义
/system/core/fastboot/Android.bp

代码主要位于system/core/fastboot/device目录下,并已在其路径内进行相应的开发工作。
该服务通过以下路径进行定义:/bootable/recovery/etc/init.rc。
具体启动流程如下:
Recovery服务会检测当前系统是否处于fastboot模式,
当sys.usb.config属性被设置为fastboot时,
将自动执行/bootsrcs/fastboo ttriggerer等价于触发器,
并在此时触发sys.usb.config=fastboo t的初始化流程。


3.fastboot服务写ep0
Fastboot服务的主函数用于创建fastbootdevice对象,并通过监听和执行相关快 boot 命令来实现功能

Fastboot类的构造函数判断fastboot协议是否为USB或TCP,默认采用USB协议,并定义client_usb_transport对象

主要负责initfuncfs函数内部的工作:
首先配置reset ep0节点;随后设置块设备和字符串设备描述符;
将sys.usb.ffs.ready属性设置为有效状态;
完成ep1和ep2节点的重置过程


4.fastboot服务写sys.usb.config通知枚举端口
触发/system/etc/init/init.rc执行出口pid、vid
总结
例如:这就是我们今天重点讲述的内容,在本篇文章中我们主要涉及了高通平台fastboot出口流程的概述性介绍。欢迎各位深入学习并提出宝贵意见。
