summaryrefslogtreecommitdiffstats
path: root/media/libmedia
diff options
context:
space:
mode:
authorChong Zhang <chz@google.com>2013-09-04 22:08:00 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2013-09-04 22:08:00 +0000
commita19912554f3779fac0c341ac702227bf4b5fe399 (patch)
treeeae1ed9c538fb796181f512770d0cb0796915e7d /media/libmedia
parent7a4c2711d7a85ce962b9d18fee41975f9c574c0b (diff)
parentec3acca4a75fc4adc076b56751124f507b419622 (diff)
downloadframeworks_av-a19912554f3779fac0c341ac702227bf4b5fe399.zip
frameworks_av-a19912554f3779fac0c341ac702227bf4b5fe399.tar.gz
frameworks_av-a19912554f3779fac0c341ac702227bf4b5fe399.tar.bz2
Merge "wifi-display: do not use HDCP's encryptNative method if its unsupported" into klp-dev
Diffstat (limited to 'media/libmedia')
-rw-r--r--media/libmedia/IHDCP.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/media/libmedia/IHDCP.cpp b/media/libmedia/IHDCP.cpp
index a46ff91..1cf987a 100644
--- a/media/libmedia/IHDCP.cpp
+++ b/media/libmedia/IHDCP.cpp
@@ -30,6 +30,7 @@ enum {
HDCP_SET_OBSERVER,
HDCP_INIT_ASYNC,
HDCP_SHUTDOWN_ASYNC,
+ HDCP_GET_CAPS,
HDCP_ENCRYPT,
HDCP_ENCRYPT_NATIVE,
HDCP_DECRYPT,
@@ -85,6 +86,13 @@ struct BpHDCP : public BpInterface<IHDCP> {
return reply.readInt32();
}
+ virtual uint32_t getCaps() {
+ Parcel data, reply;
+ data.writeInterfaceToken(IHDCP::getInterfaceDescriptor());
+ remote()->transact(HDCP_GET_CAPS, data, &reply);
+ return reply.readInt32();
+ }
+
virtual status_t encrypt(
const void *inData, size_t size, uint32_t streamCTR,
uint64_t *outInputCTR, void *outData) {
@@ -222,6 +230,14 @@ status_t BnHDCP::onTransact(
return OK;
}
+ case HDCP_GET_CAPS:
+ {
+ CHECK_INTERFACE(IHDCP, data, reply);
+
+ reply->writeInt32(getCaps());
+ return OK;
+ }
+
case HDCP_ENCRYPT:
{
size_t size = data.readInt32();