diff mbox series

gpio: omap: handle deferred probe with dev_err_probe() for gpiochip_add_data()

Message ID 20201118143149.26067-1-grygorii.strashko@ti.com
State New
Headers show
Series gpio: omap: handle deferred probe with dev_err_probe() for gpiochip_add_data() | expand

Commit Message

Grygorii Strashko Nov. 18, 2020, 2:31 p.m. UTC
The gpiochip_add_data() may return -EPROBE_DEFER which is not handled
properly by TI GPIO driver and causes unnecessary boot log messages.

Hence, add proper deferred probe handling with new dev_err_probe() API.

Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
---
 drivers/gpio/gpio-omap.c | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

Comments

Tony Lindgren Nov. 19, 2020, 9:19 a.m. UTC | #1
* Grygorii Strashko <grygorii.strashko@ti.com> [201118 14:33]:
> The gpiochip_add_data() may return -EPROBE_DEFER which is not handled

> properly by TI GPIO driver and causes unnecessary boot log messages.

> 

> Hence, add proper deferred probe handling with new dev_err_probe() API.

> 

> Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>


Acked-by: Tony Lindgren <tony@atomide.com>
Grygorii Strashko Nov. 30, 2020, 10:33 a.m. UTC | #2
Hi All,

On 19/11/2020 11:19, Tony Lindgren wrote:
> * Grygorii Strashko <grygorii.strashko@ti.com> [201118 14:33]:
>> The gpiochip_add_data() may return -EPROBE_DEFER which is not handled
>> properly by TI GPIO driver and causes unnecessary boot log messages.
>>
>> Hence, add proper deferred probe handling with new dev_err_probe() API.
>>
>> Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
> 
> Acked-by: Tony Lindgren <tony@atomide.com>
> 

Are there any comments? Could it be merged?
On am335 we no do see ~10 annoying error  messages during boot as there now is
dependency from pinctrl on this platform.
Bartosz Golaszewski Nov. 30, 2020, 4:39 p.m. UTC | #3
On Wed, Nov 18, 2020 at 3:31 PM Grygorii Strashko
<grygorii.strashko@ti.com> wrote:
>
> The gpiochip_add_data() may return -EPROBE_DEFER which is not handled
> properly by TI GPIO driver and causes unnecessary boot log messages.
>
> Hence, add proper deferred probe handling with new dev_err_probe() API.
>
> Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
> ---
>  drivers/gpio/gpio-omap.c | 7 ++-----
>  1 file changed, 2 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/gpio/gpio-omap.c b/drivers/gpio/gpio-omap.c
> index f7ceb2b11afc..41952bb818ad 100644
> --- a/drivers/gpio/gpio-omap.c
> +++ b/drivers/gpio/gpio-omap.c
> @@ -1049,11 +1049,8 @@ static int omap_gpio_chip_init(struct gpio_bank *bank, struct irq_chip *irqc)
>         irq->first = irq_base;
>
>         ret = gpiochip_add_data(&bank->chip, bank);
> -       if (ret) {
> -               dev_err(bank->chip.parent,
> -                       "Could not register gpio chip %d\n", ret);
> -               return ret;
> -       }
> +       if (ret)
> +               return dev_err_probe(bank->chip.parent, ret, "Could not register gpio chip\n");
>
>         ret = devm_request_irq(bank->chip.parent, bank->irq,
>                                omap_gpio_irq_handler,
> --
> 2.17.1
>

Now applied. Thanks!

Bartosz
diff mbox series

Patch

diff --git a/drivers/gpio/gpio-omap.c b/drivers/gpio/gpio-omap.c
index f7ceb2b11afc..41952bb818ad 100644
--- a/drivers/gpio/gpio-omap.c
+++ b/drivers/gpio/gpio-omap.c
@@ -1049,11 +1049,8 @@  static int omap_gpio_chip_init(struct gpio_bank *bank, struct irq_chip *irqc)
 	irq->first = irq_base;
 
 	ret = gpiochip_add_data(&bank->chip, bank);
-	if (ret) {
-		dev_err(bank->chip.parent,
-			"Could not register gpio chip %d\n", ret);
-		return ret;
-	}
+	if (ret)
+		return dev_err_probe(bank->chip.parent, ret, "Could not register gpio chip\n");
 
 	ret = devm_request_irq(bank->chip.parent, bank->irq,
 			       omap_gpio_irq_handler,