mx35, gadget, fsl_usb2_udc: link breaks down

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

trying to establish a USB connection between my PC (host) and an
embedded system ARM-MX357 [1] (device), the link gets lost after ~40
Pings (g_ethernet) or some ttyG0 stresstest (g_serial).

The ARM-MX357 Board is not yet supported by vanilla kernel with a
platform specific file. For testing purposes I wrote a minimal platform
file, and as far as I can tell everything works apart from a reliable
USB-Link. These are the lines to bring up USB:

static const struct fsl_usb2_platform_data otg_device_pdata __initconst = {
	.operating_mode = FSL_USB2_DR_DEVICE,
	.phy_mode       = FSL_USB2_PHY_UTMI,
/*
	.workaround     = FLS_USB2_WORKAROUND_ENGCM09152, /*no hardware part :-( */
*/
};

imx35_add_fsl_usb2_udc(&otg_device_pdata);

What bothers me is, the errata sheet [2] of the imx35 showing an
implementation error (ENGcm09152): The vusb-pin should be "enhanced" by
some resistors and a diode. This claimed hardware-fix isn't implemented
on the board (as far as I can see). So maybe this whole link-problem is
due to a hardware-bug...

What I wasn't testing is operating_mode = FSL_USB2_DR_HOST (host-mode)
because there is only a Mini-B-Port and my USB-Keyboard-Device for
example doesn't fit in there. Should I solder an adapter cable for
testing?

On the PC (host) I was able to sniff by usbmon:
At first all is normal, but after a while (~40 Pings vice versa) the
embedded system doesn't respond any more. Then, while testing the
connection with g_ethernet, the kworker thread eats all remaining cpu
time on the embedded board. Furthermore the host loses its usb0 ip
address.

With g_serial the connection lasts a bit longer and the kworker doesn't
rise after the lost.

On the ARM-MX357, usbmon showed not a thing. Is this because of device
mode?

I tested with current kernel git version (3.4 rc1), 3.2 and 2.6.33.

Do you have an idea?

 Thanks for you input,
   -- Christoph

[1] http://www.freescale.com/files/dsp/doc/ref_manual/IMX35RM.pdf 

[2] Errata: ENGcm09152 Page 25,
    USB: UTMI_USBPHY VBUS input impedance implementation error
    http://cache.freescale.com/files/dsp/doc/errata/IMX35CE.pdf
    

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


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux