Re: [PATCH v3 2/6] staging:iio:ad2s90: Make probe handle spi_setup failure

From: Jonathan Cameron
Date: Sun Nov 04 2018 - 11:38:47 EST


On Sat, 3 Nov 2018 19:49:44 -0300
Matheus Tavares <matheus.bernardino@xxxxxx> wrote:

> Previously, ad2s90_probe ignored the return code from spi_setup, not
> handling its possible failure. This patch makes ad2s90_probe check if
> the code is an error code and, if so, do the following:
>
> - Call dev_err with an appropriate error message.
> - Return the spi_setup's error code.
>
> Note: The 'return ret' statement could be out of the 'if' block, but
> this whole block will be moved up in the function in the patch:
> 'staging:iio:ad2s90: Move device registration to the end of probe'.
>
> Signed-off-by: Matheus Tavares <matheus.bernardino@xxxxxx>
Very nicely presented patch. Thanks.

Applied to the togreg branch of iio.git and pushed out as testing for
the autobuilders to play with it.

Thanks,

Jonathan

> ---
> drivers/staging/iio/resolver/ad2s90.c | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/staging/iio/resolver/ad2s90.c b/drivers/staging/iio/resolver/ad2s90.c
> index ba55de29ef36..4908c8a95fad 100644
> --- a/drivers/staging/iio/resolver/ad2s90.c
> +++ b/drivers/staging/iio/resolver/ad2s90.c
> @@ -86,7 +86,12 @@ static int ad2s90_probe(struct spi_device *spi)
> /* need 600ns between CS and the first falling edge of SCLK */
> spi->max_speed_hz = 830000;
> spi->mode = SPI_MODE_3;
> - spi_setup(spi);
> + ret = spi_setup(spi);
> +
> + if (ret < 0) {
> + dev_err(&spi->dev, "spi_setup failed!\n");
> + return ret;
> + }
>
> return 0;
> }