1. usb remote wake up
我们也看过相关资料没找到am437x usb remote wake up相关的说明,我们看到网上有am335x usb remote wake up相关说明,网址如下:
https://e2e.ti.com/support/arm/sitara_arm/f/791/t/272641
所以am437x应该修改下驱动也是支持的,由于sdk版本差异太大,无法按照上面的说明进行修改.
我们现在是直接把dwc3的休眠相关操作关了,虽然这样可以保证usb设备不会断开,但是相应的功耗会上升很多,因为我们设备是接电池的,所以对这个比较关心。
2. usb0经常会断开设备然后重新识别
同时我们把dwc3休眠相关操作去掉之后,测试发现如果我的usb 4g模块接am437x的usb1口休眠唤醒不会出现问题,但是如果接usb0口休眠唤醒会经常性断开后然后重新识别,
usb1和usb0 ID脚全都接地了 ,usb 4g模块在这个测试过程中usb0与usb1切换只有usb dp和usb dm进行了变换,其它的信号及电源都没有动过,
驱动中配制usb1不管是otg或者host模式都是正常的,但是usb0不管配制成otg还是host模式都是一样的现象经常会断开然后重新识别,
因为我们usb1最开始是用来作U盘启动用的,现在这个功能是已经ok了,如果再接一个usb 4g模块就会导致U盘启动不了.
我们现在使用的BSP是sdk 03.00.00.04
linux启动后不正常休眠唤醒
正常输出如下:

