一、先看OTG口USB的原理图,OTG控制器可以做host,也能做device,控制器的角色一般由USB ID电平来决定,会由个USB_OTG0_ID pin识别。
二、通过读取/sys/devices/platform/fe8a0000.usb2-phy/otg_mode的值就可以知道当前的状态。测试发现,接U盘的时候可以识别U盘,otg_mode的值是otg;连着PC机读机子的存储和连接adb的时候该值也是otg。设置为host的也可以识别U盘。
三、如果没有USB_OTG0_ID,可以用软件上写/sys/devices/platform/fe8a0000.usb2-phy/otg_mode的值就可以更改做host还是peripheral。
四、看一下底层的驱动