* 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
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
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
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
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
* 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
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
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>
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>
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>
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>
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>
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>