diff mbox series

i2c: exynos5: fix platform_get_irq error handling

Message ID 20201027214257.8099-1-martin@kaiser.cx
State Superseded
Headers show
Series i2c: exynos5: fix platform_get_irq error handling | expand

Commit Message

Martin Kaiser Oct. 27, 2020, 9:42 p.m. UTC
platform_get_irq already prints an error message if the requested irq
was not found. Don't print another message in the driver.

If platform_get_irq returns an error, relay this error to the caller of the
probe function. Don't change all errors to -EINVAL. This breaks the case
where platform_get_irq returns -EPROBE_DEFER.

platform_get_irq never returns 0. Don't check for this. Make it clear that
the error path always returns a negative error code.

Signed-off-by: Martin Kaiser <martin@kaiser.cx>
---
 drivers/i2c/busses/i2c-exynos5.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

Comments

Krzysztof Kozlowski Oct. 28, 2020, 7:21 a.m. UTC | #1
On Tue, Oct 27, 2020 at 10:42:57PM +0100, Martin Kaiser wrote:
> platform_get_irq already prints an error message if the requested irq
> was not found. Don't print another message in the driver.
> 
> If platform_get_irq returns an error, relay this error to the caller of the
> probe function. Don't change all errors to -EINVAL. This breaks the case
> where platform_get_irq returns -EPROBE_DEFER.
> 
> platform_get_irq never returns 0. Don't check for this. Make it clear that
> the error path always returns a negative error code.

These should be three separate commits.

Best regards,
Krzysztof
Krzysztof Kozlowski Nov. 2, 2020, 8:37 a.m. UTC | #2
On Sun, Nov 01, 2020 at 06:18:07PM +0100, Martin Kaiser wrote:
> platform_get_irq never returns 0. Don't check for this. Make it clear that

> the error path always returns a negative error code.

> 

> Signed-off-by: Martin Kaiser <martin@kaiser.cx>

> ---

> changes in v2

> - split the patch in three parts

> 

>  drivers/i2c/busses/i2c-exynos5.c | 2 +-

>  1 file changed, 1 insertion(+), 1 deletion(-)

> 


Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org>


Best regards,
Krzysztof
Krzysztof Kozlowski Nov. 2, 2020, 8:37 a.m. UTC | #3
On Sun, Nov 01, 2020 at 06:18:05PM +0100, Martin Kaiser wrote:
> platform_get_irq already prints an error message if the requested irq
> was not found. Don't print another message in the driver.
> 
> Signed-off-by: Martin Kaiser <martin@kaiser.cx>
> ---
> changes in v2
> - split the patch in three parts
> 
>  drivers/i2c/busses/i2c-exynos5.c | 1 -
>  1 file changed, 1 deletion(-)

Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org>

Best regards,
Krzysztof
diff mbox series

Patch

diff --git a/drivers/i2c/busses/i2c-exynos5.c b/drivers/i2c/busses/i2c-exynos5.c
index 6ce3ec03b595..20a9881a0d6c 100644
--- a/drivers/i2c/busses/i2c-exynos5.c
+++ b/drivers/i2c/busses/i2c-exynos5.c
@@ -778,11 +778,8 @@  static int exynos5_i2c_probe(struct platform_device *pdev)
 	init_completion(&i2c->msg_complete);
 
 	i2c->irq = ret = platform_get_irq(pdev, 0);
-	if (ret <= 0) {
-		dev_err(&pdev->dev, "cannot find HS-I2C IRQ\n");
-		ret = -EINVAL;
+	if (ret < 0)
 		goto err_clk;
-	}
 
 	ret = devm_request_irq(&pdev->dev, i2c->irq, exynos5_i2c_irq,
 			       IRQF_NO_SUSPEND, dev_name(&pdev->dev), i2c);