Re: [PATCH] rtc: at91rm9200: fix error return code in at91_rtc_probe()

From: Alexandre Belloni
Date: Sat Aug 12 2017 - 17:25:12 EST


On 09/08/2017 at 10:52:44 -0500, Gustavo A. R. Silva wrote:
> platform_get_irq() returns an error code, but the at91rm9200 driver
> ignores it and always returns -ENXIO. This is not correct and,
> prevents -EPROBE_DEFER from being propagated properly.
>
> Print and propagate the return value of platform_get_irq on failure.
>
> This issue was detected with the help of Coccinelle.
>

This will never happen and is not an actual issue. I will not take such
a patch until you
1/ prove there is an issue
2/ test your patch on real hardware

> Signed-off-by: Gustavo A. R. Silva <gustavo@xxxxxxxxxxxxxx>
> ---
> drivers/rtc/rtc-at91rm9200.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/rtc/rtc-at91rm9200.c b/drivers/rtc/rtc-at91rm9200.c
> index e221b78..09bc2e0 100644
> --- a/drivers/rtc/rtc-at91rm9200.c
> +++ b/drivers/rtc/rtc-at91rm9200.c
> @@ -398,8 +398,8 @@ static int __init at91_rtc_probe(struct platform_device *pdev)
>
> irq = platform_get_irq(pdev, 0);
> if (irq < 0) {
> - dev_err(&pdev->dev, "no irq resource defined\n");
> - return -ENXIO;
> + dev_err(&pdev->dev, "no irq resource defined: %d\n", irq);
> + return irq;
> }
>
> at91_rtc_regs = devm_ioremap(&pdev->dev, regs->start,
> --
> 2.5.0
>

--
Alexandre Belloni, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com