diff options
author | Hoss Zhou <zhouh@codeaurora.org> | 2018-12-04 16:58:02 +0800 |
---|---|---|
committer | Hoss Zhou <zhouh@codeaurora.org> | 2018-12-24 15:23:55 +0800 |
commit | f7c6bf552ae3818f98c19dd327b55de531924d47 (patch) | |
tree | 88929f72c2b47e8190511a209d08622886239333 /gnss | |
parent | 148b0dd3b2953653bba9acf36345df66570081fd (diff) | |
download | gps-f7c6bf552ae3818f98c19dd327b55de531924d47.tar.gz |
fix multiple GPS_LOCK request
donot send GPS_LOCK request when new gpsLock is the
same as last one.
Change-Id: Ifb87018d11aef0383762b9b132742faf3d4d7e79
CRs-fixed: 2360896
Diffstat (limited to 'gnss')
-rw-r--r-- | gnss/GnssAdapter.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/gnss/GnssAdapter.cpp b/gnss/GnssAdapter.cpp index fc59c22..54a2145 100644 --- a/gnss/GnssAdapter.cpp +++ b/gnss/GnssAdapter.cpp @@ -846,13 +846,14 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config) if (gnssConfigRequested.flags & GNSS_CONFIG_FLAGS_GPS_LOCK_VALID_BIT) { uint32_t newGpsLock = mAdapter.convertGpsLock(gnssConfigRequested.gpsLock); - ContextBase::mGps_conf.GPS_LOCK = newGpsLock; - if (0 == ContextBase::mGps_conf.GPS_LOCK) { - ContextBase::mGps_conf.GPS_LOCK = 3; + if (0 == newGpsLock) { + newGpsLock = 3; } - if (0 != mAdapter.getPowerVoteId()) { + if (newGpsLock == ContextBase::mGps_conf.GPS_LOCK || + 0 != mAdapter.getPowerVoteId()) { gnssConfigNeedEngineUpdate.flags &= ~(GNSS_CONFIG_FLAGS_GPS_LOCK_VALID_BIT); } + ContextBase::mGps_conf.GPS_LOCK = newGpsLock; index++; } if (gnssConfigRequested.flags & GNSS_CONFIG_FLAGS_SUPL_VERSION_VALID_BIT) { |