linux-stable/drivers/usb/musb
Sebastian Andrzej Siewior 781f179830 usb: musb: am335x-evm: Do not remove the session bit HOST-only mode
This is what I observe:
On the first connect, the musb starts with DEVCTL.Session set. On
disconnect, musb_core calls try_idle. That functions removes the Session
bit signalizing that the session is over (something that only in OTG is
required). A new device, that is plugged, is no longer recognized.
I've setup a timer and checked the DEVCTL register and I haven't seen a
change in VBus and I saw the B-Device bit set. After setting the IDDIG
into A mode and forcing the device to behave like a A device, I didn't
see a change.
Neither VBUS goes to 0b11 nor does a session start request comes.
In the TI-v3.2 kernel they skip to call musb_platform_try_idle() in the
OTG_STATE_A_WAIT_BCON state while not in OTG mode.
Since the second port hast a standard A plug the patch changes the port
to run in host mode only and skips the timer which would remove
DEVCTL.Session so we can reconnect to another device later.

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Felipe Balbi <balbi@ti.com>
2013-08-27 14:18:41 -05:00
..
am35x.c Merge branch 'nop-phy-rename' into next 2013-08-09 17:31:23 +03:00
blackfin.c Merge branch 'nop-phy-rename' into next 2013-08-09 17:31:23 +03:00
blackfin.h
cppi_dma.c usb: musb: dma: merge ->start/stop into create/destroy 2013-07-29 13:53:18 +03:00
cppi_dma.h
da8xx.c Merge branch 'nop-phy-rename' into next 2013-08-09 17:31:23 +03:00
davinci.c Merge branch 'nop-phy-rename' into next 2013-08-09 17:31:23 +03:00
davinci.h
Kconfig usb: musb: dsps: make it depend on OF_IRQ 2013-08-12 14:01:14 -05:00
Makefile usb: musb dma: add cppi41 dma driver 2013-08-09 17:40:16 +03:00
musb_am335x.c usb: musb: dsps: use proper child nodes 2013-08-09 17:35:44 +03:00
musb_core.c usb: patches for v3.12 merge window 2013-08-13 15:28:01 -07:00
musb_core.h usb: musb: get rid of unused proc_dir_entry 2013-07-29 13:56:50 +03:00
musb_cppi41.c usb: musb: cppi41: fix missing unlock on error in cppi41_dma_callback() 2013-08-27 14:16:51 -05:00
musb_debug.h
musb_debugfs.c usb: remove use of __devinit 2012-11-21 13:27:16 -08:00
musb_dma.h usb: musb dma: add cppi41 dma driver 2013-08-09 17:40:16 +03:00
musb_dsps.c usb: musb: am335x-evm: Do not remove the session bit HOST-only mode 2013-08-27 14:18:41 -05:00
musb_gadget.c usb: musb: only remove host/udc if it has been added 2013-08-27 14:18:14 -05:00
musb_gadget.h usb: musb: add Kconfig options for HOST, GAGDET or DUAL_ROLE modes 2013-05-28 19:22:23 +03:00
musb_gadget_ep0.c usb: musb: gadget: read ep0 fifo only if rxcount is non zero 2013-04-02 11:42:50 +03:00
musb_host.c usb: musb: only remove host/udc if it has been added 2013-08-27 14:18:14 -05:00
musb_host.h usb: patches for v3.11 merge window 2013-06-12 14:44:13 -07:00
musb_io.h usb: musb: use io{read,write}*_rep accessors 2012-12-17 17:15:13 -08:00
musb_regs.h
musb_virthub.c usb: musb: eliminate musb_to_hcd 2013-05-28 19:22:26 +03:00
musbhsdma.c usb: musb: dma: merge ->start/stop into create/destroy 2013-07-29 13:53:18 +03:00
musbhsdma.h usb: musb: remove generic_interrupt 2012-11-06 15:32:13 +02:00
omap2430.c usb: patches for v3.12 merge window 2013-08-13 15:28:01 -07:00
omap2430.h usb: start using the control module driver 2013-01-25 12:27:24 +02:00
tusb6010.c usb: patches for v3.12 merge window 2013-08-13 15:28:01 -07:00
tusb6010.h
tusb6010_omap.c usb: musb: dma: merge ->start/stop into create/destroy 2013-07-29 13:53:18 +03:00
ux500.c usb: musb: use dev_get_platdata() 2013-07-30 11:21:54 +03:00
ux500_dma.c usb: musb: use dev_get_platdata() 2013-07-30 11:21:54 +03:00