summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXiaohui Tao <xtao@nvidia.com>2013-08-20 10:38:52 -0700
committerRiham Haidar <rhaidar@nvidia.com>2013-09-18 12:58:49 -0700
commita9c77c9d1ce46670fbf1628023d531ec85b0b2ae (patch)
treead6a62338a921c8d483b388bf69c48dfeb08b13f
parent1b10b307c339d6ca811fee3ec7460577df64ef7a (diff)
input: misc: mpu: change self test criteria
1) Increasing the at rest (Test #3) Threshold from 10dps to 40dps Invensense claims this was a programming error from their side and was updated in their code base over a year ago. They say all their customers are using (or should be) using the new code (with the relaxed threshold). 2) Increasing the ST compare (Test #1) Threshold from 14% to 50% Their response was 14% was set based on their factory results. However, over time, they had several customer investigations and found that their customer environments are a lot nosier than their factory. Based on more collected samples from the customer site, they increased this limit from 14% to 50%. They claim a major tablet manufacturer with 100.s of thousands of units has taken the new 50% threshold over a year ago and currently no reported test escapes with the new threshold. Bug 1343976 Change-Id: I684f186134db3717d4d1304c14f97dd310843cab Reviewed-on: http://git-master/r/263972 (cherry picked from commit 949749fdd3be199823c188a8993016bd63ab12e6) Signed-off-by: Xiaohui Tao <xtao@nvidia.com> Reviewed-on: http://git-master/r/266164 (cherry picked from commit a1f9ad5ac420618535d8206874b1de8d475dd0cb) Reviewed-on: http://git-master/r/273320 Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Tested-by: Bharat Nihalani <bnihalani@nvidia.com> Reviewed-by: Automatic_Commit_Validation_User
-rw-r--r--drivers/input/misc/mpu/inv_gyro_misc.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/input/misc/mpu/inv_gyro_misc.c b/drivers/input/misc/mpu/inv_gyro_misc.c
index 491df7dfd217..bd5c37a12256 100644
--- a/drivers/input/misc/mpu/inv_gyro_misc.c
+++ b/drivers/input/misc/mpu/inv_gyro_misc.c
@@ -70,8 +70,8 @@
#define DEF_ACCEL_ST_SHIFT_MIN (300)
#define DEF_ACCEL_ST_SHIFT_MAX (950)
-#define DEF_ACCEL_ST_SHIFT_DELTA (140)
-#define DEF_GYRO_CT_SHIFT_DELTA (140)
+#define DEF_ACCEL_ST_SHIFT_DELTA (500)
+#define DEF_GYRO_CT_SHIFT_DELTA (500)
/* gyroscope Coriolis self test min and max bias shift (dps) */
#define DEF_GYRO_CT_SHIFT_MIN (10)
#define DEF_GYRO_CT_SHIFT_MAX (105)
@@ -644,7 +644,7 @@ static int inv_check_6050_gyro_self_test(struct inv_gyro_state_s *st,
}
}
for (i = 0; i < 3; i++) {
- if (abs(reg_avg[i])*4 > 20*2*1000*131)
+ if (abs(reg_avg[i]) > 20*2*1000*131)
ret_val |= (1<<i);
}
return ret_val;