summaryrefslogtreecommitdiff
path: root/gps/gnss/GnssAdapter.cpp
diff options
context:
space:
mode:
authorGuaiYiHu <guaiyihu@foxmail.com>2019-01-22 21:24:19 +0800
committerIsaac Chen <tingyi364@gmail.com>2019-09-01 16:44:11 +0200
commitd15d528204bd14c319317b7c6f31784897056d0a (patch)
tree8bc23f04089a537b3b52e3f052068449a27eebd5 /gps/gnss/GnssAdapter.cpp
parent5fd4d9f756d4ed53088c959df2c23f7ab1ddc808 (diff)
wayne-common: Update GPS from LA.UM.7.2.r1-05800-sdm660.0
Change-Id: Idaec6889200d67c776222aebecdc9c0255e2b963 Signed-off-by: Isaac Chen <isaacchen@isaacchen.cn>
Diffstat (limited to 'gps/gnss/GnssAdapter.cpp')
-rw-r--r--gps/gnss/GnssAdapter.cpp34
1 files changed, 22 insertions, 12 deletions
diff --git a/gps/gnss/GnssAdapter.cpp b/gps/gnss/GnssAdapter.cpp
index 751c148..6df8e12 100644
--- a/gps/gnss/GnssAdapter.cpp
+++ b/gps/gnss/GnssAdapter.cpp
@@ -766,8 +766,9 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
err = mApi.setGpsLock(mConfig.gpsLock);
}
if (index < mCount) {
- errs[index++] = err;
+ errs[index] = err;
}
+ index++;
}
if (mConfig.flags & GNSS_CONFIG_FLAGS_SUPL_VERSION_VALID_BIT) {
uint32_t newSuplVersion = mAdapter.convertSuplVersion(mConfig.suplVersion);
@@ -779,8 +780,9 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
err = LOCATION_ERROR_SUCCESS;
}
if (index < mCount) {
- errs[index++] = err;
+ errs[index] = err;
}
+ index++;
}
if (mConfig.flags & GNSS_CONFIG_FLAGS_SET_ASSISTANCE_DATA_VALID_BIT) {
if (GNSS_ASSISTANCE_TYPE_SUPL == mConfig.assistanceServer.type) {
@@ -808,8 +810,9 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
err = LOCATION_ERROR_INVALID_PARAMETER;
}
if (index < mCount) {
- errs[index++] = err;
+ errs[index] = err;
}
+ index++;
}
if (mConfig.flags & GNSS_CONFIG_FLAGS_LPP_PROFILE_VALID_BIT) {
uint32_t newLppProfile = mAdapter.convertLppProfile(mConfig.lppProfile);
@@ -821,8 +824,9 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
err = LOCATION_ERROR_SUCCESS;
}
if (index < mCount) {
- errs[index++] = err;
+ errs[index] = err;
}
+ index++;
}
if (mConfig.flags & GNSS_CONFIG_FLAGS_LPPE_CONTROL_PLANE_VALID_BIT) {
uint32_t newLppeControlPlaneMask =
@@ -834,8 +838,9 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
err = LOCATION_ERROR_SUCCESS;
}
if (index < mCount) {
- errs[index++] = err;
+ errs[index] = err;
}
+ index++;
}
if (mConfig.flags & GNSS_CONFIG_FLAGS_LPPE_USER_PLANE_VALID_BIT) {
uint32_t newLppeUserPlaneMask =
@@ -847,8 +852,9 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
err = LOCATION_ERROR_SUCCESS;
}
if (index < mCount) {
- errs[index++] = err;
+ errs[index] = err;
}
+ index++;
}
if (mConfig.flags & GNSS_CONFIG_FLAGS_AGLONASS_POSITION_PROTOCOL_VALID_BIT) {
uint32_t newAGloProtMask =
@@ -861,8 +867,9 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
err = LOCATION_ERROR_SUCCESS;
}
if (index < mCount) {
- errs[index++] = err;
+ errs[index] = err;
}
+ index++;
}
if (mConfig.flags & GNSS_CONFIG_FLAGS_EM_PDN_FOR_EM_SUPL_VALID_BIT) {
uint32_t newEP4ES = mAdapter.convertEP4ES(mConfig.emergencyPdnForEmergencySupl);
@@ -871,8 +878,9 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
}
err = LOCATION_ERROR_SUCCESS;
if (index < mCount) {
- errs[index++] = err;
+ errs[index] = err;
}
+ index++;
}
if (mConfig.flags & GNSS_CONFIG_FLAGS_SUPL_EM_SERVICES_BIT) {
uint32_t newSuplEs = mAdapter.convertSuplEs(mConfig.suplEmergencyServices);
@@ -881,8 +889,9 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
}
err = LOCATION_ERROR_SUCCESS;
if (index < mCount) {
- errs[index++] = err;
+ errs[index] = err;
}
+ index++;
}
if (mConfig.flags & GNSS_CONFIG_FLAGS_SUPL_MODE_BIT) {
uint32_t newSuplMode = mAdapter.convertSuplMode(mConfig.suplModeMask);
@@ -894,8 +903,9 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
}
err = LOCATION_ERROR_SUCCESS;
if (index < mCount) {
- errs[index++] = err;
+ errs[index] = err;
}
+ index++;
}
mAdapter.reportResponse(index, errs, mIds);
@@ -1957,7 +1967,6 @@ GnssAdapter::enableCommand(LocationTechnologyType techType)
} else if (powerVoteId > 0) {
err = LOCATION_ERROR_ALREADY_STARTED;
} else {
- mContext.modemPowerVote(true);
mAdapter.setPowerVoteId(mSessionId);
mApi.setGpsLock(GNSS_CONFIG_GPS_LOCK_NONE);
mAdapter.mXtraObserver.updateLockStatus(
@@ -1969,6 +1978,7 @@ GnssAdapter::enableCommand(LocationTechnologyType techType)
if (mContext != NULL) {
sendMsg(new MsgEnableGnss(*this, *mLocApi, *mContext, sessionId, techType));
+ mContext->modemPowerVote(true);
} else {
LOC_LOGE("%s]: Context is NULL", __func__);
}
@@ -2001,7 +2011,6 @@ GnssAdapter::disableCommand(uint32_t id)
if (powerVoteId != mSessionId) {
err = LOCATION_ERROR_ID_UNKNOWN;
} else {
- mContext.modemPowerVote(false);
mAdapter.setPowerVoteId(0);
mApi.setGpsLock(mAdapter.convertGpsLock(ContextBase::mGps_conf.GPS_LOCK));
mAdapter.mXtraObserver.updateLockStatus(
@@ -2013,6 +2022,7 @@ GnssAdapter::disableCommand(uint32_t id)
if (mContext != NULL) {
sendMsg(new MsgDisableGnss(*this, *mLocApi, *mContext, id));
+ mContext->modemPowerVote(false);
}
}