OSDN Git Service

Include VR throttling limit in hardware properties.
authorRuben Brunk <rubenbrunk@google.com>
Fri, 25 Mar 2016 20:45:42 +0000 (13:45 -0700)
committerRuben Brunk <rubenbrunk@google.com>
Fri, 25 Mar 2016 21:56:34 +0000 (14:56 -0700)
Bug: 27549685
Change-Id: I0e7f06c772c6547bb3357218c1ebf295cbd1dbd2

api/current.txt
api/system-current.txt
api/test-current.txt
core/java/android/os/HardwarePropertiesManager.java
services/core/jni/com_android_server_HardwarePropertiesManagerService.cpp

index 71179fe..4828691 100644 (file)
@@ -28738,6 +28738,7 @@ package android.os {
     field public static final int TEMPERATURE_CURRENT = 0; // 0x0
     field public static final int TEMPERATURE_SHUTDOWN = 2; // 0x2
     field public static final int TEMPERATURE_THROTTLING = 1; // 0x1
+    field public static final int TEMPERATURE_THROTTLING_BELOW_VR_MIN = 3; // 0x3
     field public static final float UNDEFINED_TEMPERATURE = -3.4028235E38f;
   }
 
@@ -34579,7 +34580,6 @@ package android.service.dreams {
     method public boolean onMenuOpened(int, android.view.Menu);
     method public void onPanelClosed(int, android.view.Menu);
     method public boolean onPreparePanel(int, android.view.View, android.view.Menu);
-    method public void onProvideKeyboardShortcuts(java.util.List<android.view.KeyboardShortcutGroup>, android.view.Menu, int);
     method public boolean onSearchRequested(android.view.SearchEvent);
     method public boolean onSearchRequested();
     method public void onWakeUp();
index 9477354..7375ce5 100644 (file)
@@ -30981,6 +30981,7 @@ package android.os {
     field public static final int TEMPERATURE_CURRENT = 0; // 0x0
     field public static final int TEMPERATURE_SHUTDOWN = 2; // 0x2
     field public static final int TEMPERATURE_THROTTLING = 1; // 0x1
+    field public static final int TEMPERATURE_THROTTLING_BELOW_VR_MIN = 3; // 0x3
     field public static final float UNDEFINED_TEMPERATURE = -3.4028235E38f;
   }
 
@@ -37029,7 +37030,6 @@ package android.service.dreams {
     method public boolean onMenuOpened(int, android.view.Menu);
     method public void onPanelClosed(int, android.view.Menu);
     method public boolean onPreparePanel(int, android.view.View, android.view.Menu);
-    method public void onProvideKeyboardShortcuts(java.util.List<android.view.KeyboardShortcutGroup>, android.view.Menu, int);
     method public boolean onSearchRequested(android.view.SearchEvent);
     method public boolean onSearchRequested();
     method public void onWakeUp();
index 108fee7..6635ed7 100644 (file)
@@ -28803,6 +28803,7 @@ package android.os {
     field public static final int TEMPERATURE_CURRENT = 0; // 0x0
     field public static final int TEMPERATURE_SHUTDOWN = 2; // 0x2
     field public static final int TEMPERATURE_THROTTLING = 1; // 0x1
+    field public static final int TEMPERATURE_THROTTLING_BELOW_VR_MIN = 3; // 0x3
     field public static final float UNDEFINED_TEMPERATURE = -3.4028235E38f;
   }
 
@@ -34650,7 +34651,6 @@ package android.service.dreams {
     method public boolean onMenuOpened(int, android.view.Menu);
     method public void onPanelClosed(int, android.view.Menu);
     method public boolean onPreparePanel(int, android.view.View, android.view.Menu);
-    method public void onProvideKeyboardShortcuts(java.util.List<android.view.KeyboardShortcutGroup>, android.view.Menu, int);
     method public boolean onSearchRequested(android.view.SearchEvent);
     method public boolean onSearchRequested();
     method public void onWakeUp();
index 0f2e33d..8e1db5c 100644 (file)
@@ -48,7 +48,8 @@ public class HardwarePropertiesManager {
      */
     @Retention(RetentionPolicy.SOURCE)
     @IntDef({
-        TEMPERATURE_CURRENT, TEMPERATURE_THROTTLING, TEMPERATURE_SHUTDOWN
+        TEMPERATURE_CURRENT, TEMPERATURE_THROTTLING, TEMPERATURE_SHUTDOWN,
+                TEMPERATURE_THROTTLING_BELOW_VR_MIN
     })
     public @interface TemperatureSource {}
 
@@ -77,6 +78,12 @@ public class HardwarePropertiesManager {
     /** Get shutdown temperature threshold. */
     public static final int TEMPERATURE_SHUTDOWN = 2;
 
+    /**
+     * Get throttling temperature threshold above which minimum clockrates for VR mode will not be
+     * met.
+     */
+    public static final int TEMPERATURE_THROTTLING_BELOW_VR_MIN = 3;
+
     /** Undefined temperature constant. */
     public static final float UNDEFINED_TEMPERATURE = -Float.MAX_VALUE;
 
@@ -96,7 +103,8 @@ public class HardwarePropertiesManager {
      * {@link #DEVICE_TEMPERATURE_GPU}, {@link #DEVICE_TEMPERATURE_BATTERY} or {@link
      * #DEVICE_TEMPERATURE_SKIN}.
      * @param source source of requested device temperature, one of {@link #TEMPERATURE_CURRENT},
-     * {@link #TEMPERATURE_THROTTLING} or {@link #TEMPERATURE_SHUTDOWN}.
+     * {@link #TEMPERATURE_THROTTLING}, {@link #TEMPERATURE_THROTTLING_BELOW_VR_MIN} or
+     * {@link #TEMPERATURE_SHUTDOWN}.
      * @return an array of requested float device temperatures. Temperature equals to
      *         {@link #UNDEFINED_TEMPERATURE} if undefined.
      *         Empty if platform doesn't provide the queried temperature.
@@ -114,6 +122,7 @@ public class HardwarePropertiesManager {
                     case TEMPERATURE_CURRENT:
                     case TEMPERATURE_THROTTLING:
                     case TEMPERATURE_SHUTDOWN:
+                    case TEMPERATURE_THROTTLING_BELOW_VR_MIN:
                         try {
                             return mService.getDeviceTemperatures(mContext.getOpPackageName(), type,
                                     source);
index ec5e8c9..14d50ce 100644 (file)
@@ -36,7 +36,8 @@ namespace android {
 enum {
     TEMPERATURE_CURRENT = 0,
     TEMPERATURE_THROTTLING = 1,
-    TEMPERATURE_SHUTDOWN = 2
+    TEMPERATURE_SHUTDOWN = 2,
+    TEMPERATURE_THROTTLING_BELOW_VR_MIN = 3
 };
 
 static struct {
@@ -127,6 +128,13 @@ static jfloatArray nativeGetDeviceTemperatures(JNIEnv *env, jclass /* clazz */,
                                     values[length++] = list[i].shutdown_threshold;
                                 }
                                 break;
+                            case TEMPERATURE_THROTTLING_BELOW_VR_MIN:
+                                if (list[i].vr_throttling_threshold == UNKNOWN_TEMPERATURE) {
+                                    values[length++] = gUndefinedTemperature;
+                                } else {
+                                    values[length++] = list[i].vr_throttling_threshold;
+                                }
+                                break;
                         }
                     }
                 }