Commit graph

205 commits

Author SHA1 Message Date
qctecmdr
60403cd1da Merge "Fix SV in use mask isn't correct for multiband SVs" 2019-06-26 21:11:11 -07:00
qctecmdr
f6d6e1bf49 Merge "NV is not set to blank when SUPL_HOST is set to NONE" 2019-06-22 20:10:25 -07:00
qctecmdr
98896798de Merge "GnssAdapter: add support for ppe fix type and calibration info" 2019-06-19 22:31:20 -07:00
qctecmdr
a261aa0493 Merge "Gnss adapter: do not send out empty sv measurement to Android" 2019-06-19 13:00:04 -07:00
Mike Cailean
acf2aeaec8 NV is not set to blank when SUPL_HOST is set to NONE
Change-Id: Ib53e30dde614a9bee348a41083e177a5999dcfc1
CRs-fixed: 2473365
2019-06-19 10:43:16 -07:00
Wei Chen
49f7e15a81 GnssAdapter: add support for ppe fix type and calibration info
(1) Add support to report out calibration confidence in position
    report
(2) Update gps quality of GGA, mode indicator for GMC and VTG
    NMEA sentences

Change-Id: Ia1aa5283deffed6638172b90a41b481c2d199229
CRs-fixed: 2438838
2019-06-19 15:03:39 +05:30
haohuang
aadad65840 Fix SV in use mask isn't correct for multiband SVs
Fix the issue that SV in use mask isn't set correct
in reportSv function in GnssAdapter.cpp.

Change-Id: Ie90fc4b938875817b105745cf531ee8dc31e74bc
CRs-Fixed: 2473868
2019-06-18 18:22:50 +08:00
Wei Chen
de13fc3868 Gnss adapter: do not send out empty sv measurement to Android
Do not send out empty sv measurement to Android

Change-Id: I4ab807d647be8b44f3f48a3ad5e5ca7f33ac2485
CRs-fixed: 2439716
2019-06-12 12:11:05 -07:00
qctecmdr
aadcd5f7dc Merge "SV used in fix satellites are not updated for B2A-Q" 2019-06-12 11:44:32 -07:00
qctecmdr
3bbb89aee1 Merge "Fix to use explicit sized structures" 2019-06-11 10:55:39 -07:00
Mike Cailean
64514a5734 SV used in fix satellites are not updated for B2A-Q
Change-Id: If9d6f4ff694572f22b95b3ccb6015ebcb6310ffa
CRs-fixed: 2468528
2019-06-10 15:26:01 -07:00
Bhavna Sharma
980dbf59b6 Fix to use explicit sized structures
Cross processor communication needs explicit sized structures.
Avoid using platform defined values like size_t which may
vary from 32-bit to 64-bit.
Also use explicitly defined timespec32_t structure that will
only use uint32_t fields.

CRs-Fixed: 2428163

Change-Id: Ida72f53ac672d9c9b86879bb9861cecefe6f8c6d
2019-06-06 13:23:56 -07:00
Mike Cailean
071fd823dd GPS getting locked after killing LocHIDL
Change-Id: Ib6a9ed37f9198b9024042f8ba7ac9e9bf5f05190
CRs-fixed: 2463756
2019-06-05 11:27:01 -07:00
Saurabh Srivastava
c7cbd60fb5 Removing benign error message
Removing error message from GNSS update
SV Type config method for onDeviceUp
scenario.

Change-Id: I7a93f9ea2fd5f8c1182c9ce10d298fc5971bc1e3
CRs-Fixed: 2461765
2019-05-31 01:09:17 +05:30
Kevin Tang
7490804ed9 fixed a potential race condition in managing gps lock
gnssConfigRequested in setConfigCommand handling currently gets
data into gnssConfigRequested in LocApi thread. This introduces
race condition that adapter.getAfwControlId() could be called
from a different thread than where adapter.setAfwControlId() is
called.

CRs-fixed: 2453439

Change-Id: I75ce482a4a87436dff04972ffd82b48db3af62c1
2019-05-21 09:08:59 -07:00
qctecmdr
051bea2282 Merge "Fix few ASAN issues reported" 2019-05-17 10:36:24 -07:00
Dante Russo
61b7ed6bf0 Fix few ASAN issues reported
- Fix a Use After Free issue in Gnss Update Config
If Engine Capabilities are not known yet at the time
of the MsgGnssUpdateConfig, the ids arrray will be freed
but the ids pointer will be copied into a new
MsgGnssUpdateConfig that will access the ids array again

- Issue in NetworkInfoDataItemBase which will result in
array out of bound access which might result in heap
buffer overflow.

Change-Id: Ib5a6dc29fef9eb6676d4605f92d60f26a47d1d90
CRs-fixed: 2449980
2019-05-15 15:09:39 -07:00
Saurabh Srivastava
331c6d9893 Adding NAVIC support
NAVIC constellation support added.

Change-Id: I30a61f53089177d4e02b617dc9b785c13e2ef6ee
CRs-Fixed: 2399619
2019-05-09 10:20:33 -07:00
qctecmdr
7e44d36979 Merge "Process CP_MTLR in emergency in different conditions" 2019-05-09 05:22:10 -07:00
qctecmdr
f5634ec21a Merge "Gnss adapter: retrieve pdop, hdop and vdop from extended struct" 2019-05-09 02:42:42 -07:00
qctecmdr
9391fe52a4 Merge "GPS: add numSVUsedInFix in location api" 2019-05-09 01:39:27 -07:00
Wei Chen
2dab397e35 Gnss adapter: retrieve pdop, hdop and vdop from extended struct
For none-SPE engine, pdop, hdop and vdop are set in the extDop
struct. Update code to retrieve it from there.

Change-Id: I698e960cd90f3d72210cfd0a885080f1546c0c7d
Crs-fixed: 2439750
2019-05-06 10:25:44 -07:00
qctecmdr
82c8af81ee Merge "SV "in-use" flags are not being set correctly for multiband enabled devices" 2019-05-04 19:20:02 -07:00
Mike Cailean
aa95ca27f8 Process CP_MTLR in emergency in different conditions
Prcess CP_MTLR based on a new configuration item

Change-Id: I9351f574f0b1a4bad2b88f2627ab188ac1522e92
CRs-fixed: 2444954
2019-05-03 09:09:03 -07:00
qctecmdr
9b6103421b Merge "feat: Add timeuncNs in PQWM1 message" 2019-05-02 14:14:59 -07:00
qctecmdr
697ee570fe Merge "GNSS HIDL 2.0 updates" 2019-05-02 13:45:05 -07:00
Mike Cailean
76e761da5a SV "in-use" flags are not being set correctly for
multiband enabled devices

Change-Id: I875b535063c6aa6ecb713c7b6abff123d8402d62
CRs-fixed: 2443087
2019-05-01 17:03:17 -07:00
Katz Yamada
2c71ec9e02 feat: Add timeuncNs in PQWM1 message
Add timeuncNs field in PQWM1 of debug NMEA
message generated by modem. SystemStaus to
parse it. GnssDebug adds this value in
timeunc when it generates GNSS debug report.

Change-Id: I649915f95730dc8db22e8b4cb88008edc6d8b9d0
CRs-Fixed: 2236950
2019-05-01 13:42:21 -07:00
Dante Russo
e7c30fa882 GNSS HIDL 2.0 updates
Implement new GNSS HIDL 2.0 functions and callbacks
gnssRequestLocationCb_2_0, getExtensionGnssBatching_2_0,
getExtensionGnssDebug_2_0, getDebugData_2_0,
injectBestLocation_2_0, gnssSetCapabilitiesCb_2_0,
gnssLocationCb_2_0, gnssSvStatusCb_2_0, and
gnssMeasurementCb_2_0.
Fix VTS test failures from deprecated functions
setGpsLock, setSuplEs, V1:0::getExtensionAGnss, and
V1.0::getExtensionGnssNi

CRs-fixed: 2433957
Change-Id: Id10cb41c32d6c50144b0501eb2d2eaf9c9a9aaec
2019-05-01 12:40:40 -07:00
qctecmdr
4d6bb2da93 Merge "Send SUPL notification to the framework for E911 sessions only (older modems)" 2019-05-01 11:37:59 -07:00
Wei Chen
3e62412eb0 Gnss interface: add position injection for extended info
Add position injection interface with extended info, e.g.:
GnssLocationInfoNotification

Change-Id: I6ba8f1111d1511c7071fe358687a478b26e8f9a4
CRs-fixed: 2417450
2019-05-01 09:45:04 -07:00
Wei Chen
81f47db3f2 GPS: add numSVUsedInFix in location api
Add a count in location API for number of SV used in fix

Change-Id: I3b396170948fa6c93a88d0fdcf17e28eff5ed5dc
CRs-fixed: 2425599
2019-04-30 15:13:26 -07:00
Wei Chen
0330e79d4a Gnss adapter: fill in proper std deviation in position report
The north and east standard deviation fields are not filled in
properly in position report

Change-Id: Ic243a6862f3fa4e723b507d391c9a904d65d3c30
CRs-fixed: 2426344
2019-04-30 14:54:33 -07:00
Mike Cailean
d6d55a4948 Send SUPL notification to the framework for
E911 sessions only (older modems)

Change-Id: Icd317f6e4b042c31afc63011596689d5fb35135f
CRs-fixed: 2441292
2019-04-30 09:27:41 -07:00
Nilesh Gharde
0802cf6644 LTE Positioning Profile is not reflecting properly
Added the GNSS_CONFIG_FLAGS_LPP_PROFILE_VALID_BIT flag.
So that the NV value of LPP profile provided in gps.conf can be refelected
to modem.

Change-Id: I6429a4a79cb83d5991c8a1328ab5daa4ef49619a
CRs-fixed: 2439533
2019-04-24 21:43:27 -07:00
Mike Cailean
b95f05cc73 Streamline measurements processing
Consolidate the translation from QMI LOC into one
place in order to minimize traffic

Change-Id: I73c2f25e94544a2b69d4227c63548ef11b6a4d91
CRs-fixed: 2430668
2019-04-08 11:17:31 -07:00
qctecmdr
3e614934d1 Merge "Integer overflow leading to a buffer overflow" 2019-04-01 22:11:09 -07:00
Dante Russo
5c1e23cf02 Batching and Geofence moved to GNSS HAL
Addition of BatchingAdapter and GeofenceAdapter.
Deprecated Background LOC QMI Client and renamed
LocDualContext renamed to LocContext.
Moved some common Adapter functions into LocAdapterBase.
Added Distance Based Tracking logic into GnssAdapter.
Addition of flp.conf
Deprecated GEOFENCE capabilities configuration in
gps.conf

CRs-fixed: 2342200
Change-Id: I6b6257c4cf296e5a8c56bc0b149e4de77cf6cdf9
2019-03-27 14:54:49 -07:00
Nilesh Gharde
b47ee496e5 Integer overflow leading to a buffer overflow
Added a length check in to avoid integer overflow
in dataConnOpenCommand and set APN methods.
As the APN name is like few 100bytes so
using the micro defined int gps_extended_c.h

Change-Id: Idb5ebbf2e3647de5fa07673f248c0c256d6c1b52
CRs-fixed: 2419292
2019-03-27 07:02:19 -07:00
qctecmdr Service
01869b4004 Merge "Improved Location NI Privacy" 2019-03-22 17:36:07 -07:00
Mike Cailean
b046241ec2 Improved Location NI Privacy
Changes to be made starting in Android Q in the way
that Location requests made by Location clients
other than the Android FrameWork (e.g. Network
Initiated AGNSS clients, modem-based clients such
as MDT) are handled

CRs-fixed: 2397454

Change-Id: Ibb5b9429a1ec1e14ee59d89763d8a78607997615
2019-03-21 14:57:28 -07:00
qctecmdr Service
3774ea547f Merge "clear magic number for GPS_LOCK" 2019-03-21 08:02:45 -07:00
qctecmdr Service
7d34cea4ca Merge "Remove tracking redundanty and assure min interval" 2019-03-19 11:16:00 -07:00
Hoss Zhou
1839fb1140 clear magic number for GPS_LOCK
Change-Id: I3c1b5a18ab16382a436098f8af541bf7f125783e
CRs-fixed: 2370451
2019-03-18 16:33:52 -07:00
Yingjie Wang
6b687ef48e Combine updateConfig in GnssAdapter
Adjust setConfigCommand and gnssUpdateConfigCommand
to use one gnssUpdateConfig method.

CRs-fixed: 2402752
Change-Id: I6a9ec474bd9ffed52edd2422574af0f6d41493c4
2019-03-08 17:38:07 +08:00
Dante Russo
e22619060b Remove tracking redundanty and assure min interval
A tracking interval should not be less than 100ms
If tracking interval or power mode is updated to
the same value, then start tracking should not be
sent to the modem again.
Fix some issues with multiplex with powerMode

Change-Id: I91e5d0577569b96179a5337af0fc91641dc126db
CRs-fixed: 2190953
2019-02-26 12:33:25 -08:00
Bhavna Sharma
7445c50730 New structures and handling of new data in the pipe
1. KlobucharIonoModel
2. Additional parameters for Glonass
3. Add gps system time to ephemeris reports.

CRs-Fixed: 2388931

Change-Id: Ibd08496c8eda2ce7571cbdd71ff0c179f7376aa7
2019-02-06 12:58:00 -08:00
Wei Chen
8e04d01cd2 GPS SV meas: new structure to support 10Hz
(1) revise struct of GnssSvMeasurementSet so it can be used
    to send only valid SV measurement via IPC
(2) remove reference to COMPASS system, as COMPASS named is
    replaced by BEIDOU system
(3) correct typo in GNSS_GLOS_MSEC_VALID to GNSS_GLO_MSEC_VALID

CRs-fixed: 2337832

Change-Id: I325346fa414e3a94422cb8ab4cc5b77d6efaf485
2019-01-30 14:29:30 -08:00
qctecmdr Service
7d9edb3c22 Merge "Fix KW P1 related issues" 2019-01-15 10:36:14 -08:00
qctecmdr Service
f575c9c0d1 Merge "fix multiple GPS_LOCK request" 2019-01-04 21:25:14 -08:00