From: David Veenstra Date: Fri, 18 May 2018 18:21:44 +0000 (+0200) Subject: staging: iio: ad2s1200: Setup spi before iio device register X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=94cdefa81b99dd37239cdb147bc5a1473a3cdacc;p=linux.git staging: iio: ad2s1200: Setup spi before iio device register The spi should be set up before the device is registered as an iio device. This patch moves the setup to before the device registration. Signed-off-by: David Veenstra Signed-off-by: Jonathan Cameron --- diff --git a/drivers/staging/iio/resolver/ad2s1200.c b/drivers/staging/iio/resolver/ad2s1200.c index 068aa86e9c115..430cc62591fef 100644 --- a/drivers/staging/iio/resolver/ad2s1200.c +++ b/drivers/staging/iio/resolver/ad2s1200.c @@ -143,15 +143,16 @@ static int ad2s1200_probe(struct spi_device *spi) indio_dev->num_channels = ARRAY_SIZE(ad2s1200_channels); indio_dev->name = spi_get_device_id(spi)->name; - ret = devm_iio_device_register(&spi->dev, indio_dev); - if (ret) - return ret; - spi->max_speed_hz = AD2S1200_HZ; 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; + return devm_iio_device_register(&spi->dev, indio_dev); } static const struct spi_device_id ad2s1200_id[] = {