> -----Original Message-----
> From: [email protected] [mailto:linux-omap-
> [email protected]] On Behalf Of Igor Grinberg
> Sent: 04 March 2014 06:44
> To: Marc Murphy; Roger Quadros; [email protected]
> Subject: Re: Help needed USB hub disconnected at resume
>
> On 03/03/14 16:11, Marc Murphy wrote:
> > Hi Igor
> >
> > The Hub is a Microchip USB2513B-AEZG and is connected to EHCI controller
> port via the DUP_P and DUP_N pins. There is a reset applied to the chip at
> power on.
> >
>
> If the reset signal is sw controllable, you might want to toggle it before the
> EHCI controller resumes.
>
> There is also a USB phy on the way from EHCI controller to the hub.
> You might also want to check if the phy resumes correctly.
> Which phy do you use and how is it reset?
I have now had a look with the schematics and the hardware engineer.
The AM3517 has a PHY connected and it is a SMSC USB3320. The device has a
reset connection via GPIO_25.
I have it configured as follows
#define TAM3517_EHCI_RESET 25
static const struct usbhs_omap_board_data tam3517_ehci_pdata __initconst = {
.port_mode[0] = OMAP_EHCI_PORT_MODE_PHY,
.port_mode[1] = OMAP_USBHS_PORT_MODE_UNUSED,
.port_mode[2] = OMAP_USBHS_PORT_MODE_UNUSED,
.phy_reset = true,
.reset_gpio_port[0] = TAM3517_EHCI_RESET,
.reset_gpio_port[1] = -EINVAL,
.reset_gpio_port[2] = -EINVAL
};
static __init void tam3517_ehci_init(void)
{
/* Configure GPIO for EHCI port */
omap_mux_init_gpio(TAM3517_EHCI_RESET, OMAP_PIN_OUTPUT);
gpio_request(TAM3517_EHCI_RESET, "USB_RESET");
gpio_direction_output(TAM3517_EHCI_RESET, 1);
gpio_export(TAM3517_EHCI_RESET, 0);
msleep(100);
gpio_set_value(TAM3517_EHCI_RESET, 1);
usbhs_init(&tam3517_ehci_pdata);
}
I have tried without the phy reset control but stull get the same behaviour.
I have asked for some tap wires onto the control signals for the Phy and I will
have a look with a scope to make sure the pin is toggled correctly.
If you see anything wrong with the initialisation then please let me know.
Thanks
Marc
>
> > Regards
> > Marc
> > ________________________________________
> > From: Igor Grinberg [[email protected]]
> > Sent: 03 March 2014 12:16
> > To: Roger Quadros; Marc Murphy; [email protected]
> > Subject: Re: Help needed USB hub disconnected at resume
> >
> > On 03/03/14 13:06, Roger Quadros wrote:
> >> Hi Marc,
> >>
> >> On 03/03/2014 12:04 PM, Marc Murphy wrote:
> >>> Hi,
> >>> I am using the latest stable 3.4.80 kernel with some changes to get the
> EMAC Phy to initialise correctly after a suspend/resume. The platform is
> AM3517 with most of the system working nice and smoothly. I have 1 issue
> though and need some advice/help to get the system to use the USB hub I
> have connected to the EHCI controller after a suspend to memory and
> resume.
> >>>
> >>> At boot all is recognised;
> >>>
> >>> [ 1.486816] usbcore: registered new interface driver cdc_ether
> >>> [ 1.493255] usbcore: registered new interface driver cdc_ncm
> >>> [ 1.499450] usbcore: registered new interface driver qmi_wwan
> >>> [ 1.506622] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
> >>> [ 1.513580] ehci-omap.0 supply hsusb0 not found, using dummy
> regulator
> >>> [ 2.521881] ehci-omap ehci-omap.0: OMAP-EHCI Host Controller
> >>> [ 2.528411] ehci-omap ehci-omap.0: new USB bus registered, assigned
> bus number 1
> >>> [ 2.536468] ehci-omap ehci-omap.0: irq 77, io mem 0x48064800
> >>> [ 2.553070] ehci-omap ehci-omap.0: USB 2.0 started, EHCI 1.00
> >>> [ 2.559295] usb usb1: New USB device found, idVendor=1d6b,
> idProduct=0002
> >>> [ 2.566436] usb usb1: New USB device strings: Mfr=3, Product=2,
> SerialNumber=1
> >>> [ 2.574035] usb usb1: Product: OMAP-EHCI Host Controller
> >>> [ 2.579620] usb usb1: Manufacturer: Linux 3.4.80 ehci_hcd
> >>> [ 2.585296] usb usb1: SerialNumber: ehci-omap.0
> >>> [ 2.591278] hub 1-0:1.0: USB hub found
> >>> [ 2.595306] hub 1-0:1.0: 3 ports detected
> >>>
> >>> And I can see everything OK.
> >>>
> >>> # lsusb
> >>> Bus 001 Device 002: ID 0424:2513 Standard Microsystems Corp. 2.0 Hub
> >>> Bus 002 Device 002: ID 05e3:0718 Genesys Logic, Inc. IDE/SATA
> >>> Adapter Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root
> >>> hub Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
> >>> Bus 001 Device 003: ID 1199:68a2 Sierra Wireless, Inc.
> >>> #
> >>> #
> >>> # echo mem > /sys/power/state
> >>> [ 73.736572] PM: Syncing filesystems ... done.
> >>> [ 73.743530] Freezing user space processes ... (elapsed 0.01 seconds)
> done.
> >>> [ 73.766784] Freezing remaining freezable tasks ... (elapsed 0.02
> seconds) done.
> >>> [ 73.959289] davinci_mdio davinci_mdio.0: timed out waiting for idle
> >>> [ 73.968872] PM: suspend of devices complete after 170.410 msecs
> >>> [ 73.975433] PM: late suspend of devices complete after 0.305 msecs
> >>> [ 73.982635] PM: noirq suspend of devices complete after 0.732 msecs
> >>> [ 83.430450] Powerdomain (core_pwrdm) didn't enter target state 1
> >>> [ 83.436737] Could not enter target state in pm_suspend
> >>> [ 83.443176] PM: noirq resume of devices complete after 0.915 msecs
> >>> [ 83.450164] PM: early resume of devices complete after 0.274 msecs
> >>> [ 83.457336] <6>Waiting for PHY clock good...
> >>> [ 83.463287] davinci_mdio davinci_mdio.0: resetting idled controller
> >>> [ 83.471343] net eth0: attached PHY driver [SMSC LAN8710/LAN8720]
> (mii_bus:phy_addr=davinci_mdio-0:00, id=7c0f1)
> >>> [ 84.771881] PM: resume of devices complete after 1315.185 msecs
> >>> [ 84.778472] Restarting tasks ...
> >>> [ 84.782379] usb 1-1: USB disconnect, device number 2
> >>> [ 84.790557] done.
> >>> [ 84.792938] mmc0: mmc_rescan_try_freq: trying to init card at 400000
> Hz
> >>> sh: write error:[ 84.800781] usb 1-1.1: USB disconnect, device number 3
> >>> Operation not p[ 84.808349] qmi_wwan 1-1.1:1.8: wwan0: unregister
> 'qmi_wwan' usb-ehci-omap.0-1.1, Sierra Wireless wwan/QMI device
> >>> ermitted
> >>> [ 84.859191] mmc1: mmc_rescan_try_freq: trying to init card at 400000
> Hz
> >>> [ 86.490356] PHY: davinci_mdio-0:00 - Link is Up - 100/Full
> >>> #
> >>> #
> >>> # lsusb
> >>> Bus 002 Device 002: ID 05e3:0718 Genesys Logic, Inc. IDE/SATA
> >>> Adapter Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root
> >>> hub Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub #
> >>>
> >>> Is there any relevant patch out there that would address the issue that I
> see ?
> >>
> >> Does this happen because of OFF mode?
> >> Can you please try the tests with off mode disabled?
> >>
> >> e.g.
> >> mount -t debugfs none /sys/kernel/debug echo 0 >
> >> /sys/kernel/debug/pm_debug/enable_off_mode
> >> suspend & resume
> >
> > AFAIK, AM3517 does not have OFF mode.
> > We had something similar with runtime pm...
> > It might be useful to know which hub is this and how is it connected...
> >
> >>
> >> Also please send the output of /sys/kernel/debug/pm_debug/count
> >> before suspend and after resume. Thanks.
> >
> >
> >
> > --
> > Regards,
> > Igor.
> >
>
> --
> Regards,
> Igor.
> --
> To unsubscribe from this list: send the line "unsubscribe linux-omap" in the
> body of a message to [email protected] More majordomo info at
> http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html