Happy New Year! The following questions are about the USB device controller driver pxa27x_udc.c. First: The comments of functions like ep_end_out_req() and ep_end_in_req() say, that these functions shall only be called, when ep->lock is held. Buf, for example, the function handle_ep() calls these functions while it is not held (or did I miss something here?) How can this be safe? Second: The comments of the function handle_ep0() say: "Hardware bug : beware, we cannot clear OPC, since we would miss a potential OPC irq for a setup packet." Is that really true? Why can you not clear it after checking, if UDCBCR0 register equals 0? Third: This might be a more general question about USB: How is this done with these altsettings? The comments in pxa27x_udc.c say, that this controller does not support it, and we must guess, which settings are needed, and set them up, before the UDC is started. How would it be done, if PXA27x UDC supported altsettings? Would the values in UDCCR register be taken and then simply copied into the endpoint control register, when a Change Configuration interrupt comes in? Best regards! ---------------------------------- Schluss mit teuer - her mit den Schnäppchen! Jetzt alle Discounter-Angebote von Aldi über Douglas bis Schlecker übersichtlich für Sie geordnet - jetzt klicken und sparen! http://www.arcor.de/rd/footer.discounto -- 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