diff options
| -rw-r--r-- | drivers/iio/imu/st_lsm6ds3/st_lsm6ds3_core.c | 12 | 
1 files changed, 8 insertions, 4 deletions
| diff --git a/drivers/iio/imu/st_lsm6ds3/st_lsm6ds3_core.c b/drivers/iio/imu/st_lsm6ds3/st_lsm6ds3_core.c index 12dc8cbf1c7..ff8ff53d0e6 100644 --- a/drivers/iio/imu/st_lsm6ds3/st_lsm6ds3_core.c +++ b/drivers/iio/imu/st_lsm6ds3/st_lsm6ds3_core.c @@ -1082,6 +1082,7 @@ static int st_lsm6ds3_enable_pedometer(struct lsm6ds3_sensor_data *sdata,  static int st_lsm6ds3_enable_sensors(struct lsm6ds3_sensor_data *sdata)  { +	u8 regval;  	int err, i;  	switch (sdata->sindex) { @@ -1097,6 +1098,13 @@ static int st_lsm6ds3_enable_sensors(struct lsm6ds3_sensor_data *sdata)  		if (sdata->sindex == ST_INDIO_DEV_ACCEL) {  			sdata->cdata->accel_samples_to_discard =  							ST_LSM6DS3_ACCEL_STD; +			regval = 0x44; // MD1 (6D and Tap on INT1) +			err = sdata->cdata->tf->write(sdata->cdata, +							ST_LSM6DS3_MD1_ADDR, +							1, ®val, false); +			if(err < 0) { +				return err; +			}  		}  		sdata->cdata->gyro_samples_to_discard = ST_LSM6DS3_GYRO_STD; @@ -1546,10 +1554,6 @@ static int st_lsm6ds3_init_sensor(struct lsm6ds3_data *cdata)  #define ST_LSM6DS3_CTRL8_LPF_ON_ACCEL 0x80  #define ST_LSM6DS3_CTRL4_ADDR 0x13  #define ST_LSM6DS3_CTRL4_STOP_ON_FTH_MASK 0x1 -	regval = 0x44; // MD1 (6D and Tap on INT1) -	err = sdata->cdata->tf->write(sdata->cdata, -					ST_LSM6DS3_MD1_ADDR, -					1, ®val, false);  	regval = 0x48;//tap threshold  	err = sdata->cdata->tf->write(sdata->cdata, |