summaryrefslogtreecommitdiffstats
path: root/drm
diff options
context:
space:
mode:
authorJeff Tinker <jtinker@google.com>2018-07-19 16:31:56 -0700
committerJeff Tinker <jtinker@google.com>2018-09-13 00:39:42 +0000
commit5c2e29de11cbaabef50e2c68c9d9f7a1f9d2711b (patch)
tree252483ffa72dead3fcf154d626c8cda708064c9f /drm
parentfff86f4b4b5d703c4ab7842b7d0ef47ea8628c06 (diff)
downloadandroid_hardware_interfaces-5c2e29de11cbaabef50e2c68c9d9f7a1f9d2711b.tar.gz
android_hardware_interfaces-5c2e29de11cbaabef50e2c68c9d9f7a1f9d2711b.tar.bz2
android_hardware_interfaces-5c2e29de11cbaabef50e2c68c9d9f7a1f9d2711b.zip
Fix failing drm 1.0 vts tests
The shared library path was incorrectly set based on the drm.64bit.enabled flag. It should be set based on whether the drm service is running as 32-bit or 64-bit. Test: vts-tradefed run commandAndExit vts -m VtsHalDrmV1_0Target bug:111289939 Change-Id: I388dc87bd4566211dc2901feccf1e6e1c90bfe67 Merged-In: I388dc87bd4566211dc2901feccf1e6e1c90bfe67
Diffstat (limited to 'drm')
-rw-r--r--drm/1.0/default/DrmFactory.cpp2
-rw-r--r--drm/1.0/default/LegacyPluginPath.cpp16
-rw-r--r--drm/1.0/default/include/PluginLoader.h5
3 files changed, 16 insertions, 7 deletions
diff --git a/drm/1.0/default/DrmFactory.cpp b/drm/1.0/default/DrmFactory.cpp
index 7e5d998e4..05951d7c0 100644
--- a/drm/1.0/default/DrmFactory.cpp
+++ b/drm/1.0/default/DrmFactory.cpp
@@ -1,6 +1,6 @@
/*
* Copyright (C) 2016 The Android Open Source Project
-` *
+ *
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
diff --git a/drm/1.0/default/LegacyPluginPath.cpp b/drm/1.0/default/LegacyPluginPath.cpp
index 369059d2c..d0a8f90a7 100644
--- a/drm/1.0/default/LegacyPluginPath.cpp
+++ b/drm/1.0/default/LegacyPluginPath.cpp
@@ -16,6 +16,8 @@
#include "LegacyPluginPath.h"
+#include <unistd.h>
+
#include <cutils/properties.h>
namespace android {
@@ -24,12 +26,16 @@ namespace drm {
namespace V1_0 {
namespace implementation {
+// 64-bit DRM depends on OEM libraries that aren't
+// provided for all devices. If the drm hal service
+// is running as 64-bit use the 64-bit libs, otherwise
+// use the 32-bit libs.
const char* getDrmPluginPath() {
- if (property_get_bool("drm.64bit.enabled", false)) {
- return "/vendor/lib64/mediadrm";
- } else {
- return "/vendor/lib/mediadrm";
- }
+#if defined(__LP64__)
+ return "/vendor/lib64/mediadrm";
+#else
+ return "/vendor/lib/mediadrm";
+#endif
}
} // namespace implementation
diff --git a/drm/1.0/default/include/PluginLoader.h b/drm/1.0/default/include/PluginLoader.h
index f387b3cbc..0c45fb3ef 100644
--- a/drm/1.0/default/include/PluginLoader.h
+++ b/drm/1.0/default/include/PluginLoader.h
@@ -85,7 +85,10 @@ class PluginLoader {
libraries.push(library);
T* result = createFactoryFunc();
return result;
- }
+ } else {
+ ALOGE("Failed to lookup symbol %s in library %s: %s",
+ entry, path, library->lastError());
+ }
}
return NULL;
}