On 02/01/15 09:02, Devendra Naga wrote:
> This patch adds the error handling for the value returned from
> ade7759_spi_read_reg_16. With this patch, the following randconfig
> warnings get fixed automatically.
>
> drivers/staging/iio/meter/ade7759.c:224:6: warning: ‘val’ may be
> used uninitialized in this function [-Wmaybe-uninitialized]
> drivers/staging/iio/meter/ade7759.c:309:6: warning: ‘val’ may be
> used uninitialized in this function [-Wmaybe-uninitialized]
>
> Signed-off-by: Devendra Naga <[email protected]>
applied to the togreg branch of iio.git - initially pushed out
as testing to let the autobuilders play with it.
Again, this is now 3.21 material...
> ---
> Hello,
>
> Please see if this is the error message you wanted.
>
> Build tested on next-20141231 with randconfig sent to iio ml,
> and with allmodconfig.
>
> drivers/staging/iio/meter/ade7759.c | 14 ++++++++++++--
> 1 file changed, 12 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/staging/iio/meter/ade7759.c
> b/drivers/staging/iio/meter/ade7759.c
> index 7d21743..86b5145 100644
> --- a/drivers/staging/iio/meter/ade7759.c
> +++ b/drivers/staging/iio/meter/ade7759.c
> @@ -218,9 +218,12 @@ static int ade7759_reset(struct device *dev)
> int ret;
> u16 val;
>
> - ade7759_spi_read_reg_16(dev,
> + ret = ade7759_spi_read_reg_16(dev,
> ADE7759_MODE,
> &val);
> + if (ret < 0)
> + return ret;
> +
> val |= 1 << 6; /* Software Chip Reset */
> ret = ade7759_spi_write_reg_16(dev,
> ADE7759_MODE,
> @@ -301,11 +304,18 @@ error_ret:
> /* Power down the device */
> static int ade7759_stop_device(struct device *dev)
> {
> + int ret;
> u16 val;
>
> - ade7759_spi_read_reg_16(dev,
> + ret = ade7759_spi_read_reg_16(dev,
> ADE7759_MODE,
> &val);
> + if (ret < 0) {
> + dev_err(dev, "unable to power down the device, error: %d\n",
> + ret);
> + return ret;
> + }
> +
> val |= 1 << 4; /* AD converters can be turned off */
>
> return ade7759_spi_write_reg_16(dev, ADE7759_MODE, val);
>
_______________________________________________
devel mailing list
[email protected]
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel