]> git.baikalelectronics.ru Git - 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)
commit2e30ba1523545b1cd3444d8854a6234d2b258bb4
treebe1957b313c86e348df77156e28d9826ee0933c0
parent1a60737a7dcffc4cc85df08a1f12e2c77fad41b0
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