Re: [PATCH] iio: adc: palmas_gpadc: retrieve a valid iio_dev in suspend/resume

From: Jonathan Cameron
Date: Sat Jan 21 2017 - 09:28:02 EST


On 16/01/17 19:27, Alison Schofield wrote:
> The suspend/resume functions were using dev_to_iio_dev() to get
> the iio_dev. That only works on IIO dev's. Use dev_get_drvdata()
> for a platform device to get the correct iio_dev.
>
> Signed-off-by: Alison Schofield <amsfield22@xxxxxxxxx>
Applied to the fixes-togreg branch of iio.git and marked for stable.

Thanks,

Jonathan
> ---
> drivers/iio/adc/palmas_gpadc.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/iio/adc/palmas_gpadc.c b/drivers/iio/adc/palmas_gpadc.c
> index 2bbf0c5..7d61b56 100644
> --- a/drivers/iio/adc/palmas_gpadc.c
> +++ b/drivers/iio/adc/palmas_gpadc.c
> @@ -775,7 +775,7 @@ static int palmas_adc_wakeup_reset(struct palmas_gpadc *adc)
>
> static int palmas_gpadc_suspend(struct device *dev)
> {
> - struct iio_dev *indio_dev = dev_to_iio_dev(dev);
> + struct iio_dev *indio_dev = dev_get_drvdata(dev);
> struct palmas_gpadc *adc = iio_priv(indio_dev);
> int wakeup = adc->wakeup1_enable || adc->wakeup2_enable;
> int ret;
> @@ -798,7 +798,7 @@ static int palmas_gpadc_suspend(struct device *dev)
>
> static int palmas_gpadc_resume(struct device *dev)
> {
> - struct iio_dev *indio_dev = dev_to_iio_dev(dev);
> + struct iio_dev *indio_dev = dev_get_drvdata(dev);
> struct palmas_gpadc *adc = iio_priv(indio_dev);
> int wakeup = adc->wakeup1_enable || adc->wakeup2_enable;
> int ret;
>