Commit graph

253 commits

Author SHA1 Message Date
Kevin Tang
2c817bdc58 Revert "Replace MONOTONIC clock with BOOTTIME clock"
This reverts commit e9c3f04f86.

Change-Id: Iabdead2a535b26bc3f7df1987265c4e2aea4f62e
CRs-Fixed: 2241735
2018-06-09 01:55:22 -07:00
Kevin Tang
4c4660c11b fixed data items for service and cell info
which right now are not keeping any data into the SSOO's table,
therefore it is not able to determine if the new data arrives is
different than the current one. This results in not passing the
following data updates to the clients.

Change-Id: Ieb94e959228d9a9f8d43b090f3328208387d864f
CRs-Fixed: 2239616
2018-06-06 14:08:40 -07:00
Baili Feng
e9c3f04f86 Replace MONOTONIC clock with BOOTTIME clock
MONOTONIC clock doesn't tick when device is in suspend mode.
BOOTTIME clock handles suspend mode while.

Change-Id: I14ce943ddfd409fcc5cb70acde0cd4f5c94d1058
CRs-Fixed: 2241735
2018-05-21 19:55:18 +08:00
Kevin Tang
533f43e690 Fixed a number of issues with NetworkInfoDataItemBase
There are a couple of issues. NetworkInfoDataItemBase
objects might be from OsAgent or GnssLocationProvider.
The two sources actually have mTypes defined differently.
In addtion, when there are different types of connections
such as wifi / mobile, getting connected / disconnected
independently, clients need to be all notified correctly.

Right now, if mConnected hasn't changed, no updates are
send. For exmple, if mobile is connected, later wifi
gets connected too, clients won't know.

SystemStatus is also updated to get updated / colated
informtion. In the above example, SystemStatus's top
record would record as both mobile and wifi are connected.

Change-Id: I1825902247fe1d4e6363f5e24a75be7e984d0dc4
CRs-Fixed: 2221114
2018-05-14 12:28:40 -07:00
Linux Build Service Account
4951079622 Merge "Add correct libs to LOCAL_HEADER_LIBRARIES" 2018-04-21 05:18:57 -07:00
Baili Feng
594a0d7ab4 Add correct libs to LOCAL_HEADER_LIBRARIES
Vendor code should not include AOSP headers
by absolute path or global path.
CRs-fixed: 2228157

Change-Id: I84a4d0b9b9fe3a20713eea07e926aba5d665b435
2018-04-20 11:23:14 +08:00
Linux Build Service Account
6b4e3829cd Merge "changed SystemStatusOsObserver" 2018-04-15 18:06:31 -07:00
Linux Build Service Account
898fe3997d Merge "FR 48850 - Device based hybrid ODCPI" 2018-04-14 22:55:27 -07:00
Linux Build Service Account
54b2a1acb1 Merge "hidl gnss hal 1.1 implementation" 2018-04-14 22:55:26 -07:00
Kevin Tang
395001f24d changed SystemStatusOsObserver
to allow clients to subscribe before subscription obj arrives,
and also simplified ClientIndex and DataItemIndex implementation
significantly.

Change-Id: I092f344e688fa698aa98795b8a8f0c1ba8fcd9e4
CRs-Fixed: 2218519
2018-04-13 15:06:29 -07:00
Kevin Tang
746606807f renamed DataItemIndex and ClientIndex files
and moved them into utils.

Change-Id: I138471168bf58d2cf09c6a435088edea29a567d0
CRs-Fixed: 2218519
2018-04-13 15:02:20 -07:00
Saurabh Srivastava
49b42e8ce5 FR 48850 - Device based hybrid ODCPI
Adding support for sending ODCPI request
to framework via IGnss interface.

Change-Id: I97ab4f00505705fedc266998602499fd344baf31
CRs-Fixed: 2217664
2018-04-13 00:02:21 +05:30
Dante Russo
4145243b7e Assure event mask is set properly to get positions
The event mask can be retrieved in the context of
client thread as zero and then queued up to go to
msg task thread. By the time the msg is actually
handled in msg task thread, the actual event
mask at LOC API layer may have already changed, but
this mask would then be overridden by zero. This
can cause no modem events to ever come, including
position reports.

The fix is to not retrieve the event mask in the
client thread, but instead wait for msg to be
handled in msg task thread before retrieving it.

Change-Id: I48562d028bbfa187732686c060b5cdd62c6d5a89
CRs-fixed: 2219519
2018-04-10 11:34:24 -07:00
Baili Feng
d856a9414d hidl gnss hal 1.1 implementation
Implement new apis for IGnss 1.1

Change-Id: I2c98c32355f6d9681d51b709697e49ec735fe1cf
CRs-fixed: 2133458
2018-04-10 08:24:34 +08:00
Dante Russo
ab95d2dc2e Merge location.lnx.3.0-180201 to location.lnx.3.9
Catchup merge from tag location.lnx.3.0-18201
CRs-fixed: 2212182
Change-Id: I47f5f9eb06cb6a6ee6be337a2dc43e0d2386113b
2018-04-04 17:54:02 -07:00
Dante Russo
97f3f3905a remove unused variables for compilation
remove unsed variables and fix few compiler issues

CRs-fixed: 2175735
Change-Id: I635a7503326928f43070aa2224bc3c3d6e1ff929
2018-03-02 09:59:29 +05:30
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
Linux Build Service Account
c98dcaa840 Merge "Remove system status reset upon delete aiding data" 2018-01-07 19:34:21 -08:00
Yingjie Wang
57a5b186c5 Remove system status reset upon delete aiding data
Delete aiding data command would trigger default gnss engine state set.
Rename setDeafultReport with setDefaultGnssEngineStates and remove system
settings reset in it.

Change-Id: I7b5dffe3191b24e9f5bb6d887705fca34ed94013
CRs-fixed: 2151350
2018-01-03 14:52:33 +08:00
Kevin Tang
13c41211a7 debug nmea should not sent to upper layer
Debug nmea is a way HAL gets GNSS engine debug information from modem.
It is provided to developers in the for bugreoprt.  Those NMEAs should
be discarded once information is extracted out.  But by mistake, they
are sent to GnssLocationProvider.  They will be in the unknown format
to apps, and they may get truncated too.

Dhanged the condition so these debug nmeas get discarded before they
can possibly passed on to GnssLocaitonProvider.

Change-Id: I1a8400201e734a37e730321f6c6e5707c71bd3f0
CRs-Fixed: 2160866
2018-01-01 20:24:55 -08:00
Linux Build Service Account
d519abf0c1 Merge "Replace wall time" 2017-12-25 08:03:44 -08:00
Kevin Tang
53a1aa5ed5 Fixed incorrect casting for SystemStatus::setNetworkInfo call
An incorrect casting at SystemStatus::eventDataItemNotify was causing a
heap overflow when trying to cast NetworkInfoDataItem into
SystemStatusNetworkInfo, that is bigger.

Change-Id: I3fbd88a1daf210c3c687a6f49ad868968a6efd96
CRs-fixed: 2137958
2017-12-08 18:18:03 -08:00
Baili Feng
edcf000435 Replace wall time
Replace gettimeofday with clock_gettime
CRs-fixed: 2144315

Change-Id: Ie8472d2aedcd0e63b86cc5ff100ce9bb28fd670c
2017-12-05 16:59:41 +08:00
Linux Build Service Account
5a9d01f5f3 Merge "Add battery level observer" 2017-10-13 00:03:54 -07:00
Kevin Tang
273e268978 Add battery level observer
added data item id and BatteryLevelDataItemBase type

Change-Id: I7e33b476c787587d0372ec67bd61fa5efe6eef41
CRs-Fixed: 2125054
2017-10-11 12:50:14 -07:00
Katz Yamada
f5f0f29c13 Add storing dataitem in systemstatus report
SystemStatus stores incoming dataitem events
received from osagent into its internal
systemstatus report cache.

Change-Id: I129c633b45abfc04c9d9bbbd558db5f6e93c1672
CRs-Fixed: 2093347
2017-10-09 10:04:13 -07:00
Bhavna Sharma
39526894cf AGPS Init must complete in one message call
If AGPS initialization is split across multiple
messages on the msgTask, it causes other other
commands to seep in before the initialization can complete.
To avoid this the initialization must be completed in one message.
Also includes some cleanup on AGPS initializations.

CRs-Fixed: 2111399

Change-Id: Id61ceeb12d5781764b42ff9d1868884537ca8d90
2017-09-28 10:11:08 -07:00
Linux Build Service Account
edbc71f1dd Merge "Add support more bp amplitude in systemstatus" 2017-09-27 08:16:37 -07:00
Linux Build Service Account
1f8b3587f2 Merge "Set SUPL_HOST to modem on GnssAdapter init." 2017-09-22 18:37:26 -07:00
Katz Yamada
fe17363801 Add support more bp amplitude in systemstatus
Add support of glo/bds/gal baseband processor
amplitude in systemstatus. These values will
be added in PQWM1 debug NMEA messasge.

Change-Id: If880bdfa81b41a82bb133bda8a0b33862f3eade5
CRs-Fixed: 2091024
2017-09-22 13:08:59 -07:00
Kevin Tang
fb4bbe52f4 fixing conn disconnect handling from GnssLocationProvider
The "type" needs to maintain as signed, in case some value
may come across as negative, even though the storage size
may vary, from 8-bit to 32-bit, for example.

Bug: 65164961

Change-Id: Ieb3fb4b6f8415444bbe192a7875093f86a9c3068
CRs-Fixed: 2106350
2017-09-20 17:47:48 -07:00
Harikrishnan Hariharan
0ebaba253f Set SUPL_HOST to modem on GnssAdapter init.
On init of GnssAdapter, SUPL_HOST and SUPL_PORT are set to
modem if the configs are set in gps.conf.

Change-Id: I079879adf31022cfbf0098da8dba3bb86feed069
CRs-Fixed: 2110547
2017-09-20 00:31:51 -07:00
Linux Build Service Account
8ac14eff60 Merge "Transition of base DataConcreteType class to HAL" 2017-09-09 00:59:31 -07:00
Linux Build Service Account
aed3065a34 Merge "Xtra client interfacing with LocNetIface in LE" 2017-09-08 19:04:53 -07:00
Harikrishnan Hariharan
40284224df Transition of base DataConcreteType class to HAL
Transition of base DataConcreteType class to HAL, so that modules
in HAL can access the members of DataItem class.

Change-Id: Ib3b60992cf35a52b601117d5d18761d759f31b86
CRs-Fixed: 2104384
2017-09-08 15:58:21 -07:00
Katz Yamada
4d8fc57928 Fix unable to clear existing event bitmasks
Fix for an issue updateEvtMask call chain is
unable to clear existing event bitmasks stored
in LocApiV02.

Change-Id: Id34e2d92a506e7300f3d9b3ec74a80a1f6822787
CRs-Fixed: 2085379
2017-09-08 13:52:20 -07:00
Harikrishnan Hariharan
f0d7fe810f Xtra client interfacing with LocNetIface in LE
Interfacing LocnetIface with Xtra client for wwan/supl call
setup and teardown.
- XtraSystemStatusObserver must listen to connect/teardown wwan
call requests from xtra-daemon on the HAL side socket. This
request is then processed by libloc_net_iface module on LE.
- Caching the connect and disconnect backhaul requests received
before framework action request object is obtained.

Change-Id: I7cb6751efc64b27726b5d28be9a3df7b1bfb3d76
CRs-Fixed: 2092215
2017-09-08 22:38:33 +05:30
Harikrishnan Hariharan
ff8b31761c Integrate XtraSysStatObs with SystemStatusObserver
Use SystemStatusObserver to subscribe for dataitems in
XtraSystemStatusObserver.

Change-Id: Ib1828b9025c9c5bb5194a36014249472ed3f6f9e
CRs-Fixed: 2093290
2017-09-07 11:05:15 -07:00
Harikrishnan Hariharan
def65a6ea0 Changes in LE for DataItemObserver changes
Fix compilation errors in LE for changes in adding
DataItemObserver interface in SystemStatus.

Change-Id: I7f2987672818d9f4ff9db801b55ade6fcdfd9a7d
CRs-Fixed: 2081242
2017-08-21 22:44:24 -07:00
Linux Build Service Account
6f104ee746 Merge "Fix to report bearing and speed accuracy" 2017-08-16 02:35:56 -07:00
Harikrishnan Hariharan
ee2d6658cb Add DataItemObserver interface in SystemStatus
Add DataItemObserver interface in SystemStatus so
that clients can subscribe dataitem events from
SystemStatus. Also moving DateItem and its observer,
subscription classes into HAL

Simplify DataItem class implementation.

Change-Id: I7b2c3fc9dcf67dd6132bbcccda874e3f7ed6fa94
CRs-Fixed: 2041019 2072896
2017-08-11 13:51:48 -07: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
Naresh Munagala
ea051709cd Fix 2.9-rel compilation issues on LE
Change-Id: I35b8da213e8830456c8652802941a418748bd5e9
CRs-Fixed: 2067662
2017-07-21 17:51:05 +05:30
Bhavna Sharma
be7f077122 Fix to report bearing and speed accuracy
1. Validity bit for vertical uncertainity was conflicting
with the validity bit of location source, hence had
to change the bit.
2. Modify ZPP API to report speed and bearing accuracy.

CRs-Fixed:2064017

Change-Id: I8b09ecab3d67557ad7c2451fee71dbc0e1f14371
2017-07-13 15:16:59 -07:00
Dante Russo
dc29f91ec6 Removing header copying to out folder
Replace copying header files to out folder
for use by other modules to instead build
headers into separate libraries that end
with _headers that can be used by other
modules.

Change-Id: I073967cd34e5c79110895908a4eef1b7d17bf9ea
CRs-fixed: 2068129
2017-06-27 17:36:14 -07:00
Katz Yamada
58d74dc1bd Add set default report API in systemstatus
Add an API to set default report data cached in
systemstatus. Call this API when delete all
aiding data is requested, so that bugreport
has all default values.

Bug: 62068956

Change-Id: I76d661c6a89a1644aef2a8f47253ce9cc0d727fb
CRs-Fixed: 2054705
2017-06-06 13:54:28 -07:00
Harikrishnan Hariharan
5969d0b2da Provide correct SV used_in_fix flag for QZSS
Mark QZSS SV used_in_fix based on the most recent position report

Change-Id: I166087fb62de45e1013ab29c01df3abfba7af12b
CRs-Fixed: 2043300
2017-05-27 23:41:18 +05:30
Katz Yamada
e3d70314b0 Fix for incorrect SVids and timestamps in bugreport
Fix SVids and timestamps shown in adb bugreport to
align with Android standard.

Change-Id: Ib166b09f1d63f7a93d53798dbb188fec0d77e88a
CRs-Fixed: 2042937
2017-05-18 11:00:17 -07:00
Katz Yamada
604d874143 Fix for buffer overrun crash at copying nmea string
Add zero clearing of allocated nmea buffer to ensure
the nmea string is null terminated.

Change-Id: Ie36010a7d3eca16dabb3067ae891a94e4b63b10c
CRs-Fixed: 2041933
2017-05-08 16:29:05 -07:00