RE: [PATCH] usb: cdns3: remove dead code

From: Pawel Laszczak
Date: Wed Sep 28 2022 - 02:42:11 EST


>
>From: Dongliang Mu <mudongliangabcd@xxxxxxxxx>
>
>Smatch reports the following error:
>
>drivers/usb/cdns3/cdns3-plat.c:113 cdns3_plat_probe() warn:
>platform_get_irq() does not return zero
>
>From the document, platform_get_irq_byname_optional only returns
>non-zero value, and negative value on failure.
>
>Fix this by removing the zero value checking.
>
>Signed-off-by: Dongliang Mu <mudongliangabcd@xxxxxxxxx>
>---
> drivers/usb/cdns3/cdns3-plat.c | 2 --
> 1 file changed, 2 deletions(-)
>
>diff --git a/drivers/usb/cdns3/cdns3-plat.c b/drivers/usb/cdns3/cdns3-plat.c
>index dc068e940ed5..2bc5d094548b 100644
>--- a/drivers/usb/cdns3/cdns3-plat.c
>+++ b/drivers/usb/cdns3/cdns3-plat.c
>@@ -110,8 +110,6 @@ static int cdns3_plat_probe(struct platform_device *pdev)
> cdns->wakeup_irq = platform_get_irq_byname_optional(pdev, "wakeup");
> if (cdns->wakeup_irq == -EPROBE_DEFER)
> return cdns->wakeup_irq;
>- else if (cdns->wakeup_irq == 0)
>- return -EINVAL;
>
I think that here we should have:
else if (cdns->wakeup_irq == -ENXIO)
return -EINVAL;
because of function:
platform_get_irq_byname_optional -> __platform_get_irq_byname returns
irq number (>0), -EPROBE_DEFFER or -ENXIO


thanks
Pawel

> if (cdns->wakeup_irq < 0) {
> dev_dbg(dev, "couldn't get wakeup irq\n");
>--
>2.35.1