展锐拔插usb不识别问题实操

本文档记录了在展锐设备上遇到的USB识别问题,表现为快速拔插后设备无法正常识别。通过分析日志和硬件行为,怀疑问题可能由硬件中断频繁触发及上层软件未正确响应引起。测试表明,过快的拔插速度可能导致USB识别混乱,而插入OTG有时能恢复,但并不总是有效。对比测试显示,问题与USB接口类型和拔插速度有关,而非软件bug。
摘要由CSDN通过智能技术生成

问题:

测试做压力测试复现工厂偶现usb不识别问题,插入usb没有任何反应,插入otg后,有时候能恢复,有时候不能恢复。

14:31:31.898] init: processing action (sys.usb.config=mtp && sys.usb.configfs=1) from (/system/etc/init/hw/init.usb.configfs.rc:26)
    行 3829: 00EF4 <14> [252595.898666] c2[02-14 14:31:31.898] init: processing action (sys.usb.config=mtp && sys.usb.configfs=1) from (/system/etc/init/hw/init.usb.configfs.rc:26)
    行 3830: 00EF5 <14> [252595.900566] c2[02-14 14:31:31.900] init: Command 'symlink /config/usb_gadget/g1/functions/mtp.gs0 /config/usb_gadget/g1/configs/b.1/f1' action=sys.usb.config=mtp && sys.usb.configfs=1 (/system/etc/init/hw/init.usb.configfs.rc:28) took 0ms and failed: symlink() failed: File exists
    行 3830: 00EF5 <14> [252595.900566] c2[02-14 14:31:31.900] init: Command 'symlink /config/usb_gadget/g1/functions/mtp.gs0 /config/usb_gadget/g1/configs/b.1/f1' action=sys.usb.config=mtp && sys.usb.configfs=1 (/system/etc/init/hw/init.usb.configfs.rc:28) took 0ms and failed: symlink() failed: File exists
    行 3830: 00EF5 <14> [252595.900566] c2[02-14 14:31:31.900] init: Command 'symlink /config/usb_gadget/g1/functions/mtp.gs0 /config/usb_gadget/g1/configs/b.1/f1' action=sys.usb.config=mtp && sys.usb.configfs=1 (/system/etc/init/hw/init.usb.configfs.rc:28) took 0ms and failed: symlink() failed: File exists
    行 3830: 00EF5 <14> [252595.900566] c2[02-14 14:31:31.900] init: Command 'symlink /config/usb_gadget/g1/functions/mtp.gs0 /config/usb_gadget/g1/configs/b.1/f1' action=sys.usb.config=mtp && sys.usb.configfs=1 (/system/etc/init/hw/init.usb.configfs.rc:28) took 0ms and failed: symlink() failed: File exists
    行 3830: 00EF5 <14> [252595.900566] c2[02-14 14:31:31.900] init: Command 'symlink /config/usb_gadget/g1/functions/mtp.gs0 /config/usb_gadget/g1/configs/b.1/f1' action=sys.usb.config=mtp && sys.usb.configfs=1 (/system/etc/init/hw/init.usb.configfs.rc:28) took 0ms and failed: symlink() failed: File exists
    行 3831: 00EF6 <14> [252595.901330] c2[02-14 14:31:31.901] init: Command 'write /config/usb_gadget/g1/UDC ${sys.usb.controller}' action=sys.usb.config=mtp && sys.usb.configfs=1 (/system/etc/init/hw/init.usb.configfs.rc:29) took 0ms and failed: Unable to write to file '/config/usb_gadget/g1/UDC': Unable to write file contents: Device or resource busy
    行 3831: 00EF6 <14> [252595.901330] c2[02-14 14:31:31.901] init: Command 'write /config/usb_gadget/g1/UDC ${sys.usb.controller}' action=sys.usb.config=mtp && sys.usb.configfs=1 (/system/etc/init/hw/init.usb.configfs.rc:29) took 0ms and failed: Unable to write to file '/config/usb_gadget/g1/UDC': Unable to write file contents: Device or resource busy
    行 3831: 00EF6 <14> [252595.901330] c2[02-14 14:31:31.901] init: Command 'write /config/usb_gadget/g1/UDC ${sys.usb.controller}' action=sys.usb.config=mtp && sys.usb.configfs=1 (/system/etc/init/hw/init.usb.configfs.rc:29) took 0ms and failed: Unable to write to file '/config/usb_gadget/g1/UDC': Unable to write file contents: Device or resource busy
    行 3831: 00EF6 <14> [252595.901330] c2[02-14 14:31:31.901] init: Command 'write /config/usb_gadget/g1/UDC ${sys.usb.controller}' action=sys.usb.config=mtp && sys.usb.configfs=1 (/system/etc/init/hw/init.usb.configfs.rc:29) took 0ms and failed: Unable to write to file '/config/usb_gadget/g1/UDC': Unable to write file contents: Device or resource busy
    行 3831: 00EF6 <14> [252595.901330] c2[02-14 14:31:31.901] init: Command 'write /config/usb_gadget

分析:

1、搜索ylog种的usb,发现能正常识别的都有init write的动作

init: processing action (sys.usb.config=mtp && sys.usb.configfs=1) from (/system/etc/init/hw/init.usb.configfs.rc:26)

但是fail都没有,只有 evice connection detected from VBUS GPIO.

01397 <6> [252614.081890] c0[02-14 14:31:51.081] musb-sprd 20200000.usb: device connection detected from VBUS GPIO.
01398 <6> [252614.129517] c0[02-14 14:31:51.129] musb-sprd 20200000.usb: device disconnect detected from VBUS GPIO.
01399 <6> [252615.004784] c0[02-14 14:31:52.004] musb-sprd 20200000.usb: device connection detected from VBUS GPIO.

怀疑是上层没有写这个属性,或者init进程失效。

2、展锐回复是拔插太快,几百ms触发一次中断,怀疑是硬件问题

行 5016: 01397 <6> [252614.081890] c0[02-14 14:31:51.081] musb-sprd 20200000.usb: device connection detected from VBUS GPIO.
    行 5016: 01397 <6> [252614.081890] c0[02-14 14:31:51.081] musb-sprd 20200000.usb: device connection detected from VBUS GPIO.
    行 5017: 01398 <6> [252614.129517] c0[02-14 14:31:51.129] musb-sprd 20200000.usb: device disconnect detected from VBUS GPIO.
    行 5017: 01398 <6> [252614.129517] c0[02-14 14:31:51.129] musb-sprd 20200000.usb: device disconnect detected from VBUS GPIO.
    行 5018: 01399 <6> [252615.004784] c0[02-14 14:31:52.004] musb-sprd 20200000.usb: device connection detected from VBUS GPIO.
    行 5018: 01399 <6> [252615.004784] c0[02-14 14:31:52.004] musb-sprd 20200000.usb: device connection detected from VBUS GPIO.

3、看到 connection 和 disconnect是成对出现的,并且时间间隔只有300-500ms,这个时间是非常短,咨询测试人员才知道是故意这样做的压力测试。判定为时间太多,导致usb识别混乱导致。

插入otg后会重新识别,但如果太过混乱,也会导致不能恢复成功。

4、用对比机对比测试验证,我们机器是type c,可以比较容易快速拔插。但是对比机是micro,因为有个倒扣导致拔出比较紧,比较困难,导致拔插频率不够,复测未出现。

5、把扣子压平,打开win电脑主机,多次快速拔插usb,4-8个轮回复现问题。

对比机也存在这个现象,属于操作手法问题,并非软件问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值