Add back GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST, which I had
accidentally removed while merging the AIDL and HIDL tests. I think
this is still needed on devices that don't support Weaver at all.
Bug: 291284381
Test: atest VtsHalWeaverTargetTest
Change-Id: Iac1b4476620e51c645e3ad57444ee386cb879029
* changes:
audio: Move StreamContext ownership out from StreamCommonImpl
audio: Use ChildInterface in StreamCommonImpl
audio: Update StreamAlsa and alsa utils for built-in devices
audio: Simplify and extend alsa::Mixer
* changes:
Don't overwrite in-use Weaver slots during VTS
Simplify Weaver VTS test
Remove redundant HIDL Weaver VTS test
Move VtsHalWeaverTargetTest to common directory
Make VtsHalWeaverTargetTest test both HIDL and AIDL services
Clarify the Weaver documentation
Update weaver AIDL default to use V2
Add WeaverReadStatus to WeaverReadResponse
Upcoming implementations of the streams of the primary module
will need to change the underlying stream type depending on
the current connected device. The stream context must persist,
thus its life time must be bound to the IStreamIn/Out implementation.
Move the StreamContext instance under ownership of StreamIn/Out.
Add StreamCommonImpl::onClose so that the owner of the context
may know when it is safe to reset it.
Re-arrange the order of the arguments when creating a stream
so that the context always comes first.
Bug: 264712385
Test: atest VtsHalAudioCoreTargetTest
Change-Id: Iaf13d4bc3a53cbfc27264d3abd1f6c417ece3941
Replace the pair of 'shared_ptr<>, Binder' with
the equivalent ChildInterface.
Fix logging of returned sub-objects to print their
Binder value instead of the local pointer.
Bug: 264712385
Test: m
Change-Id: I1350e7b3720c6244cd8527e1d021ee9577399291
Use new functions added to alsa proxy layer for opening
attached (built-in) devices.
Bug: 264712385
Test: atest VtsHalAudioCoreTargetTest
Change-Id: Ia2a47ff96fa62f99ce4ec4a0993ca3fd86f82c9d
Remove alsa::MixerControl. tinyALSA contains utility
functions for setting values in percents, they use
the same logic as used to be there for handling
the "volume" control. Use access serialization at
the mixer level, rather than for each control.
Move the call to 'mixer_open' to alsa::Mixer.
Add controls for capture (mic) mute and gain. They
will be used by the primary HAL.
Bug: 264712385
Test: atest VtsHalAudioCoreTargetTest
Change-Id: I0fad994153de96aceec3eb8f2fec19805ec912f8
These instances were previously added manually
on a device-by-device basis. Adding them explicitly
here now.
Bug: 290408770
Test: N/A
Change-Id: Ibc1470aae02d2b1172ea62efeb5af31224b80c45
VtsHalWeaverTargetTest always overwrote the first and last Weaver slots.
Before Android 14, apparently this didn't cause problems because Android
didn't use Weaver for users that never had an LSKF set. However, now
users get a Weaver slot right away. That typically means that the first
Weaver slot will be used by user 0.
Fix the test to read /metadata/password_slots/slot_map to determine
which slots are in use by the system, and only write to unused slots.
Bug: 291284381
Test: 'atest -v VtsHalWeaverTargetTest'. Checked for INFO messages
showing that slots 1 and 63 were used by the test. Then rebooted
and verified that the device can still be unlocked.
Change-Id: Id2cce4240d68999471e7d1e8fc7a8449587eed97
- Get the config in SetUp() so that it's easily available to test cases.
- Rename "weaver" class member to "weaver_" to match coding style.
- Eliminate unnecessary variables when checking WeaverReadResponse.
- Fix a typo.
Bug: 291284381
Test: 'atest VtsHalWeaverTargetTest' on bramble
Change-Id: Ia6dca996103057bfdc9002bc9ab2c039e2333ed9
Now that there is a single Weaver VTS test that covers both the HIDL and
AIDL services (weaver/vts/), the HIDL-specific test can be deleted.
Bug: 291284381
Test: 'atest VtsHalWeaverTargetTest' on bramble
Change-Id: Ie942825c154e6792e6ffdbf0c59248de9de10d92
Since VtsHalWeaverTargetTest now handles both AIDL and HIDL, move it
from weaver/aidl/vts/ to weaver/vts/.
Bug: 291284381
Test: 'atest VtsHalWeaverTargetTest' on bramble
Change-Id: Icfa0ff3b22b036110df327674fda44820057aabd
VtsHalWeaverTargetTest and VtsHalWeaverV1_0TargetTest are identical
except for whether they use AIDL or HIDL. Unfortunately, the HIDL test
is needed for several more years. For now, we have to make some
substantial fixes to both tests. To make continued maintenance of this
test easier, update VtsHalWeaverTargetTest to handle both AIDL and HIDL.
The test cases are still written in terms of the AIDL API, so it should
still be straightforward to remove HIDL support when the time comes.
Bug: 291284381
Test: 'atest VtsHalWeaverTargetTest' on bramble
Change-Id: I6b760930146ad1b08f17ef810a86c0058601c3bf
Weaver does not have a clear owner, but list the people who seem to be
most involved with it currently.
Bug: 291284381
Test: N/A
Change-Id: I69de46f8154bf91272a7197ce71c13c745a7208e
Specify that DICE-based RKP implementations may also allow a ROM
extension to manage the UDS public key.
Test: The words are semantically parseable
Change-Id: I8f9c6efb01fc76318220cf1bc4a0eb3a3ad42f87
In UML, the initial state is a solid circle, the final
state is a double circle. In the Core HAL diagrams it
was the opposite.
Test: dot -Tpng stream-{in|out}-[async-]sm.gv -o ...
Change-Id: Id69f17d0a47227e744eb6dadcb5fee08c07bb0bd
[Description]
If bt controller device is usb interface,
sco loopback single pkt and bandwidth test can not pass
because pkt size is limited accroding to core spec
[Root Cause]
USB sco packet size is limited in spec
[Solution]
If is bt usb chip, continuous receive sco packets
from controller until size is enough
[Test Report]
Test Pass
Bug: 286355871
Change-Id: Idb150d8a72149f7e1dfaccfd7bc82a91710da59c
Some devices may choose to use the lazy version of CAS HAL than the
regular one, but the default one is added to pretty much all devices in
the commit 4f5534b0d381a0968e81ee20e81b791aebe5493d in the
platform/build project. Adding the lazy version will duplicate the
implementation of CAS HAL.
This is what is done in the 1.2 HIDL implementation.
Bug: 291344726
Test: Only the lazy implementation is installed to devices that require
the lazy version.
Change-Id: I88ee8d2fa4c27720817e65e5c41ffc74d6b2d61f
None of these files are executable. The .rc and .xml files shouldn't be
installed to the device image as executables either.
Bug: None
Test: Files installed on the device aren't executables anymore.
Change-Id: Id15ecc7febb56ea108155fcbd338efeb8885709a
Also adjust some log level as verbos
Bug: 271500140
Test: atest --test-mapping hardware/interfaces/audio/aidl/vts:presubmit
Change-Id: I04560c62bdbcfb85dbe223bec0149b112205a323
Parse custom effect type uuid in audio_effects_config.xml, so OEM can
add effect types without changing code
Bug: 271500140
Test: atest --test-mapping hardware/interfaces/audio/aidl/vts:presubmit
Change-Id: I558958cc42c6c4a304e0ab1239ddefec9575a5af
When a vendor HAL reuses libaudioserviceexampleimpl,
a subclass of Module cannot change Configuration.
This change adds virtual method Module::initializeConfig(),
then a vendor HAL can override it to load custom Configuration.
Test: atest VtsHalAudioCoreTargetTest
Change-Id: I63fa8d70f3c4e13c8938070ee5431ebefd36bb58
This is a method which can be optionally implemented
by a stream in case it can provide more exact position,
for example by taking into account data in intermediate
buffers.
Implemented this method for StreamAlsa and StreamRemoteSubmix.
Bug: 264712385
Test: atest VtsHalAudioCoreTargetTest
Change-Id: I392933f8f6b22d784726925199db00dcb0313648
Make 'Module' more abstract by moving stream creation
methods to more concrete 'ModulePrimary' and 'ModuleStub'.
'ModulePrimary' is now closer to the CF primary module:
it was stripped off USB devices from its configuration,
these got moved to 'ModuleUsb', and got rid of BT A2DP
and LE interfaces, these will be on 'ModuleBluetooth'.
Note that 'ModulePrimary' still uses stub streams, this
will be changed in subsequent patches.
'ModuleStub' is what 'Module' used to be, just a module
for improving test coverage. It includes simulation of
offload streams and dummy BT objects.
Bug: 264712385
Test: atest VtsHalAudioCoreTargetTest
Change-Id: I5e4da0c32c00d65688f2eda78b2c79594e4e4671
Extract code interacting with tinyALSA which is not
specific to USB into "abstract" module and stream
implementations ModuleAlsa and StreamAlsa. Also, move
utility code which does not need module or stream
context into Utils.
This facilitates implementation of the CF core HAL which
also uses tinyALSA, allowing to share common code.
Bug: 264712385
Test: atest VtsHalAudioCoreTargetTest
Change-Id: I2134b15e970c78e8a48b254e15199b8207a8ab34