summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Paul Colta <donpaul@google.com> 2024-11-06 04:41:39 -0800
committer Paul Colta <donpaul@google.com> 2024-11-07 12:27:31 +0000
commita3fa9ae3c9cc2a0a63b01d3ef259e97db3aeba4e (patch)
tree7de3f1bb8afef0267485716438ea2e8906b32ba0
parent75e985c7ba30553e57a232d0791232a65c4fa7d0 (diff)
HDMI: Solve deep sleep issue on Low Energy Mode
On boot-up, the TV CEC might need to be re-enabled due to being disabled by low energy mode. Bug: 377107359 Flag: EXEMPT bugfix Test: atest com.android.server.hdmi Change-Id: Ib534a939beacab8c450fadda47100f60912d6ac2
-rw-r--r--services/core/java/com/android/server/hdmi/HdmiControlService.java8
1 files changed, 8 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/hdmi/HdmiControlService.java b/services/core/java/com/android/server/hdmi/HdmiControlService.java
index 132d6fa377eb..0c5069f81774 100644
--- a/services/core/java/com/android/server/hdmi/HdmiControlService.java
+++ b/services/core/java/com/android/server/hdmi/HdmiControlService.java
@@ -771,6 +771,14 @@ public class HdmiControlService extends SystemService {
Slog.i(TAG, "Device does not support eARC.");
}
mHdmiCecNetwork = new HdmiCecNetwork(this, mCecController, mMhlController);
+ if (isTvDevice() && getWasCecDisabledOnStandbyByLowEnergyMode()) {
+ Slog.w(TAG, "Re-enable CEC on boot-up since it was disabled due to low energy "
+ + " mode.");
+ getHdmiCecConfig().setIntValue(HdmiControlManager.CEC_SETTING_NAME_HDMI_CEC_ENABLED,
+ HDMI_CEC_CONTROL_ENABLED);
+ setWasCecDisabledOnStandbyByLowEnergyMode(false);
+ setCecEnabled(HDMI_CEC_CONTROL_ENABLED);
+ }
if (isCecControlEnabled()) {
initializeCec(INITIATED_BY_BOOT_UP);
} else {