2020-08-27 20:09:43

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 1/6] gpio: bcm-kona: Simplify with dev_err_probe()

Common pattern of handling deferred probe can be simplified with
dev_err_probe(). Less code and also it prints the error value.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
drivers/gpio/gpio-bcm-kona.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/drivers/gpio/gpio-bcm-kona.c b/drivers/gpio/gpio-bcm-kona.c
index cf3687a7925f..1e6b427f2c4a 100644
--- a/drivers/gpio/gpio-bcm-kona.c
+++ b/drivers/gpio/gpio-bcm-kona.c
@@ -590,10 +590,7 @@ static int bcm_kona_gpio_probe(struct platform_device *pdev)
dev_err(dev, "Couldn't determine # GPIO banks\n");
return -ENOENT;
} else if (ret < 0) {
- if (ret != -EPROBE_DEFER)
- dev_err(dev, "Couldn't determine GPIO banks: (%pe)\n",
- ERR_PTR(ret));
- return ret;
+ return dev_err_probe(dev, ret, "Couldn't determine GPIO banks\n");
}
kona_gpio->num_bank = ret;

--
2.17.1


2020-08-27 20:09:52

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 3/6] gpio: omap: Simplify with dev_err_probe()

Common pattern of handling deferred probe can be simplified with
dev_err_probe(). Less code and also it prints the error value.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
drivers/gpio/gpio-omap.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/drivers/gpio/gpio-omap.c b/drivers/gpio/gpio-omap.c
index 7fbe0c9e1fc1..2dc12f4addbd 100644
--- a/drivers/gpio/gpio-omap.c
+++ b/drivers/gpio/gpio-omap.c
@@ -1394,10 +1394,7 @@ static int omap_gpio_probe(struct platform_device *pdev)
if (bank->irq <= 0) {
if (!bank->irq)
bank->irq = -ENXIO;
- if (bank->irq != -EPROBE_DEFER)
- dev_err(dev,
- "can't get irq resource ret=%d\n", bank->irq);
- return bank->irq;
+ return dev_err_probe(dev, bank->irq, "can't get irq resource\n");
}

bank->chip.parent = dev;
--
2.17.1

2020-08-27 20:10:18

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 5/6] gpio: pisosr: Simplify with dev_err_probe()

Common pattern of handling deferred probe can be simplified with
dev_err_probe(). Less code and also it prints the error value.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
drivers/gpio/gpio-pisosr.c | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/drivers/gpio/gpio-pisosr.c b/drivers/gpio/gpio-pisosr.c
index 6698feabaced..8e04054cf07e 100644
--- a/drivers/gpio/gpio-pisosr.c
+++ b/drivers/gpio/gpio-pisosr.c
@@ -148,12 +148,9 @@ static int pisosr_gpio_probe(struct spi_device *spi)
return -ENOMEM;

gpio->load_gpio = devm_gpiod_get_optional(dev, "load", GPIOD_OUT_LOW);
- if (IS_ERR(gpio->load_gpio)) {
- ret = PTR_ERR(gpio->load_gpio);
- if (ret != -EPROBE_DEFER)
- dev_err(dev, "Unable to allocate load GPIO\n");
- return ret;
- }
+ if (IS_ERR(gpio->load_gpio))
+ return dev_err_probe(dev, PTR_ERR(gpio->load_gpio),
+ "Unable to allocate load GPIO\n");

mutex_init(&gpio->lock);

--
2.17.1

2020-08-27 20:10:51

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 6/6] gpio: zynq: Simplify with dev_err_probe()

Common pattern of handling deferred probe can be simplified with
dev_err_probe(). Less code and also it prints the error value.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
drivers/gpio/gpio-zynq.c | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/drivers/gpio/gpio-zynq.c b/drivers/gpio/gpio-zynq.c
index 53d1387592fd..0b5a17ab996f 100644
--- a/drivers/gpio/gpio-zynq.c
+++ b/drivers/gpio/gpio-zynq.c
@@ -929,11 +929,9 @@ static int zynq_gpio_probe(struct platform_device *pdev)

/* Retrieve GPIO clock */
gpio->clk = devm_clk_get(&pdev->dev, NULL);
- if (IS_ERR(gpio->clk)) {
- if (PTR_ERR(gpio->clk) != -EPROBE_DEFER)
- dev_err(&pdev->dev, "input clock not found.\n");
- return PTR_ERR(gpio->clk);
- }
+ if (IS_ERR(gpio->clk))
+ return dev_err_probe(&pdev->dev, PTR_ERR(gpio->clk), "input clock not found.\n");
+
ret = clk_prepare_enable(gpio->clk);
if (ret) {
dev_err(&pdev->dev, "Unable to enable clock.\n");
--
2.17.1

2020-08-27 20:11:08

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 2/6] gpio: davinci: Simplify with dev_err_probe()

Common pattern of handling deferred probe can be simplified with
dev_err_probe(). Less code and also it prints the error value.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
drivers/gpio/gpio-davinci.c | 8 ++------
1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/drivers/gpio/gpio-davinci.c b/drivers/gpio/gpio-davinci.c
index 085b874db2a9..6f2138503726 100644
--- a/drivers/gpio/gpio-davinci.c
+++ b/drivers/gpio/gpio-davinci.c
@@ -237,12 +237,8 @@ static int davinci_gpio_probe(struct platform_device *pdev)

for (i = 0; i < nirq; i++) {
chips->irqs[i] = platform_get_irq(pdev, i);
- if (chips->irqs[i] < 0) {
- if (chips->irqs[i] != -EPROBE_DEFER)
- dev_info(dev, "IRQ not populated, err = %d\n",
- chips->irqs[i]);
- return chips->irqs[i];
- }
+ if (chips->irqs[i] < 0)
+ return dev_err_probe(dev, chips->irqs[i], "IRQ not populated\n");
}

chips->chip.label = dev_name(dev);
--
2.17.1

2020-08-27 20:11:40

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 4/6] gpio: pca953x: Simplify with dev_err_probe()

Common pattern of handling deferred probe can be simplified with
dev_err_probe(). Less code and also it prints the error value.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
drivers/gpio/gpio-pca953x.c | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/drivers/gpio/gpio-pca953x.c b/drivers/gpio/gpio-pca953x.c
index bd2e96c34f82..b5c3e56613a7 100644
--- a/drivers/gpio/gpio-pca953x.c
+++ b/drivers/gpio/gpio-pca953x.c
@@ -1000,12 +1000,9 @@ static int pca953x_probe(struct i2c_client *client,
chip->client = client;

reg = devm_regulator_get(&client->dev, "vcc");
- if (IS_ERR(reg)) {
- ret = PTR_ERR(reg);
- if (ret != -EPROBE_DEFER)
- dev_err(&client->dev, "reg get err: %d\n", ret);
- return ret;
- }
+ if (IS_ERR(reg))
+ return dev_err_probe(&client->dev, PTR_ERR(reg), "reg get err\n");
+
ret = regulator_enable(reg);
if (ret) {
dev_err(&client->dev, "reg en err: %d\n", ret);
--
2.17.1

2020-08-28 05:24:31

by Michal Simek

[permalink] [raw]
Subject: Re: [PATCH 6/6] gpio: zynq: Simplify with dev_err_probe()



On 27. 08. 20 22:08, Krzysztof Kozlowski wrote:
> Common pattern of handling deferred probe can be simplified with
> dev_err_probe(). Less code and also it prints the error value.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---
> drivers/gpio/gpio-zynq.c | 8 +++-----
> 1 file changed, 3 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/gpio/gpio-zynq.c b/drivers/gpio/gpio-zynq.c
> index 53d1387592fd..0b5a17ab996f 100644
> --- a/drivers/gpio/gpio-zynq.c
> +++ b/drivers/gpio/gpio-zynq.c
> @@ -929,11 +929,9 @@ static int zynq_gpio_probe(struct platform_device *pdev)
>
> /* Retrieve GPIO clock */
> gpio->clk = devm_clk_get(&pdev->dev, NULL);
> - if (IS_ERR(gpio->clk)) {
> - if (PTR_ERR(gpio->clk) != -EPROBE_DEFER)
> - dev_err(&pdev->dev, "input clock not found.\n");
> - return PTR_ERR(gpio->clk);
> - }
> + if (IS_ERR(gpio->clk))
> + return dev_err_probe(&pdev->dev, PTR_ERR(gpio->clk), "input clock not found.\n");
> +
> ret = clk_prepare_enable(gpio->clk);
> if (ret) {
> dev_err(&pdev->dev, "Unable to enable clock.\n");
>

Reviewed-by: Michal Simek <[email protected]>

Thanks,
Michal

2020-08-28 08:04:46

by Grygorii Strashko

[permalink] [raw]
Subject: Re: [PATCH 3/6] gpio: omap: Simplify with dev_err_probe()



On 27/08/2020 23:08, Krzysztof Kozlowski wrote:
> Common pattern of handling deferred probe can be simplified with
> dev_err_probe(). Less code and also it prints the error value.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---
> drivers/gpio/gpio-omap.c | 5 +----
> 1 file changed, 1 insertion(+), 4 deletions(-)
>
> diff --git a/drivers/gpio/gpio-omap.c b/drivers/gpio/gpio-omap.c
> index 7fbe0c9e1fc1..2dc12f4addbd 100644
> --- a/drivers/gpio/gpio-omap.c
> +++ b/drivers/gpio/gpio-omap.c
> @@ -1394,10 +1394,7 @@ static int omap_gpio_probe(struct platform_device *pdev)
> if (bank->irq <= 0) {
> if (!bank->irq)
> bank->irq = -ENXIO;
> - if (bank->irq != -EPROBE_DEFER)
> - dev_err(dev,
> - "can't get irq resource ret=%d\n", bank->irq);
> - return bank->irq;
> + return dev_err_probe(dev, bank->irq, "can't get irq resource\n");
> }
>
> bank->chip.parent = dev;
>

Acked-by: Grygorii Strashko <[email protected]>

--
Best regards,
grygorii

2020-08-28 10:07:13

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [PATCH 1/6] gpio: bcm-kona: Simplify with dev_err_probe()

On Thu, Aug 27, 2020 at 11:09 PM Krzysztof Kozlowski <[email protected]> wrote:
>
> Common pattern of handling deferred probe can be simplified with
> dev_err_probe(). Less code and also it prints the error value.
>

I believe you are doing this right (after we have discussed previous
series and approaches).
Reviewed-by: Andy Shevchenko <[email protected]>
for entire series (Linus!)

> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---
> drivers/gpio/gpio-bcm-kona.c | 5 +----
> 1 file changed, 1 insertion(+), 4 deletions(-)
>
> diff --git a/drivers/gpio/gpio-bcm-kona.c b/drivers/gpio/gpio-bcm-kona.c
> index cf3687a7925f..1e6b427f2c4a 100644
> --- a/drivers/gpio/gpio-bcm-kona.c
> +++ b/drivers/gpio/gpio-bcm-kona.c
> @@ -590,10 +590,7 @@ static int bcm_kona_gpio_probe(struct platform_device *pdev)
> dev_err(dev, "Couldn't determine # GPIO banks\n");
> return -ENOENT;
> } else if (ret < 0) {
> - if (ret != -EPROBE_DEFER)
> - dev_err(dev, "Couldn't determine GPIO banks: (%pe)\n",
> - ERR_PTR(ret));
> - return ret;
> + return dev_err_probe(dev, ret, "Couldn't determine GPIO banks\n");
> }
> kona_gpio->num_bank = ret;
>
> --
> 2.17.1
>


--
With Best Regards,
Andy Shevchenko

2020-08-28 17:16:26

by Florian Fainelli

[permalink] [raw]
Subject: Re: [PATCH 1/6] gpio: bcm-kona: Simplify with dev_err_probe()

On 8/27/20 1:08 PM, Krzysztof Kozlowski wrote:
> Common pattern of handling deferred probe can be simplified with
> dev_err_probe(). Less code and also it prints the error value.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>

Acked-by: Florian Fainelli <[email protected]>
--
Florian

2020-08-28 18:20:31

by Bartosz Golaszewski

[permalink] [raw]
Subject: Re: [PATCH 1/6] gpio: bcm-kona: Simplify with dev_err_probe()

On Thu, Aug 27, 2020 at 10:08 PM Krzysztof Kozlowski <[email protected]> wrote:
>
> Common pattern of handling deferred probe can be simplified with
> dev_err_probe(). Less code and also it prints the error value.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---
> drivers/gpio/gpio-bcm-kona.c | 5 +----
> 1 file changed, 1 insertion(+), 4 deletions(-)
>
> diff --git a/drivers/gpio/gpio-bcm-kona.c b/drivers/gpio/gpio-bcm-kona.c
> index cf3687a7925f..1e6b427f2c4a 100644
> --- a/drivers/gpio/gpio-bcm-kona.c
> +++ b/drivers/gpio/gpio-bcm-kona.c
> @@ -590,10 +590,7 @@ static int bcm_kona_gpio_probe(struct platform_device *pdev)
> dev_err(dev, "Couldn't determine # GPIO banks\n");
> return -ENOENT;
> } else if (ret < 0) {
> - if (ret != -EPROBE_DEFER)
> - dev_err(dev, "Couldn't determine GPIO banks: (%pe)\n",
> - ERR_PTR(ret));
> - return ret;
> + return dev_err_probe(dev, ret, "Couldn't determine GPIO banks\n");
> }
> kona_gpio->num_bank = ret;
>
> --
> 2.17.1
>

Queued the entire series with all the tags, thanks!

Bartosz

2020-09-12 09:28:03

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH 6/6] gpio: zynq: Simplify with dev_err_probe()

On Thu, Aug 27, 2020 at 10:08 PM Krzysztof Kozlowski <[email protected]> wrote:

> Common pattern of handling deferred probe can be simplified with
> dev_err_probe(). Less code and also it prints the error value.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>

All six patches applied!

Thanks!
Yours,
Linus Walleij

2020-09-12 09:29:44

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH 1/6] gpio: bcm-kona: Simplify with dev_err_probe()

On Fri, Aug 28, 2020 at 8:17 PM Bartosz Golaszewski
<[email protected]> wrote:

> Queued the entire series with all the tags, thanks!

Oh you already queued them, I'll drop them from my tree.

Thanks!
Linus Walleij