On Mon, 18 Dec 2006, JackRain wrote: > Hi,all > > I am working on usb host controller ,which implements EHCI . > the problem is the host couldn't identify the usb device sometimes. > for example,the first time the usb device plugged in the usb host can > be identified. > but couldn't the twice ,or serval times later. > > the main error is : babble error,which can be seen by the EHCI > qTD->token : 0x00070d50 > and I get -ECONNRESET in ehci_urb_done(); > also the debug msg in "ehci-q.c : ep0in status -104 len 24/31." > display in console > right after i plug out the device.
That doesn't make sense. The driver would not return that error code if there really was a Babble error. > I have serval questions: > 1/the babble error ,defined in EHCI /UHCI spec that it was > cause by device sends more data than host expects. > why it happens when it is "24/31" (host gets short packet data) ? You didn't mention what type of endpoint this was for or what the maxpacket value was. If the maxpacket was 8 then 24/31 does not indicate a short packet was received. And if the device then sent a fourth packet containing 8 bytes, it would show up as a Babble error. > 2/what hardware issue cause the babble error ? maybe i can modify > hardware pheriphal to improve usb signal. If you're working on the host controller, then you're in a good position to find out what's wrong with it. You can't expect us to know more than you do when you're right there with the hardware. Alan Stern ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ Linux-usb-users@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-users