[PATCH v11 4/8] usb: core: add power sequence handling for USB devices

Krzysztof Kozlowski krzk at kernel.org
Sat Jan 7 00:56:16 PST 2017


On Thu, Jan 05, 2017 at 02:01:55PM +0800, Peter Chen wrote:
> Some hard-wired USB devices need to do power sequence to let the
> device work normally, the typical power sequence like: enable USB
> PHY clock, toggle reset pin, etc. But current Linux USB driver
> lacks of such code to do it, it may cause some hard-wired USB devices
> works abnormal or can't be recognized by controller at all.
> 
> In this patch, it calls power sequence library APIs to finish
> the power sequence events. It will do power on sequence at hub's
> probe for all devices under this hub (includes root hub).
> At hub_disconnect, it will do power off sequence which is at powered
> on list.
> 
> Signed-off-by: Peter Chen <peter.chen at nxp.com>
> Tested-by Joshua Clayton <stillcompiling at gmail.com>
> Tested-by: Maciej S. Szmigiero <mail at maciej.szmigiero.name>
> Reviewed-by: Vaibhav Hiremath <hvaibhav.linux at gmail.com>
> ---
>  drivers/usb/Kconfig    |  1 +
>  drivers/usb/core/hub.c | 48 ++++++++++++++++++++++++++++++++++++++++++++----
>  drivers/usb/core/hub.h |  1 +
>  3 files changed, 46 insertions(+), 4 deletions(-)
> 

Acked-by: Krzysztof Kozlowski <krzk at kernel.org>
Tested on Odroid U3 (reset sequence for LAN9730):
Tested-by: Krzysztof Kozlowski <krzk at kernel.org>

Best regards,
Krzysztof



More information about the linux-arm-kernel mailing list