* [PATCH] i2c: exynos5: fix platform_get_irq error handling
@ 2020-10-27 21:42 Martin Kaiser
2020-10-28 7:21 ` Krzysztof Kozlowski
2020-11-01 17:18 ` [PATCH v2 1/3] i2c: exynos5: remove duplicate error message Martin Kaiser
0 siblings, 2 replies; 8+ messages in thread
From: Martin Kaiser @ 2020-10-27 21:42 UTC (permalink / raw)
To: Krzysztof Kozlowski, Wolfram Sang, Andrzej Hajda
Cc: linux-i2c, linux-samsung-soc, linux-kernel, Martin Kaiser
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(-)
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);
--
2.20.1
^ permalink raw reply related [flat|nested] 8+ messages in thread* Re: [PATCH] i2c: exynos5: fix platform_get_irq error handling
2020-10-27 21:42 [PATCH] i2c: exynos5: fix platform_get_irq error handling Martin Kaiser
@ 2020-10-28 7:21 ` Krzysztof Kozlowski
2020-11-01 17:18 ` [PATCH v2 1/3] i2c: exynos5: remove duplicate error message Martin Kaiser
1 sibling, 0 replies; 8+ messages in thread
From: Krzysztof Kozlowski @ 2020-10-28 7:21 UTC (permalink / raw)
To: Martin Kaiser
Cc: Wolfram Sang, Andrzej Hajda, linux-i2c, linux-samsung-soc,
linux-kernel
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
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH v2 1/3] i2c: exynos5: remove duplicate error message
2020-10-27 21:42 [PATCH] i2c: exynos5: fix platform_get_irq error handling Martin Kaiser
2020-10-28 7:21 ` Krzysztof Kozlowski
@ 2020-11-01 17:18 ` Martin Kaiser
2020-11-01 17:18 ` [PATCH v2 2/3] i2c: exynos5: fix platform_get_irq error handling Martin Kaiser
` (2 more replies)
1 sibling, 3 replies; 8+ messages in thread
From: Martin Kaiser @ 2020-11-01 17:18 UTC (permalink / raw)
To: Krzysztof Kozlowski, Wolfram Sang, Andrzej Hajda
Cc: linux-i2c, linux-samsung-soc, linux-kernel, Martin Kaiser
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(-)
diff --git a/drivers/i2c/busses/i2c-exynos5.c b/drivers/i2c/busses/i2c-exynos5.c
index 6ce3ec03b595..c5f5fb28762d 100644
--- a/drivers/i2c/busses/i2c-exynos5.c
+++ b/drivers/i2c/busses/i2c-exynos5.c
@@ -779,7 +779,6 @@ static int exynos5_i2c_probe(struct platform_device *pdev)
i2c->irq = ret = platform_get_irq(pdev, 0);
if (ret <= 0) {
- dev_err(&pdev->dev, "cannot find HS-I2C IRQ\n");
ret = -EINVAL;
goto err_clk;
}
--
2.20.1
^ permalink raw reply related [flat|nested] 8+ messages in thread* [PATCH v2 2/3] i2c: exynos5: fix platform_get_irq error handling
2020-11-01 17:18 ` [PATCH v2 1/3] i2c: exynos5: remove duplicate error message Martin Kaiser
@ 2020-11-01 17:18 ` Martin Kaiser
2020-11-02 8:39 ` Krzysztof Kozlowski
2020-11-01 17:18 ` [PATCH v2 3/3] i2c: exynos5: don't check for irq 0 Martin Kaiser
2020-11-02 8:37 ` [PATCH v2 1/3] i2c: exynos5: remove duplicate error message Krzysztof Kozlowski
2 siblings, 1 reply; 8+ messages in thread
From: Martin Kaiser @ 2020-11-01 17:18 UTC (permalink / raw)
To: Krzysztof Kozlowski, Wolfram Sang, Andrzej Hajda
Cc: linux-i2c, linux-samsung-soc, linux-kernel, Martin Kaiser
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.
Signed-off-by: Martin Kaiser <martin@kaiser.cx>
---
changes in v2
- split the patch in three parts
drivers/i2c/busses/i2c-exynos5.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/drivers/i2c/busses/i2c-exynos5.c b/drivers/i2c/busses/i2c-exynos5.c
index c5f5fb28762d..fad1c52857aa 100644
--- a/drivers/i2c/busses/i2c-exynos5.c
+++ b/drivers/i2c/busses/i2c-exynos5.c
@@ -778,10 +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) {
- 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);
--
2.20.1
^ permalink raw reply related [flat|nested] 8+ messages in thread* Re: [PATCH v2 2/3] i2c: exynos5: fix platform_get_irq error handling
2020-11-01 17:18 ` [PATCH v2 2/3] i2c: exynos5: fix platform_get_irq error handling Martin Kaiser
@ 2020-11-02 8:39 ` Krzysztof Kozlowski
0 siblings, 0 replies; 8+ messages in thread
From: Krzysztof Kozlowski @ 2020-11-02 8:39 UTC (permalink / raw)
To: Martin Kaiser
Cc: Wolfram Sang, Andrzej Hajda, linux-i2c, linux-samsung-soc,
linux-kernel
On Sun, Nov 01, 2020 at 06:18:06PM +0100, Martin Kaiser wrote:
> 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.
>
> Signed-off-by: Martin Kaiser <martin@kaiser.cx>
> ---
> changes in v2
> - split the patch in three parts
>
> drivers/i2c/busses/i2c-exynos5.c | 4 +---
> 1 file changed, 1 insertion(+), 3 deletions(-)
>
Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org>
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH v2 3/3] i2c: exynos5: don't check for irq 0
2020-11-01 17:18 ` [PATCH v2 1/3] i2c: exynos5: remove duplicate error message Martin Kaiser
2020-11-01 17:18 ` [PATCH v2 2/3] i2c: exynos5: fix platform_get_irq error handling Martin Kaiser
@ 2020-11-01 17:18 ` Martin Kaiser
2020-11-02 8:37 ` Krzysztof Kozlowski
2020-11-02 8:37 ` [PATCH v2 1/3] i2c: exynos5: remove duplicate error message Krzysztof Kozlowski
2 siblings, 1 reply; 8+ messages in thread
From: Martin Kaiser @ 2020-11-01 17:18 UTC (permalink / raw)
To: Krzysztof Kozlowski, Wolfram Sang, Andrzej Hajda
Cc: linux-i2c, linux-samsung-soc, linux-kernel, Martin Kaiser
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(-)
diff --git a/drivers/i2c/busses/i2c-exynos5.c b/drivers/i2c/busses/i2c-exynos5.c
index fad1c52857aa..20a9881a0d6c 100644
--- a/drivers/i2c/busses/i2c-exynos5.c
+++ b/drivers/i2c/busses/i2c-exynos5.c
@@ -778,7 +778,7 @@ 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)
+ if (ret < 0)
goto err_clk;
ret = devm_request_irq(&pdev->dev, i2c->irq, exynos5_i2c_irq,
--
2.20.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH v2 3/3] i2c: exynos5: don't check for irq 0
2020-11-01 17:18 ` [PATCH v2 3/3] i2c: exynos5: don't check for irq 0 Martin Kaiser
@ 2020-11-02 8:37 ` Krzysztof Kozlowski
0 siblings, 0 replies; 8+ messages in thread
From: Krzysztof Kozlowski @ 2020-11-02 8:37 UTC (permalink / raw)
To: Martin Kaiser
Cc: Wolfram Sang, Andrzej Hajda, linux-i2c, linux-samsung-soc,
linux-kernel
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
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 1/3] i2c: exynos5: remove duplicate error message
2020-11-01 17:18 ` [PATCH v2 1/3] i2c: exynos5: remove duplicate error message Martin Kaiser
2020-11-01 17:18 ` [PATCH v2 2/3] i2c: exynos5: fix platform_get_irq error handling Martin Kaiser
2020-11-01 17:18 ` [PATCH v2 3/3] i2c: exynos5: don't check for irq 0 Martin Kaiser
@ 2020-11-02 8:37 ` Krzysztof Kozlowski
2 siblings, 0 replies; 8+ messages in thread
From: Krzysztof Kozlowski @ 2020-11-02 8:37 UTC (permalink / raw)
To: Martin Kaiser
Cc: Wolfram Sang, Andrzej Hajda, linux-i2c, linux-samsung-soc,
linux-kernel
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
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2020-11-02 8:39 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-10-27 21:42 [PATCH] i2c: exynos5: fix platform_get_irq error handling Martin Kaiser
2020-10-28 7:21 ` Krzysztof Kozlowski
2020-11-01 17:18 ` [PATCH v2 1/3] i2c: exynos5: remove duplicate error message Martin Kaiser
2020-11-01 17:18 ` [PATCH v2 2/3] i2c: exynos5: fix platform_get_irq error handling Martin Kaiser
2020-11-02 8:39 ` Krzysztof Kozlowski
2020-11-01 17:18 ` [PATCH v2 3/3] i2c: exynos5: don't check for irq 0 Martin Kaiser
2020-11-02 8:37 ` Krzysztof Kozlowski
2020-11-02 8:37 ` [PATCH v2 1/3] i2c: exynos5: remove duplicate error message Krzysztof Kozlowski
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.