On Fri, 24 Feb 2012, Felipe Balbi wrote: > > > > > + retval = request_irq(hcd->msix_entries[i].vector, > > > > > + (irq_handler_t)hcd->driver->msix_irq, > > > > > > do you really need this cast here ? > > > > Yes, otherwise the complain like here: > > drivers/usb/core/hcd-pci.c:330: warning: passing argument 2 of ‘request_irq’ from incompatible pointer type > > include/linux/interrupt.h:134: note: expected ‘irq_handler_t’ but argument is of type ‘enum irqreturn_t (* const)(int, struct usb_hcd *)’ > > Alan, Sarah, is the definition of the IRQ handler wrong on the hc_driver > structure ? No. It is never passed to request_irq(). > Alex, I think you should fix your definition for the msix_irq handler. The second parameter in the prototype is supposed to be void *, not struct usb_hcd *. 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