diff options
author | Daniel Norman <danielnorman@google.com> | 2021-02-08 11:11:07 -0800 |
---|---|---|
committer | Daniel Norman <danielnorman@google.com> | 2021-02-08 11:11:07 -0800 |
commit | 402b079abcd198a8703280b9529436b4d1208413 (patch) | |
tree | ebeed7d9e56a9f45c0981a29b17b7297d04338d7 /include | |
parent | ba39261beac51e2efa4b1f69b829c6f9aa1a9d31 (diff) | |
parent | faeef35de6fef98b6edf3b8bf2129cb6570de014 (diff) |
Merge SP1A.210208.001
Change-Id: Ic7b776415a05523fe22d28be8fd449b479d5e38b
Diffstat (limited to 'include')
-rw-r--r-- | include/hardware/audio.h | 74 | ||||
-rw-r--r-- | include/hardware/keymaster_defs.h | 3 |
2 files changed, 77 insertions, 0 deletions
diff --git a/include/hardware/audio.h b/include/hardware/audio.h index c2db50c1..adec3da8 100644 --- a/include/hardware/audio.h +++ b/include/hardware/audio.h @@ -459,6 +459,80 @@ struct audio_stream_out { */ void (*update_source_metadata_v7)(struct audio_stream_out *stream, const struct source_metadata_v7* source_metadata); + + /** + * Returns the Dual Mono mode presentation setting. + * + * \param[in] stream the stream object. + * \param[out] mode current setting of Dual Mono mode. + * + * \return 0 if the position is successfully returned. + * -EINVAL if the arguments are invalid + * -ENOSYS if the function is not available + */ + int (*get_dual_mono_mode)(struct audio_stream_out *stream, audio_dual_mono_mode_t *mode); + + /** + * Sets the Dual Mono mode presentation on the output device. + * + * \param[in] stream the stream object. + * \param[in] mode selected Dual Mono mode. + * + * \return 0 in case of success. + * -EINVAL if the arguments are invalid + * -ENOSYS if the function is not available + */ + int (*set_dual_mono_mode)(struct audio_stream_out *stream, const audio_dual_mono_mode_t mode); + + /** + * Returns the Audio Description Mix level in dB. + * + * \param[in] stream the stream object. + * \param[out] leveldB the current Audio Description Mix Level in dB. + * + * \return 0 in case of success. + * -EINVAL if the arguments are invalid + * -ENOSYS if the function is not available + */ + int (*get_audio_description_mix_level)(struct audio_stream_out *stream, float *leveldB); + + /** + * Sets the Audio Description Mix level in dB. + * + * \param[in] stream the stream object. + * \param[in] leveldB Audio Description Mix Level in dB. + * + * \return 0 in case of success. + * -EINVAL if the arguments are invalid + * -ENOSYS if the function is not available + */ + int (*set_audio_description_mix_level)(struct audio_stream_out *stream, const float leveldB); + + /** + * Retrieves current playback rate parameters. + * + * \param[in] stream the stream object. + * \param[out] playbackRate current playback parameters. + * + * \return 0 in case of success. + * -EINVAL if the arguments are invalid + * -ENOSYS if the function is not available + */ + int (*get_playback_rate_parameters)(struct audio_stream_out *stream, + audio_playback_rate_t *playbackRate); + + /** + * Sets the playback rate parameters that control playback behavior. + * + * \param[in] stream the stream object. + * \param[in] playbackRate playback parameters. + * + * \return 0 in case of success. + * -EINVAL if the arguments are invalid + * -ENOSYS if the function is not available + */ + int (*set_playback_rate_parameters)(struct audio_stream_out *stream, + const audio_playback_rate_t *playbackRate); }; typedef struct audio_stream_out audio_stream_out_t; diff --git a/include/hardware/keymaster_defs.h b/include/hardware/keymaster_defs.h index f2deb72a..a0a1c8e5 100644 --- a/include/hardware/keymaster_defs.h +++ b/include/hardware/keymaster_defs.h @@ -95,6 +95,8 @@ typedef enum { cryptographic operations with the key. */ KM_TAG_MAX_USES_PER_BOOT = KM_UINT | 404, /* Number of times the key can be used per boot. */ + KM_TAG_USAGE_COUNT_LIMIT = KM_UINT | 405, /* Number of cryptographic operations left + with the key.*/ /* User authentication */ KM_TAG_ALL_USERS = KM_BOOL | 500, /* Reserved for future use -- ignore */ @@ -330,6 +332,7 @@ typedef enum { KM_PURPOSE_VERIFY = 3, /* Usable with RSA, EC and HMAC keys. */ KM_PURPOSE_DERIVE_KEY = 4, /* Usable with EC keys. */ KM_PURPOSE_WRAP = 5, /* Usable with wrapped keys. */ + KM_PURPOSE_AGREE_KEY = 6, /* Usable with EC keys. */ } keymaster_purpose_t; |