sensorhal: add support for a GAZE sensor

Bug: 31627641
Change-Id: Ia6f26f76bbc626bdaa629cec72ae8732a2f2e776
diff --git a/firmware/inc/sensType.h b/firmware/inc/sensType.h
index 8677b07..25bdd8e 100644
--- a/firmware/inc/sensType.h
+++ b/firmware/inc/sensType.h
@@ -72,6 +72,7 @@
 #define SENS_TYPE_ACTIVITY_RAW                51
 
 #define SENS_TYPE_DOUBLE_TOUCH    52
+#define SENS_TYPE_GAZE            53
 
 #define SENS_TYPE_FIRST_USER      64 // event type necessarily begins with UserSensorEventHdr
 #define SENS_TYPE_LAST_USER       128
diff --git a/sensorhal/hubconnection.cpp b/sensorhal/hubconnection.cpp
index 0e480ba..0e2fec8 100644
--- a/sensorhal/hubconnection.cpp
+++ b/sensorhal/hubconnection.cpp
@@ -211,6 +211,8 @@
     mSensorState[COMMS_SENSOR_ACTIVITY_STILL_STOP].rate = SENSOR_RATE_ONCHANGE;
     mSensorState[COMMS_SENSOR_ACTIVITY_TILTING].sensorType = SENS_TYPE_ACTIVITY_TILTING;
     mSensorState[COMMS_SENSOR_ACTIVITY_TILTING].rate = SENSOR_RATE_ONCHANGE;
+    mSensorState[COMMS_SENSOR_GAZE].sensorType = SENS_TYPE_GAZE;
+    mSensorState[COMMS_SENSOR_GAZE].rate = SENSOR_RATE_ONESHOT;
 
 #ifdef LID_STATE_REPORTING_ENABLED
     initializeUinputNode();
@@ -452,6 +454,7 @@
     case COMMS_SENSOR_WRIST_TILT:
         initEv(&nev[cnt++], timestamp, type, sensor)->data[0] = 1.0f;
         break;
+    case COMMS_SENSOR_GAZE:
     case COMMS_SENSOR_GESTURE:
     case COMMS_SENSOR_SYNC:
     case COMMS_SENSOR_DOUBLE_TOUCH:
@@ -937,6 +940,11 @@
             sensor = COMMS_SENSOR_ACTIVITY_TILTING;
             one = true;
             break;
+        case SENS_TYPE_TO_EVENT(SENS_TYPE_GAZE):
+            type = SENSOR_TYPE_GAZE;
+            sensor = COMMS_SENSOR_GAZE;
+            one = true;
+            break;
         case EVT_RESET_REASON:
             uint32_t resetReason;
             memcpy(&resetReason, data->buffer, sizeof(resetReason));
diff --git a/sensorhal/hubdefs.h b/sensorhal/hubdefs.h
index 52e5c62..b5f83ca 100644
--- a/sensorhal/hubdefs.h
+++ b/sensorhal/hubdefs.h
@@ -80,6 +80,7 @@
     COMMS_SENSOR_ACTIVITY_TILTING            = 42,
     COMMS_SENSOR_ACCEL_BIAS                  = 43,
     COMMS_SENSOR_DOUBLE_TOUCH                = 44,
+    COMMS_SENSOR_GAZE                        = 45,
 
     NUM_COMMS_SENSORS_PLUS_1,
 
@@ -111,6 +112,7 @@
     SENSOR_TYPE_DOUBLE_TWIST            = SENSOR_TYPE_DEVICE_PRIVATE_BASE + 2,
     SENSOR_TYPE_DOUBLE_TAP              = SENSOR_TYPE_DEVICE_PRIVATE_BASE + 3,
     SENSOR_TYPE_DOUBLE_TOUCH            = SENSOR_TYPE_DEVICE_PRIVATE_BASE + 4,
+    SENSOR_TYPE_GAZE                    = SENSOR_TYPE_DEVICE_PRIVATE_BASE + 5,
 };
 
 }  // namespace android