diff options
Diffstat (limited to 'graphics/composer/2.1/default/service.cpp')
-rw-r--r-- | graphics/composer/2.1/default/service.cpp | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/graphics/composer/2.1/default/service.cpp b/graphics/composer/2.1/default/service.cpp index 82a33f6a4e..1276d2df7e 100644 --- a/graphics/composer/2.1/default/service.cpp +++ b/graphics/composer/2.1/default/service.cpp @@ -21,10 +21,11 @@ #include <android/hardware/graphics/composer/2.1/IComposer.h> #include <binder/ProcessState.h> +#include <composer-passthrough/2.1/HwcLoader.h> #include <hidl/LegacySupport.h> using android::hardware::graphics::composer::V2_1::IComposer; -using android::hardware::defaultPassthroughServiceImplementation; +using android::hardware::graphics::composer::V2_1::passthrough::HwcLoader; int main() { // the conventional HAL might start binder services @@ -40,5 +41,19 @@ int main() { ALOGE("Couldn't set SCHED_FIFO: %d", errno); } - return defaultPassthroughServiceImplementation<IComposer>(4); + android::hardware::configureRpcThreadpool(4, true /* will join */); + + android::sp<IComposer> composer = HwcLoader::load(); + if (composer == nullptr) { + return 1; + } + if (composer->registerAsService() != android::NO_ERROR) { + ALOGE("failed to register service"); + return 1; + } + + android::hardware::joinRpcThreadpool(); + + ALOGE("service is terminating"); + return 1; } |