Commit graph

578 commits

Author SHA1 Message Date
ethan.kim
05ee1cc69d Set SUPL_ES to 0 in gps.conf
Disabled checking for emergency to accept SUPL

CRs-fixed: 860504

Change-Id: Iad1605242daf8fa1d6bcce3e69caff7811d9843a
2015-12-16 15:53:49 +05:30
Dante Russo
29a9152e50 NMEA generation change to prevent 2Hz reporting
GPGGA/GPRMC/GPGSA can be reported two times per
second in some cases where we lose all satellite
signals. We should report these NMEA sentences only
from position report to prevent this.

CRs-fixed: 884484

Change-Id: I123d9f074ca725703c6e90397160b701033e22f0
2015-11-27 13:06:47 +05:30
Vamana Murthi
fd7b78112e gps: enable measurement/poly reports only when AP DR enabled
GNSS Measurements and Polynomial reports need to be enabled
only when AP DR (EXTERNAL_DR_ENABLED=1) is enabled
in gps.conf

Change-Id: I13437d997e96a6403923d49f62f1e7c2f70e9c04
CRs-Fixed: 937944
2015-11-23 19:46:50 +05:30
Kevin Tang
67d576b55a another potential race condition
LocTimer on timeout would currently delete timer delegate.
This meddles into the management of LocTimer::stop() call,
and the order of obj delete needs to be synchronized in a
few different places as a result.

This change lets the delete of the timer delegate obj fold
into the stop() handling, which would be easier to synch.

Change-Id: Ic3e0b3d183dceb9e6e2db4c47ec9d6e296b0c3f6
CRs-Fixed: 916590
2015-11-12 13:08:00 +05:30
Kevin Tang
2f74f91ac1 Crash fix with MsgTask API change
Removed tCreate and tAssociate from MsgTask. LocThread
now can optionally take a tCreate method. Associator is
replaced with *firstMsg* option to MsgTask, which is a
more generic option, that can associate or do other set
up job at the create of a MsgTask.

The current MsgTask doesn't use tCreate, which exposes
a slight time window for Location HAL when its MsgTask
is NOT associated to DVM heap but a message delivery to
DVM could be attempted during this time.

Change-Id: Iafd5b91b693baacb9b7064463f8c44f74026f54c
CRs-Fixed: 902350
2015-11-12 13:06:32 +05:30
Kevin Tang
f533181bd6 timer bug fix
when a ticking timer is stopped, currently kernel doesn't
get updated with the next immediate timer's interval. As a
result, kernel timer will expire sooner (with the stopped
timer's interval), and the next timer's client is notified
for this expiration.

Change-Id: I0d67d1418cb9bfe7f70ae71252901d4c6bb699b3
CRs-Fixed: 909776
2015-11-12 13:02:18 +05:30
Kevin Tang
91488d6fc5 fixing a crash vulnerability due to race condition
LocTimer::stop() can be called from different threads, which must
be protected. Currently there is a race condition between back to
back stop()'s or expire() + stop() events.

Change-Id: Iae80b78f049a32da87639f813c6f5126b4ccd072
CRs-Fixed: 904627
2015-11-12 13:00:03 +05:30
Bhavna Sharma
62a30d2faa Fix for timerfd_create on older kernel revisions
BOOTTIME_ALARM and BOOTTIME were added to timerfd_create
in kernel version 3.11 and 3.15 respectively.
But for targets still on older kernel version we fallback on MONOTONIC.

CRs-Fixed: 897805

Change-Id: I47d9780d69ce5ee8c183c84baa93ea3c1a00db57
2015-11-12 12:59:22 +05:30
Kevin Tang
153ba77107 crash in LocTimer wrapper
LocTimerWrapper implements loc_timer_start/stop calls for backward
compatibility. There is a race condtiion where the wrapper object
could be deleted by the client thread and expireation handling at
rough the same time, which would have the memory freed twice. Now
they are mutext protected.

Change-Id: I25d7466db88a840a8a09e7a476cface48c91d22e
2015-11-12 12:57:56 +05:30
Kevin Tang
c9db5166b5 LocTimer repeated expiration
Timer must be removed from epoll as soon as it expires,
otherwise it continuously expire. Current timer removes
from a different thread, this triggers repeated expire
events until the maintain thread gets to remove it.

Change-Id: Ie523bce5069416521d49bc0178d2cad2dd1f04da
CRs-Fixed: 870568
2015-11-12 12:57:22 +05:30
Kevin Tang
58c3d32868 Adding a number of utilities
LocHeap, LocThread, LocTimer, and moved MsgTask to
utils. Also added are LocRankable and LocRunnable
abstract classes.

Change-Id: I76975455d24f2c84a95dcc1b04f79fea562ea5ba
CRs-Fixed: 855222
2015-11-12 12:56:25 +05:30
Linux Build Service Account
72993211dd Merge f5e6e2eeee on remote branch
Change-Id: I89b0b79894c93b407e6d125c6861bb060da9e241
2015-11-09 12:10:32 -07: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
Kevin Tang
594daf9692 Add AP Coarse Timestamp Uncertainty configuration parameter
Change-Id: Ic93291d451704ced88bdf45df3cb9215acf6f2de
2015-10-21 00:20:07 -07:00
Kevin Tang
8da6427472 Add AP Timestamp for coarse/fine time to position reports
Change to add APTimestamp field to position reports to carry
Coarse or fine timestamp.

Change-Id: Iaf5490cb991865d4b6376b0934b306a31528d90c
2015-09-30 23:22:37 -07:00
Dante Russo
509979c395 Remove DeleteAidingData additions
The additions of more Satellite types that
require gps.h changes are removed.

Change-Id: Ib0ab285af7b9bee886c5f7a256d638f2fd7fee9d
2015-08-03 04:18:40 -07:00
Dante Russo
d33d216267 Add feature set configuration
Some features are flagged out builds
because of a lack of support.

Change-Id: I067bcf88432d74b49e60eaab86409f178cf45e7d
2015-07-13 19:25:58 +05:30
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
8834b304c9 Fix implicit declaration errors in gps hal
Including string.h and stdlib.h to fix compiler
errors.

Change-Id: I4e79c71b9e5691e51850adcc52f52b36f8e3d088
2015-07-13 19:25:13 +05:30
Dante Russo
447fe95020 LCA additions to ULP and log_util defines
1. Add two new ulp location sources (PIP and NLP)
ULP_LOCATION_IS_FROM_NLP to mark locations from NLP
ULP_LOCATION_IS_FROM_PIP to mark locations from PIP
2. Introduce a macro for printing exit log with error.

CRs-Fixed: 694343

Change-Id: Ifa11803df2ed4fc249a5c339acfeeb5d89bf55d5
2015-07-13 19:24:44 +05:30
Kevin Tang
0826e30db2 Disable ESUPL from configuration
ESUPL initialization path waits on data services to come-up
whichtakes approx. 10 sec adding to TTFF. The GSS in APQ will
not beused for Emergency services (for VoLTE) hence disabling
for APQautomitive

Change-Id: Ifc82abadcaa4a859d344251fac065c5e632c8c6f
2015-06-18 16:02:22 -07:00
Linux Build Service Account
bf2d37a153 Merge "Merge b8e9ad34cd on remote branch" 2015-06-17 14:03:16 -07:00
Qaing Chen
339a4fc58f Fix Memory leak in util/loc_cfg.cpp
deallocate conf_copy after usage.

Change-Id: I8ad4e4e8007a2d8b608f3f74503515f062b86c4b
CRs-fixed: 852809
2015-06-13 20:01:02 -07:00
Qiang Chen
4d44ce3d6c Fix gps.conf capabilities overwrited by carrier
If overwrite happened, loc config update will
restore gps.conf capabilities based on target type.

Change-Id: I958ce8da0e8062549f12808aca4aebcf4a7fb95d
CRs-Fixed: 850144
2015-06-12 04:55:02 -07:00
Linux Build Service Account
a1d7e82e91 Merge b8e9ad34cd on remote branch
Change-Id: If986d69ef5a7b991b47bfe28b0cf3d57c4b76975
2015-06-11 01:14:29 -06:00
Qiang Chen
18d8153915 Removed unused code and unnecessary notice files
libloc_api-rpc code is not built for any targets,
so it's removed. NOTICE file is unnecessary and
can be remvoed.

Change-Id: I7da6f0d5a7d90fd4ad7ef51d9eaee88d2a7a20ac
CRs-fixed: 827856
2015-05-09 02:24:30 -07:00
Qiang Chen
b8e9ad34cd Removed unused code and unnecessary notice files
libloc_api-rpc code is not built for any targets,
so it's removed. NOTICE file is unnecessary and
can be remvoed.

Change-Id: I7da6f0d5a7d90fd4ad7ef51d9eaee88d2a7a20ac
CRs-fixed: 827856
2015-05-08 21:28:36 -07:00
Dante Russo
8a3533bd4a Remove reporting gps status from loc eng layer
GPS Status is reported from Loc Api layer, so
reporting it in Loc Eng layer in addition is
redundant. Also, SSR should not send engine on
status when not in a session.

Change-Id: I10bc2d112574de0016110e193d6c2cd071b00b2a
CRs-fixed: 826256
2015-05-07 03:50:06 -07:00
Dante Russo
9f7f4bd6d2 Remove reporting gps status from loc eng layer
GPS Status is reported from Loc Api layer, so
reporting it in Loc Eng layer in addition is
redundant. Also, SSR should not send engine on
status when not in a session.

Change-Id: I10bc2d112574de0016110e193d6c2cd071b00b2a
CRs-fixed: 826256
2015-04-28 18:08:37 -07:00
Linux Build Service Account
5afa84fe91 Merge "Adding Mutex for Creating Context" 2015-04-15 00:02:21 -07:00
Jiafei Wen
7fa3b1bd2a Adding Mutex for Creating Context
Adding lock for creating foreground context
and background context, preventing any possible
race condition.

CRs-fixed: 820078
Change-Id: I7ace685622904ee2aa12f317540f9c04880acc70
2015-04-14 21:55:36 -07:00
Linux Build Service Account
45e27ba7b8 Merge "Adding Mutex for Creating Context" 2015-04-14 17:49:08 -07:00
Jiafei Wen
a284b9a83b Adding Mutex for Creating Context
Adding lock for creating foreground context
and background context, preventing any possible
race condition.

CRs-fixed: 820078
Change-Id: I7ace685622904ee2aa12f317540f9c04880acc70
2015-04-09 11:00:22 -07:00
Linux Build Service Account
e7fa3e15ae Merge 19920b80e2 on remote branch
Change-Id: Ic1c355378caf0749e58076df2118c873b6c6f172
2015-03-30 05:36:01 -06:00
Linux Build Service Account
19920b80e2 Merge "Add utility to identify lean targets" 2015-03-22 16:59:54 -07:00
Linux Build Service Account
ecdc069767 Merge "Add Course TimeStamp & asso. unc to Measurement" 2015-03-20 14:48:42 -07:00
Kevin Tang
f3444670b8 Add Course TimeStamp & asso. unc to Measurement
We need to add the course time stamp when the
measurements are received in GNSS driver to align
the measurements and sensor samples received from
SLIM.

Change-Id: I4ef067890e16c2585f8a9c7809c4d7421b895cd0
2015-03-20 09:30:39 -07:00
Tushar Janefalkar
7d367d0e62 Add utility to identify lean targets
This utility reads ro.lean system property
and returns a 1 if the property is set to true
and returns 0 otherwise.

Change-Id: I52a8396ee085d44b90d8416131f27b0b1a46575e
CRs-fixed: 801990
2015-03-19 17:33:06 -07:00
Linux Build Service Account
c9b3856769 Merge "Avoiding race conditions during the pallellized builds in Android system" 2015-03-09 17:15:35 -07:00
sudarsanarao makupalli
1fe602a0a9 Avoiding race conditions during the pallellized builds in Android system
Removed relative paths and set Absolute paths in Android.mk file
and moved corresponding files to right location

Change-Id: Iacf2ee3dadb3e87c9354c1c4b8003cd8cc65ea97
CRs-Fixed: 714112
2015-03-09 11:55:44 -07:00
Linux Build Service Account
24c39184b7 Merge "Send GPS tracking fixes to FLP HAL" 2015-03-01 12:58:06 -08: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
Linux Build Service Account
72166d550d Merge "Send GPS tracking fixes to FLP HAL" 2015-03-01 07:55:48 -08:00
Linux Build Service Account
bcf47cc016 Merge "Klockwork P1 issues." 2015-02-27 07:04:19 -08:00
Linux Build Service Account
a0e8ab95f1 Merge "Merge tag 'AU_LINUX_ANDROID_LA.AF.1.1.05.00.02.164.175' into 111" 2015-02-14 06:58:27 -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
Ashish Dhiman
b45b1606db Klockwork P1 issues.
fixing Klockwork P1 issues.

CRs-Fixed: 793601
Change-Id: I037c17c342f473d6d21a234ec1e980ba55b98cbe
2015-02-10 13:47:14 +05:30
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
Linux Build Service Account
6ad0b50e83 Merge "Fix bug with switch case" 2015-02-06 00:45:39 -08:00
Tushar Janefalkar
1777a2fe16 Fix bug with switch case
The switch case inside setXtraVersionCheck
does not have breaks after the cases and
the default label is misspelled. This
will always cause the check to be disabled

Change-Id: Ibcc3703c98e561e0bdfbcc5c8802d1b45c9a511a
CRs-Fixed: 790623
2015-02-05 19:04:36 -08:00