diff options
| author | 2021-04-13 15:41:13 +0000 | |
|---|---|---|
| committer | 2021-04-13 15:41:13 +0000 | |
| commit | fcad15e9eb0fdf19fe3ca6dbd4ce5a88c6c7b6fb (patch) | |
| tree | 371a00875df92ce35f18668d82ca19e9a7fa6e1b | |
| parent | ceebf83ddbe888cb620d32b4c7225fae5b980856 (diff) | |
| parent | e0351bf49fef5257483ae7b799e26a3d358c07e6 (diff) | |
Merge "CEC: Implement handleReportArcTermination method" am: 9026f587b7 am: e0351bf49f
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1589692
Change-Id: I226e0405d87c5e8118335c0b2dc7b7a5747924ff
| -rw-r--r-- | services/core/java/com/android/server/hdmi/ArcTerminationActionFromAvr.java | 5 | ||||
| -rw-r--r-- | services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceAudioSystem.java | 11 |
2 files changed, 10 insertions, 6 deletions
diff --git a/services/core/java/com/android/server/hdmi/ArcTerminationActionFromAvr.java b/services/core/java/com/android/server/hdmi/ArcTerminationActionFromAvr.java index dedf2e28a573..049a339957cb 100644 --- a/services/core/java/com/android/server/hdmi/ArcTerminationActionFromAvr.java +++ b/services/core/java/com/android/server/hdmi/ArcTerminationActionFromAvr.java @@ -49,10 +49,7 @@ public class ArcTerminationActionFromAvr extends HdmiCecFeatureAction { switch (cmd.getOpcode()) { case Constants.MESSAGE_REPORT_ARC_TERMINATED: mState = STATE_ARC_TERMINATED; - audioSystem().setArcStatus(false); - if (audioSystem().getLocalActivePort() == Constants.CEC_SWITCH_ARC) { - audioSystem().routeToInputFromPortId(audioSystem().getRoutingPort()); - } + audioSystem().processArcTermination(); finish(); return true; } diff --git a/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceAudioSystem.java b/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceAudioSystem.java index 345aa27e453f..39a91193c9d2 100644 --- a/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceAudioSystem.java +++ b/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceAudioSystem.java @@ -570,8 +570,7 @@ public class HdmiCecLocalDeviceAudioSystem extends HdmiCecLocalDeviceSource { @ServiceThreadOnly protected boolean handleReportArcTermination(HdmiCecMessage message) { assertRunOnServiceThread(); - // TODO(amyjojo): implement report arc terminate handler - HdmiLogger.debug(TAG + "Stub handleReportArcTermination"); + processArcTermination(); return true; } @@ -916,6 +915,14 @@ public class HdmiCecLocalDeviceAudioSystem extends HdmiCecLocalDeviceSource { mArcEstablished = enabled; } + void processArcTermination() { + setArcStatus(false); + // Switch away from ARC input when ARC is terminated. + if (getLocalActivePort() == Constants.CEC_SWITCH_ARC) { + routeToInputFromPortId(getRoutingPort()); + } + } + /** Switch hardware ARC circuit in the system. */ @ServiceThreadOnly private void enableAudioReturnChannel(boolean enabled) { |