Message ID | 20230727130049.2810959-1-chenjiahao16@huawei.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | [-next] spi: microchip-core: Clean up redundant dev_err_probe() | expand |
On Thu, Jul 27, 2023 at 09:00:49PM +0800, Chen Jiahao wrote: > Refering to platform_get_irq()'s definition, the return value has > already been checked if ret < 0, and printed via dev_err_probe(). > Calling dev_err_probe() one more time outside platform_get_irq() > is obviously redundant. > > Furthermore, platform_get_irq() will never return irq equals 0, > removing spi->irq == 0 checking to clean it up. > > Signed-off-by: Chen Jiahao <chenjiahao16@huawei.com> > --- > drivers/spi/spi-microchip-core.c | 6 ++---- > 1 file changed, 2 insertions(+), 4 deletions(-) > > diff --git a/drivers/spi/spi-microchip-core.c b/drivers/spi/spi-microchip-core.c > index b59e8a0c5b97..ac3b7b163db4 100644 > --- a/drivers/spi/spi-microchip-core.c > +++ b/drivers/spi/spi-microchip-core.c > @@ -530,10 +530,8 @@ static int mchp_corespi_probe(struct platform_device *pdev) > return PTR_ERR(spi->regs); > > spi->irq = platform_get_irq(pdev, 0); > - if (spi->irq <= 0) > - return dev_err_probe(&pdev->dev, -ENXIO, > - "invalid IRQ %d for SPI controller\n", > - spi->irq); > + if (spi->irq < 0) > + return -ENXIO; platform_get_irq() returns an ERRNO that can now be propagated since the special case for 0 no longer requires handling, no? > > ret = devm_request_irq(&pdev->dev, spi->irq, mchp_corespi_interrupt, > IRQF_SHARED, dev_name(&pdev->dev), master); > -- > 2.34.1 >
On 2023/7/27 21:34, Conor Dooley wrote: > On Thu, Jul 27, 2023 at 09:00:49PM +0800, Chen Jiahao wrote: >> Refering to platform_get_irq()'s definition, the return value has >> already been checked if ret < 0, and printed via dev_err_probe(). >> Calling dev_err_probe() one more time outside platform_get_irq() >> is obviously redundant. >> >> Furthermore, platform_get_irq() will never return irq equals 0, >> removing spi->irq == 0 checking to clean it up. >> >> Signed-off-by: Chen Jiahao <chenjiahao16@huawei.com> >> --- >> drivers/spi/spi-microchip-core.c | 6 ++---- >> 1 file changed, 2 insertions(+), 4 deletions(-) >> >> diff --git a/drivers/spi/spi-microchip-core.c b/drivers/spi/spi-microchip-core.c >> index b59e8a0c5b97..ac3b7b163db4 100644 >> --- a/drivers/spi/spi-microchip-core.c >> +++ b/drivers/spi/spi-microchip-core.c >> @@ -530,10 +530,8 @@ static int mchp_corespi_probe(struct platform_device *pdev) >> return PTR_ERR(spi->regs); >> >> spi->irq = platform_get_irq(pdev, 0); >> - if (spi->irq <= 0) >> - return dev_err_probe(&pdev->dev, -ENXIO, >> - "invalid IRQ %d for SPI controller\n", >> - spi->irq); >> + if (spi->irq < 0) >> + return -ENXIO; > platform_get_irq() returns an ERRNO that can now be propagated since > the special case for 0 no longer requires handling, no? Sure, you are right. Here we should directly return the ERRNO passed from platform_get_irq(), since platform_get_irq() has performed all error checking inside. Thanks for reminding. Jiahao > >> >> ret = devm_request_irq(&pdev->dev, spi->irq, mchp_corespi_interrupt, >> IRQF_SHARED, dev_name(&pdev->dev), master); >> -- >> 2.34.1 >>
diff --git a/drivers/spi/spi-microchip-core.c b/drivers/spi/spi-microchip-core.c index b59e8a0c5b97..ac3b7b163db4 100644 --- a/drivers/spi/spi-microchip-core.c +++ b/drivers/spi/spi-microchip-core.c @@ -530,10 +530,8 @@ static int mchp_corespi_probe(struct platform_device *pdev) return PTR_ERR(spi->regs); spi->irq = platform_get_irq(pdev, 0); - if (spi->irq <= 0) - return dev_err_probe(&pdev->dev, -ENXIO, - "invalid IRQ %d for SPI controller\n", - spi->irq); + if (spi->irq < 0) + return -ENXIO; ret = devm_request_irq(&pdev->dev, spi->irq, mchp_corespi_interrupt, IRQF_SHARED, dev_name(&pdev->dev), master);
Refering to platform_get_irq()'s definition, the return value has already been checked if ret < 0, and printed via dev_err_probe(). Calling dev_err_probe() one more time outside platform_get_irq() is obviously redundant. Furthermore, platform_get_irq() will never return irq equals 0, removing spi->irq == 0 checking to clean it up. Signed-off-by: Chen Jiahao <chenjiahao16@huawei.com> --- drivers/spi/spi-microchip-core.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-)