On Wed, Feb 12, 2014 at 03:36:57PM -0500, Ben Collins wrote: > On Feb 9, 2014, at 9:38 PM, Peter Chen <[email protected]> wrote: > >> > >> desc = (struct usb_device_descriptor *)tmpbuf; > >> dev->descriptor.bMaxPacketSize0 = 64; /* Start off at 64 > >> bytes */ > >> /* Default to 64 byte max packet size */ > >> dev->maxpacketsize = PACKET_SIZE_64; > >> dev->epmaxpacketin[0] = 64; > >> dev->epmaxpacketout[0] = 64; > >> > >> err = usb_control_msg(dev, usb_rcvaddr0pipe(), > >> USB_REQ_GET_DESCRIPTOR, USB_DIR_IN, > >> USB_DT_DEVICE << 8, 0, desc, 64, > >> USB_CNTL_TIMEOUT); > >> > >> if (err < 0) { > >> printf("usb_new_device: usb_get_descriptor() failed\n"); > >> return 1; > >> } > >> > >> This control message fails. Here's the full lsusb output from Linux: > >> > > > > - If you have a usb bus analyzer, please check if the GET_DESCRPTOR sends > > out successfully. > > (Most probably, I don't think it sends out) > > I've attached a screen cap of the USB capture. At the to in red is the "SETUP > txn" that fails in u-boot (shows Timed Out). Below on the second capture, the > Get Descriptor succeeds to the same device, but this time from Linux. > > Should the analyzer show the IN/OUT portion of the first get-descriptor or > does that only show up when the device responds? I'm no too familiar with USB > protocol.
Using plain text to send email next time please, you can upload capture at some place. For GET_DESCRIPTOR: setup stage: host sends setup token host sends data (8 bytes here) device sends IN for response data stage: host sends IN token device sends data (8 bytes here) host sends OUT for response status stage: host sends OUT host sends 0-byte data device sends IN for response Since I can't see device IN response for setup stage from your capture log, but I assume the device is ok. So your problem may is the host does not send out IN token for data stage, please check the function qh_urb_transaction at u-boot (if the name is the same with linux) to see if the qtd for data stage is setup correctly. Peter > > I've yet to dump qH/qTD structures, but should have a chance later this week. > > > > -- > Servergy : http://www.servergy.com/ > SwissDisk : http://www.swissdisk.com/ > Ubuntu : http://www.ubuntu.com/ > My Blog : http://ben-collins.blogspot.com/ > -- Best Regards, Peter Chen -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
