On Thu, 31 Jan 2013, victor yeo wrote: > Hi, > > >> When ep1 receives CBW data, the isr routine is called. Then in isr, to > >> get the usb_request: > >> > >> usb_request * req; > >> req = list_entry(dev->ep[2].queue.next, struct kagen2_request, queue); > >> > >> however, the list_empty(&dev->ep[2].queue) is true. Where is the > >> appropriate place to add list entry? > > > > only you will know, but your implementation of ep_queue is a nice bet. > > i have list_add_tail() in my ep_queue() function. Prior to ep1 > receiving data, my ep_queue() is called to send 0x00 to ep0. then it > is not called. how to make it to be called by file gadget, in order to > queue the request before ep1 interrupt?
This should happen when get_next_command() calls start_transfer(), which calls usb_ep_queue(). Alan Stern -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html