Commit 27e13827 authored by Gustavo A. R. Silva's avatar Gustavo A. R. Silva Committed by Greg Kroah-Hartman

tty: serial: sprd: fix error return code in sprd_probe()

[ Upstream commit ec085c5a ]

platform_get_irq() returns an error code, but the sprd_serial driver
ignores it and always returns -ENODEV. This is not correct and,
prevents -EPROBE_DEFER from being propagated properly.

Also, notice that platform_get_irq() no longer returns 0 on error:

Print and propagate the return value of platform_get_irq on failure.

This issue was detected with the help of Coccinelle.
Signed-off-by: default avatarGustavo A. R. Silva <>
Signed-off-by: default avatarGreg Kroah-Hartman <>
Signed-off-by: default avatarSasha Levin <>
parent 414fb21b
......@@ -731,8 +731,8 @@ static int sprd_probe(struct platform_device *pdev)
irq = platform_get_irq(pdev, 0);
if (irq < 0) {
dev_err(&pdev->dev, "not provide irq resource\n");
return -ENODEV;
dev_err(&pdev->dev, "not provide irq resource: %d\n", irq);
return irq;
up->irq = irq;
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment