Route DRM HAL libbinder traffic to /dev/vndbinder
b/37309712
Test: marlin
Change-Id: I72c2304842bd21b5393c17be5beeeb90a74d5345
Signed-off-by: Iliyan Malchev <malchev@google.com>
diff --git a/drm/1.0/default/Android.mk b/drm/1.0/default/Android.mk
index 23a4506..7602399 100644
--- a/drm/1.0/default/Android.mk
+++ b/drm/1.0/default/Android.mk
@@ -34,6 +34,7 @@
libhardware \
liblog \
libutils \
+ libbinder \
LOCAL_C_INCLUDES := \
hardware/interfaces/drm
diff --git a/drm/1.0/default/service.cpp b/drm/1.0/default/service.cpp
index 823f39e..1a44ce2 100644
--- a/drm/1.0/default/service.cpp
+++ b/drm/1.0/default/service.cpp
@@ -21,6 +21,8 @@
#include <hidl/HidlTransportSupport.h>
#include <hidl/LegacySupport.h>
+#include <binder/ProcessState.h>
+
using android::hardware::configureRpcThreadpool;
using android::hardware::joinRpcThreadpool;
using android::hardware::registerPassthroughServiceImplementation;
@@ -30,6 +32,11 @@
int main() {
ALOGD("android.hardware.drm@1.0-service starting...");
+
+ // The DRM HAL may communicate to other vendor components via
+ // /dev/vndbinder
+ android::ProcessState::initWithDriver("/dev/vndbinder");
+
configureRpcThreadpool(8, true /* callerWillJoin */);
android::status_t status =
registerPassthroughServiceImplementation<IDrmFactory>();