Hi Laurent,

Thanks for your explanation. Ok, it seems that the EP93XX OHCI driver 
may not work properly. I've just noticed that the hcd_ep93xx_init() and 
hcd_ep93xx_start() were called, but usb_hcd_ep93xx_probe() was not 
called. Could that be the problem?  The ohci_ep93xx is configurated as 
built-in kernel module. Should the usb_hcd_ep93xx_probe() be called 
during host controller driver init stage, or should the 
usb_hcd_ep93xx_probe() be called after the host controller detects the 
new plugged in device?

Thank  you.

Jim



Laurent Pinchart wrote:
> Hi Jim,
> 
> 
>>I am coding a usb host driver on an embedded ARM processor (ep93xx), the
>>ohci-ep93xx started fine (please see following messages) with bus number
>>1. Then, after plugging a device to the host, it detected the device and
>>started a hub init process. But the hub.c printed out an error of
>>"device not accepting address 2". Why the ep93xx started with bus
>>address 1 while the hub was looking for bus address 2? What I was
>>missing here? Because the device can be detected by the usb host, can I
>>say at least the hardware and device driver level works? Any tips to
>>help me debug are appreciated.
> 
> 
> Bus number and device addresses are different things. As a system can have 
> several USB busses, each bus gets assigned a number. Your bus is the first 
> USB bus to be detected on the system, so it gets assigned number 1.
> 
> When you plugged the device on the bus, the host controller detected the plug 
> event and reported it to the kernel. The USB subsystem then assigns an 
> address to the device. The hub got address 1, so your device gets address 2. 
> Nothing surprising there.
> 
> 
>>ep93xx usb: init
>>ep93xxusb ep93xxusb0: new USB bus registered, assigned bus number 1
>>ep93xx usb: start
>>usb usb1: Product: EP93XX OHCI
>>usb usb1: SerialNumber: ep93xx_usb
>>hub 1-0:1.0: USB hub found
>>hub 1-0:1.0: 3 ports detected
>>
>>
>>usb 1-3: new full speed USB device using address 2
>>usb 1-3: device not accepting address 2, error -110
>>usb 1-3: new full speed USB device using address 3
>>usb 1-3: device not accepting address 3, error -110
> 
> 
> -110 means -ETIMEOUT. The USB subsystem tried to sent a SET_ADDRESS request 
> to 
> the device, but not response was received. This either means that the device 
> didn't answer, or that the host controller did something wrong. The second is 
> unfortunately much more likely, so this means your driver still needs 
> debugging :-)
> 
> Cheers,
> 
> Laurent Pinchart
> 


-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to