123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- #define LOG_TAG "android.hardware.gnss@1.1-service-qti"
- #include <android/hardware/gnss/1.1/IGnss.h>
- #include <hidl/LegacySupport.h>
- #include "loc_cfg.h"
- #include "loc_misc_utils.h"
- extern "C" {
- #include "vndfwk-detect.h"
- }
- #ifdef ARCH_ARM_32
- #define DEFAULT_HW_BINDER_MEM_SIZE 65536
- #endif
- using android::hardware::gnss::V1_1::IGnss;
- using android::hardware::configureRpcThreadpool;
- using android::hardware::registerPassthroughServiceImplementation;
- using android::hardware::joinRpcThreadpool;
- using android::status_t;
- using android::OK;
- typedef int vendorEnhancedServiceMain(int , char* []);
- int main() {
- ALOGI("%s", __FUNCTION__);
- int vendorInfo = getVendorEnhancedInfo();
- bool vendorEnhanced = ( 1 == vendorInfo || 3 == vendorInfo );
- setVendorEnhanced(vendorEnhanced);
- #ifdef ARCH_ARM_32
- android::hardware::ProcessState::initWithMmapSize((size_t)(DEFAULT_HW_BINDER_MEM_SIZE));
- #endif
- configureRpcThreadpool(1, true);
- status_t status;
- status = registerPassthroughServiceImplementation<IGnss>();
- if (status == OK) {
- joinRpcThreadpool();
- } else {
- ALOGE("Error while registering IGnss 1.1 service: %d", status);
- }
- return 0;
- }
|