Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 541079de authored by Sergei Shtylyov's avatar Sergei Shtylyov Committed by Felipe Balbi
Browse files

usb: musb: core: fix IRQ check



musb_probe() only regards 0 as a wrong IRQ number, despite platform_get_irq()
that it calls returns -ENXIO in that case. It leads to musb_init_controller()
calling request_irq() with a negative IRQ number, and when it naturally
fails, the following is printed to the console:

request_irq -6 failed!
musb_init_controller failed with status -19

Fix musb_probe() to filter out the error values as well as 0.

Signed-off-by: default avatarSergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
parent 456bb169
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2185,7 +2185,7 @@ static int __init musb_probe(struct platform_device *pdev)
	void __iomem	*base;

	iomem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
	if (!iomem || irq == 0)
	if (!iomem || irq <= 0)
		return -ENODEV;

	base = ioremap(iomem->start, resource_size(iomem));