Commit graph

107 commits

Author SHA1 Message Date
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
449fdb73e2 Merge "Add HAL support for network handle" 2019-03-31 20:11:37 -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
Kevin Tang
546e88fc04 Add HAL support for network handle
Add HAL support for modifications to the
network status information passed in.

Change-Id: I99defc6a419d9f21ce74469a1aa016cc7fade4a5
CRs-Fixed: 2397433
2019-03-26 18:40:03 -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
Hoss Zhou
1839fb1140 clear magic number for GPS_LOCK
Change-Id: I3c1b5a18ab16382a436098f8af541bf7f125783e
CRs-fixed: 2370451
2019-03-18 16:33:52 -07:00
Kevin Tang
5a9cc5ae72 Merge remote-tracking branch 'quic/location.lnx.4.0' into HEAD
CRs-fixed: 2414738

Change-Id: Ic8d1cd5bb37d1ad26c2749e46be279942e28ac05
2019-03-14 17:43:05 -07:00
Mike Cailean
4149abcc2d Measurement changes in GNSS HIDL2.0
CRs-fixed: 2385560

Change-Id: I5f4548e6df0cb8ac3f2762020dfdbb49a9022854
2019-02-21 21:34:40 -08:00
Mike Cailean
e78728024d SUPL over WiFi changes in GNSS HIDL2.0
Change-Id: I20a2071fd748dea16cd55aa120bc307ebc0645a9
CRs-fixed: 2342192
2019-02-21 13:38:28 -08:00
qctecmdr Service
8e120b1ed9 Merge "New structures and handling of new data in the pipe" 2019-02-19 11:57:34 -08:00
Wei Chen
1d823b05ec FR47367: Location client API for External AP
(1) In location data struct, change size_t to uint32_t as size_t
is machine dependent and can not be sent as part of payload
to the other processor.
(2) Change LocIpc ifdef to match with the file name

Change-Id: Ia3f029641106a547e18904be1e3fb56ec09de569
CRs-fixed: 2367517
2019-02-13 10:03:56 -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
Bhavna Sharma
49c60ab27a LocationAPI must also be freed on destroy call
LocationAPI object instance itself must also be freed when
destroy is called.

CRs-Fixed: 2388028

Change-Id: Ie6e1c34e126a10ea58076c0385aecd447233c7aa
2019-01-28 12:05:32 -08:00
Wei Chen
e232986d84 GPS location API: support destroy with callback for completion
Support Location API destroy function with callback. Location
API client that passes callback to Location API need to wait
for the destroy complete callback to be invoked before releasing
the memory that holds the callback

Change-Id: I29b1c6d46feb79c789e6f1ec1500c941b022a3ac
CRs-fixed: 2349398
2018-11-27 17:07:19 -08:00
Wei Chen
21b9c4e47e FR48381: Support leap second change event
Support leap second change event
(1) Info will be available in location api and location
    client api
(2) Engine hub aggregator will use the info to calculate
    UTC timestamp

Change-Id: Ie79c1a38301fa094134a4a31af424487758343f6
CRs-fixed: 2289457
2018-10-08 12:26:06 -07:00
Bhavna Sharma
5a8d171181 New additions for Ephemeris and Poly handling
1. Add new data structures to hold the Ephemeris reports.
2. Modifications to SV Poly structure to include delete flags.
3. Add SV_POLY bit to GnssAidingDataSvMask to support
delete commands from modem for poly and ephemeris per constellation.
4. Define LocApiBase and LocAdapter functions to report the
ephemeris content, request for complete valid ephemeris and
Poly content at any time and report delete commands from modem
on Ephemeris and Poly content.

CRs-Fixed: 2301149

Change-Id: If36e87c410c3204c94a6ed7db30f297edba95508
2018-10-02 09:26:43 -07:00
Dante Russo
2bef34e8b2 FR47184: tunc constrained and position assisted time estimator
(1) Configure tunc constrained module on modem via gps.conf
(2) Configure position assisted time estimator and inject
    DRE position with additional info to modem
(3) Support get total energy consumption API by GNSS engine
    since device first bootup

Change-Id: I1e73057df090c1d356c55a498f06eed45839ca8f
CRs-fixed: 2276355
2018-09-26 14:17:30 -07:00
Hoss Zhou
48b4e04af7 support signal ID in NMEA
support GPS L5, GALILEO E5 and BDS B2 in NMEA.

Change-Id: I7302ec8dfabaf28832fc93206f70cd1942f48183
CRs-Fixed: 2307787
2018-09-07 11:10:26 +08:00
Linux Build Service Account
3379b6645d Merge "Add jammer indication" 2018-08-21 14:29:45 -07:00
Mike Cailean
75cfd43bfd Add jammer indication
Add AGC and jammer indication

Change-Id: I93641864338beec368e7a56b3a20b158ea892202
CRs-fixed: 2239155
2018-08-17 09:15:20 -07:00
Bhavna Sharma
2124941746 Add support for multiband data
CRs-Fixed: 2289264

Change-Id: I5339870e8be3247b445203dad39e6f8522a64575
2018-08-13 11:18:18 -07:00
Bhavna Sharma
92e990faf8 Merge remote-tracking branch 'quic/location.lnx.3.0.c5' into
location.lnx.4.0

CRs-Fixed: 2282734

Change-Id: I5911f47d796591474eb19be527499daf758bff03
2018-07-23 13:11:31 -07:00
Linux Build Service Account
5b00f53189 Merge "GPS: block CPI injection for those fixes orginate from modem" 2018-07-03 16:04:21 -07:00
Kevin Tang
56c4dd4420 GPS: block CPI injection for those fixes orginate from modem
GNSS adapter to block CPI injection for CPI originates from modem.
One source of the fix is QNP fix from modem. Only fixes that
comes within time threshold and with latitude and longitude
falls within the same proximity will be blocked.

Change-Id: If67a164d1e1c75735979f048a9f8dc93f0b0a41f
CRs-fixed: 2260721
2018-07-03 10:45:56 -07:00
Harikrishnan Hariharan
59269e171e Add a getLocationOptions() function in TrackingOptions
Add a getLocationOptions() function in TrackingOptions to
return the LocationOptions object data associated with this
class. This is for use in client_api and location-hal-daemon.

Change-Id: Id725e1961dc390b8dac908575bb1686b16756057
CRs-Fixed: 2270936
2018-06-30 20:32:10 -07:00
Bhavna Sharma
ee8213f3ce Populate some more fields for end client.
These are the fields populated:

North, East, Up velocity and their uncertainties
North and East standard deviation
Gps Time, Leap Sec and time uncertainty
Gps Measurement usage info

CRs-Fixed: 2249350

Change-Id: I8936b1c47be25fdc792322592f8ea5466a3fa6fd
2018-06-27 13:50:31 -07:00
Naresh Munagala
02cddf0f26 GNSS hal: propagate position dynamics uncertainty
Support for uncertainty of positition dynamics, including
uncertainty of forward, sideward, upward accelation,
and uncertainty of heading and pitch

Change-Id: I33fbfd0344d4beb7eabaa629b0c0993fe368293b
CRs-fixed: 2263818
2018-06-21 10:44:51 +05:30
Mike Cailean
7dfa87b244 Support Multiband feature
Add carrierFrequency to GNSS Measurements
reporting. Also, add AGC level from QMI LOC
message to GNSS measurements (as opposed to
adding it from NMEA debug messages).

CRs-fixed: 2186144

Change-Id: Ia3995ba9e09ef4c68e8922b7570f7af0eb50098a
2018-06-16 11:27:26 -07:00
Dante Russo
271cfd8a00 Report yearOfHw=2018 when P features are supported
Support of features AGPM or Constellation Control
mean that we report yearOfHW as 2018

Change-Id: I01b7a3ce7f8b38569cf419cf07fef1d55da5f149
CRs-fixed: 2254698
2018-06-13 16:23:59 -07:00
Bhavna Sharma
6c80f04dba Populate some more fields for end client.
These are the fields populated:

North, East, Up velocity and their uncertainties
North and East standard deviation
Gps Time, Leap Sec and time uncertainty
Gps Measurement usage info

CRs-Fixed: 2249350

Change-Id: I8936b1c47be25fdc792322592f8ea5466a3fa6fd
2018-06-08 17:00:17 -07:00
haohuang
17015dd790 Add spoof report mask in location object
Add the spoof mask report in location object
in position report and ZPP position report in
LocApiV02. Propagate this mask to the location
object in Location API module.

Change-Id: I5df87d389d5315c55ed2afce1f440a0486e4bebd
CRs-fixed: 2236154
2018-06-07 21:56:37 -07:00
Saurabh Srivastava
98edc19bea FR 48850 - Device based hybrid ODCPI
Adding support for sending ODCPI request
to framework via IGnss interface.

Change-Id: I97ab4f00505705fedc266998602499fd344baf31
CRs-Fixed: 2217664
2018-06-03 22:43:58 +05:30
Saurabh Srivastava
66c682f7d9 FR 45623 - AGPM 1.0
Adding AGPM FR changes to add power
modes support.

CRs-Fixed: 2195518
Change-Id: Ifd1da6194b58ad5590ea755e3f6b237c4b4db2ad
2018-06-02 23:48:20 -07:00
Saurabh Srivastava
eaf7e54b54 FR 45651 - GNSS SV/Constellation Control
Adding support for configuring GNSS SVs
and constellations to be used.

Change-Id: I47d5cd9d08ac9aaf633be2fe3b1bd152a2f4293b
CRs-Fixed: 2184871
2018-06-03 12:15:34 +05:30
Kevin Tang
365919e004 location.lnx.4.0 catchup
Change-Id: I248620cfd849d39ccfb8bbd11e2cf049df889346
CRs-Fixed: 2247713
2018-05-23 17:59:04 -07:00
Katz Yamada
9a8c42c3cb fix: Creating LocationAPI object rejected
LocationAPI::createInstance() to accept
if any one of gnssNiCb, trackingCb,
gnssLocationCb or gnssMeasurementsCb is set.

Change-Id: I3d026cd608aca2b9e0ee93617e10dc0b32e37849
CRs-Fixed: 2218707
2018-05-19 20:14:53 -07:00
Katz Yamada
1f5fa2def4 fix: Creating LocationAPI object rejected
LocationAPI::createInstance() to accept
if any one of gnssNiCb, trackingCb,
gnssLocationCb or gnssMeasurementsCb is set.

Change-Id: I3d026cd608aca2b9e0ee93617e10dc0b32e37849
CRs-Fixed: 2218707
2018-05-17 08:57:00 -07:00
Linux Build Service Account
94904a7184 Merge "Merge location.lnx.3.0 into location.lnx.4.0" 2018-04-27 04:12:20 -07:00
Bhavna Sharma
c2bc685784 Merge location.lnx.3.0 into location.lnx.4.0
CRs-Fixed: 2228694

Change-Id: I114d830bec57040d700a0cebac2d0415c9b9f893
2018-04-20 13:18:43 -07:00
Baili Feng
d856a9414d hidl gnss hal 1.1 implementation
Implement new apis for IGnss 1.1

Change-Id: I2c98c32355f6d9681d51b709697e49ec735fe1cf
CRs-fixed: 2133458
2018-04-10 08:24:34 +08:00
Dante Russo
ab95d2dc2e Merge location.lnx.3.0-180201 to location.lnx.3.9
Catchup merge from tag location.lnx.3.0-18201
CRs-fixed: 2212182
Change-Id: I47f5f9eb06cb6a6ee6be337a2dc43e0d2386113b
2018-04-04 17:54:02 -07:00
Dante Russo
47d2e811e7 flp.conf should be read from /vendor/etc/
flp.conf was being read from incorrect path,
which was causing GetBatchSize API to read
incorrect batch size

Change-Id: Ib95610e72157834fc731f35b67eb475dfe6af5a2
CRs-fixed: 2193052
Bug: 73251835
2018-03-16 11:55:59 -07:00
Katz Yamada
8f2e900e9e fix: Typo in LocationDataTypes
Fix typo in SystemTimeStructUnion definition.

Change-Id: Idacfe730b4f56ae53f2c2dea72188788691da0f1
CRs-Fixed: 2206673
2018-03-15 13:13:58 -07:00
Katz Yamada
0fc49e8432 feat: Separate LocationAPI.h
Separate LocationAPI.h into ILocationAPI.h for
interface and LocationDataTypes.h for data
structure definitions.

CRs-Fixed: 2148023
Change-Id: I9f375a6057b22cf5bdd0b73a41ba1c010d9e0e4e
2018-03-06 11:05:59 -08:00
Dante Russo
97f3f3905a remove unused variables for compilation
remove unsed variables and fix few compiler issues

CRs-fixed: 2175735
Change-Id: I635a7503326928f43070aa2224bc3c3d6e1ff929
2018-03-02 09:59:29 +05:30
Yingjie Wang
af34b8d1ac Enhance LocationAPI structs to hold full position
Match the output of izat_remote_api clients with LocationAPI clients.
Fill GnssLocationInfoNotification with missing fields from
GpsLocationExtended and Location structure. And allow one single
callback to report complete position info. Meanwhile, remove fields
from UlpLocation that are no longer used.

CRs-fixed: 2169738
Change-Id: Ib5bd3dd9c065c4b3d6cad32b23167546ad950d06
2018-02-14 13:33:57 +08:00
Kevin Tang
61de97e130 LE clean up
separated utils, core, ds and loc-api-v02 from loc-hal into their
own independent packages; simplified loc-pla; moved pla to the
root of project; removed loc-stub.

Change-Id: I373f02f9306646addf55ae90d71c4ba8e3741d09
CRs-Fixed: 2172544
2018-01-16 13:35:38 -08:00
Harikrishnan Hariharan
6ccaa83f60 GetBatchedLocations is unsupported for Live Fix.
Return ERROR_NOT_SUPPORTED from LocationAPIClientBase when
GetBatchedLocations is invoked by a Live fix session id,
which has session mode of SESSION_MODE_ON_FIX.

Change-Id: Ifc57d4d4b16288ed5ac7432da92cf39bfe989416
CRs-Fixed: 2137513
2017-11-03 10:45:41 +05:30
Kevin Tang
63c4d2f67b locAPIRemoveGeofences roolback to async result notification
locAPIRemoveGeofences is rolled back to async result notification,
using the RemoveGeofencesRequest, but using a new temporal bidict
of sessions & ids, to avoid a previous race condition using the
wrong id when removing and adding a geofence.

Change-Id: Icd85373b82e620ea4059431f0c3d13c95f99ca3c
CRs-fixed: 2132679
2017-10-25 15:04:06 -07:00