Browse Source

iio: imu: st_lsm6dsx: fix FIFO_CTRL2 overwrite during watermark configuration

Fixes: 290a6ce11d93 (iio: imu: add support to lsm6dsx driver)
Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi@st.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
Lorenzo Bianconi 8 years ago
parent
commit
6985bd5e21
1 changed files with 2 additions and 2 deletions
  1. 2 2
      drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c

+ 2 - 2
drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_buffer.c

@@ -193,8 +193,8 @@ int st_lsm6dsx_update_watermark(struct st_lsm6dsx_sensor *sensor, u16 watermark)
 	if (err < 0)
 		goto out;
 
-	fifo_watermark = ((data & ~ST_LSM6DSX_FIFO_TH_MASK) << 8) |
-			  (fifo_watermark & ST_LSM6DSX_FIFO_TH_MASK);
+	fifo_watermark = ((data << 8) & ~ST_LSM6DSX_FIFO_TH_MASK) |
+			 (fifo_watermark & ST_LSM6DSX_FIFO_TH_MASK);
 
 	wdata = cpu_to_le16(fifo_watermark);
 	err = hw->tf->write(hw->dev, ST_LSM6DSX_REG_FIFO_THL_ADDR,