Re: [PATCH 2/3] usb: enable pci MSI/MSIX in usb core

From: Alan Stern
Date: Fri Feb 24 2012 - 10:59:39 EST


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-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/