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
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
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
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
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>
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