All of lore.kernel.org
 help / color / mirror / Atom feed
* omap4 ehci sporadic resume issue
@ 2013-06-27 11:51 Michael Trimarchi
  2013-06-27 13:59 ` Roger Quadros
  0 siblings, 1 reply; 23+ messages in thread
From: Michael Trimarchi @ 2013-06-27 11:51 UTC (permalink / raw)
  To: USB list; +Cc: Linux OMAP Mailing List, Roger Quadros, Alan Stern

Hi

I'm working on omap4460 with two ulpi connected to (SMSC3320 -> HUB SMSC2514) or (TUSB1210 -> HUB SMSC2514). 
The problem only happen when both port are used and after few suspend resume are triggered.
If I use just one port there is no issue on suspend resume. I already covered all TI
errata that I know and I'm working on TI kernel.

The problem is here

[   77.701934] ehci-omap ehci-omap.0: irq status a004 Async Recl PCD

Both ports change status from 001005 to 001009 (you have a log just after). 
So from host point of view both hub connected are not working in HS mode. 
After that the omap ehci has gone because the bus can not work in FS and LS and I can not recover from here.
Status of transceivers are dumped and they are ok after resume.

Do you have any suggestion?

Normal case

SUSPEND

DIR HIGH
CLOCK is OFF

AFTER RESUME

DIR has signal

CLOCK is 60 Mhz

Disconnect case

SUSPEND

DIR HIGH
CLOCK is OFF

AFTER RESUME
DIR is LOW
CLOCK is 60Mhz



[   77.593566] ehci-omap ehci-omap.0: ehci_omap_bus_resume
[   77.593658] ehci-omap ehci-omap.0: resume root hub
[   77.615814] hub 2-0:1.0: hub_resume
[   77.639251] hub 1-0:1.0: hub_resume
[   77.639282] ehci-omap ehci-omap.0: GetStatus port:1 status 001885 0  ACK POWER sig=j SUSPEND PE CONNECT
[   77.639282] hub 1-0:1.0: port 1: status 0507 change 0000
[   77.639312] ehci-omap ehci-omap.0: GetStatus port:2 status 001885 0  ACK POWER sig=j SUSPEND PE CONNECT
[   77.639312] hub 1-0:1.0: port 2: status 0507 change 0000
[   77.639312] ehci-omap ehci-omap.0: GetStatus port:3 status 001000 0  ACK POWER sig=se0
[   77.639373] ehci-omap ehci-omap.0: GetStatus port:1 status 001885 0  ACK POWER sig=j SUSPEND PE CONNECT
[   77.639404] usb 1-1: usb resume
[   77.639434] ehci-omap ehci-omap.0: GetStatus port:2 status 001885 0  ACK POWER sig=j SUSPEND PE CONNECT
[   77.639434] usb 1-2: usb resume
[   77.678314] dump_tranceiver -----------> on port 1
[   77.678314] ULPI_FUNC_CTRL 0x40
[   77.678344] ULPI_IFC_CTRL 0x00
[   77.678344] ULPI_OTG_CTRL 0x06
[   77.678344] ULPI_DEBUG 0x00
[   77.678344] ULPI_USB_INT_STS 0x14
[   77.678344] dump_tranceiver <---------- on port 1
[   77.678375] ehci-omap ehci-omap.0: GetStatus port:1 status 001005 0  ACK POWER sig=se0 PE CONNECT
[   77.678405] dump_tranceiver -----------> on port 2
[   77.678405] ULPI_FUNC_CTRL 0x40
[   77.678405] ULPI_IFC_CTRL 0x00
[   77.678436] ULPI_OTG_CTRL 0x06
[   77.678436] ULPI_DEBUG 0x00
[   77.678436] ULPI_USB_INT_STS 0x14
[   77.678436] dump_tranceiver <---------- on port 2
[   77.678466] ehci-omap ehci-omap.0: GetStatus port:2 status 001005 0  ACK POWER sig=se0 PE CONNECT
[   77.701782] usb 1-1: finish resume
[   77.701812] usb 1-2: finish resume
[   77.701934] ehci-omap ehci-omap.0: irq status a004 Async Recl PCD
[   77.701934] Port 2 Status 0x1000
[   77.701934] Port 1 Status 0x1009
[   77.701965] Port 0 Status 0x1009
[   82.717529] ehci-omap ehci-omap.0: IAA watchdog: status a008 cmd 10065
[   82.717590] usb 1-2: kworker/u:12 timed out on ep0in len=0/2
[   82.717590] usb 1-2: gone after usb resume? status -110
[   82.717590] usb 1-2: can't resume, status -110
[   82.717620] hub 1-0:1.0: logical disconnect on port 2
[   82.717620] Disable PORT_PE
[   82.717651] pm_op(): usb_dev_resume+0x0/0x18 returns -110
[   82.717651] PM: Device 1-2 failed to resume async: error -110
[   82.733154] ehci-omap ehci-omap.0: IAA watchdog: status a008 cmd 10065
[   82.733184] usb 1-1: kworker/u:15 timed out on ep0in len=0/2
[   82.733215] usb 1-1: gone after usb resume? status -110
[   82.733215] usb 1-1: can't resume, status -110
[   82.733215] hub 1-0:1.0: logical disconnect on port 1
[   82.733215] Disable PORT_PE
[   82.733245] pm_op(): usb_dev_resume+0x0/0x18 returns -110
[   82.733245] PM: Device 1-1 failed to resume async: error -110
[   82.734741] PM: resume of devices complete after 5229.652 msecs
[   83.303863] PM: Finishing wakeup.
[   83.307525] Restarting tasks ... 
[   83.311157] hub 2-0:1.0: state 7 ports 1 chg 0000 evt 0000
[   83.317504] hub 2-0:1.0: hub_resume
[   83.321716] done.
[   83.323974] suspend: exit suspend, ret = 0 (2000-01-02 21:07:12.171992466 UTC)
[   83.323974] hub 2-0:1.0: activate --> -22
[   83.324005] hub 1-0:1.0: state 7 ports 3 chg 0006 evt 0006
[   83.324035] ehci-omap ehci-omap.0: GetStatus port:1 status 001801 0  ACK POWER sig=j CONNECT
[   83.324035] hub 1-0:1.0: port 1, status 0501, change 0000, 480 Mb/s
[   83.324035] usb 1-1: USB disconnect, device number 2
[   83.324066] usb 1-1.2: USB disconnect, device number 4
[   83.324066] usb 1-1.2: unregistering device
[   83.324066] usb 1-1.2: unregistering interface 1-1.2:1.0
[   83.530700] usb 1-1.2: usb_disable_device nuking all URBs
[   83.537200] usb 1-1.3: USB disconnect, device number 5
[   83.542907] usb 1-1.3: unregistering device
[   83.547546] usb 1-1.3: unregistering interface 1-1.3:1.0
[   83.554107] usb 1-1.3: usb_disable_device nuking all URBs
[   83.560577] usb 1-1: unregistering device
[   83.565063] usb 1-1: unregistering interface 1-1:1.0
[   83.570800] usb 1-1: usb_disable_device nuking all URBs


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

^ permalink raw reply	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2013-09-02  7:04 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-06-27 11:51 omap4 ehci sporadic resume issue Michael Trimarchi
2013-06-27 13:59 ` Roger Quadros
     [not found]   ` <51CC454A.1040104-l0cyMroinI0@public.gmane.org>
2013-06-27 14:17     ` Michael Trimarchi
2013-06-27 14:49       ` Roger Quadros
2013-06-27 17:56         ` Michael Trimarchi
2013-06-27 18:59           ` Ruslan Bilovol
2013-06-27 19:24             ` Michael Trimarchi
2013-06-27 20:07               ` Ruslan Bilovol
2013-06-27 20:22                 ` Michael Trimarchi
2013-06-28 11:33                 ` Michael Trimarchi
2013-06-28 11:46                   ` Roger Quadros
     [not found]                     ` <51CD7783.8030907-l0cyMroinI0@public.gmane.org>
2013-06-28 12:26                       ` Michael Trimarchi
2013-06-28 12:55                         ` Roger Quadros
     [not found]                           ` <51CD87AC.6060107-l0cyMroinI0@public.gmane.org>
2013-06-28 14:52                             ` Michael Trimarchi
2013-06-28 16:47                       ` Michael Trimarchi
2013-07-02 14:42                         ` Roger Quadros
     [not found]                           ` <51D2E6DA.6030000-l0cyMroinI0@public.gmane.org>
2013-07-02 14:49                             ` Michael Trimarchi
2013-07-02 14:57                               ` Nishanth Menon
2013-07-02 15:03                               ` Roger Quadros
     [not found]                                 ` <51D2EBBB.8000504-l0cyMroinI0@public.gmane.org>
2013-07-04  8:53                                   ` Michael Trimarchi
2013-08-30 17:59                                     ` Michael Trimarchi
     [not found]                                       ` <CAOf5uwk9U8CHWywfopCt-H5BJmYyuXrwPvpwaqqP+5-3g_qYhQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-09-02  7:04                                         ` Roger Quadros
2013-06-28 19:42                     ` Michael Trimarchi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.