Hi!

> Currently the driver does not handle EPROBE_DEFER for the confd gpio.
> Use devm_gpiod_get_optional() instead of devm_gpiod_get() and return
> error codes from altera_ps_probe().

> @@ -265,10 +265,13 @@ static int altera_ps_probe(struct spi_device *spi)
>               return PTR_ERR(conf->status);
>       }
>  
> -     conf->confd = devm_gpiod_get(&spi->dev, "confd", GPIOD_IN);
> +     conf->confd = devm_gpiod_get_optional(&spi->dev, "confd", GPIOD_IN);
>       if (IS_ERR(conf->confd)) {
> -             dev_warn(&spi->dev, "Not using confd gpio: %ld\n",
> -                      PTR_ERR(conf->confd));
> +             dev_err(&spi->dev, "Failed to get confd gpio: %ld\n",
> +                     PTR_ERR(conf->confd));
> +             return PTR_ERR(conf->confd);

Will this result in repeated errors in dmesg in case of EPROBE_DEFER?
We often avoid printing such messages in EPROBE_DEFER case.

> +     } else if (!conf->confd) {
> +             dev_warn(&spi->dev, "Not using confd gpio");
>       }
>  
>       /* Register manager with unique name */

Best regards,
                                                                        Pavel

-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) 
http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

Attachment: signature.asc
Description: Digital signature

Reply via email to