summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Pontus Lidman <lidman@google.com> 2023-07-24 18:24:16 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2023-07-24 18:24:16 +0000
commit58d7c9bdc4e5fc5af8057e7660f0822571120dbc (patch)
tree067a7db65badaafb2b48b1bc8b450a81c0b77f1e
parentd3208d8ff6a1aeafb0bbb872aff46ba8d089f710 (diff)
parent24f862dd5c645e203bc64531d5ec31db8b4acc1b (diff)
Merge "SensorFusion: don't use wake sensors for fusion" into main
-rw-r--r--services/sensorservice/SensorFusion.cpp25
1 files changed, 14 insertions, 11 deletions
diff --git a/services/sensorservice/SensorFusion.cpp b/services/sensorservice/SensorFusion.cpp
index 5c00260008..16088ca7ea 100644
--- a/services/sensorservice/SensorFusion.cpp
+++ b/services/sensorservice/SensorFusion.cpp
@@ -42,17 +42,20 @@ SensorFusion::SensorFusion()
if (count > 0) {
for (size_t i=0 ; i<size_t(count) ; i++) {
- if (list[i].type == SENSOR_TYPE_ACCELEROMETER) {
- mAcc = Sensor(list + i);
- }
- if (list[i].type == SENSOR_TYPE_MAGNETIC_FIELD) {
- mMag = Sensor(list + i);
- }
- if (list[i].type == SENSOR_TYPE_GYROSCOPE) {
- mGyro = Sensor(list + i);
- }
- if (list[i].type == SENSOR_TYPE_GYROSCOPE_UNCALIBRATED) {
- uncalibratedGyro = Sensor(list + i);
+ // Only use non-wakeup sensors
+ if ((list[i].flags & SENSOR_FLAG_WAKE_UP) == 0) {
+ if (list[i].type == SENSOR_TYPE_ACCELEROMETER) {
+ mAcc = Sensor(list + i);
+ }
+ if (list[i].type == SENSOR_TYPE_MAGNETIC_FIELD) {
+ mMag = Sensor(list + i);
+ }
+ if (list[i].type == SENSOR_TYPE_GYROSCOPE) {
+ mGyro = Sensor(list + i);
+ }
+ if (list[i].type == SENSOR_TYPE_GYROSCOPE_UNCALIBRATED) {
+ uncalibratedGyro = Sensor(list + i);
+ }
}
}