diff options
author | Jinsuk Kim <jinsukkim@google.com> | 2014-12-17 21:20:08 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2014-12-17 21:20:08 +0000 |
commit | 08ca1694eb3013bd1f6c050e021588b8614e8764 (patch) | |
tree | 80e388789dae1f4ac0d130dab7a887c253a20bda | |
parent | 0b3718d6b157bf15db9d709d50019f81f06195b9 (diff) | |
parent | fadfe708e6f0c74890fe2b3292a91570f3049215 (diff) | |
download | frameworks_base-08ca1694eb3013bd1f6c050e021588b8614e8764.zip frameworks_base-08ca1694eb3013bd1f6c050e021588b8614e8764.tar.gz frameworks_base-08ca1694eb3013bd1f6c050e021588b8614e8764.tar.bz2 |
am fadfe708: Merge "CEC: Pass port ID for set_audio_return_channel" into lmp-mr1-dev
* commit 'fadfe708e6f0c74890fe2b3292a91570f3049215':
CEC: Pass port ID for set_audio_return_channel
4 files changed, 13 insertions, 12 deletions
diff --git a/services/core/java/com/android/server/hdmi/HdmiCecController.java b/services/core/java/com/android/server/hdmi/HdmiCecController.java index 1486fee..55917fc 100644 --- a/services/core/java/com/android/server/hdmi/HdmiCecController.java +++ b/services/core/java/com/android/server/hdmi/HdmiCecController.java @@ -331,12 +331,13 @@ final class HdmiCecController { /** * Configure ARC circuit in the hardware logic to start or stop the feature. * + * @param port ID of HDMI port to which AVR is connected * @param enabled whether to enable/disable ARC */ @ServiceThreadOnly - void setAudioReturnChannel(boolean enabled) { + void setAudioReturnChannel(int port, boolean enabled) { assertRunOnServiceThread(); - nativeSetAudioReturnChannel(mNativePtr, enabled); + nativeSetAudioReturnChannel(mNativePtr, port, enabled); } /** @@ -633,6 +634,6 @@ final class HdmiCecController { private static native int nativeGetVendorId(long controllerPtr); private static native HdmiPortInfo[] nativeGetPortInfos(long controllerPtr); private static native void nativeSetOption(long controllerPtr, int flag, int value); - private static native void nativeSetAudioReturnChannel(long controllerPtr, boolean flag); + private static native void nativeSetAudioReturnChannel(long controllerPtr, int port, boolean flag); private static native boolean nativeIsConnected(long controllerPtr, int port); } diff --git a/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java b/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java index 62de534..e6990c6 100644 --- a/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java +++ b/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java @@ -827,7 +827,7 @@ final class HdmiCecLocalDeviceTv extends HdmiCecLocalDevice { HdmiLogger.debug("Set Arc Status[old:%b new:%b]", mArcEstablished, enabled); boolean oldStatus = mArcEstablished; // 1. Enable/disable ARC circuit. - mService.setAudioReturnChannel(enabled); + mService.setAudioReturnChannel(getAvrDeviceInfo().getPortId(), enabled); // 2. Notify arc status to audio service. notifyArcStatusToAudioService(enabled); // 3. Update arc status; diff --git a/services/core/java/com/android/server/hdmi/HdmiControlService.java b/services/core/java/com/android/server/hdmi/HdmiControlService.java index 0322ae6..8ce6caf 100644 --- a/services/core/java/com/android/server/hdmi/HdmiControlService.java +++ b/services/core/java/com/android/server/hdmi/HdmiControlService.java @@ -756,8 +756,8 @@ public final class HdmiControlService extends SystemService { return dispatchMessageToLocalDevice(message); } - void setAudioReturnChannel(boolean enabled) { - mCecController.setAudioReturnChannel(enabled); + void setAudioReturnChannel(int portId, boolean enabled) { + mCecController.setAudioReturnChannel(portId, enabled); } @ServiceThreadOnly diff --git a/services/core/jni/com_android_server_hdmi_HdmiCecController.cpp b/services/core/jni/com_android_server_hdmi_HdmiCecController.cpp index 5c557b6..a35af91 100644 --- a/services/core/jni/com_android_server_hdmi_HdmiCecController.cpp +++ b/services/core/jni/com_android_server_hdmi_HdmiCecController.cpp @@ -62,7 +62,7 @@ public: // Set a flag and its value. void setOption(int flag, int value); // Set audio return channel status. - void setAudioReturnChannel(bool flag); + void setAudioReturnChannel(int port, bool flag); // Whether to hdmi device is connected to the given port. bool isConnected(int port); @@ -260,8 +260,8 @@ void HdmiCecController::setOption(int flag, int value) { } // Set audio return channel status. -void HdmiCecController::setAudioReturnChannel(bool enabled) { - mDevice->set_audio_return_channel(mDevice, enabled ? 1 : 0); + void HdmiCecController::setAudioReturnChannel(int port, bool enabled) { + mDevice->set_audio_return_channel(mDevice, port, enabled ? 1 : 0); } // Whether to hdmi device is connected to the given port. @@ -374,9 +374,9 @@ static void nativeSetOption(JNIEnv* env, jclass clazz, jlong controllerPtr, jint } static void nativeSetAudioReturnChannel(JNIEnv* env, jclass clazz, jlong controllerPtr, - jboolean enabled) { + jint port, jboolean enabled) { HdmiCecController* controller = reinterpret_cast<HdmiCecController*>(controllerPtr); - controller->setAudioReturnChannel(enabled == JNI_TRUE); + controller->setAudioReturnChannel(port, enabled == JNI_TRUE); } static jboolean nativeIsConnected(JNIEnv* env, jclass clazz, jlong controllerPtr, jint port) { @@ -399,7 +399,7 @@ static JNINativeMethod sMethods[] = { "(J)[Landroid/hardware/hdmi/HdmiPortInfo;", (void *) nativeGetPortInfos }, { "nativeSetOption", "(JII)V", (void *) nativeSetOption }, - { "nativeSetAudioReturnChannel", "(JZ)V", (void *) nativeSetAudioReturnChannel }, + { "nativeSetAudioReturnChannel", "(JIZ)V", (void *) nativeSetAudioReturnChannel }, { "nativeIsConnected", "(JI)Z", (void *) nativeIsConnected }, }; |