platform_hardware_interfaces/audio
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
..
2.0 Update hidl makefiles for bpfmt 2019-04-17 09:38:50 -07:00
4.0 Audio HAL: Add missing device to XSD 2019-10-11 23:32:30 +00:00
5.0 Merge "Update hidl makefiles for bpfmt" am: ff0bd741ca 2019-04-18 14:34:45 -07:00
6.0 audio: Run VTS tests for streams of non-primary modules for HAL V6 2019-11-11 10:29:06 -08:00
common audio: Parametrize core VTS tests 2019-11-08 13:45:45 -08:00
core/all-versions audio: Run VTS tests for streams of non-primary modules for HAL V6 2019-11-11 10:29:06 -08:00
effect audio: Parametrize effect VTS tests for V6.0 2019-11-08 13:45:10 -08:00
README Audio HAL: Update file tree documentation 2018-11-28 20:29:52 -08:00

Directory structure of the audio HIDL related code.

audio
|-- 2.0              <== core 2.0 HIDL API. .hal can not be moved into the core directory
|                        because that would change its namespace and include path
|-- 4.0              <== Version 4.0 of the core API
|
|-- ...
|
|-- common           <== code common to audio core and effect API
|   |-- 2.0          <== HIDL API of V2
|   |-- 4.0
|   |-- ...
|   `-- all_versions <== code common to all version of both core and effect API
|       |-- default  <== implementation shared code between core and effect impl
|       |-- test     <== utilities used by tests
|       `-- util     <== utilities used by both implementation and tests
|
|-- core             <== VTS and default implementation of the core API (not HIDL, see /audio/2.0))
|   `-- all_versions <== Code is version independent through #if and separate files
|       |-- default  <== code that wraps the legacy API
|       `-- vts      <== vts of core API
|           |-- 2.0  <== 2.0 specific tests and helpers
|           |-- 4.0
|           |-- ...
|
`-- effect           <== idem for the effect API
    |-- 2.0
    |-- 4.0
    |-- ...
    `-- all_versions
        |-- default
        `-- vts