Commit Graph

23 Commits

Author SHA1 Message Date
Florian Mayer
b47346c0e6 Merge "Revert "Disable FilterTest/1#FilterOutNonVendorTags on HWASan."" am: 4eeda58ce2 am: b07d73591f
Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/2234750

Change-Id: Ieaf3dc9e63114d798875a5fb08de291265aee93e
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-09-28 22:01:41 +00:00
Florian Mayer
4eeda58ce2 Merge "Revert "Disable FilterTest/1#FilterOutNonVendorTags on HWASan."" 2022-09-28 21:03:20 +00:00
Florian Mayer
0d8a45944f Revert "Disable FilterTest/1#FilterOutNonVendorTags on HWASan."
This reverts commit 40a4639e51.

Reason for revert: Speculative rollback after fix in b/248637663

Bug: 230535046
Change-Id: I72b5242dbc73587004e31305e3b25c13cc7b5827
2022-09-28 00:25:45 +00:00
Chih-hung Hsieh
fa6d674608 Merge "Fix out-of-memory error." am: f4a9ee68a3 am: 3086bb11c9
Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/2231087

Change-Id: I82c6d06ba75e6f1e6c68fb0a4f8751c628a68cc6
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-09-27 08:17:27 +00:00
Chih-Hung Hsieh
739fbefe2d Fix out-of-memory error.
Bug: 248637663
Test: atest android.hardware.audio.common@7.0-util_tests android.hardware.audio.common@7.1-util_tests
Change-Id: Ifb41ddc3fbfa8c9db7f3e10cede2155d28d3c8c4
2022-09-24 18:07:38 -07:00
jiabin
315925d83b [automerge] Fix array out of bound in audioTransportToHal. 2p: f16c6d3a57 2p: 0d43585645 am: 3074154353
Original change: https://googleplex-android-review.googlesource.com/c/platform/hardware/interfaces/+/19214732

Change-Id: Id833d761f83192c1f6fe912318bde91bb7d42761
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-07-11 23:27:13 +00:00
jiabin
3074154353 [automerge] Fix array out of bound in audioTransportToHal. 2p: f16c6d3a57 2p: 0d43585645
Original change: https://googleplex-android-review.googlesource.com/c/platform/hardware/interfaces/+/19214732

Bug: 237288416
Bug: 237717857
Change-Id: I65135fa57c7ba449ad856ef5b4081c3580fb4c6f
Merged-In: I1fcfa29d7841a1cb73bafb1ea92f3b1630992ae9
2022-07-07 23:25:08 +00:00
jiabin
f16c6d3a57 Fix array out of bound in audioTransportToHal.
The number of audio profile and extra audio descriptor must not be
greater than the maximum value.

Bug: 237288416
Bug: 237717857
Test: repo step in bug
Test: atest android.hardware.audio.common@7.0-util_tests
Change-Id: I1fcfa29d7841a1cb73bafb1ea92f3b1630992ae9
Merged-In: I1fcfa29d7841a1cb73bafb1ea92f3b1630992ae9
(cherry picked from commit 0ee75ca925)
2022-07-07 23:24:30 +00:00
Florian Mayer
40a4639e51 Disable FilterTest/1#FilterOutNonVendorTags on HWASan.
Bug: 230535046
Change-Id: I0f1d4ff10b98fe5311a3db785560b658133ed551
2022-04-26 17:37:35 -07:00
Mikhail Naganov
ec8ef38ad9 audio: Add android.hardware.audio[.common]@7.1-util modules
android.hardware.audio.common@7.1-util and
android.hardware.audio@7.1-util utilize the 7.1 XSD enums
conversion library and thus can work with the new
enum strings added in 7.1

Bug: 218504031
Test: atest VtsHalAudioV7_1TargetTest
Test: atest android.hardware.audio.common@7.0-util_tests
Test: atest android.hardware.audio.common@7.1-util_tests
Test: atest android.hardware.audio@7.0-util_tests
Test: atest android.hardware.audio@7.1-util_tests
Change-Id: Icc5a354cdc2e377a2a2424c28377bcb0ba05bf4e
(cherry picked from commit fa4a4f8da7)
Merged-In: Icc5a354cdc2e377a2a2424c28377bcb0ba05bf4e
2022-02-12 00:03:49 +00:00
Mikhail Naganov
fa4a4f8da7 audio: Add android.hardware.audio[.common]@7.1-util modules
android.hardware.audio.common@7.1-util and
android.hardware.audio@7.1-util utilize the 7.1 XSD enums
conversion library and thus can work with the new
enum strings added in 7.1

Bug: 218504031
Test: atest VtsHalAudioV7_1TargetTest
Test: atest android.hardware.audio.common@7.0-util_tests
Test: atest android.hardware.audio.common@7.1-util_tests
Test: atest android.hardware.audio@7.0-util_tests
Test: atest android.hardware.audio@7.1-util_tests
Change-Id: Icc5a354cdc2e377a2a2424c28377bcb0ba05bf4e
2022-02-09 00:26:44 +00:00
Mikhail Naganov
563238913b Audio HAL V7.1: Update VTS
Mechanical updates from global greps. Updated test code
to use new methods from V7.1.

Added missing checks for null pointers in
PcmOnlyConfig...StreamTest::releasePatchIfNeeded for V7.

Bug: 214426419
Test: atest VtsHalAudioV7_1TargetTest
Change-Id: Id3a99993bf2ee0c87d44f668d759f7c10db9a435
(cherry picked from commit 40fde0bc07)
Merged-In: Id3a99993bf2ee0c87d44f668d759f7c10db9a435
2022-02-05 00:44:59 +00:00
Mikhail Naganov
40fde0bc07 Audio HAL V7.1: Update VTS
Mechanical updates from global greps. Updated test code
to use new methods from V7.1.

Added missing checks for null pointers in
PcmOnlyConfig...StreamTest::releasePatchIfNeeded for V7.

Bug: 214426419
Test: atest VtsHalAudioV7_1TargetTest
Change-Id: Id3a99993bf2ee0c87d44f668d759f7c10db9a435
2022-01-25 01:24:52 +00:00
jiabin
574a86fa36 Add AudioTransport to replace AudioProfile in AudioPort.
An AudioTransport contains AudioProfile or hardware descriptor to
describe the audio capabilities for an AudioPort and the encapsulation
type to represent the encapsualtion format that must be used when
sending the audio data with the format associated the AudioTransport to
Android.

The hardware descriptor will be used when the format is not recognized
by the platform.

Currently, the short audio descriptor is added as one of the hardware
descriptors. Short audio descriptor is reported from EDID for HDMI.

Bug: 131736540
Bug: 178619392
Test: atest android.hardware.audio.common@7.0-util_tests
Test: atest VtsHalAudioV7_0TargetTest
Change-Id: Ic5ed9ff9b694511fdd7e90cdcda2777bdfa74f65
2021-03-23 17:22:38 -07:00
Mikhail Naganov
178317b252 audio: Put stronger rules on vendor extension enums
The namespace part has been made mandatory. The namespace
must be at least 3 characters.

Bug: 176144684
Test: atest android.hardware.audio.common@7.0-util_tests
Test: atest android.hardware.audio@7.0-util_tests
Test: atest android.hardware.audio.effect@7.0-util_tests
Change-Id: If8578dfab80b51d9c30042e99bfbf70f40598afa
2021-02-19 14:21:17 -08:00
Treehugger Robot
eb4b22027b Merge "Fix HidlUtils::deviceAddressToHalImpl for HAL V4--6" 2021-02-16 19:35:36 +00:00
Mikhail Naganov
32fe782db4 Fix HidlUtils::deviceAddressToHalImpl for HAL V4--6
Ensure that the busAddress field is used as a fallback
for types of devices that may not necessary have it,
e.g. for built-in microphones.

Add a subset of presubmit tests for HidlUtils of V6
similar to the tests for V7.

Bug: 180143301
Test: atest android.hardware.audio.common@6.0-util_tests
Change-Id: I61fca8bd4342fdf496d1ca5bf2d01399fd3d34c7
2021-02-12 15:49:09 -08:00
Mikhail Naganov
5fd0c77caf audio: Allow specifying "default" stream type in V7
Despite that AUDIO_STREAM_DEFAULT value of audio_stream_type_t
should only used by the framework, it can still end up being
passed to the HAL in port configs and offload info structures.
This happens in the cases when the stream type is not actually
used by the HAL. It seems natural to use an empty string
as the value of AudioStreamType field in this case.

Bug: 179743630
Test: atest android.hardware.audio.common@7.0-util_tests
Test: make a telephone call on a device with HAL V7
Change-Id: Ia330031fca9d081627746b4f6074162835c4c54b
2021-02-09 20:41:52 -08:00
Mikhail Naganov
a9ac889b96 audio: Create libraries for data types in core and effect
Add 'CoreUtils' library similar to 'HidlUtils' for the types
specific to the core HAL. Add 'EffectUtils' library similar to
'HidlUtils' for the types specific to the effects HAL.  Move into
them and de-duplicate code previously scattered across the
default HAL implementation and libaudiohal. Add unit tests.

Removed 'AUDIO_{INPUT|OUTPUT}_FLAG_NONE' from the list of
values in the XSD file to avoid additional complexity due to
equivalence of this value to an empty list of flags.

Bug: 142480271
Test: m android.hardware.audio@X.0-impl
Test: m android.hardware.audio.effect@X.0-impl
Test: atest android.hardware.audio@7.0-util_tests
Test: atest android.hardware.audio.common@7.0-util_tests
Test: atest android.hardware.audio.effect@7.0-util_tests
Change-Id: I71a95cbe07fcc162dc6d74ff9665747a17ce5a80
Merged-In: I71a95cbe07fcc162dc6d74ff9665747a17ce5a80
2021-02-03 01:28:38 +00:00
Mikhail Naganov
ff611980f3 audio: Update common types to better match legacy structs
HAL V7 types were updated to better match data structure
definitions from the legacy HAL:

 - Added 'AudioConfigBaseOptional' struct to match
   legacy structs that have 'mask' field to specify
   initialized fields.

 - All fields in 'AudioConfigBase' made mandatory.

 - Removed 'EffectConfigParameters' in favor of
   'AudioConfigBaseOptional' and safe_unions.

 - Added missing enum string values to ensure that round-trip
   conversions from the legacy HAL to HIDL and back to legacy
   preserve enum values.

Bug: 142480271
Test: atest android.hardware.audio.common@7.0-util_tests
Test: atest VtsHalAudioV6_0TargetTest
Test: atest VtsHalAudioV7_0TargetTest
Test: atest VtsHalAudioEffectV7_0TargetTest
Change-Id: If02a81b3f6790a8eb315fa57123141aad2419132
2021-01-28 21:27:43 +00:00
Mikhail Naganov
3f1457b953 Audio: Add VTS tests for invalid enum-strings, Part 1
Add tests that try passing invalid enum-string values to HAL
methods taking enum-strings. Fix issues found in the default
wrapper.

Interface updates:

- Update AudioConfig structure to indicate whether
  AudioOffloadInfo is specified.

- Add return value to IStreamIn.updateSinkMetadata
  and IStreamOut.updateSourceMetadata to provide indication
  of invalid arguments.

- Specify the behavior of IDevice.open{Input|Output}Stream
  in the case of invalid arguments vs. rejected config.

Bug: 142480271
Test: atest VtsHalAudioV6_0TargetTest
Test: atest VtsHalAudioV7_0TargetTest
      with side-loaded V7 default wrapper
Change-Id: I6bd7be3869cc7a8d5d00506565bbf0b3a050b630
2021-01-07 10:32:06 -08:00
Mikhail Naganov
b52e93f516 audio: Extend HidlUtils for the default wrapper needs
Add conversions used by the default wrapper.

Promote some conversions to pre-V7 interface to reduce
version-based forking in the default wrapper code.

Bug: 142480271
Test: atest android.hardware.audio.common@7.0-util_tests
Change-Id: I93c482eeaf08442271be2656693be5395ca53762
Merged-In: I93c482eeaf08442271be2656693be5395ca53762
2020-12-16 01:14:02 +00:00
Mikhail Naganov
1b444a5332 Implement a.h.audio.common@7.0-util module
This includes a rewrite of HidlUtils for V7.
A unit test is added for its conversion functions.

Made necessary minor adjustments to the HAL V7 types.
Also, fixed definition of 'audioFormatsList' to allow for
vendor extensions.

Bug: 142480271
Bug: 173647783
Test: m && atest android.hardware.audio.common@7.0-util_tests
Change-Id: Ib883f1c246fce78c004846516699aa724d4b5d44
Merged-In: Ib883f1c246fce78c004846516699aa724d4b5d44
2020-12-11 22:10:10 +00:00