mirror of
https://github.com/torvalds/linux.git
synced 2024-11-28 15:11:31 +00:00
drivers: iio: magnetometer: Fix sparse endianness warnings cast to restricted __be16
Fix the following sparse endianness warnings: drivers/iio/magnetometer/ak8975.c:716:16: warning: cast to restricted __le16 drivers/iio/magnetometer/ak8975.c:837:19: warning: cast to restricted __le16 drivers/iio/magnetometer/ak8975.c:838:19: warning: cast to restricted __le16 drivers/iio/magnetometer/ak8975.c:839:19: warning: cast to restricted __le16 Signed-off-by: Sandhya Bankar <bankarsandhya512@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
This commit is contained in:
parent
67e17300dc
commit
69c72ec9c8
@ -690,6 +690,7 @@ static int ak8975_read_axis(struct iio_dev *indio_dev, int index, int *val)
|
||||
struct ak8975_data *data = iio_priv(indio_dev);
|
||||
const struct i2c_client *client = data->client;
|
||||
const struct ak_def *def = data->def;
|
||||
__le16 rval;
|
||||
u16 buff;
|
||||
int ret;
|
||||
|
||||
@ -703,7 +704,7 @@ static int ak8975_read_axis(struct iio_dev *indio_dev, int index, int *val)
|
||||
|
||||
ret = i2c_smbus_read_i2c_block_data_or_emulated(
|
||||
client, def->data_regs[index],
|
||||
sizeof(buff), (u8*)&buff);
|
||||
sizeof(rval), (u8*)&rval);
|
||||
if (ret < 0)
|
||||
goto exit;
|
||||
|
||||
@ -713,7 +714,7 @@ static int ak8975_read_axis(struct iio_dev *indio_dev, int index, int *val)
|
||||
pm_runtime_put_autosuspend(&data->client->dev);
|
||||
|
||||
/* Swap bytes and convert to valid range. */
|
||||
buff = le16_to_cpu(buff);
|
||||
buff = le16_to_cpu(rval);
|
||||
*val = clamp_t(s16, buff, -def->range, def->range);
|
||||
return IIO_VAL_INT;
|
||||
|
||||
@ -813,6 +814,7 @@ static void ak8975_fill_buffer(struct iio_dev *indio_dev)
|
||||
const struct ak_def *def = data->def;
|
||||
int ret;
|
||||
s16 buff[8]; /* 3 x 16 bits axis values + 1 aligned 64 bits timestamp */
|
||||
__le16 fval[3];
|
||||
|
||||
mutex_lock(&data->lock);
|
||||
|
||||
@ -826,17 +828,17 @@ static void ak8975_fill_buffer(struct iio_dev *indio_dev)
|
||||
*/
|
||||
ret = i2c_smbus_read_i2c_block_data_or_emulated(client,
|
||||
def->data_regs[0],
|
||||
3 * sizeof(buff[0]),
|
||||
(u8 *)buff);
|
||||
3 * sizeof(fval[0]),
|
||||
(u8 *)fval);
|
||||
if (ret < 0)
|
||||
goto unlock;
|
||||
|
||||
mutex_unlock(&data->lock);
|
||||
|
||||
/* Clamp to valid range. */
|
||||
buff[0] = clamp_t(s16, le16_to_cpu(buff[0]), -def->range, def->range);
|
||||
buff[1] = clamp_t(s16, le16_to_cpu(buff[1]), -def->range, def->range);
|
||||
buff[2] = clamp_t(s16, le16_to_cpu(buff[2]), -def->range, def->range);
|
||||
buff[0] = clamp_t(s16, le16_to_cpu(fval[0]), -def->range, def->range);
|
||||
buff[1] = clamp_t(s16, le16_to_cpu(fval[1]), -def->range, def->range);
|
||||
buff[2] = clamp_t(s16, le16_to_cpu(fval[2]), -def->range, def->range);
|
||||
|
||||
iio_push_to_buffers_with_timestamp(indio_dev, buff,
|
||||
iio_get_time_ns(indio_dev));
|
||||
|
Loading…
Reference in New Issue
Block a user