Commit graph

50 commits

Author SHA1 Message Date
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
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
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
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
75cfd43bfd Add jammer indication
Add AGC and jammer indication

Change-Id: I93641864338beec368e7a56b3a20b158ea892202
CRs-fixed: 2239155
2018-08-17 09:15:20 -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
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
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
Bhavna Sharma
e5c31f33c1 GPS Adapter: GNSS adapter change to go with engine hub aggregator
1: GNSS adapter change to block out position and SV report from
ULP when engine hub aggregator is used
2: Support unpropagated position report

Change-Id: Id0cacd87d3f3f8eec893d751b9f7a55a736a4023
CRs-fixed: 2210253
2018-04-12 13:24:57 -07: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
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
Yingjie Wang
86ad4f8f44 Enable LOGV for gps directory
Define LOG_NDEBUG 0 to enable VERBOSE log messages in
hardware/qcom/gps

Change-Id: I954cad757f13d6bac99b7a06625daa0ace84a17e
CRs-fixed: 2025673
2017-04-28 18:24:07 +08:00
Dante Russo
36f8446032 Fix NI Request Event
GnssAdatper::requestNiNotifyEvent function is not
overriding LocAdatperBase::requestNiNotigyEvent
because of slightly different parameters

Change-Id: Ib3e6b562c437e47fba2a086d47c887f2efce7637
CRs-fixed: 2027710
2017-04-04 16:10:38 -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
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
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
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
Mike Cailean
c3a4fba9b8 Support GnssMeasurement
Support the new GnssMeasurement and GnssClock
data structures for the new gps.h

Change-Id: I40e00711501432760c82d27fb82702b1bf57ebb6
2016-04-14 12:45:53 -07:00
Dante Russo
d30694acf6 Rename GnssSvStatus to QtiGnssSvStatus
Change-Id: Ieeeb03af37440214f4762d495d949b4ab59ed237
2016-04-14 12:28:28 -07:00
Deven Patel
285d395703 Revert "Revert "Fix compilation issues for m_master merge into oe_master"."
This reverts commit fa7a874eb0

Change-Id: Id2415d80fa3cbdc124e0a3bdd2722db7f233ad53
2016-03-15 12:20:25 -07:00
Deven Patel
a376de4826 Revert "Revert "Merging m_master changes to oe_master"."
This reverts commit a29688ff34

Change-Id: Iab525a58ddb6a00e119afe19f4f51b07b7f428f2
2016-03-15 12:20:01 -07:00
Deven Patel
a29688ff34 Revert "Merging m_master changes to oe_master".
This reverts commit 1aeb6bad84

Change-Id: Iec0a96e7cdfe55ef5836c92a2ae1cce407f6cd5e
2016-03-07 10:55:20 -08:00
Deven Patel
fa7a874eb0 Revert "Fix compilation issues for m_master merge into oe_master".
This reverts commit ecb67363ee

Change-Id: I7b540247b246ea4caf710247d2c58b55515dae7c
2016-03-07 10:52:46 -08:00
Kevin Tang
ecb67363ee Fix compilation issues for m_master merge into oe_master
Fixed compilation issues for M upgrade

Change-Id: I602aa7c8a2db9682a1fe94b7ca892027281deec7
2016-02-04 10:06:28 -08:00
Dante Russo
f5e6e2eeee Add glo and bds to used-in-fix mask
The used-in-fix mask is only keeping track
of GPS SVs, so add a used-in-fix mask for
GlONASS SVs and BDS SVs as well to avoid
NMEA generation issues

CRs-fixed: 826152

Change-Id: I33862cf8d40db1d667179ef68d18703edc359843
2015-11-05 14:18:32 +05:30
Jiafei Wen
eb01e397ed Sending FLP fixes to ULP
For crowd sourcing, FLP HAL needs to share
with ULP the flp fixes in real time. This
change is making FLP HAL to send flp fixes
to ULP.

Change-Id: I1a852ec69db8eb50de5c18b03205d1b488cfd4b0
CRs-fixed: 874928 878064
2015-09-22 22:37:57 -07:00
Dante Russo
2572d24770 Move modem power vote out of hal.
The modem power vote feature needs to move
out of hal as it has non-aosp dependency.

CRs-fixed: 831075

Change-Id: Ic83276e9d3c0d125a01f50719102fcd7c0455385
2015-07-16 10:07:49 -07:00
Dante Russo
db7fc90da2 Move modem power vote out of hal
The modem power vote feature needs to move
out of hal as it has non-aosp dependency

CRs-fixed: 831075

Change-Id: Ic83276e9d3c0d125a01f50719102fcd7c0455385
2015-07-13 19:25:38 +05:30
Dante Russo
dd823bc93e Add glo and bds to used-in-fix mask
The used-in-fix mask is only keeping track
of GPS SVs, so add a used-in-fix mask for
GlONASS SVs and BDS SVs as well to avoid
NMEA generation issues

CRs-fixed: 826152

Change-Id: I33862cf8d40db1d667179ef68d18703edc359843
2015-06-22 17:43:36 -07:00
Jiafei Wen
d538916928 Send GPS tracking fixes to FLP HAL
FLP HAL accepts GPS tracking fixes for tracking,
so this change sends the tracking fixes to FLP
HAL while flp tracking is undergoing. Also, this
change adds batching options flags and batching
succeed/failure definitions.

CRs-fixed: 748687
Change-Id: I11a2ba337433d9a42c903d36fc980ee1a3983a1e
2015-03-01 10:38:19 -08:00
Jiafei Wen
9431a6cb33 Send GPS tracking fixes to FLP HAL
FLP HAL accepts GPS tracking fixes for tracking,
so this change sends the tracking fixes to FLP
HAL while flp tracking is undergoing. Also, this
change adds batching options flags and batching
succeed/failure definitions.

CRs-fixed: 748687
Change-Id: I11a2ba337433d9a42c903d36fc980ee1a3983a1e
2015-02-13 12:03:37 -08:00
Hans Chang
33552b272d AU_LINUX_ANDROID_LA.AF.1.1.05.00.02.164.175 based on quic/aosp/LA.AF.1.1
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iEYEABECAAYFAlTQKUkACgkQoUgPZYCpAfGAUgCgyH0kEyUtVhZ09+T3w4VfnZqK
 Id8An3JkWK9QhlXZ9Q2zT8T7LR5/T2ls
 =8mx/
 -----END PGP SIGNATURE-----

Merge tag 'AU_LINUX_ANDROID_LA.AF.1.1.05.00.02.164.175' into 111

AU_LINUX_ANDROID_LA.AF.1.1.05.00.02.164.175 based on quic/aosp/LA.AF.1.1

* tag 'AU_LINUX_ANDROID_LA.AF.1.1.05.00.02.164.175':
  GNSS measurement
  Added new events and masks for GDT AP
  gps.conf parameters are in sap.conf table
  Enable "auto" target for APQ8960 Automotive ADP platform
  support reinjecting supl url for sim hot swap
  Remove Redundant Log
  Report 2D speed rather than 3D speed.

Conflicts:
	core/gps_extended_c.h

Change-Id: Ibe1207ac07a2931003f5fa34ae68d8c1e6512eeb
2015-02-08 15:50:40 -08:00
Kevin Tang
2794061c73 Propagate DR enablement feature from LNX.LA.2.7.3
Change Summary:
* Changes taken from change#812357;
* Structure definitions for GNSS SV Measurement and GNSS SV
  Polynomial to report it to ULP and to external DR module;
* New function additions in LocApiBase, LocAdapterBase and
  LocEngAdapter to report SV Measurement and SV Polynomial;
* definition and changes to detect "auto" platform in loc_target;
* enable SV Measurement and SV Polynomial report for "auto"
  platform;

Change-Id: I5ac5ee5c44e72e657b16515e37637c9a5c64e638
2015-01-24 15:35:16 -08:00
Dante Russo
407848e5cf GNSS measurement
Implementation of GNSS Measurements support.
In GPS HAL, Only GPS Measurements report
will be collected from modem.

CRs-fixed: 771496

Change-Id: Ief4368099df4ff573ad1a764f4156d63685e936d
2015-01-16 13:22:20 -08:00
Tushar Janefalkar
25244b3660 Close MDM node on shutdown
Added call to close mdm power node
as part of procedure to shutdown

CRs-fixed: 640576

Change-Id: Ie0c05272249401f6cf13e9443417b0ba5de1be52
2014-04-01 14:38:34 -07:00
Bhavna Sharma
dd90495f7b Add a new LocAdapterProxyBase class
LocAdapterProxyBase bridges the LocAdapterBase and
IzatAdapterBase to communicate SSR events.

CRs-Fixed: 598430

Change-Id: I8aa54f207e474974fa6fd5330c1545f94720a5cb
2014-01-27 20:41:56 -08:00
Jiafei Wen
747f69507a Add LocApiProxyBase to context
This is so that the izat adapters
can get access to LocApiProxy through
the context.

Change-Id: I15a477d159375740047cd7386f8c8c5163fdaf87
2013-10-28 17:42:55 -07:00
Kevin Tang
3535edcfb0 corresponding to izat_core and LBSAdapter changes.
Removed makefile dependency to AndrodRuntime; Renamed
library to be loaded from liblocation to libizat_core;
Made some class private access to protected for the
needs of inheritance; piggy bagged some optimizations.

Change-Id: Id7e3127baa1833cbad7739f50808941c733b87f2
(cherry picked from commit c039ceaec84b25573d710b31831c9b06d4f3d1c6)
2013-08-09 11:44:27 -07:00
Kevin Tang
11adbb371f Revert "Revert "Location Hal Design Level Change for FLP Requirement"".
This reverts commit 55a6841843.
(cherry picked from commit 363ed1a6b09d7426bfd3726becd2d713da57fa80)

Change-Id: I19153a904dd7587dfd517dcc86f51f4b1110289a
2013-08-09 11:44:12 -07:00
Sridhar Gujje
55a6841843 Revert "Location Hal Design Level Change for FLP Requirement"
This reverts commit a915406668

Change-Id: I7f677a9540a64a60b5f4ed898ba6bed8b3482687
2013-08-07 03:27:20 -07:00
Kevin Tang
a915406668 Location Hal Design Level Change for FLP Requirement
Changes can be highlighted with below summary:
* Split the original LocApiAdapter to LocAdapter and LocApi.
  Now different adapter implementations can flexibly connect
  to different LocApi;
* LocApi continues to abstract the API binding to RPC or QMI;
* MsgTask which creates and owns a msg Q and a thread, and it
  define a LocMsg base msg class. The handler pulls a msg out
  of the Q and calls its proc() method. This makes it possible
  for msg sender to keep the data in the msg encapsulated, as
  it no longer requires a central msg handler who must under-
  stand all data format. This used to be where all the compile
  time dependencies are tangled together;
* Added Context to bundle MsgTask and LocApi;
* Added LocDualContext specifically for the FLP Location Hal
  architecture requirement;
* Placed all the base classes of the above in loc_core folder
  / loc_core namespace / libloc_core.so, so other libraries
  can easily use derive from here without having to pull in
  the loc_eng implementation, which is a large library to
  include or link to;

Change-Id: I40abfba96dea76757c98530c1f5e076b34ba4ac7
2013-08-02 19:29:22 -07:00