Re: [PATCH 1/8] iio: fix access to hmc5843 private data

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Peter,
A minor observation your from and signoff are a little different was
it intended?

On Wed, May 9, 2012 at 3:49 AM, Peter Meerwald <pmeerw@xxxxxxxxxx> wrote:
> From: Peter Meerwald <p.meerwald@xxxxxxxxxxxxxxxxxx>
>
> i2c_get_clientdata(client) points to iio_dev, not hmc5843_data; fixes
> issue similar to 62d2feb9803f18c4e3c8a1a2c7e30a54df8a1d72
>
Looks good to me ack.

> Signed-off-by: Peter Meerwald <pmeerw@xxxxxxxxxx>
> ---
>  drivers/staging/iio/magnetometer/hmc5843.c |   14 +++++++++-----
>  1 files changed, 9 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/staging/iio/magnetometer/hmc5843.c b/drivers/staging/iio/magnetometer/hmc5843.c
> index 3ec6518..9725cf8 100644
> --- a/drivers/staging/iio/magnetometer/hmc5843.c
> +++ b/drivers/staging/iio/magnetometer/hmc5843.c
> @@ -250,7 +250,8 @@ static IIO_DEVICE_ATTR(operating_mode,
>  static s32 hmc5843_set_meas_conf(struct i2c_client *client,
>                                      u8 meas_conf)
>  {
> -       struct hmc5843_data *data = i2c_get_clientdata(client);
> +       struct iio_dev *indio_dev = i2c_get_clientdata(client);
> +       struct hmc5843_data *data = iio_priv(indio_dev);
>        u8 reg_val;
>        reg_val = (meas_conf & MEAS_CONF_MASK) |  (data->rate << RATE_OFFSET);
>        return i2c_smbus_write_byte_data(client, HMC5843_CONFIG_REG_A, reg_val);
> @@ -272,7 +273,7 @@ static ssize_t hmc5843_set_measurement_configuration(struct device *dev,
>  {
>        struct iio_dev *indio_dev = dev_get_drvdata(dev);
>        struct i2c_client *client = to_i2c_client(indio_dev->dev.parent);
> -       struct hmc5843_data *data = i2c_get_clientdata(client);
> +       struct hmc5843_data *data = iio_priv(indio_dev);
>        unsigned long meas_conf = 0;
>        int error = strict_strtoul(buf, 10, &meas_conf);
>        if (error)
> @@ -314,7 +315,8 @@ static IIO_CONST_ATTR_SAMP_FREQ_AVAIL("0.5 1 2 5 10 20 50");
>  static s32 hmc5843_set_rate(struct i2c_client *client,
>                                u8 rate)
>  {
> -       struct hmc5843_data *data = i2c_get_clientdata(client);
> +       struct iio_dev *indio_dev = i2c_get_clientdata(client);
> +       struct hmc5843_data *data = iio_priv(indio_dev);
>        u8 reg_val;
>
>        reg_val = (data->meas_conf) |  (rate << RATE_OFFSET);
> @@ -600,8 +602,10 @@ static int hmc5843_suspend(struct device *dev)
>
>  static int hmc5843_resume(struct device *dev)
>  {
> -       struct hmc5843_data *data = i2c_get_clientdata(to_i2c_client(dev));
> -       hmc5843_configure(to_i2c_client(dev), data->operating_mode);
> +       struct i2c_client *client = to_i2c_client(dev);
> +       struct iio_dev *indio_dev = i2c_get_clientdata(client);
> +       struct hmc5843_data *data = iio_priv(indio_dev);
> +       hmc5843_configure(client, data->operating_mode);
>        return 0;
>  }
>
> --
> 1.7.5.4
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-iio" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-iio" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux