2016-04-20 14:38:19

by Javier Martinez Canillas

[permalink] [raw]
Subject: [PATCH v2 1/2] i2c: s3c2410: Print errno code in error logs

The driver not always prints the error code in case of a failure but this
information can be very useful for debugging. So let's print if available.

Signed-off-by: Javier Martinez Canillas <[email protected]>

---

Hello,

This patch and 2/2 were only build tested because I don't have access to
a board using this IP block. I just noticed these issues when comparing
the i2c-s3c2410 driver with i2c-exynos5 where I did some fixes recently.

I think the patches are simple enough that is safe to pick them but of
course testing will be highly appreciated.

Best regards,
Javier

Changes in v2:
- Don't print the errno code on probe since it's already printed by the
core. Suggested by Krzysztof Kozlowski.

drivers/i2c/busses/i2c-s3c2410.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/i2c/busses/i2c-s3c2410.c b/drivers/i2c/busses/i2c-s3c2410.c
index 362a6de54833..13f67df65c45 100644
--- a/drivers/i2c/busses/i2c-s3c2410.c
+++ b/drivers/i2c/busses/i2c-s3c2410.c
@@ -944,7 +944,7 @@ static int s3c24xx_i2c_cpufreq_transition(struct notifier_block *nb,
i2c_unlock_adapter(&i2c->adap);

if (ret < 0)
- dev_err(i2c->dev, "cannot find frequency\n");
+ dev_err(i2c->dev, "cannot find frequency (%d)\n", ret);
else
dev_info(i2c->dev, "setting freq %d\n", got);
}
@@ -995,7 +995,8 @@ static int s3c24xx_i2c_parse_dt_gpio(struct s3c24xx_i2c *i2c)

ret = gpio_request(gpio, "i2c-bus");
if (ret) {
- dev_err(i2c->dev, "gpio [%d] request failed\n", gpio);
+ dev_err(i2c->dev, "gpio [%d] request failed (%d)\n",
+ gpio, ret);
goto free_gpio;
}
}
--
2.5.5


2016-04-20 14:38:25

by Javier Martinez Canillas

[permalink] [raw]
Subject: [PATCH v2 2/2] i2c: s3c2410: Check clk_prepare_enable() return value

The clk_prepare_enable() function can fail so check the return
value and propagate the error in case of a failure.

Signed-off-by: Javier Martinez Canillas <[email protected]>

---

Changes in v2:
- Don't print the errno code since that's already printed by the
core when probe fails. Suggested by Krzysztof Kozlowski.

drivers/i2c/busses/i2c-s3c2410.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/i2c/busses/i2c-s3c2410.c b/drivers/i2c/busses/i2c-s3c2410.c
index 13f67df65c45..8a9ea0c1e41d 100644
--- a/drivers/i2c/busses/i2c-s3c2410.c
+++ b/drivers/i2c/busses/i2c-s3c2410.c
@@ -1196,7 +1196,12 @@ static int s3c24xx_i2c_probe(struct platform_device *pdev)

/* initialise the i2c controller */

- clk_prepare_enable(i2c->clk);
+ ret = clk_prepare_enable(i2c->clk);
+ if (ret) {
+ dev_err(&pdev->dev, "I2C clock enable failed\n");
+ return ret;
+ }
+
ret = s3c24xx_i2c_init(i2c);
clk_disable(i2c->clk);
if (ret != 0) {
--
2.5.5

2016-04-21 07:18:17

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH v2 1/2] i2c: s3c2410: Print errno code in error logs

On 04/20/2016 04:37 PM, Javier Martinez Canillas wrote:
> The driver not always prints the error code in case of a failure but this
> information can be very useful for debugging. So let's print if available.
>
> Signed-off-by: Javier Martinez Canillas <[email protected]>
>
> ---
>
> Hello,
>
> This patch and 2/2 were only build tested because I don't have access to
> a board using this IP block. I just noticed these issues when comparing
> the i2c-s3c2410 driver with i2c-exynos5 where I did some fixes recently.
>
> I think the patches are simple enough that is safe to pick them but of
> course testing will be highly appreciated.
>
> Best regards,
> Javier
>
> Changes in v2:
> - Don't print the errno code on probe since it's already printed by the
> core. Suggested by Krzysztof Kozlowski.
>
> drivers/i2c/busses/i2c-s3c2410.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)

Reviewed-by: Krzysztof Kozlowski <[email protected]>

Tested on Trats2 (Exynos4412, samsung,s3c2440-i2c)
Tested-by: Krzysztof Kozlowski <[email protected]>

Best regards,
Krzysztof

2016-04-21 07:19:46

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH v2 2/2] i2c: s3c2410: Check clk_prepare_enable() return value

On 04/20/2016 04:37 PM, Javier Martinez Canillas wrote:
> The clk_prepare_enable() function can fail so check the return
> value and propagate the error in case of a failure.
>
> Signed-off-by: Javier Martinez Canillas <[email protected]>
>
> ---
>
> Changes in v2:
> - Don't print the errno code since that's already printed by the
> core when probe fails. Suggested by Krzysztof Kozlowski.
>
> drivers/i2c/busses/i2c-s3c2410.c | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)


Reviewed-by: Krzysztof Kozlowski <[email protected]>

Tested on Trats2 (Exynos4412, samsung,s3c2440-i2c)
Tested-by: Krzysztof Kozlowski <[email protected]>

Best regards,
Krzysztof


2016-04-25 22:20:53

by Wolfram Sang

[permalink] [raw]
Subject: Re: [PATCH v2 1/2] i2c: s3c2410: Print errno code in error logs

On Wed, Apr 20, 2016 at 10:37:55AM -0400, Javier Martinez Canillas wrote:
> The driver not always prints the error code in case of a failure but this
> information can be very useful for debugging. So let's print if available.
>
> Signed-off-by: Javier Martinez Canillas <[email protected]>
>

Applied to for-next, thanks!


Attachments:
(No filename) (331.00 B)
signature.asc (819.00 B)
Download all attachments

2016-04-25 22:20:58

by Wolfram Sang

[permalink] [raw]
Subject: Re: [PATCH v2 2/2] i2c: s3c2410: Check clk_prepare_enable() return value

On Wed, Apr 20, 2016 at 10:37:56AM -0400, Javier Martinez Canillas wrote:
> The clk_prepare_enable() function can fail so check the return
> value and propagate the error in case of a failure.
>
> Signed-off-by: Javier Martinez Canillas <[email protected]>
>

Applied to for-next, thanks!


Attachments:
(No filename) (297.00 B)
signature.asc (819.00 B)
Download all attachments