From 837c7609f290d4694c3912aaeb4562fbf4b59b8e Mon Sep 17 00:00:00 2001 From: Gwendal Grignou Date: Fri, 31 Aug 2018 13:01:08 -0700 Subject: driver: lsm6dsm: Allow roundup to work below 13Hz Recalculate ODR properly after rounding up the requested rate. BUG=b:112179405 TEST=Check ODR is set properly BRANCH=none Change-Id: I3f5abd5a1720f21d666cd3029000c2cec257c6f1 Signed-off-by: Gwendal Grignou Reviewed-on: https://chromium-review.googlesource.com/1200067 Reviewed-by: Aseda Aboagye --- driver/accelgyro_lsm6dsm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'driver') diff --git a/driver/accelgyro_lsm6dsm.c b/driver/accelgyro_lsm6dsm.c index 29c21618a7..da445ec491 100644 --- a/driver/accelgyro_lsm6dsm.c +++ b/driver/accelgyro_lsm6dsm.c @@ -444,7 +444,7 @@ static int set_data_rate(const struct motion_sensor_t *s, int rate, int rnd) if (rnd && (normalized_rate < rate)) { reg_val++; - normalized_rate *= 2; + normalized_rate = LSM6DSM_REG_TO_ODR(reg_val); } if (normalized_rate == 0) return EC_RES_INVALID_PARAM; -- cgit v1.2.1