diff options
author | Gwendal Grignou <gwendal@chromium.org> | 2019-01-31 10:44:52 -0800 |
---|---|---|
committer | ChromeOS Commit Bot <chromeos-commit-bot@chromium.org> | 2019-02-11 04:49:57 +0000 |
commit | 65ad7d78681cde3874a887d4ddc8c63022b78bf1 (patch) | |
tree | 7556a0f699ff4f767cbf596ebe706df0a25521ad | |
parent | a2cb7080f23aa4e6442400227fd14818800502a7 (diff) | |
download | chrome-ec-65ad7d78681cde3874a887d4ddc8c63022b78bf1.tar.gz |
common: sensor: Honor roundup flag for range
Look for ROUND_UP_FLAG in default_range when setting the default range.
BUG=b:115587004
BRANCH=octopus
TEST=On meep check range is set at ~1145dps, not 572dps after reboot.
Change-Id: Ic13fb65b5cfabbebf70b2a5d75abf8faf4b50321
Signed-off-by: Gwendal Grignou <gwendal@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/1448811
Reviewed-by: Karthikeyan Ramasubramanian <kramasub@chromium.org>
Reviewed-by: Diana Z <dzigterman@chromium.org>
Tested-by: Karthikeyan Ramasubramanian <kramasub@chromium.org>
Commit-Queue: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com>
(cherry picked from commit b716f1c9d90e4f6f2249698819a21441eb58df7e)
Reviewed-on: https://chromium-review.googlesource.com/c/1460283
Reviewed-by: Justin TerAvest <teravest@chromium.org>
Commit-Queue: Justin TerAvest <teravest@chromium.org>
Tested-by: Justin TerAvest <teravest@chromium.org>
Trybot-Ready: Justin TerAvest <teravest@chromium.org>
-rw-r--r-- | common/motion_sense.c | 3 | ||||
-rw-r--r-- | include/motion_sense.h | 1 |
2 files changed, 3 insertions, 1 deletions
diff --git a/common/motion_sense.c b/common/motion_sense.c index f5bfc8426c..a7a704a80e 100644 --- a/common/motion_sense.c +++ b/common/motion_sense.c @@ -465,7 +465,8 @@ int sensor_init_done(const struct motion_sensor_t *s) { int ret; - ret = s->drv->set_range(s, s->default_range, 0); + ret = s->drv->set_range(s, BASE_RANGE(s->default_range), + !!(s->default_range & ROUND_UP_FLAG)); if (ret == EC_RES_SUCCESS) { #ifdef CONFIG_CONSOLE_VERBOSE CPRINTS("%s: MS Done Init type:0x%X range:%d", diff --git a/include/motion_sense.h b/include/motion_sense.h index 2d81c9b003..6733fee8dc 100644 --- a/include/motion_sense.h +++ b/include/motion_sense.h @@ -44,6 +44,7 @@ enum sensor_config { #define ROUND_UP_FLAG (1 << 31) #define BASE_ODR(_odr) ((_odr) & ~ROUND_UP_FLAG) +#define BASE_RANGE(_range) ((_range) & ~ROUND_UP_FLAG) #ifdef CONFIG_ACCEL_FIFO #define MAX_FIFO_EVENT_COUNT CONFIG_ACCEL_FIFO |