Since someone asked, and I was still confused, after discussion, this
is the way things work.
Bug: 173817747
Test: N/A
Change-Id: I2c4e062672a2f2d998479d4f9ae11b7749c2aca6
Currently, if an IDevice object is a DEAD_OBJECT, the runtime attempts
to re-retrieve the handle to the rebooted IDevice service. If an update
occurs after the IDevice was originally created, the rebooted IDevice
object may have different metadata and behavior. This is problematic
because the original metadata is cached in the runtime. Further, an
application might have made decisions based on that metadata and
behavior. (Note that a driver service that is functionally the same but
has a different underlying implementation such as having more optimized
code will have different `getVersionString` metadata.) Instead, this CL
invalidates the IDevice object on cache mismatch, and always returns an
error if it is used.
Bug: 173081926
Test: mma
Change-Id: I805987361c627c32d45e1b7c7aed230376fc66ad
Merged-In: I805987361c627c32d45e1b7c7aed230376fc66ad
(cherry picked from commit 5a74c0fb0f)
This applies to the following types:
- audio_gain_mode_t;
- audio_flags_mask_t;
- audio_channel_representation_t;
- audio_channel_mask_t;
- audio_devices_t.
Enum types are distinct thus proper overloading on the type
is possible in C++. Also, assignments to enum types are
less prone to errors.
Bug: 169889714
Test: basic audio functionality
Change-Id: I07e96ae99724f38fe0b40194f4feab7ff68418e7
Merged-In: I07e96ae99724f38fe0b40194f4feab7ff68418e7
* changes:
Remove PREUPLOAD.cfg from audio HAL example
audio: Implement VTS tests for V7.0
audio: Add example HAL implementation
audio: Reformat README as Markdown
audio: HAL V7 tweaks
Check CAP_ON_CALLBACK flag when testing vibrator onWithCallback() and
OnCallbackNotSupported() functions.
Bug: 172485963
Change-Id: Ie5c926ec943f191d1e5309ac85e7c8e1540fb824
As suggested by the comment on ag/12691153
Bug: 142480271
Test: N/A
Change-Id: Ic9e2b986d3f9734dd884a2c88ca86d251147126b
Merged-In: Ic9e2b986d3f9734dd884a2c88ca86d251147126b
The major change in V7.0 is use of enum values defined
in the Audio Policy Configuration XSD schema. This allows
decoupling types used at the HIDL layer from system/audio.h.
Added a header audio_policy_configuration_V7_0-enums.h
with utility functions analogous to ones from system/audio.h
but defined for the types generated from XSD schema.
Since the code of VTS tests is shared between versions,
ensured that the VTS tests for the previous HAL versions
didn't regress.
Bug: 142480271
Test: atest VtsHalAudioV6_0TargetTest
atest VtsHalAudioEffectV6_0TargetTest
atest VtsHalAudioV7_0TargetTest
atest VtsHalAudioEffectV7_0TargetTest
Change-Id: Ia7c2d49a02783725080c8fed6a25853e91bba487
Merged-In: Ia7c2d49a02783725080c8fed6a25853e91bba487
This is partial implementation of the example V7.0 audio HAL
which passes VTS tests. Note that the 'core' part
of the HAL (IDevice/IStream) isn't implemented yet.
It passes VTS because it doesn't provide any devices
(modules) and the audio HAL isn't the 'default' instance.
Bug: 142480271
Test: atest VtsHalAudioV7_0TargetTest
atest VtsHalAudioEffectV7_0TargetTest
Change-Id: Ie3dd62c5db1cdb5534df4dd7f326c4c8776bf3c4
Merged-In: Ie3dd62c5db1cdb5534df4dd7f326c4c8776bf3c4
Rename README -> README.md, reformat it as Markdown.
Provide missing descriptions for some directories.
Bug: 142480271
Test: N/A
Change-Id: Ic6f60a21def4bf210a7e1446454d709f68a13422
Merged-In: Ic6f60a21def4bf210a7e1446454d709f68a13422
- rename AudioBasicConfig -> AudioConfigBase to better
match a similar structure in audio.h;
- define AudioProfile structure for defining an I/O profile;
- use AudioProfile to replace IStream.getSupported* methods
with a single IStream.getSupportedProfiles method;
- define AudioDevice type for convenience and clarity;
- move enums definition for AudioInputFlags and AudioOutputFlags
into XSD. This allows parsing APM config w/o depending on
the framework code.
Bug: 142480271
Test: m
Change-Id: I1951b2de383751fe53b96954dfd02cdd1ab6cc8f
Merged-In: I1951b2de383751fe53b96954dfd02cdd1ab6cc8f
The pdu session id needs to be passed to setup data call on handover
(clean cherry-pick)
Test: Tested that handover still worked with logs. IWlan -> Cell + Cell -> IWlan
Bug: 161572859
Merged-In: I0e11c8997674cdaad4bb82491d818ca85ee197d1
Change-Id: I0e11c8997674cdaad4bb82491d818ca85ee197d1
attestation params instead of making another function in attestation_utils.
Test: atest VtsHalIdentityTargetTest
Test: atest android.security.identity.cts
Change-Id: I67f5f584875a1baefc5a3d1a1fc46d605febbf33
Update channel mask and SR lists to conform to XSD.
Added a script for converting existing APM XML files.
Bug: 142480271
Test: m
Change-Id: I986b9bccdade5fa850b06b033143388715a656af
Merged-In: I986b9bccdade5fa850b06b033143388715a656af
Audio configuration as safe union is guarded to not violate its discriminator
usage. Only one member can be set.
Change-Id: I98a94d81ea5bacca2407286746432b972aac4488
Data queue pointer should be checked if it's nullptr if codec
configuration is invalid. This covers more code in case of invalid pcm
configuration.
Tag: #stability
Test: vts-tradefed run vts -m VtsHalBluetoothAudioV2_1TargetTest
Sponsor: jpawlowski@
Bug: 173353147
Change-Id: Ib78f1615e7a15603dc6d73188edf1df7eab12b8b
Data queue should be set to nullptr if pcm configuration is invalid.
Otherwise previously set queue would be cosidered during check.
Tag: #stability
Test: vts-tradefed run vts -m VtsHalBluetoothAudioV2_1TargetTest
Sponsor: jpawlowski@
Fixes: 173353147
Bug: 173353147
Change-Id: I10ee061e1c75f73410a9d0a0b1eaace0e536addd
Marking this annotation for use in hidl_test, so that we make sure to
exercise it.
Bug: 171501998
Test: hidl_test
Change-Id: Ia40e5fdf26804773c1450d181723cc7b97bf6a81
Clarify that configs with the same group should differ only
by refresh rate.
Test: n/a
Merged-In: I2b09689825fc9564665324ff18eb1907765b9016
Change-Id: I2b09689825fc9564665324ff18eb1907765b9016
The retry timer suggested by the network will persist
accross network requests. Also changed the retry timer
to a 64-bit value to be consistent with types used in
Android time APIs.
(clean cherry-pick)
Test: FrameworksTelephonytests
Fix: 159672248
Merged-In: I763afdf34378512c60c0838830cb84875b1c66f0
Change-Id: I763afdf34378512c60c0838830cb84875b1c66f0
- The docs said that IdentityCredential.createEphemeralKey() returned
data encoded PKCS#8 which is wrong. It's supposed to be in DER format
which is also what the VTS tests and credstore expects.
- Clarify that createEphemeralKeyPair(), setReaderEphemeralPublicKey(),
and createAuthChallenge() are all optional.
- Avoid passing an invalid profile ID in the IdentityCredentialTests.
verifyOneProfileAndEntryPass test.
- Update requirements for which tags must be present in the attestation
for CredentialKey as well as the requirements on expiration date and
the issuer name. Update default implementation to satisfy these
requirements. Update VTS tests to carefully verify these requrements
are met.
- Clarify requirements for X.509 cert for AuthenticationKey. Add VTS
test to verify.
- Mandate that TAG_IDENTITY_CREDENTIAL_KEY must not be set for test
credentials. Add VTS test to verify this.
- Make default implementation pretend to be implemented in a trusted
environment and streamline VTS tests to not special-case for the
default implementation.
- Switch to using the attestation extension parser from the KM 4.1
support library instead of the one from system/keymaster. The latter
one did not support the latest attestation extension and thus would
fail for pretty much anything that wasn't the default HAL impl.
- Fix a couple of bugs in keymaster::V4_1::parse_attestation_record():
- Report root_of_trust.security_level
- Add support for Tag::IDENTITY_CREDENTIAL_KEY
- Fix how EMacKey is calculated.
- Add test vectors to verify how EMacKey and DeviceMac is calculated.
Test: atest VtsHalIdentityTargetTest
Test: atest android.security.identity.cts
Bug: 171745570
Change-Id: I2f8bd772de078556733f769cec2021918d1d7de6
This CL implements the canonical IDevice, IPreparedModel, and IBuffer
interfaces for the 1.0, 1.1, 1.2, and 1.3 NN HIDL HAL interfaces.
Further, it introduces "Resilient" adapter interfaces to automatically
retrieve a handle to a recovered interface object after it has died and
rebooted.
This CL also updates the conversion code from returning nn::Result to
nn::GeneralResult, which includes a ErrorStatus code in the case of an
error.
Finally, this CL introduces a new static library
neuralnetworks_utils_hal_service which consists of a single function
::android::nn::hal::getDevices which can be used by the NNAPI runtime to
retrieve the HIDL services without knowing the underlying HIDL types.
Bug: 160668438
Test: mma
Test: NeuralNetworksTest_static
Change-Id: Iec6ae739df196b4034ffb35ea76781fd541ffec3
Merged-In: Iec6ae739df196b4034ffb35ea76781fd541ffec3
(cherry picked from commit 3670c385c4)