Fixing error population logic
Updating error vector population logic in GNSS Update config command. Change-Id: Ia328ad112056ecc20221ca10ba91c72f3182830a CRs-Fixed: 2261813
This commit is contained in:
parent
95e5a78305
commit
889d1eed23
1 changed files with 27 additions and 20 deletions
|
@ -829,7 +829,6 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
|
|||
int index = 0;
|
||||
|
||||
if (gnssConfigRequested.flags & GNSS_CONFIG_FLAGS_GPS_LOCK_VALID_BIT) {
|
||||
index++;
|
||||
uint32_t newGpsLock = mAdapter.convertGpsLock(gnssConfigRequested.gpsLock);
|
||||
ContextBase::mGps_conf.GPS_LOCK = newGpsLock;
|
||||
if (0 == ContextBase::mGps_conf.GPS_LOCK) {
|
||||
|
@ -838,9 +837,9 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
|
|||
if (0 != mAdapter.getPowerVoteId()) {
|
||||
gnssConfigNeedEngineUpdate.flags &= ~(GNSS_CONFIG_FLAGS_GPS_LOCK_VALID_BIT);
|
||||
}
|
||||
index++;
|
||||
}
|
||||
if (gnssConfigRequested.flags & GNSS_CONFIG_FLAGS_SUPL_VERSION_VALID_BIT) {
|
||||
index++;
|
||||
uint32_t newSuplVersion =
|
||||
mAdapter.convertSuplVersion(gnssConfigRequested.suplVersion);
|
||||
if (newSuplVersion != ContextBase::mGps_conf.SUPL_VER &&
|
||||
|
@ -849,9 +848,9 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
|
|||
} else {
|
||||
gnssConfigNeedEngineUpdate.flags &= ~(GNSS_CONFIG_FLAGS_SUPL_VERSION_VALID_BIT);
|
||||
}
|
||||
index++;
|
||||
}
|
||||
if (gnssConfigRequested.flags & GNSS_CONFIG_FLAGS_SET_ASSISTANCE_DATA_VALID_BIT) {
|
||||
index++;
|
||||
if (GNSS_ASSISTANCE_TYPE_SUPL == mConfig.assistanceServer.type) {
|
||||
mAdapter.setSuplHostServer(mConfig.assistanceServer.hostName,
|
||||
mConfig.assistanceServer.port,
|
||||
|
@ -863,9 +862,9 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
|
|||
gnssConfigNeedEngineUpdate.flags &=
|
||||
~(GNSS_CONFIG_FLAGS_SET_ASSISTANCE_DATA_VALID_BIT);
|
||||
}
|
||||
index++;
|
||||
}
|
||||
if (gnssConfigRequested.flags & GNSS_CONFIG_FLAGS_LPP_PROFILE_VALID_BIT) {
|
||||
index++;
|
||||
uint32_t newLppProfile = mAdapter.convertLppProfile(gnssConfigRequested.lppProfile);
|
||||
if (newLppProfile != ContextBase::mGps_conf.LPP_PROFILE &&
|
||||
ContextBase::mGps_conf.AGPS_CONFIG_INJECT) {
|
||||
|
@ -873,9 +872,9 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
|
|||
} else {
|
||||
gnssConfigNeedEngineUpdate.flags &= ~(GNSS_CONFIG_FLAGS_LPP_PROFILE_VALID_BIT);
|
||||
}
|
||||
index++;
|
||||
}
|
||||
if (gnssConfigRequested.flags & GNSS_CONFIG_FLAGS_LPPE_CONTROL_PLANE_VALID_BIT) {
|
||||
index++;
|
||||
uint32_t newLppeControlPlaneMask =
|
||||
mAdapter.convertLppeCp(gnssConfigRequested.lppeControlPlaneMask);
|
||||
if (newLppeControlPlaneMask != ContextBase::mGps_conf.LPPE_CP_TECHNOLOGY) {
|
||||
|
@ -884,9 +883,9 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
|
|||
gnssConfigNeedEngineUpdate.flags &=
|
||||
~(GNSS_CONFIG_FLAGS_LPPE_CONTROL_PLANE_VALID_BIT);
|
||||
}
|
||||
index++;
|
||||
}
|
||||
if (gnssConfigRequested.flags & GNSS_CONFIG_FLAGS_LPPE_USER_PLANE_VALID_BIT) {
|
||||
index++;
|
||||
uint32_t newLppeUserPlaneMask =
|
||||
mAdapter.convertLppeUp(gnssConfigRequested.lppeUserPlaneMask);
|
||||
if (newLppeUserPlaneMask != ContextBase::mGps_conf.LPPE_UP_TECHNOLOGY) {
|
||||
|
@ -895,10 +894,10 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
|
|||
gnssConfigNeedEngineUpdate.flags &=
|
||||
~(GNSS_CONFIG_FLAGS_LPPE_USER_PLANE_VALID_BIT);
|
||||
}
|
||||
index++;
|
||||
}
|
||||
if (gnssConfigRequested.flags &
|
||||
GNSS_CONFIG_FLAGS_AGLONASS_POSITION_PROTOCOL_VALID_BIT) {
|
||||
index++;
|
||||
uint32_t newAGloProtMask =
|
||||
mAdapter.convertAGloProt(gnssConfigRequested.aGlonassPositionProtocolMask);
|
||||
if (newAGloProtMask != ContextBase::mGps_conf.A_GLONASS_POS_PROTOCOL_SELECT &&
|
||||
|
@ -908,30 +907,31 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
|
|||
gnssConfigNeedEngineUpdate.flags &=
|
||||
~(GNSS_CONFIG_FLAGS_AGLONASS_POSITION_PROTOCOL_VALID_BIT);
|
||||
}
|
||||
index++;
|
||||
}
|
||||
if (gnssConfigRequested.flags & GNSS_CONFIG_FLAGS_EM_PDN_FOR_EM_SUPL_VALID_BIT) {
|
||||
index++;
|
||||
uint32_t newEP4ES = mAdapter.convertEP4ES(
|
||||
gnssConfigRequested.emergencyPdnForEmergencySupl);
|
||||
if (newEP4ES != ContextBase::mGps_conf.USE_EMERGENCY_PDN_FOR_EMERGENCY_SUPL) {
|
||||
ContextBase::mGps_conf.USE_EMERGENCY_PDN_FOR_EMERGENCY_SUPL = newEP4ES;
|
||||
}
|
||||
index++;
|
||||
}
|
||||
if (gnssConfigRequested.flags & GNSS_CONFIG_FLAGS_SUPL_EM_SERVICES_BIT) {
|
||||
index++;
|
||||
uint32_t newSuplEs = mAdapter.convertSuplEs(
|
||||
gnssConfigRequested.suplEmergencyServices);
|
||||
if (newSuplEs != ContextBase::mGps_conf.SUPL_ES) {
|
||||
ContextBase::mGps_conf.SUPL_ES = newSuplEs;
|
||||
}
|
||||
index++;
|
||||
}
|
||||
if (gnssConfigRequested.flags & GNSS_CONFIG_FLAGS_SUPL_MODE_BIT) {
|
||||
index++;
|
||||
uint32_t newSuplMode = mAdapter.convertSuplMode(gnssConfigRequested.suplModeMask);
|
||||
if (newSuplMode != ContextBase::mGps_conf.SUPL_MODE) {
|
||||
ContextBase::mGps_conf.SUPL_MODE = newSuplMode;
|
||||
mAdapter.broadcastCapabilities(mAdapter.getCapabilities());
|
||||
}
|
||||
index++;
|
||||
}
|
||||
|
||||
LocApiCollectiveResponse *configCollectiveResponse = new LocApiCollectiveResponse(
|
||||
|
@ -960,10 +960,10 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
|
|||
errsList[index] = err;
|
||||
}
|
||||
}
|
||||
index++;
|
||||
}
|
||||
if (gnssConfigRequested.flags &
|
||||
GNSS_CONFIG_FLAGS_SET_ASSISTANCE_DATA_VALID_BIT) {
|
||||
index++;
|
||||
if (gnssConfigNeedEngineUpdate.flags &
|
||||
GNSS_CONFIG_FLAGS_SET_ASSISTANCE_DATA_VALID_BIT) {
|
||||
if (gnssConfigNeedEngineUpdate.assistanceServer.type ==
|
||||
|
@ -971,7 +971,9 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
|
|||
if ((serverUrlLen != 0) && (oldServerUrl.compare(serverUrl) !=0)) {
|
||||
err = adapter.mLocApi->setServerSync(
|
||||
serverUrl.c_str(), serverUrlLen, LOC_AGPS_SUPL_SERVER);
|
||||
errsList[index] = err;
|
||||
if (index < countOfConfigs) {
|
||||
errsList[index] = err;
|
||||
}
|
||||
}
|
||||
} else if (gnssConfigNeedEngineUpdate.assistanceServer.type ==
|
||||
GNSS_ASSISTANCE_TYPE_C2K) {
|
||||
|
@ -992,7 +994,9 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
|
|||
LOC_LOGE("%s]: hostname '%s' cannot be resolved ",
|
||||
__func__,
|
||||
gnssConfigNeedEngineUpdate.assistanceServer.hostName);
|
||||
errsList[index] = LOCATION_ERROR_INVALID_PARAMETER;
|
||||
if (index < countOfConfigs) {
|
||||
errsList[index] = LOCATION_ERROR_INVALID_PARAMETER;
|
||||
}
|
||||
} else {
|
||||
resolveAddrSuccess = false;
|
||||
}
|
||||
|
@ -1003,13 +1007,15 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
|
|||
err = adapter.mLocApi->setServerSync(ip,
|
||||
gnssConfigNeedEngineUpdate.assistanceServer.port,
|
||||
LOC_AGPS_CDMA_PDE_SERVER);
|
||||
errsList[index] = err;
|
||||
if (index < countOfConfigs) {
|
||||
errsList[index] = err;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
index++;
|
||||
}
|
||||
if (gnssConfigRequested.flags & GNSS_CONFIG_FLAGS_SUPL_VERSION_VALID_BIT) {
|
||||
index++;
|
||||
if (gnssConfigNeedEngineUpdate.flags &
|
||||
GNSS_CONFIG_FLAGS_SUPL_VERSION_VALID_BIT) {
|
||||
err = adapter.mLocApi->setSUPLVersionSync(gnssConfigRequested.suplVersion);
|
||||
|
@ -1017,9 +1023,9 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
|
|||
errsList[index] = err;
|
||||
}
|
||||
}
|
||||
index++;
|
||||
}
|
||||
if (gnssConfigRequested.flags & GNSS_CONFIG_FLAGS_LPP_PROFILE_VALID_BIT) {
|
||||
index++;
|
||||
if (gnssConfigNeedEngineUpdate.flags &
|
||||
GNSS_CONFIG_FLAGS_LPP_PROFILE_VALID_BIT) {
|
||||
err = adapter.mLocApi->setLPPConfigSync(gnssConfigRequested.lppProfile);
|
||||
|
@ -1027,9 +1033,9 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
|
|||
errsList[index] = err;
|
||||
}
|
||||
}
|
||||
index++;
|
||||
}
|
||||
if (gnssConfigRequested.flags & GNSS_CONFIG_FLAGS_LPPE_CONTROL_PLANE_VALID_BIT) {
|
||||
index++;
|
||||
if (gnssConfigNeedEngineUpdate.flags &
|
||||
GNSS_CONFIG_FLAGS_LPPE_CONTROL_PLANE_VALID_BIT) {
|
||||
err = adapter.mLocApi->setLPPeProtocolCpSync(
|
||||
|
@ -1038,9 +1044,9 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
|
|||
errsList[index] = err;
|
||||
}
|
||||
}
|
||||
index++;
|
||||
}
|
||||
if (gnssConfigRequested.flags & GNSS_CONFIG_FLAGS_LPPE_USER_PLANE_VALID_BIT) {
|
||||
index++;
|
||||
if (gnssConfigNeedEngineUpdate.flags &
|
||||
GNSS_CONFIG_FLAGS_LPPE_USER_PLANE_VALID_BIT) {
|
||||
err = adapter.mLocApi->setLPPeProtocolUpSync(
|
||||
|
@ -1049,10 +1055,10 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
|
|||
errsList[index] = err;
|
||||
}
|
||||
}
|
||||
index++;
|
||||
}
|
||||
if (gnssConfigRequested.flags &
|
||||
GNSS_CONFIG_FLAGS_AGLONASS_POSITION_PROTOCOL_VALID_BIT) {
|
||||
index++;
|
||||
if (gnssConfigNeedEngineUpdate.flags &
|
||||
GNSS_CONFIG_FLAGS_AGLONASS_POSITION_PROTOCOL_VALID_BIT) {
|
||||
err = adapter.mLocApi->setAGLONASSProtocolSync(
|
||||
|
@ -1061,9 +1067,9 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
|
|||
errsList[index] = err;
|
||||
}
|
||||
}
|
||||
index++;
|
||||
}
|
||||
if (gnssConfigRequested.flags & GNSS_CONFIG_FLAGS_BLACKLISTED_SV_IDS_BIT) {
|
||||
index++;
|
||||
// Check if feature is supported
|
||||
if (!ContextBase::isFeatureSupported(
|
||||
LOC_SUPPORTED_FEATURE_CONSTELLATION_ENABLEMENT_V02)) {
|
||||
|
@ -1079,6 +1085,7 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
|
|||
if (index < countOfConfigs) {
|
||||
errsList[index] = err;
|
||||
}
|
||||
index++;
|
||||
}
|
||||
configCollectiveResponse->returnToSender(errsList);
|
||||
}));
|
||||
|
|
Loading…
Reference in a new issue