diff options
author | Gwendal Grignou <gwendal@chromium.org> | 2018-01-24 08:28:03 -0800 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2018-03-19 19:21:21 -0700 |
commit | 94f5413159518e798800ca41916c02af00a6e2c8 (patch) | |
tree | 76424bc8dcd3938da10fccec08e8038f0bb51547 /driver/accel_lis2dh.c | |
parent | b87bea3289d8ea050f0b482972f6e04ecb8823b1 (diff) | |
download | chrome-ec-94f5413159518e798800ca41916c02af00a6e2c8.tar.gz |
driver: lis2dh: fix gain units
Accelerometer reports accelerating in mg. Fix gain to that full range
(2g, 4g or 8g) returns 2<<15.
BUG=b:73546254
BRANCH=master
TEST=compile
Change-Id: I2873a641985fa800709a2d30b031c2b6e3fcb39e
Signed-off-by: Gwendal Grignou <gwendal@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/924407
Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
Diffstat (limited to 'driver/accel_lis2dh.c')
-rw-r--r-- | driver/accel_lis2dh.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/driver/accel_lis2dh.c b/driver/accel_lis2dh.c index a02b1df1b0..3bba013b71 100644 --- a/driver/accel_lis2dh.c +++ b/driver/accel_lis2dh.c @@ -53,25 +53,25 @@ static int enable_fifo(const struct motion_sensor_t *s, int mode, int en_dis) */ static int set_range(const struct motion_sensor_t *s, int range, int rnd) { - int err, normalized_rate; + int err, normalized_range; struct stprivate_data *data = s->drv_data; int val; val = LIS2DH_FS_TO_REG(range); - normalized_rate = LIS2DH_FS_TO_NORMALIZE(range); + normalized_range = ST_NORMALIZE_RATE(range); - if (rnd && (range < normalized_rate)) + if (rnd && (range < normalized_range)) val++; /* Adjust rounded values */ if (val > LIS2DH_FS_16G_VAL) { val = LIS2DH_FS_16G_VAL; - normalized_rate = 16; + normalized_range = 16; } if (val < LIS2DH_FS_2G_VAL) { val = LIS2DH_FS_2G_VAL; - normalized_rate = 2; + normalized_range = 2; } /* Lock accel resource to prevent another task from attempting @@ -82,7 +82,7 @@ static int set_range(const struct motion_sensor_t *s, int range, int rnd) /* Save Gain in range for speed up data path */ if (err == EC_SUCCESS) - data->base.range = LIS2DH_FS_TO_GAIN(normalized_rate); + data->base.range = normalized_range; mutex_unlock(s->mutex); return EC_SUCCESS; |