【笔记】Android系统sys.usb.configfs的配置说明

1.sys.usb.configfs
该属性默认为0,通过判断kernel是否支持configfs,即判断/config/usb_gadget存在设置为1.代码在init.qcom.usb.sh中(高通平台下)。
2.sys.usb.ffs.ready
当sys.usb.config设置为none时,设置sys.usb.ffs.ready为0.
每次设置的属性有adb时,会先start adbd。
如sys.usb.config=mtp,adb时,在init.usb.configfs.rc中有如下代码:

sys.usb.config=mtp,adb && sys.usb.configfs=1
start adbd

然后在system/core/adb/daemon/main.cpp中,会调用usb_init,进而调用system/core/adb/daemon/usb.cpp的usb_ffs_open_thread()函数中,然后调用init_functionfs()初始化该属性为1.只有sys.usb.ffs.ready=1时,才能开启adb端口。

3. sys.usb.ffs.mtp.ready
当设置为none时,设置sys.usb.ffs.mtp.ready为0.
android O新增,当功能为mtp或者ptp时,在 trySetEnableFuntction()函数中会先发送一次广播给mtpReceiver,
1) 给数据库添加mtp_connected;
2) 调用mtpServer.configure(),最后调用mtpServer.cpp设置sys.usb.ffs.mtp.ready属性为1,才能响应on property:sys.usb.config=mtp(ptp也是).
然后收到kernel发送的uevent后,再发一次广播。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值