Enable gralloc direct channel support for accel, gyro and mag

Enable gralloc direct channel support for accelerometer, gyroscope
and magnetometer sensors.

Bug: 30985702
Test: cts-tradefed run cts --module CtsSensorTestCases
      --test android.hardware.cts.SensorDirectReportTest
Test: cts-tradefed run cts --module CtsSensorTestCases
      --test android.hardware.cts.SensorNativeTest

Change-Id: I58337bbf9e2dd3cc3b62c750269220a2d692835d
diff --git a/sensorhal/sensorlist.cpp b/sensorhal/sensorlist.cpp
index bd3d7ca..3c03741 100644
--- a/sensorhal/sensorlist.cpp
+++ b/sensorhal/sensorlist.cpp
@@ -57,18 +57,21 @@
 constexpr uint32_t kDirectReportFlagAccel = (
         // support up to rate level fast (nominal 200Hz);
         (SENSOR_DIRECT_RATE_FAST << SENSOR_FLAG_SHIFT_DIRECT_REPORT)
-        // support ashmem direct channel
-        | SENSOR_FLAG_DIRECT_CHANNEL_ASHMEM);
+        // support ashmem and gralloc direct channel
+        | SENSOR_FLAG_DIRECT_CHANNEL_ASHMEM
+        | SENSOR_FLAG_DIRECT_CHANNEL_GRALLOC);
 constexpr uint32_t kDirectReportFlagGyro = (
         // support up to rate level fast (nominal 200Hz);
         (SENSOR_DIRECT_RATE_FAST << SENSOR_FLAG_SHIFT_DIRECT_REPORT)
-        // support ashmem direct channel
-        | SENSOR_FLAG_DIRECT_CHANNEL_ASHMEM);
+        // support ashmem and gralloc direct channel
+        | SENSOR_FLAG_DIRECT_CHANNEL_ASHMEM
+        | SENSOR_FLAG_DIRECT_CHANNEL_GRALLOC);
 constexpr uint32_t kDirectReportFlagMag = (
         // support up to rate level normal (nominal 50Hz);
         (SENSOR_DIRECT_RATE_NORMAL << SENSOR_FLAG_SHIFT_DIRECT_REPORT)
-        // support ashmem direct channel
-        | SENSOR_FLAG_DIRECT_CHANNEL_ASHMEM);
+        // support ashmem and gralloc direct channel
+        | SENSOR_FLAG_DIRECT_CHANNEL_ASHMEM
+        | SENSOR_FLAG_DIRECT_CHANNEL_GRALLOC);
 #else
 constexpr uint32_t kDirectReportFlagAccel = 0;
 constexpr uint32_t kDirectReportFlagGyro = 0;