Commit 826514b4 authored by Roland Stigge's avatar Roland Stigge Committed by Greg Kroah-Hartman

Staging: iio: max517.c: Fix client obtainment by using iio_dev_get_devdata()

max517.c: Fix client obtainment by using iio_dev_get_devdata()

This patch uses dev_get_drvdata() and iio_dev_get_devdata() instead of
to_i2c_client() (broken!) to obtain i2c_client data.

Further, some minor typo fixes are included.
Signed-off-by: default avatarRoland Stigge <stigge@antcom.de>
Acked-by: default avatarJonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 86878827
...@@ -45,6 +45,7 @@ enum max517_device_ids { ...@@ -45,6 +45,7 @@ enum max517_device_ids {
struct max517_data { struct max517_data {
struct iio_dev *indio_dev; struct iio_dev *indio_dev;
struct i2c_client *client;
unsigned short vref_mv[2]; unsigned short vref_mv[2];
}; };
...@@ -57,7 +58,9 @@ static ssize_t max517_set_value(struct device *dev, ...@@ -57,7 +58,9 @@ static ssize_t max517_set_value(struct device *dev,
struct device_attribute *attr, struct device_attribute *attr,
const char *buf, size_t count, int channel) const char *buf, size_t count, int channel)
{ {
struct i2c_client *client = to_i2c_client(dev); struct iio_dev *dev_info = dev_get_drvdata(dev);
struct max517_data *data = iio_dev_get_devdata(dev_info);
struct i2c_client *client = data->client;
u8 outbuf[4]; /* 1x or 2x command + value */ u8 outbuf[4]; /* 1x or 2x command + value */
int outbuf_size = 0; int outbuf_size = 0;
int res; int res;
...@@ -147,7 +150,7 @@ static ssize_t max517_show_scale2(struct device *dev, ...@@ -147,7 +150,7 @@ static ssize_t max517_show_scale2(struct device *dev,
} }
static IIO_DEVICE_ATTR(out2_scale, S_IRUGO, max517_show_scale2, NULL, 0); static IIO_DEVICE_ATTR(out2_scale, S_IRUGO, max517_show_scale2, NULL, 0);
/* On MAX517 variant, we have two outputs */ /* On MAX517 variant, we have one output */
static struct attribute *max517_attributes[] = { static struct attribute *max517_attributes[] = {
&iio_dev_attr_out1_raw.dev_attr.attr, &iio_dev_attr_out1_raw.dev_attr.attr,
&iio_dev_attr_out1_scale.dev_attr.attr, &iio_dev_attr_out1_scale.dev_attr.attr,
...@@ -158,7 +161,7 @@ static struct attribute_group max517_attribute_group = { ...@@ -158,7 +161,7 @@ static struct attribute_group max517_attribute_group = {
.attrs = max517_attributes, .attrs = max517_attributes,
}; };
/* On MAX518 and MAX518 variant, we have two outputs */ /* On MAX518 and MAX519 variant, we have two outputs */
static struct attribute *max518_attributes[] = { static struct attribute *max518_attributes[] = {
&iio_dev_attr_out1_raw.dev_attr.attr, &iio_dev_attr_out1_raw.dev_attr.attr,
&iio_dev_attr_out1_scale.dev_attr.attr, &iio_dev_attr_out1_scale.dev_attr.attr,
...@@ -201,6 +204,8 @@ static int max517_probe(struct i2c_client *client, ...@@ -201,6 +204,8 @@ static int max517_probe(struct i2c_client *client,
i2c_set_clientdata(client, data); i2c_set_clientdata(client, data);
data->client = client;
data->indio_dev = iio_allocate_device(); data->indio_dev = iio_allocate_device();
if (data->indio_dev == NULL) { if (data->indio_dev == NULL) {
err = -ENOMEM; err = -ENOMEM;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment