Commit 423ad0c4 authored by Hartmut Knaack's avatar Hartmut Knaack Committed by Jonathan Cameron

iio:light:stk3310: make endianness independent of host

Data is stored in the device in be16 format. Make use of be16_to_cpu and
cpu_to_be16 to have correct endianness on any host architecture.
Signed-off-by: default avatarHartmut Knaack <knaack.h@gmx.de>
Reviewed-by: default avatarTiberiu Breana <tiberiu.a.breana@intel.com>
Signed-off-by: default avatarJonathan Cameron <jic23@kernel.org>
parent 037e966f
...@@ -200,7 +200,7 @@ static int stk3310_read_event(struct iio_dev *indio_dev, ...@@ -200,7 +200,7 @@ static int stk3310_read_event(struct iio_dev *indio_dev,
int *val, int *val2) int *val, int *val2)
{ {
u8 reg; u8 reg;
u16 buf; __be16 buf;
int ret; int ret;
struct stk3310_data *data = iio_priv(indio_dev); struct stk3310_data *data = iio_priv(indio_dev);
...@@ -222,7 +222,7 @@ static int stk3310_read_event(struct iio_dev *indio_dev, ...@@ -222,7 +222,7 @@ static int stk3310_read_event(struct iio_dev *indio_dev,
dev_err(&data->client->dev, "register read failed\n"); dev_err(&data->client->dev, "register read failed\n");
return ret; return ret;
} }
*val = swab16(buf); *val = be16_to_cpu(buf);
return IIO_VAL_INT; return IIO_VAL_INT;
} }
...@@ -235,7 +235,7 @@ static int stk3310_write_event(struct iio_dev *indio_dev, ...@@ -235,7 +235,7 @@ static int stk3310_write_event(struct iio_dev *indio_dev,
int val, int val2) int val, int val2)
{ {
u8 reg; u8 reg;
u16 buf; __be16 buf;
int ret; int ret;
unsigned int index; unsigned int index;
struct stk3310_data *data = iio_priv(indio_dev); struct stk3310_data *data = iio_priv(indio_dev);
...@@ -252,7 +252,7 @@ static int stk3310_write_event(struct iio_dev *indio_dev, ...@@ -252,7 +252,7 @@ static int stk3310_write_event(struct iio_dev *indio_dev,
else else
return -EINVAL; return -EINVAL;
buf = swab16(val); buf = cpu_to_be16(val);
ret = regmap_bulk_write(data->regmap, reg, &buf, 2); ret = regmap_bulk_write(data->regmap, reg, &buf, 2);
if (ret < 0) if (ret < 0)
dev_err(&client->dev, "failed to set PS threshold!\n"); dev_err(&client->dev, "failed to set PS threshold!\n");
...@@ -301,7 +301,7 @@ static int stk3310_read_raw(struct iio_dev *indio_dev, ...@@ -301,7 +301,7 @@ static int stk3310_read_raw(struct iio_dev *indio_dev,
int *val, int *val2, long mask) int *val, int *val2, long mask)
{ {
u8 reg; u8 reg;
u16 buf; __be16 buf;
int ret; int ret;
unsigned int index; unsigned int index;
struct stk3310_data *data = iio_priv(indio_dev); struct stk3310_data *data = iio_priv(indio_dev);
...@@ -322,7 +322,7 @@ static int stk3310_read_raw(struct iio_dev *indio_dev, ...@@ -322,7 +322,7 @@ static int stk3310_read_raw(struct iio_dev *indio_dev,
mutex_unlock(&data->lock); mutex_unlock(&data->lock);
return ret; return ret;
} }
*val = swab16(buf); *val = be16_to_cpu(buf);
mutex_unlock(&data->lock); mutex_unlock(&data->lock);
return IIO_VAL_INT; return IIO_VAL_INT;
case IIO_CHAN_INFO_INT_TIME: case IIO_CHAN_INFO_INT_TIME:
......
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