diff options
author | android-build-team Robot <android-build-team-robot@google.com> | 2018-10-02 22:08:19 +0000 |
---|---|---|
committer | android-build-team Robot <android-build-team-robot@google.com> | 2018-10-02 22:08:19 +0000 |
commit | 5ae953efca3b1ca49476e6163c809ccad46d1cfe (patch) | |
tree | 2ffa845b99948c4b6042b1fb82e371686a98aa4b | |
parent | 616d275b3bf0395db7c2516423b58f9df5807017 (diff) | |
parent | 3c941518e307d96bc970144def838c9f2b0e1598 (diff) | |
download | gps-5ae953efca3b1ca49476e6163c809ccad46d1cfe.tar.gz |
Snap for 5044688 from 3c941518e307d96bc970144def838c9f2b0e1598 to pi-qpr2-release
Change-Id: I76133965bdbfa1358b9aa33e098c154d57f2f5c5
-rw-r--r-- | Android.mk | 22 | ||||
-rw-r--r-- | msm8998/gnss/Agps.cpp | 5 | ||||
-rw-r--r-- | msm8998/gnss/GnssAdapter.cpp | 7 | ||||
-rw-r--r-- | msm8998/gnss/GnssAdapter.h | 3 |
4 files changed, 28 insertions, 9 deletions
@@ -1,5 +1,16 @@ -# TODO: Find a better way to separate build configs for ADP vs non-ADP devices -ifneq ($(BOARD_IS_AUTOMOTIVE),true) +#set TARGET_USES_HARDWARE_QCOM_GPS to false to disable this project. + +ifeq ($(TARGET_USES_HARDWARE_QCOM_GPS),) + ifneq ($(filter sdm845 sdm710, $(TARGET_BOARD_PLATFORM)),) + TARGET_USES_HARDWARE_QCOM_GPS := false + else ifeq ($(BOARD_IS_AUTOMOTIVE),true) + TARGET_USES_HARDWARE_QCOM_GPS := false + else + TARGET_USES_HARDWARE_QCOM_GPS := true + endif +endif + +ifeq ($(TARGET_USES_HARDWARE_QCOM_GPS),true) ifneq ($(BOARD_VENDOR_QCOM_GPS_LOC_API_HARDWARE),) LOCAL_PATH := $(call my-dir) ifeq ($(BOARD_VENDOR_QCOM_LOC_PDK_FEATURE_SET),true) @@ -10,8 +21,7 @@ ifneq ($(BOARD_IS_AUTOMOTIVE),true) else ifneq ($(filter msm8992,$(TARGET_BOARD_PLATFORM)),) #For msm8992 use msm8994 include $(call all-named-subdir-makefiles,msm8994) - else ifneq ($(filter msm8960 msm8084 msm8994 msm8996 msm8998 sdm845 sdm710,$(TARGET_BOARD_PLATFORM)),) - #For these, use their platform name as the subdirectory + else ifneq ($(filter msm8960 msm8084 msm8994 msm8996 msm8998,$(TARGET_BOARD_PLATFORM)),) include $(call all-named-subdir-makefiles,$(TARGET_BOARD_PLATFORM)) else ifeq ($(filter msm8916,$(TARGET_BOARD_PLATFORM)),) #For all other targets besides msm8916 @@ -20,9 +30,7 @@ ifneq ($(BOARD_IS_AUTOMOTIVE),true) endif #TARGET_BOARD_PLATFORM else - ifneq ($(filter sdm845 sdm710,$(TARGET_BOARD_PLATFORM)),) - include $(call all-named-subdir-makefiles,$(TARGET_BOARD_PLATFORM)) - else ifneq ($(filter msm8909 msm8226 ,$(TARGET_BOARD_PLATFORM)),) + ifneq ($(filter msm8909 msm8226 ,$(TARGET_BOARD_PLATFORM)),) ifeq ($(TARGET_SUPPORTS_QCOM_3100),true) # For SD3100. include $(call all-named-subdir-makefiles,msm8909w_3100) diff --git a/msm8998/gnss/Agps.cpp b/msm8998/gnss/Agps.cpp index f5b8efe..e671daa 100644 --- a/msm8998/gnss/Agps.cpp +++ b/msm8998/gnss/Agps.cpp @@ -205,7 +205,10 @@ void AgpsStateMachine::processAgpsEventReleased(){ switch (mState) { case AGPS_STATE_RELEASED: - LOC_LOGE("Unexpected event RELEASED in state %d", mState); + /* Subscriber list should be empty if we are in released state */ + if (!mSubscriberList.empty()) { + LOC_LOGE("Unexpected event RELEASED in RELEASED state"); + } break; case AGPS_STATE_ACQUIRED: diff --git a/msm8998/gnss/GnssAdapter.cpp b/msm8998/gnss/GnssAdapter.cpp index e14cf28..1896108 100644 --- a/msm8998/gnss/GnssAdapter.cpp +++ b/msm8998/gnss/GnssAdapter.cpp @@ -64,7 +64,8 @@ GnssAdapter::GnssAdapter() : mControlCallbacks(), mPowerVoteId(0), mNiData(), - mAgpsManager() + mAgpsManager(), + mAgpsInitialized(false) { LOC_LOGD("%s]: Constructor %p", __func__, this); mUlpPositionMode.mode = LOC_POSITION_MODE_INVALID; @@ -1004,6 +1005,9 @@ GnssAdapter::updateClientsEventMask() mask |= LOC_API_ADAPTER_BIT_GNSS_MEASUREMENT; } } + if (true == getAgpsInitialized()) { + mask |= LOC_API_ADAPTER_BIT_LOCATION_SERVER_REQUEST; + } updateEvtMask(mask, LOC_REGISTRATION_MASK_SET); } @@ -2392,6 +2396,7 @@ void GnssAdapter::initAgpsCommand(void* statusV4Cb){ mAgpsManager->createAgpsStateMachines(); + mAdapter.setAgpsInitialized(true); /* Register for AGPS event mask */ mAdapter.updateEvtMask(LOC_API_ADAPTER_BIT_LOCATION_SERVER_REQUEST, LOC_REGISTRATION_MASK_ENABLED); diff --git a/msm8998/gnss/GnssAdapter.h b/msm8998/gnss/GnssAdapter.h index d857558..e8cebd5 100644 --- a/msm8998/gnss/GnssAdapter.h +++ b/msm8998/gnss/GnssAdapter.h @@ -99,6 +99,7 @@ class GnssAdapter : public LocAdapterBase { /* ==== AGPS ========================================================*/ // This must be initialized via initAgps() AgpsManager mAgpsManager; + bool mAgpsInitialized; /*==== CONVERSION ===================================================================*/ static void convertOptions(LocPosMode& out, const LocationOptions& options); @@ -191,6 +192,8 @@ public: const char* apnName, int apnLen, LocApnIpType ipType); void dataConnClosedCommand(AGpsExtType agpsType); void dataConnFailedCommand(AGpsExtType agpsType); + inline void setAgpsInitialized(bool value) { mAgpsInitialized = value; } + inline bool getAgpsInitialized() { return mAgpsInitialized; } /* ======== RESPONSES ================================================================== */ void reportResponse(LocationError err, uint32_t sessionId); |