On Tue, 27 Jul 2021 20:52:09 +0800Got it in this place.
Tang Bin <tangbin@xxxxxxxxxxxxxxxxxxxx> wrote:
For the function of platform_get_irq(), the example in platform.c isHi,
* int irq = platform_get_irq(pdev, 0);
* if (irq < 0)
* return irq;
So the return value of zero is unnecessary to check. And move it
up to a little bit can simplify the code jump.
Co-developed-by: Zhang Shengju <zhangshengju@xxxxxxxxxxxxxxxxxxxx>
Signed-off-by: Zhang Shengju <zhangshengju@xxxxxxxxxxxxxxxxxxxx>
Signed-off-by: Tang Bin <tangbin@xxxxxxxxxxxxxxxxxxxx>
Logically it is better to keep the irq handling all together, so
I would prefer we didn't move it.
Also, platform_get_irq() is documented as never returning 0, so the current
code is not incorrect. As such, this looks like noise unless there is
some plan to make use of the 0 return value? What benefit do we get from
this change?
---
drivers/iio/adc/fsl-imx25-gcq.c | 12 ++++--------
1 file changed, 4 insertions(+), 8 deletions(-)
diff --git a/drivers/iio/adc/fsl-imx25-gcq.c b/drivers/iio/adc/fsl-imx25-gcq.c
index 8cb51cf7a..d28976f21 100644
--- a/drivers/iio/adc/fsl-imx25-gcq.c
+++ b/drivers/iio/adc/fsl-imx25-gcq.c
@@ -320,6 +320,10 @@ static int mx25_gcq_probe(struct platform_device *pdev)
if (ret)
return ret;
+ priv->irq = platform_get_irq(pdev, 0);
+ if (priv->irq < 0)
+ return priv->irq;
+
for (i = 0; i != 4; ++i) {
if (!priv->vref[i])
continue;
@@ -336,14 +340,6 @@ static int mx25_gcq_probe(struct platform_device *pdev)
goto err_vref_disable;
}
- priv->irq = platform_get_irq(pdev, 0);
- if (priv->irq <= 0) {
- ret = priv->irq;
- if (!ret)
- ret = -ENXIO;
- goto err_clk_unprepare;
- }
-