forked from Minki/linux
Staging: iio: accel: adis16201: Use GENMASK
Use GENMASK to improve readability and remove the local variables used to store intermediate data. Signed-off-by: Himanshu Jha <himanshujha199640@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
This commit is contained in:
parent
d8a6fc1813
commit
15e374daf9
@ -185,28 +185,24 @@ static int adis16201_write_raw(struct iio_dev *indio_dev,
|
|||||||
long mask)
|
long mask)
|
||||||
{
|
{
|
||||||
struct adis *st = iio_priv(indio_dev);
|
struct adis *st = iio_priv(indio_dev);
|
||||||
int bits;
|
int m;
|
||||||
s16 val16;
|
|
||||||
u8 addr;
|
|
||||||
|
|
||||||
switch (mask) {
|
if (mask != IIO_CHAN_INFO_CALIBBIAS)
|
||||||
case IIO_CHAN_INFO_CALIBBIAS:
|
return -EINVAL;
|
||||||
switch (chan->type) {
|
|
||||||
case IIO_ACCEL:
|
switch (chan->type) {
|
||||||
bits = 12;
|
case IIO_ACCEL:
|
||||||
break;
|
m = GENMASK(11, 0);
|
||||||
case IIO_INCLI:
|
break;
|
||||||
bits = 9;
|
case IIO_INCLI:
|
||||||
break;
|
m = GENMASK(8, 0);
|
||||||
default:
|
break;
|
||||||
return -EINVAL;
|
default:
|
||||||
}
|
return -EINVAL;
|
||||||
val16 = val & ((1 << bits) - 1);
|
|
||||||
addr = adis16201_addresses[chan->scan_index];
|
|
||||||
return adis_write_reg_16(st, addr, val16);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return -EINVAL;
|
return adis_write_reg_16(st, adis16201_addresses[chan->scan_index],
|
||||||
|
val & m);
|
||||||
}
|
}
|
||||||
|
|
||||||
static const struct iio_chan_spec adis16201_channels[] = {
|
static const struct iio_chan_spec adis16201_channels[] = {
|
||||||
|
Loading…
Reference in New Issue
Block a user