Merge "Fix config updates for some LocatoinAPI bit masks"
This commit is contained in:
commit
6cd01b2a90
4 changed files with 57 additions and 58 deletions
|
@ -95,10 +95,13 @@ Return<bool> GnssConfiguration::setSuplMode(uint8_t mode) {
|
|||
config.suplModeMask = 0; // STANDALONE ONLY
|
||||
break;
|
||||
case 1:
|
||||
config.suplModeMask = GNSS_CONFIG_SUPL_MODE_MSB;
|
||||
config.suplModeMask = GNSS_CONFIG_SUPL_MODE_MSB_BIT;
|
||||
break;
|
||||
case 2:
|
||||
config.suplModeMask = GNSS_CONFIG_SUPL_MODE_MSA;
|
||||
config.suplModeMask = GNSS_CONFIG_SUPL_MODE_MSA_BIT;
|
||||
break;
|
||||
case 3:
|
||||
config.suplModeMask = GNSS_CONFIG_SUPL_MODE_MSB_BIT | GNSS_CONFIG_SUPL_MODE_MSA_BIT;
|
||||
break;
|
||||
default:
|
||||
LOC_LOGE("%s]: invalid mode: %d.", __FUNCTION__, mode);
|
||||
|
@ -196,7 +199,6 @@ Return<bool> GnssConfiguration::setGpsLock(uint8_t lock) {
|
|||
return false;
|
||||
break;
|
||||
}
|
||||
config.gpsLock = static_cast<GnssConfigGpsLock>(lock);
|
||||
|
||||
return mGnss->updateConfiguration(config);
|
||||
}
|
||||
|
|
|
@ -140,39 +140,39 @@ void GnssAPIClient::gnssDeleteAidingData(IGnss::GnssAidingData aidingDataFlags)
|
|||
LOC_LOGD("%s]: (%02hx)", __FUNCTION__, aidingDataFlags);
|
||||
GnssAidingData data;
|
||||
memset(&data, 0, sizeof (GnssAidingData));
|
||||
data.sv.svTypeMask = GNSS_AIDING_DATA_SV_TYPE_GPS |
|
||||
GNSS_AIDING_DATA_SV_TYPE_GLONASS |
|
||||
GNSS_AIDING_DATA_SV_TYPE_QZSS |
|
||||
GNSS_AIDING_DATA_SV_TYPE_BEIDOU |
|
||||
GNSS_AIDING_DATA_SV_TYPE_GALILEO;
|
||||
data.sv.svTypeMask = GNSS_AIDING_DATA_SV_TYPE_GPS_BIT |
|
||||
GNSS_AIDING_DATA_SV_TYPE_GLONASS_BIT |
|
||||
GNSS_AIDING_DATA_SV_TYPE_QZSS_BIT |
|
||||
GNSS_AIDING_DATA_SV_TYPE_BEIDOU_BIT |
|
||||
GNSS_AIDING_DATA_SV_TYPE_GALILEO_BIT;
|
||||
|
||||
if (aidingDataFlags == IGnss::GnssAidingData::DELETE_ALL)
|
||||
data.deleteAll = true;
|
||||
else {
|
||||
if (aidingDataFlags & IGnss::GnssAidingData::DELETE_EPHEMERIS)
|
||||
data.sv.svMask |= GNSS_AIDING_DATA_SV_EPHEMERIS;
|
||||
data.sv.svMask |= GNSS_AIDING_DATA_SV_EPHEMERIS_BIT;
|
||||
if (aidingDataFlags & IGnss::GnssAidingData::DELETE_ALMANAC)
|
||||
data.sv.svMask |= GNSS_AIDING_DATA_SV_ALMANAC;
|
||||
data.sv.svMask |= GNSS_AIDING_DATA_SV_ALMANAC_BIT;
|
||||
if (aidingDataFlags & IGnss::GnssAidingData::DELETE_POSITION)
|
||||
data.common.mask |= GNSS_AIDING_DATA_COMMON_POSITION;
|
||||
data.common.mask |= GNSS_AIDING_DATA_COMMON_POSITION_BIT;
|
||||
if (aidingDataFlags & IGnss::GnssAidingData::DELETE_TIME)
|
||||
data.common.mask |= GNSS_AIDING_DATA_COMMON_TIME;
|
||||
data.common.mask |= GNSS_AIDING_DATA_COMMON_TIME_BIT;
|
||||
if (aidingDataFlags & IGnss::GnssAidingData::DELETE_IONO)
|
||||
data.sv.svMask |= GNSS_AIDING_DATA_SV_IONOSPHERE;
|
||||
data.sv.svMask |= GNSS_AIDING_DATA_SV_IONOSPHERE_BIT;
|
||||
if (aidingDataFlags & IGnss::GnssAidingData::DELETE_UTC)
|
||||
data.common.mask |= GNSS_AIDING_DATA_COMMON_UTC;
|
||||
data.common.mask |= GNSS_AIDING_DATA_COMMON_UTC_BIT;
|
||||
if (aidingDataFlags & IGnss::GnssAidingData::DELETE_HEALTH)
|
||||
data.sv.svMask |= GNSS_AIDING_DATA_SV_HEALTH;
|
||||
data.sv.svMask |= GNSS_AIDING_DATA_SV_HEALTH_BIT;
|
||||
if (aidingDataFlags & IGnss::GnssAidingData::DELETE_SVDIR)
|
||||
data.sv.svMask |= GNSS_AIDING_DATA_SV_DIRECTION;
|
||||
data.sv.svMask |= GNSS_AIDING_DATA_SV_DIRECTION_BIT;
|
||||
if (aidingDataFlags & IGnss::GnssAidingData::DELETE_SVSTEER)
|
||||
data.sv.svMask |= GNSS_AIDING_DATA_SV_STEER;
|
||||
data.sv.svMask |= GNSS_AIDING_DATA_SV_STEER_BIT;
|
||||
if (aidingDataFlags & IGnss::GnssAidingData::DELETE_SADATA)
|
||||
data.sv.svMask |= GNSS_AIDING_DATA_SV_SA_DATA;
|
||||
data.sv.svMask |= GNSS_AIDING_DATA_SV_SA_DATA_BIT;
|
||||
if (aidingDataFlags & IGnss::GnssAidingData::DELETE_RTI)
|
||||
data.common.mask |= GNSS_AIDING_DATA_COMMON_RTI;
|
||||
data.common.mask |= GNSS_AIDING_DATA_COMMON_RTI_BIT;
|
||||
if (aidingDataFlags & IGnss::GnssAidingData::DELETE_CELLDB_INFO)
|
||||
data.common.mask |= GNSS_AIDING_DATA_COMMON_CELLDB;
|
||||
data.common.mask |= GNSS_AIDING_DATA_COMMON_CELLDB_BIT;
|
||||
}
|
||||
locAPIGnssDeleteAidingData(data);
|
||||
}
|
||||
|
@ -307,15 +307,12 @@ void GnssAPIClient::onGnssNiCb(uint32_t id, GnssNiNotification gnssNiNotificatio
|
|||
notificationGnss.niType =
|
||||
static_cast<IGnssNiCallback::GnssNiType>(4/*hardcode until IGnssNiCallback adds value*/);
|
||||
|
||||
if (gnssNiNotification.options == GNSS_NI_OPTIONS_NOTIFICATION)
|
||||
notificationGnss.notifyFlags =
|
||||
static_cast<uint32_t>(IGnssNiCallback::GnssNiNotifyFlags::NEED_NOTIFY);
|
||||
else if (gnssNiNotification.options == GNSS_NI_OPTIONS_VERIFICATION)
|
||||
notificationGnss.notifyFlags =
|
||||
static_cast<uint32_t>(IGnssNiCallback::GnssNiNotifyFlags::NEED_VERIFY);
|
||||
else if (gnssNiNotification.options == GNSS_NI_OPTIONS_PRIVACY_OVERRIDE)
|
||||
notificationGnss.notifyFlags =
|
||||
static_cast<uint32_t>(IGnssNiCallback::GnssNiNotifyFlags::PRIVACY_OVERRIDE);
|
||||
if (gnssNiNotification.options & GNSS_NI_OPTIONS_NOTIFICATION_BIT)
|
||||
notificationGnss.notifyFlags |= IGnssNiCallback::GnssNiNotifyFlags::NEED_NOTIFY;
|
||||
else if (gnssNiNotification.options & GNSS_NI_OPTIONS_VERIFICATION_BIT)
|
||||
notificationGnss.notifyFlags |= IGnssNiCallback::GnssNiNotifyFlags::NEED_VERIFY;
|
||||
else if (gnssNiNotification.options & GNSS_NI_OPTIONS_PRIVACY_OVERRIDE_BIT)
|
||||
notificationGnss.notifyFlags |= IGnssNiCallback::GnssNiNotifyFlags::PRIVACY_OVERRIDE;
|
||||
|
||||
notificationGnss.timeoutSec = gnssNiNotification.timeout;
|
||||
|
||||
|
|
|
@ -435,10 +435,10 @@ uint32_t
|
|||
GnssAdapter::convertSuplMode(const GnssConfigSuplModeMask suplModeMask)
|
||||
{
|
||||
uint32_t mask = 0;
|
||||
if (GNSS_CONFIG_SUPL_MODE_MSB & suplModeMask) {
|
||||
if (GNSS_CONFIG_SUPL_MODE_MSB_BIT & suplModeMask) {
|
||||
mask |= (1<<0);
|
||||
}
|
||||
if (GNSS_CONFIG_SUPL_MODE_MSA & suplModeMask) {
|
||||
if (GNSS_CONFIG_SUPL_MODE_MSA_BIT & suplModeMask) {
|
||||
mask |= (1<<1);
|
||||
}
|
||||
return mask;
|
||||
|
|
|
@ -202,8 +202,8 @@ typedef enum {
|
|||
|
||||
typedef uint16_t GnssConfigSuplModeMask;
|
||||
typedef enum {
|
||||
GNSS_CONFIG_SUPL_MODE_MSB = (1<<0),
|
||||
GNSS_CONFIG_SUPL_MODE_MSA = (1<<1),
|
||||
GNSS_CONFIG_SUPL_MODE_MSB_BIT = (1<<0),
|
||||
GNSS_CONFIG_SUPL_MODE_MSA_BIT = (1<<1),
|
||||
} GnssConfigSuplModeBits;
|
||||
|
||||
typedef uint32_t GnssConfigFlagsMask;
|
||||
|
@ -236,9 +236,9 @@ typedef enum {
|
|||
|
||||
typedef uint16_t GnssNiOptionsMask;
|
||||
typedef enum {
|
||||
GNSS_NI_OPTIONS_NOTIFICATION = (1<<0),
|
||||
GNSS_NI_OPTIONS_VERIFICATION = (1<<1),
|
||||
GNSS_NI_OPTIONS_PRIVACY_OVERRIDE = (1<<2),
|
||||
GNSS_NI_OPTIONS_NOTIFICATION_BIT = (1<<0),
|
||||
GNSS_NI_OPTIONS_VERIFICATION_BIT = (1<<1),
|
||||
GNSS_NI_OPTIONS_PRIVACY_OVERRIDE_BIT = (1<<2),
|
||||
} GnssNiOptionsBits;
|
||||
|
||||
typedef enum {
|
||||
|
@ -366,26 +366,26 @@ typedef enum {
|
|||
|
||||
typedef uint32_t GnssAidingDataSvMask;
|
||||
typedef enum {
|
||||
GNSS_AIDING_DATA_SV_EPHEMERIS = (1<<0), // ephemeris
|
||||
GNSS_AIDING_DATA_SV_ALMANAC = (1<<1), // almanac
|
||||
GNSS_AIDING_DATA_SV_HEALTH = (1<<2), // health
|
||||
GNSS_AIDING_DATA_SV_DIRECTION = (1<<3), // direction
|
||||
GNSS_AIDING_DATA_SV_STEER = (1<<4), // steer
|
||||
GNSS_AIDING_DATA_SV_ALMANAC_CORR = (1<<5), // almanac correction
|
||||
GNSS_AIDING_DATA_SV_BLACKLIST = (1<<6), // blacklist SVs
|
||||
GNSS_AIDING_DATA_SV_SA_DATA = (1<<7), // sensitivity assistance data
|
||||
GNSS_AIDING_DATA_SV_NO_EXIST = (1<<8), // SV does not exist
|
||||
GNSS_AIDING_DATA_SV_IONOSPHERE = (1<<9), // ionosphere correction
|
||||
GNSS_AIDING_DATA_SV_TIME = (1<<10),// reset satellite time
|
||||
GNSS_AIDING_DATA_SV_EPHEMERIS_BIT = (1<<0), // ephemeris
|
||||
GNSS_AIDING_DATA_SV_ALMANAC_BIT = (1<<1), // almanac
|
||||
GNSS_AIDING_DATA_SV_HEALTH_BIT = (1<<2), // health
|
||||
GNSS_AIDING_DATA_SV_DIRECTION_BIT = (1<<3), // direction
|
||||
GNSS_AIDING_DATA_SV_STEER_BIT = (1<<4), // steer
|
||||
GNSS_AIDING_DATA_SV_ALMANAC_CORR_BIT = (1<<5), // almanac correction
|
||||
GNSS_AIDING_DATA_SV_BLACKLIST_BIT = (1<<6), // blacklist SVs
|
||||
GNSS_AIDING_DATA_SV_SA_DATA_BIT = (1<<7), // sensitivity assistance data
|
||||
GNSS_AIDING_DATA_SV_NO_EXIST_BIT = (1<<8), // SV does not exist
|
||||
GNSS_AIDING_DATA_SV_IONOSPHERE_BIT = (1<<9), // ionosphere correction
|
||||
GNSS_AIDING_DATA_SV_TIME_BIT = (1<<10),// reset satellite time
|
||||
} GnssAidingDataSvBits;
|
||||
|
||||
typedef uint32_t GnssAidingDataSvTypeMask;
|
||||
typedef enum {
|
||||
GNSS_AIDING_DATA_SV_TYPE_GPS = (1<<0),
|
||||
GNSS_AIDING_DATA_SV_TYPE_GLONASS = (1<<1),
|
||||
GNSS_AIDING_DATA_SV_TYPE_QZSS = (1<<2),
|
||||
GNSS_AIDING_DATA_SV_TYPE_BEIDOU = (1<<3),
|
||||
GNSS_AIDING_DATA_SV_TYPE_GALILEO = (1<<4),
|
||||
GNSS_AIDING_DATA_SV_TYPE_GPS_BIT = (1<<0),
|
||||
GNSS_AIDING_DATA_SV_TYPE_GLONASS_BIT = (1<<1),
|
||||
GNSS_AIDING_DATA_SV_TYPE_QZSS_BIT = (1<<2),
|
||||
GNSS_AIDING_DATA_SV_TYPE_BEIDOU_BIT = (1<<3),
|
||||
GNSS_AIDING_DATA_SV_TYPE_GALILEO_BIT = (1<<4),
|
||||
} GnssAidingDataSvTypeBits;
|
||||
|
||||
typedef struct {
|
||||
|
@ -395,12 +395,12 @@ typedef struct {
|
|||
|
||||
typedef uint32_t GnssAidingDataCommonMask;
|
||||
typedef enum {
|
||||
GNSS_AIDING_DATA_COMMON_POSITION = (1<<0), // position estimate
|
||||
GNSS_AIDING_DATA_COMMON_TIME = (1<<1), // reset all clock values
|
||||
GNSS_AIDING_DATA_COMMON_UTC = (1<<2), // UTC estimate
|
||||
GNSS_AIDING_DATA_COMMON_RTI = (1<<3), // RTI
|
||||
GNSS_AIDING_DATA_COMMON_FREQ_BIAS_EST = (1<<4), // frequency bias estimate
|
||||
GNSS_AIDING_DATA_COMMON_CELLDB = (1<<5), // all celldb info
|
||||
GNSS_AIDING_DATA_COMMON_POSITION_BIT = (1<<0), // position estimate
|
||||
GNSS_AIDING_DATA_COMMON_TIME_BIT = (1<<1), // reset all clock values
|
||||
GNSS_AIDING_DATA_COMMON_UTC_BIT = (1<<2), // UTC estimate
|
||||
GNSS_AIDING_DATA_COMMON_RTI_BIT = (1<<3), // RTI
|
||||
GNSS_AIDING_DATA_COMMON_FREQ_BIAS_EST_BIT = (1<<4), // frequency bias estimate
|
||||
GNSS_AIDING_DATA_COMMON_CELLDB_BIT = (1<<5), // all celldb info
|
||||
} GnssAidingDataCommonBits;
|
||||
|
||||
typedef struct {
|
||||
|
|
Loading…
Reference in a new issue