iio: amplifiers: ad8366: Change devm_gpiod_get() to optional and add the missed check
authorChuhong Yuan <hslester96@gmail.com>
Wed, 3 Jun 2020 09:26:10 +0000 (17:26 +0800)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Sun, 14 Jun 2020 10:49:55 +0000 (11:49 +0100)
Since if there is no GPIO, nothing happens, replace devm_gpiod_get()
with devm_gpiod_get_optional().
Also add IS_ERR() to fix the missing-check warning.

Fixes: cee211f4e5a0 ("iio: amplifiers: ad8366: Add support for the ADA4961 DGA")
Signed-off-by: Chuhong Yuan <hslester96@gmail.com>
Acked-by: Alexandru Ardelean <alexandru.ardelean@analog.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/amplifiers/ad8366.c

index 62167b8..8345ba6 100644 (file)
@@ -262,8 +262,11 @@ static int ad8366_probe(struct spi_device *spi)
        case ID_ADA4961:
        case ID_ADL5240:
        case ID_HMC1119:
-               st->reset_gpio = devm_gpiod_get(&spi->dev, "reset",
-                       GPIOD_OUT_HIGH);
+               st->reset_gpio = devm_gpiod_get_optional(&spi->dev, "reset", GPIOD_OUT_HIGH);
+               if (IS_ERR(st->reset_gpio)) {
+                       ret = PTR_ERR(st->reset_gpio);
+                       goto error_disable_reg;
+               }
                indio_dev->channels = ada4961_channels;
                indio_dev->num_channels = ARRAY_SIZE(ada4961_channels);
                break;