imx28 usb hcd died

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

imx28 usb hcd died

1,857 Views
smrajagopal
Contributor I

Using imx28, usb device connect fails after usb suspend, ehci_irq is called by fsl-ehci for some reason, which I would like to understand why,

below is the log with CONFIG_USB_DEBUG enabled;

Jan  1 00:11:07 iMX28- kern.info kernel: [  667.240000] usb 1-1: new high-speed USB device number 36 using fsl-ehci

Jan  1 00:11:07 iMX28- kern.err kernel: [  667.240000] fsl-ehci fsl-ehci.0: fatal error

Jan  1 00:11:07 iMX28- kern.debug kernel: [  667.240000] fsl-ehci fsl-ehci.0: fatal command 0010024 (park)=0 ithresh=1 Async period=512 HALT

Jan  1 00:11:07 iMX28- kern.debug kernel: [  667.240000] fsl-ehci fsl-ehci.0: fatal status 48090 PPCE Async FATAL

Jan  1 00:11:07 iMX28- kern.debug kernel: [  667.240000] fsl-ehci fsl-ehci.0: reset command 0010026 (park)=0 ithresh=1 Async period=512 Reset HALT

Jan  1 00:11:07 iMX28- kern.err kernel: [  667.240000] fsl-ehci fsl-ehci.0: HC died; cleaning up

Jan  1 00:11:07 iMX28- kern.err kernel: [  667.260000] hub 1-0:1.0: cannot reset port 1 (err = -19)

Jan  1 00:11:07 iMX28- kern.err kernel: [  667.260000] hub 1-0:1.0: cannot disable port 1 (err = -19)

Jan  1 00:11:07 iMX28- kern.err kernel: [  667.270000] hub 1-0:1.0: cannot reset port 1 (err = -19)

Jan  1 00:11:07 iMX28- kern.err kernel: [  667.280000] hub 1-0:1.0: cannot disable port 1 (err = -19)

Jan  1 00:11:07 iMX28- kern.err kernel: [  667.290000] hub 1-0:1.0: cannot reset port 1 (err = -19)

Jan  1 00:11:07 iMX28- kern.err kernel: [  667.300000] hub 1-0:1.0: cannot disable port 1 (err = -19)

Jan  1 00:11:07 iMX28- kern.err kernel: [  667.300000] hub 1-0:1.0: cannot reset port 1 (err = -19)

Jan  1 00:11:07 iMX28- kern.err kernel: [  667.310000] hub 1-0:1.0: cannot disable port 1 (err = -19)

Jan  1 00:11:07 iMX28- kern.err kernel: [  667.320000] hub 1-0:1.0: unable to enumerate USB device on port 1

Jan  1 00:11:07 iMX28- kern.err kernel: [  667.330000] hub 1-0:1.0: cannot disable port 1 (err = -19)

Jan  1 00:11:07 iMX28- kern.debug kernel: [  667.330000] hub 1-0:1.0: state 0 ports 1 chg 0000 evt 0002

Jan  1 00:12:43 iMX28- kern.err kernel: [  763.620000] FEC: MDIO read timeout

Jan  1 00:12:45 iMX28- kern.err kernel: [  765.630000] FEC: MDIO read timeout


Tried a few times and I am not seeing the above mentioned error, if I disable the autosuspend, just wanted to understand if that is the root cause and the reason behind irq being called.

Let me know if additional information needed.

Thanks

Labels (2)
Tags (2)
0 Kudos
6 Replies

801 Views
igorpadykov
NXP Employee
NXP Employee

Hi smrajagopal, I would recommend

read carefully MX28_EVK_Linux_Reference_Manual.pdf

USB driver chapter about supported features. Seems

usb autosuspend is not supported.

L2.6.35_1.1.0_LINUX_DOCS

MCIMX28EVKJ: i.MX28 Evaluation Kit

Best regards

chip

-----------------------------------------------------------------------------------------------------------------------

Note: If this post answers your question, please click the Correct Answer button. Thank you!

-----------------------------------------------------------------------------------------------------------------------

0 Kudos

801 Views
smrajagopal
Contributor I

Sorry guys took a long time to get back


Mr.chipexpert

Appreciate your concern.

Patch from Re: Lock up of USB EHCI controller in i.MX28 , didn't help.

And, I disabled autosuspend. Still I see the same usb crash error, consistently, everytime I power up my USB device.
One more observation : Everytime usb populates different interface.Either of the two usb1 or usb2.

0 Kudos

801 Views
igorpadykov
NXP Employee
NXP Employee

Hi smrajagopal

I would suggest to use latest Freescale BSP below with all

patches applied (patches are below last web page link)

L2.6.35_1.1.0_DEMO_IMAGE : i.MX28 Linux Binary Demo Files.

L2.6.35_1.1.0_ER_SOURCE : i.MX28 Linux 2.6.35 Source Code Files and documentation.

MCIMX28EVKJ: i.MX28 Evaluation Kit

Actually this also may be caused by hardware (for example board is not able

to provide sufficient current to connected device), one can check with other USB devices

(for example different memory sticks) and test on i.MX28 EVK board.

Patch from Re: Lock up of USB EHCI controller in i.MX28 , is related to

very rare case of FIFO underrun and weirdly only happened to ftp with usb-to-ethernet

dongles.

Best regards

chip

0 Kudos

801 Views
fabio_estevam
NXP Employee
NXP Employee

Maybe you could a try a more recent kernel, such as 3.14.2?

0 Kudos

801 Views
igorpadykov
NXP Employee
NXP Employee

Hi smrajagopal,

what BSP (Freescale Linux or smth else) had you used,

had you chance to test this on i.MX28 EVK,

also could you check patch on link below ?

Re: Lock up of USB EHCI controller in i.MX28

0 Kudos

801 Views
Wlodek_D_
Senior Contributor II

Hello,

Thank you for your post, however please consider moving it to the right community place (e.g. i.MX Community ) to get it visible for active members.

For details please see general advice Where to post a Discussion?

Thank you for using Freescale Community.

0 Kudos