iio: adi: ad7192: Add error check and more debug log
authorMarkus Burri <markus.burri@mt.com>
Wed, 14 Jun 2023 07:30:33 +0000 (09:30 +0200)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Sat, 15 Jul 2023 16:53:38 +0000 (17:53 +0100)
Print read and expected device ID as debug warning.
Add error check for ad_sd_init() result.

Reviewed-by: Nuno Sa <nuno.sa@analog.com>
Signed-off-by: Markus Burri <markus.burri@mt.com>
Link: https://lore.kernel.org/r/20230614073033.2497318-1-markus.burri@mt.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/adc/ad7192.c

index 5dcb257ad7545410e8e6f6fcb018f32ffba8a789..e23d9a7dcc9ecbbca2158ebedc35e56b739e856a 100644 (file)
@@ -402,8 +402,8 @@ static int ad7192_setup(struct iio_dev *indio_dev, struct device_node *np)
        id &= AD7192_ID_MASK;
 
        if (id != st->chip_info->chip_id)
-               dev_warn(&st->sd.spi->dev, "device ID query failed (0x%X)\n",
-                        id);
+               dev_warn(&st->sd.spi->dev, "device ID query failed (0x%X != 0x%X)\n",
+                        id, st->chip_info->chip_id);
 
        st->mode = AD7192_MODE_SEL(AD7192_MODE_IDLE) |
                AD7192_MODE_CLKSRC(st->clock_sel) |
@@ -1031,7 +1031,9 @@ static int ad7192_probe(struct spi_device *spi)
        else
                indio_dev->info = &ad7192_info;
 
-       ad_sd_init(&st->sd, indio_dev, spi, &ad7192_sigma_delta_info);
+       ret = ad_sd_init(&st->sd, indio_dev, spi, &ad7192_sigma_delta_info);
+       if (ret)
+               return ret;
 
        ret = devm_ad_sd_setup_buffer_and_trigger(&spi->dev, indio_dev);
        if (ret)