ULP will no longer be loaded and init'ed from loc eng
HAL. GPS HAL will look for ULP once it completes init
and waits for a msg back once it hears from ULP. This
is done with introduction of UlpProxy. Default proxy
is a no op proxy.
Change-Id: If0be0b5744f9de20f12c2f0b9704dea66aa454c0
(cherry picked from commit 2eb4ddcae94283df6c6be450c4c070ffd8ff9cd7)
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
Changed the communication path from ULP JNI to libulp
engine to avoid the GPS HAL layer. This improves modularity,
removes dependencies and promote easier integration for OEMs.
Change-Id: I6bc883499b8ed3649cfc194038057a19ba2fd4f6
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
Updated LOC API source and header files
since the new version had updated masks
that were required for loc eng
Change-Id: Ia0d57770a737ef6d05e881ac0512eb174e7c9fd1
Changes for providing the plumbing from UlpService down
to the native UlpEngine.
Change-Id: I67e48fad47675d9fa9a3026763daa0f248369f60
CRs-Fixed: 443444
Previously, modem's request for NTP time was not supported.
This change enables that request to be serviced through the HAL
and current NTP time is injected into the modem
CRs-Fixed: 406357
Change-Id: I471f98cf57a276902d7991da48cf7244fe798318
Sends the technology mask of the position report to ulp and blocks
the injected wifi fix from getting reported as final
Change-Id: I3a9b390d3d6d9be1a913731d6e8d8ee1d3ced686