Re: [PATCH] usb-musb: keep VBUS on when device is disconnected

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2017-03-25 01:58, Bin Liu wrote:
On Wed, Mar 15, 2017 at 09:08:01AM -0500, Moreno Bartalucci wrote:
With usb-musb port in host mode, when the device
is disconnected, either logically (because of a mode switch) or
physically (by pulling the cable), the USB port should keep
suppling VBUS, with no interruption, to prevent power loss on
USB powered devices.

The usb device has been disconnected, why it still cares about VBUS
power?

Morphing devices (3G dongles, wifi dongles, some printers) boots up in install mode, usually only as a virtual cd-rom containing Windows drivers and software.
They get switched into functional mode by usb_modeswitch sending them
a ctrl msg which makes the device disappear from the USB bus for a very short time after which it re-appears with a different interface composition and mostly also a different USB Id.

Cutting the VBUS supply while these devices are in progress of switching will inhibit switching, the device will reboot when VBUS is again asserted and will come up in initial mode as if no switch ctrl msg had ever been sent to it.

The problem has been seen both on host only as well as dual-role port configs. Dual-role may be a bit more complicated to solve because of
the role switching VBUS detection circuit but I can not see any reason
why a host only configured port should cut the VBUS supply, it could be always on right?


/Lars




--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux