Disable set debug NMEA bit when unsupported
Avoid setting debug NMEA bit of QMI_LOC_SET_ NMEA_TYPES_REQ message when the feature is unsupported. Change-Id: I999654f627eac68042597ee51aff81e8588bfa9b CRs-Fixed: 2072961
This commit is contained in:
parent
f44aa79ca9
commit
4971373d94
3 changed files with 16 additions and 9 deletions
|
@ -61,6 +61,7 @@ GnssAdapter::GnssAdapter() :
|
|||
mGnssSvIdUsedInPosAvail(false),
|
||||
mControlCallbacks(),
|
||||
mPowerVoteId(0),
|
||||
mNmeaMask(0),
|
||||
mNiData(),
|
||||
mAgpsManager(),
|
||||
mAgpsCbInfo()
|
||||
|
@ -520,11 +521,15 @@ GnssAdapter::setConfigCommand()
|
|||
// set nmea mask type
|
||||
uint32_t mask = 0;
|
||||
if (NMEA_PROVIDER_MP == ContextBase::mGps_conf.NMEA_PROVIDER) {
|
||||
mask = LOC_NMEA_ALL_SUPPORTED_MASK;
|
||||
} else {
|
||||
mask = LOC_NMEA_MASK_DEBUG_V02;
|
||||
mask |= LOC_NMEA_ALL_GENERAL_SUPPORTED_MASK;
|
||||
}
|
||||
mApi.setNMEATypes(mask);
|
||||
if (mApi.isFeatureSupported(LOC_SUPPORTED_FEATURE_DEBUG_NMEA_V02)) {
|
||||
mask |= LOC_NMEA_MASK_DEBUG_V02;
|
||||
}
|
||||
if (mask != 0) {
|
||||
mApi.setNMEATypes(mask);
|
||||
}
|
||||
mAdapter.mNmeaMask= mask;
|
||||
|
||||
mApi.setXtraVersionCheck(ContextBase::mGps_conf.XTRA_VERSION_CHECK);
|
||||
if (ContextBase::mSap_conf.GYRO_BIAS_RANDOM_WALK_VALID ||
|
||||
|
@ -1011,7 +1016,7 @@ GnssAdapter::updateClientsEventMask()
|
|||
if (it->second.gnssSvCb != nullptr) {
|
||||
mask |= LOC_API_ADAPTER_BIT_SATELLITE_REPORT;
|
||||
}
|
||||
if (it->second.gnssNmeaCb != nullptr) {
|
||||
if ((it->second.gnssNmeaCb != nullptr) && (mNmeaMask)) {
|
||||
mask |= LOC_API_ADAPTER_BIT_NMEA_1HZ_REPORT;
|
||||
}
|
||||
if (it->second.gnssMeasurementsCb != nullptr) {
|
||||
|
|
|
@ -92,6 +92,7 @@ class GnssAdapter : public LocAdapterBase {
|
|||
/* ==== CONTROL ======================================================================== */
|
||||
LocationControlCallbacks mControlCallbacks;
|
||||
uint32_t mPowerVoteId;
|
||||
uint32_t mNmeaMask;
|
||||
|
||||
/* ==== NI ============================================================================= */
|
||||
NiData mNiData;
|
||||
|
|
|
@ -114,7 +114,8 @@ enum loc_registration_mask_status {
|
|||
|
||||
typedef enum {
|
||||
LOC_SUPPORTED_FEATURE_ODCPI_2_V02 = 0, /**< Support ODCPI version 2 feature */
|
||||
LOC_SUPPORTED_FEATURE_WIFI_AP_DATA_INJECT_2_V02 /**< Support Wifi AP data inject version 2 feature */
|
||||
LOC_SUPPORTED_FEATURE_WIFI_AP_DATA_INJECT_2_V02, /**< Support Wifi AP data inject version 2 feature */
|
||||
LOC_SUPPORTED_FEATURE_DEBUG_NMEA_V02 /**< Support debug NMEA feature */
|
||||
} loc_supported_feature_enum;
|
||||
|
||||
typedef struct {
|
||||
|
@ -427,13 +428,13 @@ typedef uint32_t NmeaSentenceTypesMask;
|
|||
#define LOC_NMEA_MASK_PQGSV_V02 ((NmeaSentenceTypesMask)0x00010000) /**< Enable PQGSV type */
|
||||
#define LOC_NMEA_MASK_DEBUG_V02 ((NmeaSentenceTypesMask)0x00020000) /**< Enable DEBUG type */
|
||||
|
||||
#define LOC_NMEA_ALL_SUPPORTED_MASK (LOC_NMEA_MASK_GGA_V02 | LOC_NMEA_MASK_RMC_V02 | \
|
||||
// all bitmasks of general supported NMEA sentenses - debug is not part of this
|
||||
#define LOC_NMEA_ALL_GENERAL_SUPPORTED_MASK (LOC_NMEA_MASK_GGA_V02 | LOC_NMEA_MASK_RMC_V02 | \
|
||||
LOC_NMEA_MASK_GSV_V02 | LOC_NMEA_MASK_GSA_V02 | LOC_NMEA_MASK_VTG_V02 | \
|
||||
LOC_NMEA_MASK_PQXFI_V02 | LOC_NMEA_MASK_PSTIS_V02 | LOC_NMEA_MASK_GLGSV_V02 | \
|
||||
LOC_NMEA_MASK_GNGSA_V02 | LOC_NMEA_MASK_GNGNS_V02 | LOC_NMEA_MASK_GARMC_V02 | \
|
||||
LOC_NMEA_MASK_GAGSV_V02 | LOC_NMEA_MASK_GAGSA_V02 | LOC_NMEA_MASK_GAVTG_V02 | \
|
||||
LOC_NMEA_MASK_GAGGA_V02 | LOC_NMEA_MASK_PQGSA_V02 | LOC_NMEA_MASK_PQGSV_V02 | \
|
||||
LOC_NMEA_MASK_DEBUG_V02 )
|
||||
LOC_NMEA_MASK_GAGGA_V02 | LOC_NMEA_MASK_PQGSA_V02 | LOC_NMEA_MASK_PQGSV_V02)
|
||||
|
||||
typedef enum {
|
||||
LOC_ENG_IF_REQUEST_SENDER_ID_QUIPC = 0,
|
||||
|
|
Loading…
Reference in a new issue