Commit graph

16638 commits

Author SHA1 Message Date
Steven Moreland
5aca9f6f40 Merge changes from topic "rm-vibrator-1-4"
* changes:
  vibrator@1.4: remove from current.txt
  Remove vibrator@1.4 from VNDK.
  Restore vibrator@1.3 example service.
2019-11-12 21:39:26 +00:00
Treehugger Robot
460be58661 Merge changes from topic "upstream-vts-v6"
* changes:
  audio: Run VTS tests for streams of non-primary modules for HAL V6
  audio: Run VTS tests for non-primary modules for HAL V6
  audio: Parametrize core VTS tests
  audio: Parametrize effect VTS tests for V6.0
2019-11-12 02:20:38 +00:00
Mikhail Naganov
60bd3ecc5d audio: Run VTS tests for streams of non-primary modules for HAL V6
Implement parsing of AudioPolicyManager config for finding
out supported format configurations of streams. This only applies
when running tests for HAL V6. Previously format configurations
mandated by CDD were used for testing, this does not work well
for non-primary modules.

Fix the following issues found while running the tests
for "r_submix" and "msd" modules:

- IStream::getSupportedFormats must return a status
  to indicate that this capability is not supported by HAL;

- it is allowed for IStream::setDevices to return
  NOT_SUPPORTED status.

Other changes:

- Factor out helper functions for generating format
  configurations;

- Fix generation of the channel mask component in the names
  of tests that use AudioConfig, add sampling rate to test
  names.

Squashed with the following commit to avoid breaking compilation:

audio vts: Remove explicit dependency on the new types

Avoid using the new ChannelMaskSet and SampleRateSet types
directly to simplify upstreaming.

Bug: 141989952
Bug: 141847510
Test: atest VtsHalAudioV5_0TargetTest
      atest VtsHalAudioV6_0TargetTest
            also, run modified V5_0 test using generators for V6_0

Change-Id: If0d330881901908e546baab89f63d3333003e355
Merged-In: If0d330881901908e546baab89f63d3333003e355
2019-11-11 10:29:06 -08:00
Steven Moreland
ea49733bb4 Merge "vibrator: clarify behavior for repeated commands" 2019-11-11 06:58:07 +00:00
Treehugger Robot
437baabfde Merge "Remove static vndk dep from vendor modules" 2019-11-11 06:15:14 +00:00
Steven Moreland
d13b7577e1 Merge "vibrator: fix VTS for effects" 2019-11-11 05:28:38 +00:00
Steven Moreland
5bd756e62e vibrator@1.4: remove from current.txt
Since it is being replaced by an AIDL HAL interface.

Bug: 141828236
Test: N/A
Change-Id: Ie46843cd17540665f0575798ea97355e174a359c
Merged-In: Ie46843cd17540665f0575798ea97355e174a359c
2019-11-10 20:22:34 -08:00
Steven Moreland
1784b9a3cf Remove vibrator@1.4 from VNDK.
Because this HAL was converted to AIDL.

Can't be completely removed until frameworks/base is refactored not to
use it, but doing this so no more dependencies are accidentally taken
downstream.

Bug: 141828236
Test: N/A
Change-Id: Ic920f59a1a0ad933e5c80c468700ef4514b4a9c9
2019-11-10 20:21:23 -08:00
Steven Moreland
cb5d107734 Restore vibrator@1.3 example service.
To ensure we still have a HIDL vibrator service around for testing.
This is from running command:
    git checkout 714220ef75707d826371c6c020c45663d6965f0c^ -- \
        vibrator/1.3/example

Bug: 141828236
Test: N/A
Change-Id: Iffd5c8d4b95466f1b7b277c9f69d9a6001f12db8
2019-11-10 20:20:48 -08:00
Steven Moreland
c02bc05977 vibrator: clarify behavior for repeated commands
Bug: 141828236
Test: VtsHalVibratorTargetTest
Change-Id: I4077ca34cb037198df16149f944beba3c5633175
2019-11-11 04:04:11 +00:00
Treehugger Robot
a7e5d5fd5b Merge "Fix build with new googletest" 2019-11-09 01:06:56 +00:00
Treehugger Robot
8c63655c3d Merge "Replace -Weverything with -Wextra" 2019-11-08 22:53:44 +00:00
Dan Shi
9361c70c9b Merge "Convert VtsHalWifiHostapdV1_*TargetTest to be parameterized test" 2019-11-08 22:21:51 +00:00
Mikhail Naganov
686af1cc43 audio: Run VTS tests for non-primary modules for HAL V6
Implement parsing of AudioPolicyManager config for finding
out declared modules (IDevice instances) with permanently
attached devices and run tests for them. This only applies
when running tests for HAL V6.

Change class hierarchy to use IDevice interface as much as
possible, only use IPrimaryDevice for its specific methods.

Fix the following issues found while running the tests
for "r_submix" and "msd" modules:

- IDevice::getMicrophones can return NOT_SUPPORTED status;

- IDevice::get/setParameters can return NOT_SUPPORTED.

Other changes:

- Factor out common code for getting devices via DeviceManager;

- Factor out AudioPolicyConfigTest.HasPrimaryModule test from
  SetUp code;

- Add device parameter generator for primary device only.

Bug: 141989952
Bug: 141847510
Test: atest VtsHalAudioV5_0TargetTest
      atest VtsHalAudioV6_0TargetTest
      also, run modified V5_0 test using generators for V6_0

Change-Id: I51cec21670120d8dce75609954a18b886cc0c18d
Merged-In: I51cec21670120d8dce75609954a18b886cc0c18d
2019-11-08 13:49:47 -08:00
Mikhail Naganov
ccd484bb80 audio: Parametrize core VTS tests
Parametrize tests to accept IDevicesFactory instance name
and IDevice instance name. For audio HAL versions 2..5
the factory instance name is taken from the VTS environment,
and the device is always "primary". For the next versions
the factories are discovered by the test, and the devices
are taken from the audio policy configuration
(to be implemented, see added FIXME comments).

Split the Environment class into two versions: for HAL 2..5
and for next versions. They use different base class.

Move device factories and device caching into dedicated
classes DevicesFactoryManager and DeviceManager. They deal
with instance caching and proper release of server resources.

Bug: 141847510
Bug: 141989952
Test: atest VtsHalAudioV5_0TargetTest
      atest VtsHalAudioV6_0TargetTest
Change-Id: I92c44e0c3f900164dded7e9c4bfc642ca2c335db
Merged-In: I92c44e0c3f900164dded7e9c4bfc642ca2c335db
2019-11-08 13:45:45 -08:00
Mikhail Naganov
315ce41a5d audio: Parametrize effect VTS tests for V6.0
Parametrize tests to accept IEffectsFactory instance name.
Discover the instances in the test.

Bug: 141847510
Bug: 141989952
Test: atest VtsHalAudioEffectV5_0TargetTest
      atest VtsHalAudioEffectV6_0TargetTest

Change-Id: Iaf19109fc77a93b211cc3da85c21c0584d4f2b88
Merged-In: Iaf19109fc77a93b211cc3da85c21c0584d4f2b88
2019-11-08 13:45:10 -08:00
Colin Cross
d180b2b83b Replace -Weverything with -Wextra
-Weverything is not recommended, use -Wextra.

Bug: 143713277
Test: mma
Change-Id: Ic5957015ebc0030b8339b263730c8d0540cf088a
2019-11-08 13:09:00 -08:00
Haibo Huang
83b4c1e3e1 Fix build with new googletest
The new googletest requires prefix to be non-empty.

Change-Id: I3ebd13861c4803b53dbeb4ac5f247984814bef45
2019-11-08 12:17:34 -08:00
Steven Moreland
f33538889f vibrator: fix VTS for effects
A few issues were causing effects tests to fail:
- invalid effects were not actually invalid
- test for invalid effects improved to consider invalid effects and
  strengths separately
- test sleeps for appropriate amount of time after requesting effect to
  be performed
- logging used to diagnose issues left in place for convenience

Bug: 141828236
Test: atest VtsHalVibratorTargetTest (on device which suffers from these
  issues that cf did not hit)

Change-Id: Id220d36c27d85f068dce6b8961f705eef8dc6a4f
2019-11-08 10:24:34 -08:00
Treehugger Robot
9d11eca829 Merge changes from topic "upstream-hal-v6"
* changes:
  Allow device to have use Audio HAL V6
  Introduce Audio V6
  Change some formatting for better script parsing
  Script to generate new audio HAL version
  Convert audio HAL service mk to bp and rename the service
  Audio service: Refactor register interface
  Version dependant target should included version in name
2019-11-08 17:31:42 +00:00
Les Lee
dab90bdb08 Merge "hostapd: Ignore ACS relate vts testcase for hostapd 1.0 and hostapd 1.1" 2019-11-08 08:30:38 +00:00
lesl
c8a2e136ea hostapd: Ignore ACS relate vts testcase for hostapd 1.0 and hostapd 1.1
If driver doesn't support the hotspot ACS feature.
It will cause ACS relate vts testcase failure.
Temp disable the vts test case and file b/140172237 to fix in R.

Bug: 135975451
Test: build - make vts
Test: atest VtsHalWifiHostapdV1_1Target / atest VtsHalWifiHostapdV1_0Target
Test: vts-tradefed run commandAndExit vts-hal --skip-all-system-status-check \
      --primary-abi-only --skip-preconditions --module \
      VtsHalWifiHostapdV1_0Target -l INFO
      vts-tradefed run commandAndExit vts-hal --skip-all-system-status-check \
      --primary-abi-only --skip-preconditions --module \
      VtsHalWifiHostapdV1_1Target -l INFO

Change-Id: I489d5f5c54f37f3603128e127a6c8b1ee62390d3
2019-11-08 11:49:55 +08:00
Dan Shi
3d4d496078 Convert VtsHalWifiHostapdV1_*TargetTest to be parameterized test
Bug: 142397658
Test: atest VtsHalWifiHostapdV1_0TargetTest \
VtsHalWifiHostapdV1_1TargetTest
Change-Id: I37ae0369daf145731eb6b00078b396e1a4415d3f
2019-11-07 14:41:16 -08:00
Kevin Rocard
4b99dc65e3 Allow device to have use Audio HAL V6
This HAL is optional for now as breaking changed are planned.
It might get required for new device before R release.

Test: push V6 to device and check audio works fine
Bug: 134940862
Change-Id: Ib4a906da1c1d3d489003a6642bfc55b142424155
Merged-In: Ib4a906da1c1d3d489003a6642bfc55b142424155
Signed-off-by: Kevin Rocard <krocard@google.com>
2019-11-07 14:19:48 -08:00
Kevin Rocard
2a515e1c27 Introduce Audio V6
Generate with ./newHal.sh 5.0

+ some typo fix in the .hal
+ some clang-tidy run

This new HAL is an exact copy of the V5.
It will be modified in following patches while R is developed.

Test: push V6 to device and check audio works fine
Bug: 134940862
Change-Id: Ic25d30175032e76e0d3208fb876451de9ae6b7b4
Merged-In: Ic25d30175032e76e0d3208fb876451de9ae6b7b4
Signed-off-by: Kevin Rocard <krocard@google.com>
2019-11-07 14:19:12 -08:00
Kevin Rocard
55a451825c Change some formatting for better script parsing
Test: Compile
Bug: 134940862
Change-Id: Ibbafdcaa6e0bfa8fd2b80f4a6c9ac6ac95058f93
Merged-In: Ibbafdcaa6e0bfa8fd2b80f4a6c9ac6ac95058f93
Signed-off-by: Kevin Rocard <krocard@google.com>
2019-11-07 14:18:45 -08:00
Kevin Rocard
82d3a0b3c7 Script to generate new audio HAL version
Mostly automated script to generate a new Audio HAL major version.

Test: push V6 to device and check audio works fine
Bug: 134940862
Change-Id: I0da621e747eb48e75901a2a10cfc224f33864c3b
Merged-In: I0da621e747eb48e75901a2a10cfc224f33864c3b
Signed-off-by: Kevin Rocard <krocard@google.com>
2019-11-07 14:12:52 -08:00
Kevin Rocard
ad17f58e50 Convert audio HAL service mk to bp and rename the service
The service supports multiple versions and its name should not be
version dependant.

For backward compatibility, keep the target name
android.hardware.audio@2.0-service (32bit only), existing
PRODUCT_PACKAGES do not have to be updated.
New products should depend on android.hardware.audio.service:32.

Additionally migrate to Android.bp, dropping support for
AUDIOSERVER_MULTILIB. Previously the HAL service architecture (32 vs 64)
would be the same as the audio server. This in not wanted as all android
audio HAL are 32 bits.

Bug: 121208203
Test: # Compare following commands before and after patch:
      find $ANDROID_PRODUCT_OUT/vendor -name 'android.hardware.audio*'|xargs file
            adb shell reboot # check device boots to UI and
      # check the HAL restarts after the audioserver is killed
      adb shell ps |grep audio; adb shell killall audioserver; adb shell ps
Change-Id: I25f41735175a6687a051ca1e5a7fee670eb8115e
Merged-In: I25f41735175a6687a051ca1e5a7fee670eb8115e
Signed-off-by: Kevin Rocard <krocard@google.com>
2019-11-07 14:12:30 -08:00
Kevin Rocard
350ce29826 Audio service: Refactor register interface
Remove all per interface version boilerplate.
Adding a new version now requires only including the file
and adding the version name to the list.

Bug: 134940862
Test: adb shell lshal
Change-Id: Ib6b99d7a2c2079d914970fbe804aaf3c78c143ce
Merged-In: Ib6b99d7a2c2079d914970fbe804aaf3c78c143ce
Signed-off-by: Kevin Rocard <krocard@google.com>
2019-11-07 14:11:45 -08:00
Kevin Rocard
c581b41569 Version dependant target should included version in name
As a V6.0 version needs to be created.

Note that this target is not used anywhere explicitly.
There seem to be some magic to "xsd_config", probably has to do with the
package_name.

Bug: 134940862
Test: build
Change-Id: Id6935c5458294981cb778f3647ec01ee34a34e2f
Merged-In: Id6935c5458294981cb778f3647ec01ee34a34e2f
Signed-off-by: Kevin Rocard <krocard@google.com>
2019-11-07 14:11:07 -08:00
Treehugger Robot
528f91b055 Merge "Fix the failed case for the VtsHalWifiSupplicantV1_2Host#SupplicantStaIfaceHidlTest.RegisterCallback_1_2" 2019-11-07 20:47:29 +00:00
Henry Fang
f8d76bd144 Merge "Update cas@1.1 hal to cas@1.2." 2019-11-07 19:33:33 +00:00
Steven Moreland
00fab92a7f Merge "vibrator: add CAP_EXTERNAL_AMPLITUDE_CONTROL" 2019-11-07 19:18:08 +00:00
Steven Moreland
c0b92d5388 vibrator: add CAP_EXTERNAL_AMPLITUDE_CONTROL
For HIDL, vibrator may change the value of supportsAmplitudeControl
based on context. Since the interface is being redone in AIDL, we're
avoiding this changing value and providing capabilities for amplitudes
we expect to be available in different states.

Bug: 141828236
Test: VtsHalVibratorTargetTest
Change-Id: Idf0b28ffe5b1175469d32e790b10b4232482dc2b
2019-11-07 03:00:25 +00:00
Treehugger Robot
10a6515170 Merge "[vts-core] add VtsHalTetheroffloadConfigV1_0TargetTest to vts-core" 2019-11-07 02:07:29 +00:00
Henry Fang
a9f9365551 Update cas@1.1 hal to cas@1.2.
Test: Manual
bug: 141783130
Change-Id: I0c3e9041a2057ce721a608cf3a9f0a9bb15a2305
Merged-In: I0c3e9041a2057ce721a608cf3a9f0a9bb15a2305
2019-11-06 23:00:05 +00:00
David Anderson
240c726150 Merge "IBootControl: Use new defaultPassthroughServiceImplementation signature." 2019-11-06 17:53:03 +00:00
Treehugger Robot
944e640e16 Merge changes I8a7ff4b0,Id121ecd4,I23375d73
* changes:
  [hardware][interfaces][sensors] fix -Wreorder-init-list
  [hardware][interfaces][sensors] fix -Wreorder-init-list again
  [hardware][interfaces][graphics] fix -Wimplicit-int-float-conversion
2019-11-06 17:30:27 +00:00
Steven Moreland
2932b22571 vibrator: add getSupportedEffects
It's a real gap in this interface, since we need to call perform to
understand if an effect is supported.

Bug: 141828236
Test: atest VtsHalVibratorTargetTest
Change-Id: Iffbd9c0acf5e4c368767c7718025a4aef8f44ce3
2019-11-06 16:34:37 +00:00
Steven Moreland
de18b338f8 Merge "s/staidl/aidl/" 2019-11-06 16:34:27 +00:00
nelsonli
12e8435778 [vts-core] add VtsHalTetheroffloadConfigV1_0TargetTest to vts-core
Convert VtsHalTetheroffloadConfigV1_0TargetTest to be parameterized test
and add it to vts-core

Bug: 142397658
Test: $atest VtsHalTetheroffloadConfigV1_0TargetTest
Change-Id: I0023e27fef163364e302b0efc5b139b5a6105123
2019-11-06 16:25:31 +08:00
David Anderson
9441a1eb98 IBootControl: Use new defaultPassthroughServiceImplementation signature.
Using the new signature ensures that the device actually provides an
IBootControl 1.1 implementation.

Bug: N/A
Test: manual test
Change-Id: I0ddc1ed71535a31c887d94196295baa46ed37d3c
2019-11-05 17:05:05 -08:00
Nick Desaulniers
8cb3c9b326 [hardware][interfaces][sensors] fix -Wreorder-init-list
C++20 will require members in a designated initializer to be in order
unlike C99.

Bug: 139945549
Test: mm
Merged-In: I78d64ea2b7df3f2bd3b8503aa553a0523b20d711
Change-Id: I8a7ff4b025ac693398b79ad5f16687afe3a4c5a9
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
2019-11-05 14:58:13 -08:00
Nick Desaulniers
890faa2ac5 [hardware][interfaces][sensors] fix -Wreorder-init-list again
C++20 will require members in a designated initializer to be in order
unlike C99.

This snuck in because I haven't upgraded the platform toolchain yet.

Bug: 139945549
Test: mm
Change-Id: Id121ecd46b7e53f5dd7b4a32daae0594d851d0e5
Merged-in: Ica2844a213467e41d9b6a8955f1750692da8b444
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
2019-11-05 14:55:47 -08:00
Nick Desaulniers
daedbd7e47 [hardware][interfaces][graphics] fix -Wimplicit-int-float-conversion
IEEE 754 single precision cannot precisely represent the value of large
32b integrals. Accept the imprecision from implicit casts by making the
casts explicit.

One case is comparing the value before and after converting a float to
an int32_t and back, the other is used when printing a value.

Bug: 139945549
Test: mm
Change-Id: I23375d73cd16be0741defc6395046bd3b22d1335
Merged-in: Id30edce2cd29c0f9c24cd52ba5fb33f7c56a3100
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
2019-11-05 14:54:06 -08:00
Steven Moreland
d91e449020 s/staidl/aidl/
staidl is a term I made up w/o precedence. aidl is clearer and more
consistent w/ practices elsewhere.

Bug: 141828236
Test: N/A
Change-Id: I3f044ddf470b63956f2aa496ae9fe9e5893f479a
2019-11-05 13:29:10 -08:00
Steven Moreland
f581c60f08 Merge "radio@1.5: update makefiles" 2019-11-05 17:58:02 +00:00
Steven Moreland
cbd3f444c7 Merge "update-makefiles.sh: for partial Java pkgs" 2019-11-05 17:57:51 +00:00
Steven Moreland
619c04d957 Merge "android.hardware.tests.libhwbinder@1.0-impl{,.test}" 2019-11-05 17:57:50 +00:00
Treehugger Robot
6cbd36f357 Merge "Bound pending write events queue to avoid OOM" 2019-11-05 02:13:34 +00:00