summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Treehugger Robot <treehugger-gerrit@google.com> 2021-04-13 15:41:13 +0000
committer Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> 2021-04-13 15:41:13 +0000
commitfcad15e9eb0fdf19fe3ca6dbd4ce5a88c6c7b6fb (patch)
tree371a00875df92ce35f18668d82ca19e9a7fa6e1b
parentceebf83ddbe888cb620d32b4c7225fae5b980856 (diff)
parente0351bf49fef5257483ae7b799e26a3d358c07e6 (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.java5
-rw-r--r--services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceAudioSystem.java11
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) {