summaryrefslogtreecommitdiff
path: root/board/trogdor
diff options
context:
space:
mode:
authorGwendal Grignou <gwendal@chromium.org>2020-03-09 10:22:58 -0700
committerCommit Bot <commit-bot@chromium.org>2020-03-09 23:51:02 +0000
commitc3dcd2826896e2f2f9b585dcd42ea98d38ae17cc (patch)
treecd18ff1932c2422c18d10bc8034aa86f1907af2a /board/trogdor
parent889d9ad68947c3f6eee2e4ea491987d7477f4ac8 (diff)
downloadchrome-ec-c3dcd2826896e2f2f9b585dcd42ea98d38ae17cc.tar.gz
driver: bmi160: Fix ODR to REG when rate is less than 100Hz properly
When the ODr was the exact frequency, the calculation was not correct. For instance, 50Hz would return register 6 when 7 was expected. Fixes: 0e99e9763 ("bmi160: Fix ODR to REG when rate is less than 100Hz") BUG=b:120942904 BRANCH=none TEST=use: for (int i = 1600000 ; i > 1000 ; i >>= 1) { printf("%d mHZ : reg %d\n", i + 1, BMI160_ODR_TO_REG(i + 1)); printf("%d mHZ : reg %d\n", i, BMI160_ODR_TO_REG(i)); printf("%d mHZ : reg %d\n", i -1 , BMI160_ODR_TO_REG(i -1)); } To verify the code is correct: 1600001 mHZ : reg 12 1600000 mHZ : reg 12 1599999 mHZ : reg 11 800001 mHZ : reg 11 800000 mHZ : reg 11 799999 mHZ : reg 10 400001 mHZ : reg 10 400000 mHZ : reg 10 399999 mHZ : reg 9 200001 mHZ : reg 9 200000 mHZ : reg 9 199999 mHZ : reg 8 100001 mHZ : reg 8 100000 mHZ : reg 8 99999 mHZ : reg 7 50001 mHZ : reg 7 50000 mHZ : reg 7 49999 mHZ : reg 6 25001 mHZ : reg 6 25000 mHZ : reg 6 24999 mHZ : reg 5 12501 mHZ : reg 5 12500 mHZ : reg 5 12499 mHZ : reg 4 6251 mHZ : reg 4 6250 mHZ : reg 4 6249 mHZ : reg 3 3126 mHZ : reg 3 3125 mHZ : reg 3 3124 mHZ : reg 2 1563 mHZ : reg 2 1562 mHZ : reg 2 1561 mHZ : reg 1 Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Change-Id: Iefd0e0c732b52fef02f5b048c083ea67a2da247c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2093289 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
Diffstat (limited to 'board/trogdor')
0 files changed, 0 insertions, 0 deletions