diff options
| author | Peter Kalauskas <peskal@google.com> | 2018-11-12 12:34:42 -0800 |
|---|---|---|
| committer | Peter Kalauskas <peskal@google.com> | 2019-01-14 15:10:26 -0800 |
| commit | ca5642cd9ccd95cae88dd9204958419e279ea532 (patch) | |
| tree | f53b445fe98b892083c1ea735980d9b7ac7907f4 /drm | |
| parent | 8292a716361d0f02de2b79242aec4630664bc770 (diff) | |
| download | frameworks_av-ca5642cd9ccd95cae88dd9204958419e279ea532.tar.gz frameworks_av-ca5642cd9ccd95cae88dd9204958419e279ea532.tar.bz2 frameworks_av-ca5642cd9ccd95cae88dd9204958419e279ea532.zip | |
List drm HALs from manifest
To support lazy drm HALs, libmediadrm needs to list all available HALs
that are defined in the manifest. Otherwise, it will only list HALs that
are currently running. This change is necessary because lazy HALs do not
run until they are requested. Without this change, libmediadrm would not
be aware that the lazy HALs are present, and it would not know to call
getService() to start them.
Test: Run gts
Bug: 112386116
Change-Id: I9b41c60d574b9c8c857b8838a5bbdc64388c9ddb
Diffstat (limited to 'drm')
| -rw-r--r-- | drm/libmediadrm/DrmHal.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drm/libmediadrm/DrmHal.cpp b/drm/libmediadrm/DrmHal.cpp index 66c509f647..981bd5b03a 100644 --- a/drm/libmediadrm/DrmHal.cpp +++ b/drm/libmediadrm/DrmHal.cpp @@ -24,7 +24,7 @@ #include <binder/IServiceManager.h> #include <android/hardware/drm/1.2/types.h> -#include <android/hidl/manager/1.0/IServiceManager.h> +#include <android/hidl/manager/1.2/IServiceManager.h> #include <hidl/ServiceManagement.h> #include <media/EventMetric.h> @@ -333,10 +333,10 @@ void DrmHal::cleanup() { Vector<sp<IDrmFactory>> DrmHal::makeDrmFactories() { Vector<sp<IDrmFactory>> factories; - auto manager = hardware::defaultServiceManager(); + auto manager = hardware::defaultServiceManager1_2(); if (manager != NULL) { - manager->listByInterface(drm::V1_0::IDrmFactory::descriptor, + manager->listManifestByInterface(drm::V1_0::IDrmFactory::descriptor, [&factories](const hidl_vec<hidl_string> ®istered) { for (const auto &instance : registered) { auto factory = drm::V1_0::IDrmFactory::getService(instance); @@ -346,7 +346,7 @@ Vector<sp<IDrmFactory>> DrmHal::makeDrmFactories() { } } ); - manager->listByInterface(drm::V1_1::IDrmFactory::descriptor, + manager->listManifestByInterface(drm::V1_1::IDrmFactory::descriptor, [&factories](const hidl_vec<hidl_string> ®istered) { for (const auto &instance : registered) { auto factory = drm::V1_1::IDrmFactory::getService(instance); |
