summaryrefslogtreecommitdiff
path: root/sensors/1.0/default/Sensors.cpp
AgeCommit message (Collapse)Author
2017-03-17Avoid calling non-exist set_mode hal functionPeng Xu
Add gating condition before calling the hal function pointers for set_mode and inject_sensor_data. Bug: 36073404 Test: compiles Change-Id: I9c194c1a286fb64304b4329f43c3de2a3d6ae939
2017-03-10Do not crash fatally when recovering from system server restart.Ashutosh Joshi
Log(FATAL) is creating lots of nuisance bugs. Test: Sensor service continues to recover from a system server restart and sensors are available. No crash log is created. Bug: 36094522 Bug: 36115683 Change-Id: Idc2d086709dc2132c98aab806aa44728fbdaa189
2017-03-02Prevent framework from stucking at communicating with HIDL HALPeng Xu
Sensor hidl service has two threads quota. One is used for sending commands down to hardware, and the other for retrieving sensor events from hardware. The second is usually blocked on poll(). When system server quits abnormaly, the poll thread may still be blocked in HAL implementation and holding that thread. There won't be enough available threads for framework sensor service to function correctly when system service restarts, resulting in a deadlock at enableSensor() or getService() until the hidl service is restarted. This fix detects a second connection from framework sensor service and kills the hidl service in case that happens. The system will restart the hidl service with clean state and return system to normal operation. Bug: 35727090 Bug: 35843387 Bug: 35702298 Bug: 35919167 Bug: 35848670 Bug: 35903635 Test: Restart device works in normal case. Restart also works with the following scenario (reproducing error) "adb root && adb shell dumpsys sensorservice restrict random && adb shell stop && adb shell start" Change-Id: Ibffa87d93b2d24af2803be9281e7141d0a221e3e
2017-01-19Merge "[sensors] Default implementation and vts of direct report"Peng Xu
2017-01-18[sensors] Default implementation and vts of direct reportPeng Xu
Added support for newly added HAL function for sensor event direct report feature, replace dummy implementation with funtional ones for the following: * registerDirectChannel * unregisterDirectChannel * configDirectReport Added a vts test case for direct report. Added new offset definition to types.hal. This will not affect existing client/calling code. Bug: 30985702 Bug: 32022776 Test: vts pass Change-Id: Ie5e3cddd7c37664e8c59d69cf70aaa1310fd3f58
2017-01-18[sensors] Add parameter check to poll()Peng Xu
Check maxCount parameter so that it will not allocate overly large amount of memory if input parameter is bad. Bug: 32953589 Test: build and pass vts Change-Id: Ia19e0315ab1623b8b6580889c1e058a19e6c9670
2017-01-14[sensors] Minor tuning of hal definitionPeng Xu
* Swap GEOMAGNETIC_FIELD with MAGNETIC_FIELD for more accurate definition. * Remove redundunt prefixes in various enum definitions. * Clarify that string type will be removed for well defined sensor types. This avoid dependency on strings defined in sensors.h. * Added SensorFlagShift enum. * Remove unused flag parameter in batch. * Remove legacy setDelay function. * Change the type of sensor flag to bitfield<SensorFlagBits>, and use uint32_t since only low 32 bits are used. Test: all sensor works(in marlin), tested with sensorlogger. Change-Id: I93a4d13c5d2e054857d1e400d15002aeb9a47368
2017-01-12[sensors] Format, wording and naming changesPeng Xu
* replace all "should" description with more precise wording. * replace "aidl" name in parameter to avoid confusion. * reformat files and method description. Test: m -j32 Change-Id: Id1129b816b3c364c76f0a24fabba1e1418dbd8db
2017-01-10[sensors] new functions and types for direct report modePeng Xu
Added functions: * registerDirectChannel * unregisterDirectChannel * configDirectReport Added structs and enums related to direct report functionality. Stub default implementation is also included. Test: compiles and runs Bug: 30985702 Change-Id: Ia542673e2b180e0aa62c1374cf8c1671bf2f5721
2016-12-16Sensors: MultiHal: Add HIDL-based Multi-HalNick Vaccaro
Add the ability to use more than a single sensor HAL to the HIDL sensor service. Bug: 32022308 Change-Id: I99866adbbbee6d93350327aaaba136682ae069ae
2016-10-13sensor HAL v3Andreas Huber
Bug: 32021636 Test: no Change-Id: I7a4c5c47f8621209daef5af4d0dcbb806a236e41