summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRamona Gradinariu <ramona.bolboaca13@gmail.com>2024-04-05 07:53:09 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2024-05-17 11:48:09 +0200
commit0ba169bb803ba5de1ef1642f6821ca7bd6459424 (patch)
tree3c15c9efb02ad1dd624bbcc19fcc7ae77d68635e
parente6ba44f832c94b4b2784f2542c2dd77bccab55fe (diff)
downloadlinux-0ba169bb803ba5de1ef1642f6821ca7bd6459424.tar.gz
linux-0ba169bb803ba5de1ef1642f6821ca7bd6459424.tar.bz2
linux-0ba169bb803ba5de1ef1642f6821ca7bd6459424.zip
iio:imu: adis16475: Fix sync mode setting
commit 74a72baf204fd509bbe8b53eec35e39869d94341 upstream. Fix sync mode setting by applying the necessary shift bits. Fixes: fff7352bf7a3 ("iio: imu: Add support for adis16475") Signed-off-by: Ramona Gradinariu <ramona.bolboaca13@gmail.com> Reviewed-by: Nuno Sa <nuno.sa@analog.com> Link: https://lore.kernel.org/r/20240405045309.816328-2-ramona.bolboaca13@gmail.com Cc: <Stable@vger.kernel.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/iio/imu/adis16475.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/iio/imu/adis16475.c b/drivers/iio/imu/adis16475.c
index aed1cf3bfa13..88a673bc3eab 100644
--- a/drivers/iio/imu/adis16475.c
+++ b/drivers/iio/imu/adis16475.c
@@ -1070,6 +1070,7 @@ static int adis16475_config_sync_mode(struct adis16475 *st)
struct device *dev = &st->adis.spi->dev;
const struct adis16475_sync *sync;
u32 sync_mode;
+ u16 val;
/* default to internal clk */
st->clk_freq = st->info->int_clk * 1000;
@@ -1155,8 +1156,9 @@ static int adis16475_config_sync_mode(struct adis16475 *st)
* I'm keeping this for simplicity and avoiding extra variables
* in chip_info.
*/
+ val = ADIS16475_SYNC_MODE(sync->sync_mode);
ret = __adis_update_bits(&st->adis, ADIS16475_REG_MSG_CTRL,
- ADIS16475_SYNC_MODE_MASK, sync->sync_mode);
+ ADIS16475_SYNC_MODE_MASK, val);
if (ret)
return ret;