Commit graph

82 commits

Author SHA1 Message Date
Kevin Tang
9b2e79c42e Fix race condition that adapter does not get handleEngineUp
- Removed redundant injectFeatureConfig() call, as it this
happens twice, once when the first context is created which
would have been too early and once when LocApi open success.
- Resolved a race condition that second adapter added may not
have been in LocApi's adapter list yet when handleEngineUp()
is broadcast.

Change-Id: I8ecc18eab6b450c326c0be1abc011f70285439aa
CRs-Fixed: 2397902
2019-02-14 11:08:21 -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
Mike Cailean
c30e7c5e63 Set SV in use mask based on final fixes
Do not set SV in use mask based on intermediate
position update from modem since it might contain
stale information

Change-Id: I4300854ead3f85758bfb37d4c47ace10f63541a0
CRs-fixed: 2307493
2018-09-06 16:09:05 -07: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
Hoss Zhou
f2f6ca70c5 SAP:update SENSOR_CONTROL_MODE configuration
set SENSOR_CONTROL_MODE to MODEM_DEFAULT to make INS
use its default setting.

remove SENSOR_PROVIDER and SENSOR_USAGE.

Change-Id: I99d48d4600a6bca8e64ae0d1ff065af762888b2e
CRs-Fixed: 2285242
2018-08-05 14:52:50 -07:00
Saurabh Srivastava
aa6481f638 Print QZSS SV ID with offset
Adding QZSS SV ID offset for
logging.

Change-Id: I19fc6ba93d222b0646e3f6e2e59fe84ce42fbae4
CRs-Fixed: 2272374
2018-07-04 08:12:39 -07:00
Mike Cailean
d12b82b4e4 Added optional MO SUPL SLP
Change-Id: I89c3e697b92dfe04d403c073e779906d21cefd69
CRs-fixed: 2259090
2018-06-26 18:31:01 -07:00
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
Mike Cailean
b150a53ee3 Handle updating the carrier configuration
Set GPS_LOCK for cases where the modem has
two SIMs

Change-Id: I2745b9469b2f755b0a24be2a7f4ae514c35a37cb
CRs-fixed: 2018029
2018-06-12 09:46:49 -07:00
Mike Cailean
88688a85a3 SUPL connection enhancements
Adding enhancement to ATL messages to allow
sending bearer type and apn type mask values.

CRs-fixed: 2206014

Change-Id: I28f6583d842e82c9e26d40be55312f8aaf01193e
2018-06-11 14:13:04 -07:00
Kevin Tang
8cc52b448c changes to work without ULP module
Rework the module with ULP module being removed

Change-Id: I5ac81e8c1c734352b3087545b83f4812fa3e8aff
CRs-fixed: 2235309
2018-06-07 12:04:42 -07:00
Bhavna Sharma
0344cc7901 Change prototype of getWwanZppFix API
No need for return value as it will be
handled asynchronously.

CRs-Fixed: 2250516
Change-Id: I7c3ce33cb61688a8cb206c397a69bf192c92beb1
2018-06-04 23:43:43 -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
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
Saurabh Srivastava
d462c0add3 FR 46082 - SUPL Network Setup Improvements
Adding enhancement to ATL messages to allow
sending bearer type and apn type mask values.

CRs-Fixed: 2209227
Change-Id: I09a294946610f26de4760a0fba6f13083f8752f3
2018-05-29 04:28:47 -07:00
Kevin Tang
365919e004 location.lnx.4.0 catchup
Change-Id: I248620cfd849d39ccfb8bbd11e2cf049df889346
CRs-Fixed: 2247713
2018-05-23 17:59:04 -07:00
Bhavna Sharma
f6b613a827 Addition of new LocApi thread
1. LocApiBase to create its own MsgTask thread to allow QMI calls
to be made asynchronously. It shall no longer share the adapter's thread.
2. Implementation of new LocApiResponse classes for generic response type
from LocApi layer to Adapter layers
3. GnssAdapter modified to handle the asynchronous nature of LocApi calls.

CRs-Fixed: 2218658

Change-Id: I6e401a89f16791ec144763ac5f070b7ee1dad931
2018-04-27 10:39:21 -07:00
Dante Russo
37d34d0dc8 Assure event mask is set properly to get positions
The event mask can be retrieved in the context of
client thread as zero and then queued up to go to
msg task thread. By the time the msg is actually
handled in msg task thread, the actual event
mask at LOC API layer may have already changed, but
this mask would then be overridden by zero. This
can cause no modem events to ever come, including
position reports.

The fix is to not retrieve the event mask in the
client thread, but instead wait for msg to be
handled in msg task thread before retrieving it.

Change-Id: I48562d028bbfa187732686c060b5cdd62c6d5a89
CRs-fixed: 2219519
2018-04-24 00:38:49 -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
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
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
Bhavna Sharma
39526894cf AGPS Init must complete in one message call
If AGPS initialization is split across multiple
messages on the msgTask, it causes other other
commands to seep in before the initialization can complete.
To avoid this the initialization must be completed in one message.
Also includes some cleanup on AGPS initializations.

CRs-Fixed: 2111399

Change-Id: Id61ceeb12d5781764b42ff9d1868884537ca8d90
2017-09-28 10:11:08 -07:00
Katz Yamada
4d8fc57928 Fix unable to clear existing event bitmasks
Fix for an issue updateEvtMask call chain is
unable to clear existing event bitmasks stored
in LocApiV02.

Change-Id: Id34e2d92a506e7300f3d9b3ec74a80a1f6822787
CRs-Fixed: 2085379
2017-09-08 13:52:20 -07:00
Linux Build Service Account
6f104ee746 Merge "Fix to report bearing and speed accuracy" 2017-08-16 02:35:56 -07:00
Kevin Tang
db3101c207 move getAgcInformation and setDefaultReport into GnssAdapter
They are currently in LocApiv02, which is incorrect. SystemStatus
shouldn't be referenced at this layer. And both of these two calls
are specific to GnssAdapter use cases too.

Change-Id: I7098e3963be163199a833a8fb6b12a100405f71e
CRs-Fixed: 2090442
2017-08-11 12:32:34 -07:00
Baili Feng
4c9c783989 Clean up compiler warning message
CRs-Fixed: 2070597
Change-Id: Ic57f5211a4e4b9112888435d54df7a361bcb6767
2017-08-01 18:17:20 +08:00
Bhavna Sharma
be7f077122 Fix to report bearing and speed accuracy
1. Validity bit for vertical uncertainity was conflicting
with the validity bit of location source, hence had
to change the bit.
2. Modify ZPP API to report speed and bearing accuracy.

CRs-Fixed:2064017

Change-Id: I8b09ecab3d67557ad7c2451fee71dbc0e1f14371
2017-07-13 15:16:59 -07:00
Harikrishnan Hariharan
5969d0b2da Provide correct SV used_in_fix flag for QZSS
Mark QZSS SV used_in_fix based on the most recent position report

Change-Id: I166087fb62de45e1013ab29c01df3abfba7af12b
CRs-Fixed: 2043300
2017-05-27 23:41:18 +05:30
Yingjie Wang
a5d69e1757 Enable LOGV for LocSvc_LocApiBase
Define LOG_NDEBUG 0 to enable verbose log messages in
LocApiBase.cpp

CRs-fixed: 2018892
Change-Id: Ie3f5efaa728d863b8fd0ab268700e807b232dab3
2017-03-21 15:18:32 -07:00
Dante Russo
c85c8ff673 LocationAPI implementation
Implementation of LocationAPI into gps hal
to be a common API that is called into by platform
specific APIs.

Change-Id: Ie5a7bd217d4ae2175ad49e6aca2fb6ecd4702f3b
CRs-fixed: 1112712
2017-02-28 16:47:50 -08:00
Baili Feng
4bb940c067 Decouple libhardware usage on LE for gnss models
Remove all usage of gps.h and fused_location.h
from all gnss models except gps/fpl hal librarys

Change-Id: I90ba233c6bbe5c31a4cacceeb981833719c871f2
CRs-Fixed: 1067953
2017-02-14 16:51:32 -08:00
Linux Build Service Account
da6012a581 Merge "Reinitialize dataservice client post SSR" 2016-11-04 18:35:33 -07:00
Harikrishnan Hariharan
1de8a18031 Reinitialize dataservice client post SSR
On SSR invoke dsi_release() and dsi_init(Mode_SSR) to recover
data call functionality post SSR.

Change-Id: Ie784dad73ae8d6d91cf4cb87efe938af9015a7a2
CRs-Fixed: 1073101
2016-11-03 01:45:29 -07:00
Harikrishnan Hariharan
90a730d179 Mark SV used_in_fix based on the most recent position report
When SV report comes, mark used_in_fix based on the most recent
position report.

Change-Id: I98f3f4e7836de86f9025bae446cdeac6d1eb5862
CRs-Fixed: 1080013
2016-10-28 02:54:43 -07:00
Linux Build Service Account
c75f2c6908 Merge "Combo Provider 2.0" 2016-10-25 15:05:55 -07:00
Dante Russo
5b4dbc2e55 Combo Provider 2.0
Part of overall Combo Provider 2.0 changes.
This fix changes getBestWwanPosition API from
sync to async, as the QMI API used can now take
longer to produce a position

CRs-fixed: 994048
Change-Id: I5654f9ab417ffea86ed8653731df1ca47cf7e733
2016-08-30 14:28:36 -07:00
Baili Feng
f58ae31d1b Remove deprecated api LocEngExtPowerConfig
LocEngExtPowerConfig is no longer necessary.
Remove it from libloc_eng.

CRs-fixed: 1047042
Change-Id: I4a053e13a571f4a373899559d82e144f9bc82582
2016-08-04 10:40:00 +08:00
Linux Build Service Account
7124f9f705 Merge "Fixed SSR issue for GNSS Measurements" 2016-07-25 20:44:08 -07:00
Mike Cailean
4dd7e1c561 Fixed SSR issue for GNSS Measurements
Fixed SSR (sub-system reset) issue when
GNSS Measurements where not available
after an SSR.

Change-Id: Ie9ecc851fe53814f4a3e386b503b61bbca9d156d
CRs-fixed: 1036070
2016-07-25 10:13:02 -07:00
Mike Cailean
fae54f18a2 Added debug messages for SV Info
Added constellation field in the debug messages for SV Info

Change-Id: Ie02b1284cc5c24f526c82c52ff1ecda066655aac
CRs-fixed: 1013650
2016-07-25 09:38:13 -07:00
Bhavna Sharma
8e217e229d Merge remote-tracking branch 'quic/location.lnx.1.0-dev.1.0'
into location.lnx.2.0-dev

CRs-Fixed: 1038354

Change-Id: I87b3a7f33a0bb48783554bf5ecb0140695e40c9d
2016-07-08 12:04:07 -07:00
Bhavna Sharma
310aa84028 LPPe feature support.
Add two new configuration parameters for LPPe, one
to configure technologies for LPPe in Control-Plane and one
to configure technologies for LPPe in User-Plane

Crs-Fixed: 974312

Change-Id: If664a6dc90a993171ca1221f074ecc1ecd06a106
2016-06-15 15:33:22 -07:00
Madhanraj Chelladurai
4c2156ec8a Merge branch 'quic/LA.AF.1.2.1' into location.lnx.1.0-dev
merge automotive specific changes from LA.AF.1.2.1 into
location development branch

Change-Id: I90a5e60c46bb5b1aafaf4cd9aaf2dcb79449f288
CRs-Fixed: 1017254
2016-06-02 15:33:03 +05:30
Vamana Murthi
35877af173 Merge remote-tracking branch 'origin/location.lnx.1.0-rel.1.0' into HEAD
git merge upto CRT tag location.lnx.1.0-00036 to private_n_location.lnx

Change-Id: I922daaa9a8c2745095ec9d425192d3649657e76c
CRs-Fixed: 1015000
2016-05-12 18:11:31 -07:00
Harikrishnan Hariharan
2d9840bcee Use QMI_LOC_SET_NMEA_TYPES to set the NMEA
sentences required.

If NMEA_PROVIDER=1, HLOS needs to use the QMI type
QMI_LOC_SET_NMEA_TYPES to set the type of NMEA
sentences it needs. This will register for all
possible NMEA sentences and instructs modem to
send whatever it supports.

Change-Id: I3a9e2219c1c9b4ca127a4b55f71b0a78a84cdd11
CRs-Fixed: 1005413 1006831
2016-04-29 23:13:33 +05:30