return ret;
        }
 
-       ret = request_irq(pdev->irq, (irq_handler_t)xhci_msi_irq,
+       ret = request_irq(pdev->irq, xhci_msi_irq,
                                0, "xhci_hcd", xhci_to_hcd(xhci));
        if (ret) {
                xhci_dbg(xhci, "disable MSI interrupt\n");
 
        for (i = 0; i < xhci->msix_count; i++) {
                ret = request_irq(xhci->msix_entries[i].vector,
-                               (irq_handler_t)xhci_msi_irq,
+                               xhci_msi_irq,
                                0, "xhci_hcd", xhci_to_hcd(xhci));
                if (ret)
                        goto disable_msix;
 
 
 int xhci_get_frame(struct usb_hcd *hcd);
 irqreturn_t xhci_irq(struct usb_hcd *hcd);
-irqreturn_t xhci_msi_irq(int irq, struct usb_hcd *hcd);
+irqreturn_t xhci_msi_irq(int irq, void *hcd);
 int xhci_alloc_dev(struct usb_hcd *hcd, struct usb_device *udev);
 void xhci_free_dev(struct usb_hcd *hcd, struct usb_device *udev);
 int xhci_alloc_tt_info(struct xhci_hcd *xhci,