staging: iio: adt7316: fix the dac read calculation
authorJeremy Fertic <jeremyfertic@gmail.com>
Sun, 23 Dec 2018 04:57:42 +0000 (21:57 -0700)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Sat, 5 Jan 2019 17:55:23 +0000 (17:55 +0000)
commit45130fb030aec26ac28b4bb23344901df3ec3b7f
tree3a1339981c59e1974290509d390ada6e0b1841d2
parent76b7fe8d6c4daf4db672eb953c892c6f6572a282
staging: iio: adt7316: fix the dac read calculation

The calculation of the current dac value is using the wrong bits of the
dac lsb register. Create two macros to shift the lsb register value into
lsb position, depending on whether the dac is 10 or 12 bit. Initialize
data to 0 so, with an 8 bit dac, the msb register value can be bitwise
ORed with data.

Fixes: 35f6b6b86ede ("staging: iio: new ADT7316/7/8 and ADT7516/7/9 driver")
Signed-off-by: Jeremy Fertic <jeremyfertic@gmail.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/staging/iio/addac/adt7316.c