[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <9d08ae7284e1b0b57c5328545c5c5bbe96b210ef.camel@analog.com>
Date: Thu, 28 May 2020 09:42:56 +0000
From: "Ardelean, Alexandru" <alexandru.Ardelean@...log.com>
To: "hslester96@...il.com" <hslester96@...il.com>
CC: "pmeerw@...erw.net" <pmeerw@...erw.net>,
"linux-iio@...r.kernel.org" <linux-iio@...r.kernel.org>,
"lars@...afoo.de" <lars@...afoo.de>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"paul.cercueil@...log.com" <paul.cercueil@...log.com>,
"Hennerich, Michael" <Michael.Hennerich@...log.com>,
"knaack.h@....de" <knaack.h@....de>,
"jic23@...nel.org" <jic23@...nel.org>
Subject: Re: [PATCH v2] iio: amplifiers: ad8366: Add the missed check for
devm_gpiod_get()
On Thu, 2020-05-28 at 14:40 +0800, Chuhong Yuan wrote:
> [External]
>
> ad8366_probe() forgets to check the return value of devm_gpiod_get().
> Add the missed check to fix it.
>
> Fixes: cee211f4e5a0 ("iio: amplifiers: ad8366: Add support for the
> ADA4961 DGA")
> Signed-off-by: Chuhong Yuan <hslester96@...il.com>
> ---
> Changes in v2:
> - Add fixes tag.
>
> drivers/iio/amplifiers/ad8366.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/iio/amplifiers/ad8366.c
> b/drivers/iio/amplifiers/ad8366.c
> index 62167b87caea..b996823c8d51 100644
> --- a/drivers/iio/amplifiers/ad8366.c
> +++ b/drivers/iio/amplifiers/ad8366.c
> @@ -264,6 +264,10 @@ static int ad8366_probe(struct spi_device *spi)
> case ID_HMC1119:
> st->reset_gpio = devm_gpiod_get(&spi->dev, "reset",
> GPIOD_OUT_HIGH);
this is semi-intentional i guess;
in the sense that if there is no GPIO, nothing happens;
maybe convert this to devm_gpiod_get_optional()
otherwise, if there is no reset GPIO, this can fail the probe; and the GPIO
is not optional;
rest of the code looks fine (with the devm_gpiod_get_optional()
modification)
> + 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;
Powered by blists - more mailing lists