]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/commit
usb: musb: Don't set d+ high before enable for 2430 glue layer
authorTony Lindgren <tony@atomide.com>
Tue, 31 May 2016 15:05:18 +0000 (10:05 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 1 Jun 2016 21:58:59 +0000 (14:58 -0700)
commita118df07f5b19e4879fd67e98a69f4644136877f
treebe1957b313c86e348df77156e28d9826ee0933c0
parent4dc2fe7a94d07c6148eea5722e23d4c1dbecc9e3
usb: musb: Don't set d+ high before enable for 2430 glue layer

At least 2430 glue layer pulls d+ high on start up even if there are
no gadgets configured. This is bad at least for anything using a separate
battery charger chip as it can confuse the charger detection.

Let's fix the issue by removing the bogus glue layer code tinkering
with the SESSION bit. As pointed out Bin Liu <b-liu@ti.com> and
Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>, the SESSION
bit just starts host mode if ID pin is grounded, and starts the
srp is ID pin is floating. So without the ID pin changing, it's
unable to force musb mode to anything. And just for starting a
host mode, things work fine without this code.

Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Bin Liu <b-liu@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/musb/omap2430.c