diff options
-rw-r--r-- | graphics/composer/2.1/default/Android.bp | 28 | ||||
-rw-r--r-- | graphics/composer/2.1/default/passthrough.cpp | 25 | ||||
-rw-r--r-- | graphics/composer/2.1/default/service.cpp | 19 |
3 files changed, 22 insertions, 50 deletions
diff --git a/graphics/composer/2.1/default/Android.bp b/graphics/composer/2.1/default/Android.bp index 533687bb7d..a367457ae9 100644 --- a/graphics/composer/2.1/default/Android.bp +++ b/graphics/composer/2.1/default/Android.bp @@ -1,9 +1,10 @@ -cc_library_shared { - name: "android.hardware.graphics.composer@2.1-impl", +cc_binary { + name: "android.hardware.graphics.composer@2.1-service", defaults: ["hidl_defaults"], vendor: true, relative_install_path: "hw", - srcs: ["passthrough.cpp"], + srcs: ["service.cpp"], + init_rc: ["android.hardware.graphics.composer@2.1-service.rc"], header_libs: [ "android.hardware.graphics.composer@2.1-passthrough", ], @@ -11,32 +12,13 @@ cc_library_shared { "android.hardware.graphics.composer@2.1", "android.hardware.graphics.composer@2.1-resources", "libbase", + "libbinder", "libcutils", "libfmq", "libhardware", "libhidlbase", - "liblog", - "libsync", - "libutils", "libhwc2on1adapter", "libhwc2onfbadapter", - ], - cflags: [ - "-DLOG_TAG=\"ComposerHal\"" - ], -} - -cc_binary { - name: "android.hardware.graphics.composer@2.1-service", - defaults: ["hidl_defaults"], - vendor: true, - relative_install_path: "hw", - srcs: ["service.cpp"], - init_rc: ["android.hardware.graphics.composer@2.1-service.rc"], - shared_libs: [ - "android.hardware.graphics.composer@2.1", - "libbinder", - "libhidlbase", "liblog", "libsync", "libutils", diff --git a/graphics/composer/2.1/default/passthrough.cpp b/graphics/composer/2.1/default/passthrough.cpp deleted file mode 100644 index ef7ed7c87a..0000000000 --- a/graphics/composer/2.1/default/passthrough.cpp +++ /dev/null @@ -1,25 +0,0 @@ -/* - * Copyright 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 - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#include <android/hardware/graphics/composer/2.1/IComposer.h> -#include <composer-passthrough/2.1/HwcLoader.h> - -using android::hardware::graphics::composer::V2_1::IComposer; -using android::hardware::graphics::composer::V2_1::passthrough::HwcLoader; - -extern "C" IComposer* HIDL_FETCH_IComposer(const char* /* name */) { - return HwcLoader::load(); -} 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; } |