On Sat, 26 Apr 2014, Larry Martin wrote: > I am developing a USB print capture device based on Gumstix Overo (TI > OMAP) and the Gadget printer driver in Linaro 3.5.0 distribution. I got > Linaro from: > > https://github.com/gumstix/linux/tree/omap-3.5 > > and this describes my build process: > > http://gumstix.8.x6.nabble.com/Linaro-linux-source-has-no-makefiles-help-tt4967421.html#a4967434 > > It looks like the distributed gadget driver may not be responding to USB > Setup messages. I have used printk to verify that my data is correct > when function composite_setup returns, but it does not appear on my > Beagle 12 USB analyzer. I have not changed anything lower down than > composite.c, so if my reply data is being wiped out, it's happening in > the standard code. > > I am: > * writing the data to req->buf > * setting req->length > * returning the length from composite_setup > > On the Beagle analyzer, I see the host polling my gadget but the data I > set up is never put on the USB bus by the gadget. The host eventually > times out. > > I have been reading the code in usb/core and usb/otg but cannot find the > place where the .setup callback is called, or in general where Setup > messages are processed. I really want to trace the call stack from > composite_setup back to the silicon. Can anyone describe how that works? You're not looking in the right place. Try drivers/usb/gadget/. With an OMAP processor, you're probably using omap_udc.c. Alan Stern -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html