From dd30481b171b37f2813ad431e2c869f2d457037a Mon Sep 17 00:00:00 2001 From: Sam Hurst Date: Thu, 24 May 2018 09:02:42 -0700 Subject: BMI160: EVE TOT divide by 0 error at boot The BMI160 driver's init function generates a divide by 0 error by calling config_interrupt before initializing the range defined in struct accelgyro_saved_data_t. The explicit error is generated by macro BMI160_TAP_TH that's called in config_interrupt. BUG=b:80237518 BRANCH=None TEST=`make -j buildall` EVE boots from TOT Signed-off-by: Sam Hurst Change-Id: I8b7a4a7c63c973bcc639779ee54958f3702f1b36 Reviewed-on: https://chromium-review.googlesource.com/1071847 Commit-Ready: Sam Hurst Tested-by: Sam Hurst Reviewed-by: Duncan Laurie --- driver/accelgyro_bmi160.c | 1 + 1 file changed, 1 insertion(+) diff --git a/driver/accelgyro_bmi160.c b/driver/accelgyro_bmi160.c index 952c5de0d1..6bead436cb 100644 --- a/driver/accelgyro_bmi160.c +++ b/driver/accelgyro_bmi160.c @@ -1286,6 +1286,7 @@ static int init(const struct motion_sensor_t *s) * so set data rate to 0. */ data->odr = 0; + set_range(s, s->default_range, 0); if (s->type == MOTIONSENSE_TYPE_ACCEL) { #ifdef CONFIG_ACCEL_INTERRUPTS -- cgit v1.2.1