Commit graph

34 commits

Author SHA1 Message Date
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
Gohulan Balachandran
efd4e124a6 Merge up to MR1 tip
Point merged in is cc92e0ccd4

Change-Id: I3b782716fee9ed519b77a4e415fa08155bdce76a
2013-07-23 20:12:17 -06:00
Kevin Tang
cb119e6f52 Make Loc Init Asynchronous
GPS-enable gets too heavy at powerup, when loc_init is
synchronous, where loc goes to get the hardware handle
if AP init happens faster than the GPS hardware. The
loc init calling thread is from Android framework, and
it locks a mutex that in turn could lock up system server
main thread upon race conditions.

The second half of loc init, i.e. the reinit, is now moved
to loc worker thread. This should help release some of the
powerup timing pressure on the framework threads.

Added a message just for asynchrous Loc Init so as to execute
init specifically.

Change-Id: I369e461ca4ca61cea3a9729c84d24af4ffa8e51d
CRs-fixed: 472843
2013-07-23 20:05:58 -06:00
Satheesh Jayakumar
0590a64deb hardware/qcom/gps: Porting HAL and Loc API 2.0
- Wrote makefiles, config and other files
- Made code changes to minimize android dependencies

Change-Id: I350de6378684f5db81a36cc4c6d014c5a8189d4c
2013-07-03 17:08:14 -07:00
Dante Russo
399f53047e gps: Added xtra server query loc api
In order to prevent the issue where the xtra server url
that stored in gps.conf is incorrect (like xtra.bin instead
of xtra2.bin) for a particular modem, I've made this change
so that the xtra server url can be queried through loc api.
CRs-fixed: 366599

Change-Id: If65de98d837f068fd61a235cbf1104026246e5a9
2013-06-11 15:02:29 -07:00
Dante Russo
926d20ad77 gps: moving agps/ni/xtra/time features out of afw
Moving these features out of afw allows these
features to still work on platforms that do not
allow changes to afw and it also gives us more
control.

Change-Id: I6923b302f93222dc10189c3a6a7b6ba2ec1a3378
2013-06-11 15:00:57 -07:00
Dante Russo
85f672fa71 Merge branch jb_mr1 into jb_2.6
Merged from from label
AU_LINUX_ANDROID_JB_MR1.04.02.02.049.306

Change-Id: Ie2f7fd3d25f8f28f5d1b6e733974bb5f75999ee8
2013-06-11 14:58:24 -07:00
Kevin Tang
b05358920c Make Loc Init Asynchronous
GPS-enable gets too heavy at powerup, when loc_init is
synchronous, where loc goes to get the hardware handle
if AP init happens faster than the GPS hardware. The
loc init calling thread is from Android framework, and
it locks a mutex that in turn could lock up system server
main thread upon race conditions.

The second half of loc init, i.e. the reinit, is now moved
to loc worker thread. This should help release some of the
powerup timing pressure on the framework threads.

Add a message just for asynchrous Loc Init so as to execute
init specifically.

Change-Id: I369e461ca4ca61cea3a9729c84d24af4ffa8e51d
CRs-fixed: 472843
2013-06-07 13:39:24 -07:00
Kevin Tang
0a760c9f3b GPS HAL: expose altitude and speed uncertainty
Expose altitude and speed uncertainty from GPS fix via extended
info.

Change-Id: I0a478aa25d4b0a98793c946ba5fb883520a4ce58
2013-05-06 18:40:33 -07:00
Kevin Tang
b2490777c1 removed exe bit of the file access mod
find . -type f -executable -exec chmod -x {} \;

Change-Id: Ib6e09bc4bf1d8e4cde63c1df0b15877bf42525b8
2013-04-05 11:12:28 -07:00
Kevin Tang
52f4c8ca93 add LOCAL_MODULE_OWNER := qcom to gps modules
Port back of an earlier patch applied to the GPS HAL
that was moved out of aosp (change id of the patch was
Icc302c91da4104679d2548e4527d0aee430f3761

Change-Id: I133f92e316872c60830df5553f31d34ecd9d7a84
2013-03-26 14:58:19 -07:00
Kevin Tang
34ee095517 Revert "remove loc_api from hardware/qcom/gps"
This reverts commit 0d257cc5d3.

Change-Id: I80c00022b5ab562ade9a9c8ca5abd0087d897c9e
2013-03-26 14:45:46 -07:00
Linux Build Service Account
87e24ecf53 Merge "gps: fix nmea altitude for rpc" 2013-02-20 21:35:49 -08:00
Iliyan Malchev
0d257cc5d3 remove loc_api from hardware/qcom/gps
Change-Id: I2a1e928dc38de45c7421e2ef7a406ca969eafc97
Signed-off-by: Iliyan Malchev <malchev@google.com>
2013-02-06 22:49:06 -08:00
Satheesh Jayakumar
9f8bcc3b14 Ulp: Adds interfacing b/w FusedLocationProv & ULP engine
Changes for providing the plumbing from UlpService down
to the native UlpEngine.
Change-Id: I67e48fad47675d9fa9a3026763daa0f248369f60
CRs-Fixed: 443444
2013-01-29 17:24:01 -08:00
Dante Russo
b7b14cb1c6 gps: fix nmea altitude for rpc
Change-Id: Ifcbde28717178b76bde03d02d3f9ffa8dae114fd
2013-01-21 18:00:45 -08:00
Duy Truong
a987332d29 Update copyright to The Linux Foundation
Change-Id: I727bdeb29904eebf15b7ef8eb0070d69107537a8
2013-01-10 08:07:21 -08:00
Dante Russo
7118024952 Merge jb into jb_2.5
Features ULP, IPV6, DELEXT disabled

Conflicts:
	loc_api/Android.mk
	loc_api/libloc_api-rpc-50001/*
	loc_api/libloc_api_50001/*
	loc_api/loc_api_v02/*
	loc_api/ulp/inc/ulp.h
	utils/*

Change-Id: I846352d0addca89d4ffc3b114b774926b23e930d
2012-12-14 16:45:15 -08:00
Kevin Tang
e065604f30 OTDOA support
(must have CR 370306 as dependency)
CRs-Fixed: 402746

Change-Id: I505becab45f643b352e8ff3aeb242b15b623cb7b
2012-11-15 15:42:13 -08:00
Dante Russo
9fd717a6ae gps: do not lock mutex during loc_ioctl
Locking the slot mutext during a loc_ioctl call
can cause deadlock in some rare cases.

Change-Id: I09aa2ad7c67c326fee90447db960895d7f1fb149
CRs-fixed: 412208
2012-11-07 09:45:23 -08:00
Iliyan Malchev
c74962df0d chmod uga-x
find -type f -perm +111 -name \*.[ch]\* -exec chmod uga-x {} \;

Bug: 7428209
Change-Id: I991e3fb62a46f4b4cd727ef4b6a4472b4015ce33
Signed-off-by: Iliyan Malchev <malchev@google.com>
2012-10-27 14:22:13 -07:00
Linux Build Service Account
48cd8b423b Merge "gps: AP NMEA generation" 2012-09-19 13:33:15 -07:00
Dante Russo
a3409617b6 gps: AP NMEA generation
Generate NMEA sentences on the AP

Change-Id: Ifc9e9263868ab4dec450bef35c53c441c881a072
2012-09-17 07:34:08 -07:00
Ajay Dudani
197fe088f7 dynamically build and load adapter libs
This is to support bringup efforts. This change will decouple
the dependencies between GPS HAL and proprietary QMI headers,
so that we can build HAL without any proprietary repos.

Change-Id: I7b836d09f4ac6b1a1bdb38f8d6a2bfb90bb5bf01
Signed-off-by: Iliyan Malchev <malchev@google.com>
2012-09-15 13:44:20 -07:00
Linux Build Service Account
24d928186f Merge "gps: control session state evt from HAL, not modem" 2012-09-15 12:15:05 -07:00
Ajay Dudani
ac8fa07a02 gps: control session state evt from HAL, not modem
Suppress the registering for QMI_LOC_EVENT_MASK_FIX_SESSION_STATE_V02
event from modem, that is normally responsible for generating
GPS_STATUS_SESSION_BEGIN and GPS_STATUS_SESSION_END, and instead
initiate these events from hal from when we get GPS_STATUS_ENGINE_ON
and GPS_STATUS_ENGINE_OFF.

Change-Id: I9d220bef7ee4f989a3982d888ed46279861f612d
2012-09-14 17:49:49 -07:00
Vineela Tummalapalli
06ce79b8fa GPS: fix the issue that GNSS position report are dropped in PPC based target
Change-Id: I94fb2bd12ac8751cbd2366a4cc5fde4b52d17f64
CRs-Fixed: 395398
2012-09-11 18:35:28 +05:30
Dante Russo
02d13cc646 gps: control session state evt from HAL, not modem
Suppress the registering for QMI_LOC_EVENT_MASK_FIX_SESSION_STATE_V02
event from modem, that is normally responsible for generating
GPS_STATUS_SESSION_BEGIN and GPS_STATUS_SESSION_END, and instead
initiate these events from hal from when we get GPS_STATUS_ENGINE_ON
and GPS_STATUS_ENGINE_OFF

Change-Id: I9d220bef7ee4f989a3982d888ed46279861f612d
CRs-fixed: 370904
2012-09-10 16:58:40 -07:00
Dante Russo
3088fe9117 gps: jb porting with qcom enhanced features
based from AU_LINUX_ANDROID_ICS.04.00.04.00.205

Change-Id: I0af1da1438a136e98b59110641ce5c7714da220b
2012-07-18 15:13:16 -07:00
Dante Russo
3c2630ef2a gps: initial merge to jb
based from AU_LINUX_ANDROID_ICS.04.00.01.00.007
with qcom enhanced features flagged out

Change-Id: I2bc03fe4447047fd7c9a7d000040dadb8bb34647
2012-07-12 21:58:21 -07:00
Ajay Dudani
f77c85bb51 gps: Initial implementation of msm gps hal
Change-Id: Icf126a0bbb9dec414144b9b405694e41777920d5
2012-07-09 15:43:56 -07:00