Implement game mode framerate override
Add logic for setting throttling framerate requested
by Game Dashboard interventions.
- Refactored of FrameRateOverrideMappings in Scheduler
- Have mSupportsFrameRateOverride only guard mFrameRateOverrideByContent
- Remove logic that disables framerate override when it's not a divider
Bug: b/204322816
Test: atest FrameRateOverrideHostTest
Change-Id: I1a2caf378cd87ce4830f6fc48332b5df518330cc
diff --git a/services/surfaceflinger/Scheduler/RefreshRateConfigs.h b/services/surfaceflinger/Scheduler/RefreshRateConfigs.h
index fc45d2b..ff36eee 100644
--- a/services/surfaceflinger/Scheduler/RefreshRateConfigs.h
+++ b/services/surfaceflinger/Scheduler/RefreshRateConfigs.h
@@ -328,7 +328,7 @@
// refresh rates.
KernelIdleTimerAction getIdleTimerAction() const;
- bool supportsFrameRateOverride() const { return mSupportsFrameRateOverride; }
+ bool supportsFrameRateOverrideByContent() const { return mSupportsFrameRateOverrideByContent; }
// Return the display refresh rate divider to match the layer
// frame rate, or 0 if the display refresh rate is not a multiple of the
@@ -496,7 +496,7 @@
const std::vector<Fps> mKnownFrameRates;
const Config mConfig;
- bool mSupportsFrameRateOverride;
+ bool mSupportsFrameRateOverrideByContent;
struct GetBestRefreshRateInvocation {
std::vector<LayerRequirement> layerRequirements;