diff options
author | Scott Lobdell <slobdell@google.com> | 2019-02-05 23:29:57 -0800 |
---|---|---|
committer | Steven Moreland <smoreland@google.com> | 2019-02-06 19:31:20 +0000 |
commit | 1c5b5d75ceeeae9b4902bd62d2907a0b40d22f26 (patch) | |
tree | 6a542cdf2e2e37f83041151f2d2de9046e58eabf /wifi/1.3/default/service.cpp | |
parent | 44c873c6ea9ddae6188f5925dbc25958edd962c1 (diff) | |
parent | 7dc0a011c2f9fa7221003b2b6859299e88405713 (diff) |
Merge QP1A.190205.002
Change-Id: I00eea204467afb5984b2dbcc87d8e8ff82aac307
Diffstat (limited to 'wifi/1.3/default/service.cpp')
-rw-r--r-- | wifi/1.3/default/service.cpp | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/wifi/1.3/default/service.cpp b/wifi/1.3/default/service.cpp index a39c3eaef0..c470c1e7d2 100644 --- a/wifi/1.3/default/service.cpp +++ b/wifi/1.3/default/service.cpp @@ -15,6 +15,7 @@ */ #include <android-base/logging.h> +#include <hidl/HidlLazyUtils.h> #include <hidl/HidlTransportSupport.h> #include <utils/Looper.h> #include <utils/StrongPointer.h> @@ -28,6 +29,7 @@ using android::hardware::configureRpcThreadpool; using android::hardware::joinRpcThreadpool; +using android::hardware::LazyServiceRegistrar; using android::hardware::wifi::V1_3::implementation::feature_flags:: WifiFeatureFlags; using android::hardware::wifi::V1_3::implementation::legacy_hal::WifiLegacyHal; @@ -45,6 +47,12 @@ size_t getHWBinderMmapSize() { } #endif /* ARCH_ARM_32 */ +#ifdef LAZY_SERVICE +const bool kLazyService = true; +#else +const bool kLazyService = false; +#endif + int main(int /*argc*/, char** argv) { #ifdef ARCH_ARM_32 android::hardware::ProcessState::initWithMmapSize(getHWBinderMmapSize()); @@ -61,8 +69,14 @@ int main(int /*argc*/, char** argv) { std::make_shared<WifiLegacyHal>(), std::make_shared<WifiModeController>(), std::make_shared<WifiFeatureFlags>()); - CHECK_EQ(service->registerAsService(), android::NO_ERROR) - << "Failed to register wifi HAL"; + if (kLazyService) { + LazyServiceRegistrar registrar; + CHECK_EQ(registrar.registerService(service), android::NO_ERROR) + << "Failed to register wifi HAL"; + } else { + CHECK_EQ(service->registerAsService(), android::NO_ERROR) + << "Failed to register wifi HAL"; + } joinRpcThreadpool(); |