Refactor AudioPort and AudioPortConfig
The goals are to split framework-only fields from common,
and to simplify and unify structures where possible.
What has got changed:
1. Removed 'AudioPort[Config]SessionExt' parcelables.
These parcelables correspond to 'audio_port[_config]_session_ext',
which is trivial--contains only 'session' field, and hasn't been
extented since the inception. Remove AIDL types since each
type requires its own file, which adds mental burden.
2. Removed 'AudioPort[Config]DeviceExt' parcelables.
At the HAL level only the 'AudioDevice' field is needed.
Moved remaining framework-only fields to 'AudioPortDeviceExtSys'
which is reused between 'AudioPort' and 'AudioPortConfig'.
3. Merged 'AudioPortConfigMixExt' with 'AudioPortMixExt'.
Moved remaining framework-only fields to 'AudioPortMixExtSys'.
4. The previous item allowed using 'AudioPortExt' instead of
'AudioPortConfigExt'.
5. 'AudioPortDeviceExtSys' and 'AudioPortMixExtSys' put into
'AudioPortExtSys' which is a system-only companion to 'AudioPortExt'.
Bug: 198812639
Test: atest audiofoundation_parcelable_test
Change-Id: I27306f7ce33b136860db6a9784d34960816987cd
17 files changed