We have tried and made changes as per the required and as mentioned in IMX31ADS USB Document , but we are seeing that when the OTG port is connected to a linux host pc, we are getting the following error
[114925.671295] usb 1-6: USB disconnect, address 78
[114948.396175] usb 1-6: new high speed USB device using ehci_hcd and address 79
[114948.453613] ehci_hcd 0000:00:1d.7: port 6 reset error -110
[114948.453626] hub 1-0:1.0: hub_port_status failed (err = -32)
[114949.267025] hub 1-0:1.0: Cannot enable port 6. Maybe the USB cable is bad?
[114949.570403] usb 1-6: new high speed USB device using ehci_hcd and address 81
[114949.627847] ehci_hcd 0000:00:1d.7: port 6 reset error -110
[114949.627863] hub 1-0:1.0: hub_port_status failed (err = -32)
[114950.441412] hub 1-0:1.0: Cannot enable port 6. Maybe the USB cable is bad?
[114950.744629] usb 1-6: new high speed USB device using ehci_hcd and address 83
[114950.802068] ehci_hcd 0000:00:1d.7: port 6 reset error -110
[114950.802079] hub 1-0:1.0: hub_port_status failed (err = -32)
The following configurations has been done for making the OTG work
1. For support of the OTG port in host mode, enable:
Device Drivers -> USB Support -> EHCI HCD (USB 2.0) support -> Support for
ARC controller -> Support for OTG HS Host port on ARC controller
2. Gadget configuration
Device Drivers -> USB Support -> Gadget Support -> Support for USB Gadgets
Device Drivers -> USB Support -> Gadget Support -> USB Peripheral Controller -
> ARC USB Device Controller
Device Drivers -> USB Support -> Gadget Support ->Select OTG transceiver: High
Speed
(Only the high speed transceiver is supported)
3 USB networking support.
Enable:
Device Drivers -> USB Support -> USB Gadget Support -> USB Gadget Drivers ->
Ethernet Gadget (with CDC Ethernet support),
and select RNDIS support
After compiling the Gadget modules as kernel modules and after running modprobe g_ether in shell we are getting the following log
mx31# modprobe g_ether
[ 54.430000] ARC USBOTG Device Controller driver version 1 August 2005 init
[ 52.440000] [arcotg_udc_probe] pdev=0xc0349448 config=0xc03495dc
[ 52.450000] [board_init] dev=0xc0349450 config=0xc03495dc
[ 52.460000] [struct_udc_setup] kmalloc(ucd)=0xc0024000
[ 52.460000] [struct_udc_setup] udc->ep_qh=0xc69cb000 ep_qh_base=0xc69cb000
[ 52.470000] [arcotg_alloc_request] req=0xc05270c0 set req.dma=0xffffffff
[ 52.480000] [struct_udc_setup] status_req=0xc05270c0 status_req->req.buf=0xc06ffb80 status_req->req.dma=0x806ffb80
[ 52.490000] [arcotg_udc_probe] udc_controller=0xc0024000
[ 52.500000] [arcotg_udc_probe] otg_get_transceiver returns 0xc0651200
[ 52.500000] [arcotg_udc_probe] start=0x43f88000 end=0x43f881ff
[ 52.500000]
[ 52.510000] [arcotg_udc_probe] rsrc_start=0x43f88000 rsrc_len=0x200
After this we tested ifconfig usb0 and ping commands and are working fine
Now when we connect the USB Mini A-B cable to Host Linux PC, we are getting the error
If any body has solved this please help.
Posted By vasanthk@yahoo.com on 11 Dec 2007 3:44 AM
I am not getting the error after doing the following,
1) While enabling USB Support->USB Gadget Support ->Support for USB Gadgets, select the option with <M> (as a module), not with <*>
2) Then in System Type->Freescale MXC Implementations->MX3 options, enable ISP1540 transceiver support. (This step is optional)