Commit graph

202 commits

Author SHA1 Message Date
Ashutosh Joshi
0da2531b9f Add a second thread for sensor service.
HIDL implementation defaults to using a single thread for a service.
This blocks on sensorservice poll. A minimum of two threads are needed
to allow for any meaningful control.

Bug: 35067266
Test: Verify sensors stream in both passthrough and binderized modes.
Change-Id: I44ccdb6db253ca9eb9903b51e05c1893945e297e
2017-02-08 15:15:35 -08:00
Tri Vo
ce608bec74 Migrate driver/profiler to test/vts-testcase/hal.
Bug: 34893894
Test: mmma hardware/interfaces

Change-Id: Ic72716577a5f93700c5056986aff55a76b170b5d
2017-02-07 19:13:28 -08:00
Keun Soo Yim
7b9b6ca18f move VTS stub files and non-functional tests
Test: mma
Bug: 34976004
Change-Id: I20273bdc3a05e2986fcf921f65d2afd6d72781e4
2017-02-04 02:45:25 +00:00
Zhuoyao Zhang
e9b43bbe2d Update Andriod.bp for hals.
* Add driver/profiler build rule for all hals.

Test: mma
Change-Id: I98325f7af14fec7dd1bb64b1668de8c7c20ace92
2017-02-03 10:03:01 -08:00
Keun Soo Yim
b7dc8aef89 regenerate types.vts file for sensors and update its test.
Test: make vts -j30 BUILD_GOOGLE_VTS=true TARGET_PRODUCT=aosp_arm64 &&
vts-tradefed run commandAndExit vts --skip-all-system-status-check
--primary-abi-only --skip-preconditions --module SensorsHidlTest -l INFO
Bug: 34378195

Change-Id: Ib4e83728d6725304c52b0c4f61def413eb7962f0
2017-01-24 15:53:33 +00:00
Chris Phoenix
d27458f676 Remove "false" parameter from getService
Test: None
Change-Id: I281206aa9faa8aa5e5012763f3a489906155bd3e
2017-01-23 12:45:54 -08:00
Chris Phoenix
11e847666f sensors HAL uses "default" service name
The getService() and registerAsService() methods of interface objects
now have default parameters of "default" for the service name. HALs
will not have to use any service name unless they want to register
more than one service.

Test: builds; verify HAL still works

Bug: 33844934
Change-Id: Iefb6dfe80ec8f4ab389d2b6529f9f968365289b2
2017-01-20 20:27:38 -08:00
Chris Phoenix
99a5c4a7f1 Fix HAL name in LOG_TAG string
Test: None
Change-Id: Idfd59985a97e27e993b3f28f355a6e8c46b59815
2017-01-20 19:59:10 -08:00
Peng Xu
0436e14da7 DYNAMIC_SENSOR_META should be wake up sensor type
This change is done in AOSP hardware/libhardware and have to be manually
merged into hardware/interfaces after comments are moved to HIDL.

Test: comment change

Change-Id: I8dd5abd0c03eec7ef6bfef107b4b04404144627e
2017-01-18 17:51:43 -08:00
Peng Xu
84660153a9 Merge "[sensors] Default implementation and vts of direct report" 2017-01-19 00:56:04 +00:00
Peng Xu
f19d03bb0f Merge "[sensors] Add parameter check to poll()" 2017-01-19 00:55:53 +00:00
Peng Xu
89df2e7064 [sensors] Default implementation and vts of direct report
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 14:28:21 -08:00
Peng Xu
cefa91bb51 [sensors] Add parameter check to poll()
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-18 13:26:37 -08:00
Zhuoyao Zhang
6ec5b21a81 Update profiling code for host-side tests.
* Parse profiling data for each test case.
* Merge the profiling data for each test case at the end of test
  and upload the profiling info to web.

Bug:34226555
Test: run vts -m VibratorHidlProfilingTest

Change-Id: I9e13eada8e7db338a29c6943868d12e76844e2c4
2017-01-17 20:10:26 -08:00
Peng Xu
1f12c7a338 [sensors] Minor tuning of hal definition
* 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-14 05:42:13 +00:00
TreeHugger Robot
9a0a854a43 Merge "[sensors] extend functionality of injectSensorData" 2017-01-14 03:45:01 +00:00
Peng Xu
e82ec56a75 [sensors] extend functionality of injectSensorData
Extend injectSensorData functionality to also take
SENSOR_TYPE_ADDITIONAL_INFO type for parameter download.

Defined new AINFO constants

    AINFO_LOCAL_GEOMAGNETIC_FIELD
    AINFO_LOCAL_GRAVITY
    AINFO_DOCK_STATE
    AINFO_HIGH_PERFORMANCE_MODE
    AINFO_MAGNETIC_FIELD_CALIBRATION

Test: manual

Change-Id: I642fa1048ad600cc87c029ec18e73b3411631032
2017-01-14 01:45:58 +00:00
Ashutosh Joshi
497b587941 Merge "Add the uncalibrated accelerometer sensor type." 2017-01-13 17:47:30 +00:00
Chris Phoenix
627fc6fe4d Merge "Add name "default" as default to register service" 2017-01-13 08:22:57 +00:00
Peng Xu
0873e641cf [sensors] Format, wording and naming changes
* 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-12 01:53:42 +00:00
Ashutosh Joshi
4faa8c70be Add the uncalibrated accelerometer sensor type.
Adding the uncalibrated accelerometer sensor.

Test: Update makefiles.
Change-Id: I7f6bc3ce69264b698836946bf9fb820ce9959b01
2017-01-11 17:53:11 -08:00
Chris Phoenix
125378b6d6 Add name "default" as default to register service
the getService() and registerAsService() methods of interface objects
now have default parameters of "default" for the service name. HALs
will not have to use any service name unless they want to register
more than one service.

Test: make hidl_test; adb sync; adb shell;
data/native_test64/hidl_test64
Run VTS test from go/vtsrun on Sensors, Vr, Nfc
Verify NFC HAL works (turn NFC on and off in Settings)

In support of b/33844934

Change-Id: Ibcc140c3ce7930bff61cda2213c4c9ed4491a964
2017-01-11 15:53:45 -08:00
TreeHugger Robot
a8d358fb63 Merge changes from topic 'bphwfoo'
* changes:
  Bp/nFoo -> Bp/nHwFoo.
  Bp/nFoo -> Bp/nHwFoo
2017-01-11 23:43:16 +00:00
Yifan Hong
a18049ad13 Bp/nFoo -> Bp/nHwFoo.
Test: mma
Bug: 33554989
Change-Id: I4b3f852d20fdfc49f2da671dd3c12d618ffb4140
2017-01-11 13:14:59 -08:00
Tri Vo
72620bea30 Merge "Add profiling for sensors, light, and power HALs." 2017-01-11 17:11:22 +00:00
Peng Xu
823cc0b37b Merge "[sensors] new functions and types for direct report mode" 2017-01-11 02:34:38 +00:00
Tri Vo
fbd762204b Add profiling for sensors, light, and power HALs.
Test: make vts
Change-Id: I564f3066dd61eacb4e138133d8df62840e24e99d
2017-01-10 17:46:16 -08:00
Peng Xu
0f0df7ed0a [sensors] new functions and types for direct report mode
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
2017-01-10 15:19:59 -08:00
Peng Xu
95fcdac67a Merge "Allow sensors bleed all remaining events before test starts" 2017-01-10 18:18:19 +00:00
Peng Xu
9d015fb6d0 Allow sensors bleed all remaining events before test starts
After framework shutdown, there may be stall events when sensors vts
target test starts. These events make vts flaky. This CL allows the
test to remove all those events to avoid test results being affected.

Test can run repeatedly > 20 times without failure with this patch.

Test: vts-tradefed run commandAndExit vts
       --module SensorsHidlTargetTest
Bug: 33618936

Change-Id: I027e88b2b7425136543b15cf39afb203c315d8bf
2017-01-10 00:19:07 +00:00
Hsin-Yi Chen
23bd70d552 Fix VTS paths on 32-bit target
Decide target_basepaths by device's bitness.
On 32-bit target, do not include */lib64.

Bug: 33930594
Test: vts-tradefed run commandAndExit vts -m VibratorHidlTest -l INFO
Change-Id: I340ded1d763dc194da461ecf183c6a2ff5f5ee6f
2017-01-05 11:37:31 +08:00
Keun Soo Yim
7991230921 Merge "stop/start framework before/after test." 2016-12-29 17:00:25 +00:00
Keun Soo Yim
0500fb47b7 fix: add missing Android.mk links
Test: mma
Change-Id: I8324b5c8bd8392ff75c86b8473b748c41b6375ca
2016-12-28 13:20:09 -08:00
Zhuoyao Zhang
c57e359d1a Update Android.bp and vts/Android.mk for Hidl HALs
* Using update-makefiles.sh to add make rule for profiler in Android.bp
* Remove make rule for profiler in vts/Android.mk.

Bug:31930023
Test: mma
Change-Id: Iea834d8610501c2fce63f65742db31bafb85c0b8
2016-12-22 17:09:12 -08:00
Tri Vo
73111c058e stop/start framework before/after test.
Bug: 33618936
Test: make vts -j64 && vts-tradefed run commandAndExit vts
-l VERBOSE -m SensorsHidlTargetTest
Change-Id: I25405af879ab77f60f2f495d9d63c6db30254aaa
2016-12-22 14:12:51 -08:00
Keun Soo Yim
516e8193b3 regen makefiles and delete old vts driver build rules
Test: mma
Change-Id: I71c4fd68ea6d7a2fac2457b87c82c10490dfb05e
2016-12-21 13:25:46 -08:00
Nick Vaccaro
d133e4c326 Sensors: MultiHal: Add HIDL-based Multi-Hal
Add the ability to use more than a single sensor HAL
to the HIDL sensor service.

Bug: 32022308
Change-Id: I99866adbbbee6d93350327aaaba136682ae069ae
2016-12-16 11:12:11 -08:00
Yifan Hong
f35ee3b192 Revert "Revert "Update makefiles for Java package path.""
This reverts commit a8789f27cb.

Change-Id: I69980b580a556188ba868bb096ae1590b01759f5
2016-12-13 22:20:16 +00:00
Yifan Hong
a8789f27cb Revert "Update makefiles for Java package path."
This reverts commit ab0792ccdc.

Change-Id: I47fc272d9fa8875e3d7ccb10cb748c738fbf8135
2016-12-13 22:18:34 +00:00
Yifan Hong
ab0792ccdc Update makefiles for Java package path.
use V1_0 instead of 1.0.

Bug: 33554192

Test: hidl_test_java
Change-Id: Ic2d95265df10914a60a5bb743d75e839948838c3
2016-12-13 11:32:56 -08:00
Peng Xu
bba9d9a18f Added sensor target VTS test
Initial submission of Sensor VTS test, including the following
test cases:

 * SensorListValid
 * NormalAccelerometerStreamingOperation
 * NormalGyroscopeStreamingOperation
 * AccelerometerSamplingPeriodHotSwitchOperation
 * AccelerometerBatchingOperation

One thing to note is that runtime has to be stopped to prevent
sensor service from stealing samples (which causes test failure).

Test: m vts -j32 &&
      adb shell stop &&
      vts-tradefed run commandAndExit vts \
          --skip-all-system-status-check \
          --primary-abi-only \
          --skip-preconditions \
          --module SensorsHidlTargetTest
      vts-tradefed run commandAndExit vts \
          --skip-all-system-status-check \
          --primary-abi-only \
          --skip-preconditions \
          --module SensorsHidlTest
      adb shell start

Test: # alternative, faster way to run target test only
      m sensors_hidl_hal_test -j32  &&
      TOUT=$T/out/target/product/${TARGET_PRODUCT}
      TEST=data/nativetest/sensors_hidl_hal_test/sensors_hidl_hal_test
      adb push ${TOUT}/${TEST} /${TEST} && \
      adb shell ${TEST}

Change-Id: I3e26aa550f4cdec2cebb847f47d63ed33a527210
2016-12-05 17:26:54 -08:00
Yifan Hong
501839495f Update makefiles for hidlizing IBase.
A new dependency android.hidl.base@1.0 is added for
all projects.

Test: mma

Change-Id: Ia70d0eb0d74de06475a339698386d383d491a43a
2016-12-03 01:01:14 -08:00
Steven Moreland
f8d68ec855 Update makefiles for logging.
Bug: 32943424
Test: pass
Change-Id: Ic88ce6adf04e0e36db53e4cc06ac2ec5a90c011c
2016-11-21 16:28:54 -08:00
Yifan Hong
6b920e43d3 Split libhidl into base and transport.
Bug: 32756130

Test: mma
Change-Id: Id21cf23abe2910f26bb7895511862443b93dc112
2016-11-18 00:00:54 -08:00
Steven Moreland
cefd01cd41 Sensors: cleanup includes in default implemenation
Test: compiles
Change-Id: Ib0aa43c186a4626117ed6b19a3881cb1822a5cdc
2016-11-07 19:20:19 -08:00
Colin Cross
2332ea3588 Merge "Support genrules with multiple tools" 2016-11-07 18:49:56 +00:00
Colin Cross
b785f5b82e Support genrules with multiple tools
To allow genrules with more than one tool, rename the tool property to
tools and make it an array, replace $tool with $(location <label>),
and use $() for other variables for consistency.

Bug: 31948427
Test: compare build.ninja
Change-Id: I3d714f70a2af0dc60faeee10e09b6ed166601f1d
2016-11-04 22:49:15 -07:00
Nick Vaccaro
a02a8dcdcb Add low latency offbody detect sensor type
Adds new SENSOR_TYPE_LOW_LATENCY_OFFBODY_DETECT sensor type

Bug: 32492601
Test: no
Change-Id: If811d13d5b2708496b981ddfb1e887c677836103
2016-11-04 14:38:32 -07:00
Steven Moreland
fcd74ebcdc Running update makefiles.
https://android-review.googlesource.com/#/c/298160/

Test: pass
Change-Id: I14fcde2d3aacc8f8cd9221f2d69e2feae9ae1226
2016-11-02 10:24:33 -07:00
Steven Moreland
69727778a7 Stop all these merge conflicts.
Test: mma -j64
Change-Id: I319198af32adf1fef180c5c2c22ba4b360fa7609
2016-10-26 12:04:37 +02:00
Steven Moreland
22566b8913 Use defaultPassthroughServiceImplementation.
Bug: 32279541
Bug: 32282345

Test: mma
Change-Id: Ic0222963c99bea41de7637e5f20c19d7c541cb97
2016-10-21 19:33:06 +00:00
Andreas Huber
db49a41180 sensor HAL v3
Bug: 32021636
Test: no
Change-Id: I7a4c5c47f8621209daef5af4d0dcbb806a236e41
2016-10-13 09:21:46 -07:00