diff --git a/services/core/java/com/android/server/hdmi/HdmiCecLocalDevice.java b/services/core/java/com/android/server/hdmi/HdmiCecLocalDevice.java index 7999321c6c799..44aafa8a33d83 100644 --- a/services/core/java/com/android/server/hdmi/HdmiCecLocalDevice.java +++ b/services/core/java/com/android/server/hdmi/HdmiCecLocalDevice.java @@ -650,7 +650,7 @@ abstract class HdmiCecLocalDevice { void addAndStartAction(final HdmiCecFeatureAction action) { assertRunOnServiceThread(); mActions.add(action); - if (mService.isPowerStandby()) { + if (mService.isPowerStandby() || !mService.isAddressAllocated()) { Slog.i(TAG, "Not ready to start action. Queued for deferred start:" + action); return; } diff --git a/services/core/java/com/android/server/hdmi/HdmiControlService.java b/services/core/java/com/android/server/hdmi/HdmiControlService.java index e07d72f0e7d1f..5dc9d02a71c5d 100644 --- a/services/core/java/com/android/server/hdmi/HdmiControlService.java +++ b/services/core/java/com/android/server/hdmi/HdmiControlService.java @@ -641,6 +641,10 @@ public final class HdmiControlService extends SystemService { } } + boolean isAddressAllocated() { + return mAddressAllocated; + } + // Initialize HDMI port information. Combine the information from CEC and MHL HAL and // keep them in one place. @ServiceThreadOnly