If platform_get_irq() returns IRQ0 (considered invalid according to Linus) the driver blithely passes it to usb_add_hcd() that treats IRQ0 as no IRQ at all. Deny IRQ0 right away, returning -EINVAL from the probe() method... Fixes: 78c73414f4f6 ("USB: ohci: add support for tmio-ohci cell") Signed-off-by: Sergey Shtylyov <s.shtylyov@xxxxxx> Acked-by: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> --- Changes in version 2: - added Alan's ACK. drivers/usb/host/ohci-tmio.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/usb/host/ohci-tmio.c b/drivers/usb/host/ohci-tmio.c index 08ec2ab0d95a..53932e8a968f 100644 --- a/drivers/usb/host/ohci-tmio.c +++ b/drivers/usb/host/ohci-tmio.c @@ -204,6 +204,8 @@ static int ohci_hcd_tmio_drv_probe(struct platform_device *dev) if (irq < 0) return irq; + if (!irq) + return -EINVAL; hcd = usb_create_hcd(&ohci_tmio_hc_driver, &dev->dev, dev_name(&dev->dev)); if (!hcd) { -- 2.26.3