summaryrefslogtreecommitdiff
authorXindong Xu <xindong.xu@amlogic.com>2018-05-04 07:38:03 (GMT)
committer Xindong Xu <xindong.xu@amlogic.com>2018-05-04 10:35:22 (GMT)
commit20a2a39c6eb908b1a1beb8c052f8b9b60eccf3d4 (patch)
tree509cbdf98ea6c4ee371dc0240c51816509773155
parent9021b61fa2ac0fbc8299d939f128bb25a71daa98 (diff)
downloadampere-o-mr1-tv-dev.zip
ampere-o-mr1-tv-dev.tar.gz
ampere-o-mr1-tv-dev.tar.bz2
cec: tv wakeup when early suspend
amlogic bugid 164676 Change-Id: If6487cd886fc305ea3235c96d9827cd575b6918d
Diffstat
-rwxr-xr-x[-rw-r--r--]frameworks/core/res/src/com/droidlogic/HdmiCecExtend.java6
-rwxr-xr-x[-rw-r--r--]frameworks/services/hdmicec/libhdmi_cec/HdmiCecControl.cpp9
2 files changed, 15 insertions, 0 deletions
diff --git a/frameworks/core/res/src/com/droidlogic/HdmiCecExtend.java b/frameworks/core/res/src/com/droidlogic/HdmiCecExtend.java
index 8320424..108e866 100644..100755
--- a/frameworks/core/res/src/com/droidlogic/HdmiCecExtend.java
+++ b/frameworks/core/res/src/com/droidlogic/HdmiCecExtend.java
@@ -28,6 +28,7 @@ import java.util.Locale;
import java.util.List;
import java.io.UnsupportedEncodingException;
import com.droidlogic.app.HdmiCecManager;
+import android.os.SystemClock;
public class HdmiCecExtend implements VendorCommandListener, HotplugEventListener {
private final String TAG = "HdmiCecExtend";
@@ -390,6 +391,11 @@ public class HdmiCecExtend implements VendorCommandListener, HotplugEventListene
}
/* TODO: process messages service can't process */
switch (opcode) {
+ case MESSAGE_IMAGE_VIEW_ON:
+ case MESSAGE_TEXT_VIEW_ON:
+ long time = SystemClock.uptimeMillis();
+ mPowerManager.wakeUp(time, "android.policy:POWER");
+ break;
case MESSAGE_SET_MENU_LANGUAGE:
Slog.d(TAG, String.format("opcode = 0x%02x", opcode));
if (isAutoChangeLanguageOn()) {
diff --git a/frameworks/services/hdmicec/libhdmi_cec/HdmiCecControl.cpp b/frameworks/services/hdmicec/libhdmi_cec/HdmiCecControl.cpp
index ed410dc..d6373ff 100644..100755
--- a/frameworks/services/hdmicec/libhdmi_cec/HdmiCecControl.cpp
+++ b/frameworks/services/hdmicec/libhdmi_cec/HdmiCecControl.cpp
@@ -242,6 +242,15 @@ bool HdmiCecControl::isWakeUpMsg(char *msgBuf, int len, int deviceType)
default:
break;
}
+ } else if (deviceType == DEV_TYPE_TV) {
+ switch (msgBuf[1]) {
+ case CEC_MESSAGE_IMAGE_VIEW_ON:
+ case CEC_MESSAGE_TEXT_VIEW_ON:
+ ret = true;
+ break;
+ default:
+ break;
+ }
}
return ret;
}