blob: d876c6c4afdc2ff946a1c8cd469548c00b50c485 [file] [log] [blame]
/**
* Copyright 2019-2023 Google LLC
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
* \file aoc-interface.h
*
* Autogenerated AoC interface matching AoC source code
* associated with the following source code:
*
* hash: 369ba3d57af1d698f311a3a33f876930b6eb2b3b
*
* DO NOT MODIFY THIS FILE
*
*/
#ifndef AOC_INTERFACE_H_
#define AOC_INTERFACE_H_
#ifdef __KERNEL__
#include <linux/kernel.h>
#include <linux/atomic.h>
#else
#include <stdint.h>
#endif
/**
* System timer tick [hz]. All time counts will be based on tick running at this frequency.
*
* UUID: 9f35293fa3c259327efc47cd2d68f7af
*/
#define AOC_TIMER_FREQUENCY 4096000.0
/**
* List of supported commands.
*/
enum AOC_COMMAND {
CMD_RING_BIND_ID = 5, /* [0x0005] -> struct CMD_RING_BIND */
CMD_SYS_VERSION_GET_ID = 6, /* [0x0006] -> struct CMD_SYS_VERSION_GET */
CMD_SYS_BANNER_ID = 7, /* [0x0007] -> struct CMD_CORE_GENERIC */
CMD_SYS_STATS_TOT_ID = 8, /* [0x0008] -> struct CMD_SYS_STATS_TOT */
CMD_SYS_STATS_INFO_GET_ID = 9, /* [0x0009] -> struct CMD_SYS_STATS_INFO_GET */
CMD_SYS_STATS_TIMED_GET_ID = 10, /* [0x000a] -> struct CMD_SYS_STATS_TIMED_GET */
CMD_SYS_STATS_DATA_GET_ID = 11, /* [0x000b] -> struct CMD_SYS_STATS_DATA_GET */
CMD_SYS_STATS_ID = 12, /* [0x000c] -> struct CMD_CORE_GENERIC */
CMD_SYS_LOGIC_TRACE_ENABLE_ID = 13, /* [0x000d] -> struct CMD_ENABLE */
CMD_SYS_LOGIC_TRACE_SCHEME_SET_ID = 14, /* [0x000e] -> struct CMD_CORE_LOGIC_TRACE_SCHEME */
CMD_SYS_LOGIC_TRACE_SCHEME_GET_ID = 15, /* [0x000f] -> struct CMD_CORE_LOGIC_TRACE_SCHEME */
CMD_DBG_WATCHDOG_TRIGGER_ID = 16, /* [0x0010] -> struct CMD_CORE_GENERIC */
CMD_DBG_TREE_ID = 17, /* [0x0011] -> struct CMD_CORE_GENERIC */
CMD_DBG_INFO_ID = 18, /* [0x0012] -> struct CMD_DBG_INFO */
CMD_DBG_HEAP_ID = 19, /* [0x0013] -> struct CMD_DBG_HEAP */
CMD_DBG_LEVEL_GET_ID = 21, /* [0x0015] -> struct CMD_DBG_LEVEL_GET */
CMD_DBG_CONTROLLERS_ID = 22, /* [0x0016] -> struct CMD_CORE_GENERIC */
CMD_DBG_FILTERS_ID = 23, /* [0x0017] -> struct CMD_CORE_GENERIC */
CMD_DBG_PIPES_ID = 24, /* [0x0018] -> struct CMD_CORE_GENERIC */
CMD_DBG_POOLS_ID = 25, /* [0x0019] -> struct CMD_CORE_GENERIC */
CMD_DBG_RINGS_ID = 26, /* [0x001a] -> struct CMD_CORE_GENERIC */
CMD_DBG_IPCS_ID = 27, /* [0x001b] -> struct CMD_CORE_GENERIC */
CMD_DBG_FSM_ID = 28, /* [0x001c] -> struct CMD_CORE_GENERIC */
CMD_DBG_TASKS_ID = 29, /* [0x001d] -> struct CMD_CORE_GENERIC */
CMD_DBG_POWERMAN_ID = 30, /* [0x001e] -> struct CMD_DBG_POWERMAN */
CMD_DBG_TIMER_ID = 31, /* [0x001f] -> struct CMD_CORE_GENERIC */
CMD_DBG_LOG_ID = 32, /* [0x0020] -> struct CMD_DBG_LOG */
CMD_DBG_TIMESTAMP_ID = 33, /* [0x0021] -> struct CMD_ENABLE */
CMD_DBG_INTCNTRL_ID = 34, /* [0x0022] -> struct CMD_CORE_GENERIC */
CMD_DBG_IPC_SPACES_ID = 35, /* [0x0023] -> struct CMD_CORE_GENERIC */
CMD_DBG_IPC_CHANNELS_ID = 36, /* [0x0024] -> struct CMD_CORE_GENERIC */
CMD_DBG_MEM_SET_ID = 37, /* [0x0025] -> struct CMD_DBG_MEM_SET */
CMD_DBG_MEM_DUMP_ID = 38, /* [0x0026] -> struct CMD_DBG_MEM_DUMP */
CMD_DBG_MEM_INVAL_ACCESS_ID = 45, /* [0x002d] -> struct CMD_CORE_GENERIC */
CMD_DBG_MCPS_ID = 47, /* [0x002f] -> struct CMD_DBG_MCPS */
CMD_DBG_SCRIB_ID = 50, /* [0x0032] -> struct CMD_DBG_SCRIB */
CMD_DBG_PRIVATE_ID = 51, /* [0x0033] -> struct CMD_DBG_PRIVATE */
CMD_IPC_NOTIF_ENABLE_ID = 100, /* [0x0064] -> struct CMD_IPC_NOTIF_ENABLE */
CMD_AUDIO_OUTPUT_SINK_ID = 200, /* [0x00c8] -> struct CMD_AUDIO_OUTPUT_SINK */
CMD_DIAG_CORE_POWER_ID = 200, /* [0x00c8] -> struct CMD_DIAG_CORE_POWER */
CMD_AUDIO_OUTPUT_SOURCE_ID = 201, /* [0x00c9] -> struct CMD_AUDIO_OUTPUT_SOURCE */
CMD_DIAG_MONITOR_MODE_ID = 201, /* [0x00c9] -> struct CMD_DIAG_MONITOR_MODE */
CMD_AUDIO_OUTPUT_BIND_ID = 202, /* [0x00ca] -> struct CMD_AUDIO_OUTPUT_BIND */
CMD_UWB_GET_RESET_GPIO_ID = 202, /* [0x00ca] -> struct CMD_UWB_GET_RESET_GPIO */
CMD_AUDIO_INPUT_MIC_POWER_ON_ID = 203, /* [0x00cb] -> struct CMD_AUDIO_INPUT_MIC_POWER_ON */
CMD_AUDIO_OUTPUT_WAV_PLAYBACK_ID = 203, /* [0x00cb] -> struct CMD_AUDIO_OUTPUT_WAV_PLAYBACK */
CMD_UWB_SET_RESET_GPIO_ID = 203, /* [0x00cb] -> struct CMD_UWB_SET_RESET_GPIO */
CMD_AUDIO_INPUT_MIC_POWER_OFF_ID = 204, /* [0x00cc] -> struct CMD_AUDIO_INPUT_MIC_POWER_OFF */
CMD_AUDIO_OUTPUT_GAIN_ID = 204, /* [0x00cc] -> struct CMD_AUDIO_OUTPUT_GAIN */
CMD_UWB_GET_RESET_GPIO_DIRECTION_ID = 204, /* [0x00cc] -> struct CMD_UWB_GET_RESET_GPIO_DIRECTION */
CMD_AUDIO_INPUT_MIC_GET_POWER_STATE_ID = 205, /* [0x00cd] -> struct CMD_AUDIO_INPUT_MIC_GET_POWER_STATE */
CMD_AUDIO_OUTPUT_FX_EQ_ID = 205, /* [0x00cd] -> struct CMD_AUDIO_OUTPUT_FX_EQ */
CMD_UWB_SET_RESET_GPIO_DIRECTION_ID = 205, /* [0x00cd] -> struct CMD_UWB_SET_RESET_GPIO_DIRECTION */
CMD_AUDIO_INPUT_HOTWORD_ENABLE_AEC_ID = 206, /* [0x00ce] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_EP_SETUP_ID = 206, /* [0x00ce] -> struct CMD_AUDIO_OUTPUT_EP_SETUP */
CMD_GET_MEMORY_EXCEPTION_DATA_COUNT_ID = 206, /* [0x00ce] -> struct CMD_GET_MEMORY_EXCEPTION_DATA_COUNT */
CMD_AUDIO_INPUT_HOTWORD_DISABLE_AEC_ID = 207, /* [0x00cf] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_DECODE_ID = 207, /* [0x00cf] -> struct CMD_AUDIO_OUTPUT_DECODE */
CMD_GET_MEMORY_EXCEPTION_DATA_ID = 207, /* [0x00cf] -> struct CMD_GET_MEMORY_EXCEPTION_DATA */
CMD_AUDIO_OUTPUT_AEC_NOTIFY_ID = 208, /* [0x00d0] -> struct CMD_AUDIO_OUTPUT_AEC_NOTIFY */
CMD_AUDIO_INPUT_AP_INPUT_START_ID = 208, /* [0x00d0] -> struct CMD_AUDIO_INPUT_AP_INPUT_START */
CMD_GET_MEMORY_VOTES_DATA_COUNT_ID = 208, /* [0x00d0] -> struct CMD_GET_MEMORY_VOTES_DATA_COUNT */
CMD_AUDIO_OUTPUT_SET_PARAMETER_ID = 209, /* [0x00d1] -> struct CMD_AUDIO_OUTPUT_SET_PARAMETER */
CMD_AUDIO_INPUT_AP_INPUT_STOP_ID = 209, /* [0x00d1] -> struct CMD_HDR */
CMD_GET_MEMORY_VOTES_DATA_ID = 209, /* [0x00d1] -> struct CMD_GET_MEMORY_VOTES_DATA */
CMD_AUDIO_INPUT_MODEM_INPUT_START_ID = 210, /* [0x00d2] -> struct CMD_AUDIO_INPUT_MODEM_INPUT_START */
CMD_AUDIO_OUTPUT_SET_PARAMETER_BULK_ID = 210, /* [0x00d2] -> struct CMD_AUDIO_OUTPUT_SET_PARAMETER_BULK */
CMD_UDFPS_SET_CLOCK_SOURCE_ID = 210, /* [0x00d2] -> struct CMD_UDFPS_SET_CLOCK_SOURCE */
CMD_AUDIO_INPUT_MODEM_INPUT_STOP_ID = 211, /* [0x00d3] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_GET_PARAMETER_ID = 211, /* [0x00d3] -> struct CMD_AUDIO_OUTPUT_GET_PARAMETER */
CMD_UDFPS_GET_CLOCK_FREQUENCY_ID = 211, /* [0x00d3] -> struct CMD_UDFPS_GET_CLOCK_FREQUENCY */
CMD_AUDIO_OUTPUT_GET_PARAMETER_BULK_ID = 212, /* [0x00d4] -> struct CMD_AUDIO_OUTPUT_GET_PARAMETER_BULK */
CMD_MEM_MAP_REGION_ID = 212, /* [0x00d4] -> struct CMD_MEM_MAP_REGION */
CMD_AUDIO_OUTPUT_SET_GET_PARAM_BULK_ID = 213, /* [0x00d5] -> struct CMD_AUDIO_OUTPUT_SET_GET_PARAM_BULK */
CMD_AP_STATE_TRANSITION_ID = 213, /* [0x00d5] -> struct CMD_AP_STATE_TRANSITION */
CMD_AUDIO_INPUT_BT_CAPTURE_START_ID = 214, /* [0x00d6] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_GET_BLOCKS_ID = 214, /* [0x00d6] -> struct CMD_AUDIO_OUTPUT_GET_BLOCKS */
CMD_AUDIO_INPUT_BT_CAPTURE_STOP_ID = 215, /* [0x00d7] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_GET_MODULES_ID = 215, /* [0x00d7] -> struct CMD_AUDIO_OUTPUT_GET_MODULES */
CMD_AUDIO_INPUT_BT_DECODER_START_ID = 216, /* [0x00d8] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_RESYNC_AUDIO_SINK_ID = 216, /* [0x00d8] -> struct CMD_AUDIO_OUTPUT_RESYNC_AUDIO_SINK */
CMD_AUDIO_INPUT_BT_DECODER_STOP_ID = 217, /* [0x00d9] -> struct CMD_HDR */
CMD_AUDIO_INPUT_BT_DECODER_ENABLE_OUTPUT_ID = 218, /* [0x00da] -> struct CMD_AUDIO_INPUT_BT_ENABLE_OUTPUT */
CMD_AUDIO_INPUT_BT_DECODER_DISABLE_OUTPUT_ID = 219, /* [0x00db] -> struct CMD_AUDIO_INPUT_BT_DISABLE_OUTPUT */
CMD_AUDIO_INPUT_IN_CALL_SELECT_START_ID = 220, /* [0x00dc] -> struct CMD_HDR */
CMD_AUDIO_INPUT_IN_CALL_SELECT_STOP_ID = 221, /* [0x00dd] -> struct CMD_HDR */
CMD_AUDIO_INPUT_IN_CALL_SELECT_ENABLE_OUTPUT_ID = 222, /* [0x00de] -> struct CMD_AUDIO_INPUT_IN_CALL_SELECT_ENABLE_OUTPUT */
CMD_AUDIO_INPUT_IN_CALL_SELECT_DISABLE_OUTPUT_ID = 223, /* [0x00df] -> struct CMD_AUDIO_INPUT_IN_CALL_SELECT_DISABLE_OUTPUT */
CMD_AUDIO_INPUT_MIC_RECORD_AP_SET_PARAMS_ID = 224, /* [0x00e0] -> struct CMD_AUDIO_INPUT_MIC_RECORD_AP_SET_PARAMS */
CMD_AUDIO_OUTPUT_CFG_HAPTICS_ID = 224, /* [0x00e0] -> struct CMD_AUDIO_OUTPUT_CFG_HAPTICS */
CMD_AUDIO_INPUT_MIC_RECORD_AP_START_ID = 225, /* [0x00e1] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_CFG_SIGGEN_ID = 225, /* [0x00e1] -> struct CMD_AUDIO_OUTPUT_CFG_SIGGEN */
CMD_AUDIO_INPUT_MIC_RECORD_AP_STOP_ID = 226, /* [0x00e2] -> struct CMD_HDR */
CMD_AUDIO_INPUT_HOTWORD_START_ID = 227, /* [0x00e3] -> struct CMD_HDR */
CMD_AUDIO_INPUT_HOTWORD_STOP_ID = 228, /* [0x00e4] -> struct CMD_HDR */
CMD_USB_CONTROL_GET_XHCI_VERSION_ID = 228, /* [0x00e4] -> struct CMD_USB_CONTROL_GET_XHCI_VERSION */
CMD_AUDIO_INPUT_MIC_LOOPBACK_START_ID = 229, /* [0x00e5] -> struct CMD_AUDIO_INPUT_ENABLE_MIC_LOOPBACK */
CMD_AUDIO_INPUT_MIC_LOOPBACK_STOP_ID = 230, /* [0x00e6] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_GET_EP_CUR_SAMPLES_ID = 230, /* [0x00e6] -> struct CMD_AUDIO_OUTPUT_GET_EP_SAMPLES */
CMD_AUDIO_OUTPUT_GET_EP_TOT_SAMPLES_ID = 231, /* [0x00e7] -> struct CMD_AUDIO_OUTPUT_GET_EP_SAMPLES */
CMD_AUDIO_INPUT_SPATIAL_START_ID = 231, /* [0x00e7] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_DECODE_FLUSH_RB_ID = 232, /* [0x00e8] -> struct CMD_HDR */
CMD_AUDIO_INPUT_SPATIAL_STOP_ID = 232, /* [0x00e8] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_GET_DSP_STATE_ID = 233, /* [0x00e9] -> struct CMD_AUDIO_OUTPUT_GET_DSP_STATE */
CMD_AUDIO_INPUT_SET_PARAMETER_ID = 233, /* [0x00e9] -> struct CMD_AUDIO_INPUT_SET_PARAMETER */
CMD_AUDIO_OUTPUT_GET_SINK_PROCESSING_STATE_ID = 234, /* [0x00ea] -> struct CMD_AUDIO_OUTPUT_GET_SINK_PROCESSING_STATE */
CMD_AUDIO_INPUT_SET_PARAMETER_BULK_ID = 234, /* [0x00ea] -> struct CMD_AUDIO_INPUT_SET_PARAMETER_BULK */
CMD_USB_CONTROL_SETUP_ID = 235, /* [0x00eb] -> struct CMD_USB_CONTROL_SETUP */
CMD_AUDIO_INPUT_GET_PARAMETER_ID = 235, /* [0x00eb] -> struct CMD_AUDIO_INPUT_GET_PARAMETER */
CMD_USB_CONTROL_STATUS_GET_ID = 236, /* [0x00ec] -> struct CMD_USB_CONTROL_STATUS_GET */
CMD_AUDIO_INPUT_GET_PARAMETER_BULK_ID = 236, /* [0x00ec] -> struct CMD_AUDIO_INPUT_GET_PARAMETER_BULK */
CMD_AUDIO_INPUT_SET_GET_PARAM_BULK_ID = 237, /* [0x00ed] -> struct CMD_AUDIO_INPUT_SET_GET_PARAM_BULK */
CMD_USB_CONTROL_GET_DEVICE_CONTEXT_ID = 238, /* [0x00ee] -> struct CMD_USB_CONTROL_GET_DEVICE_CONTEXT */
CMD_AUDIO_INPUT_GET_BLOCKS_ID = 238, /* [0x00ee] -> struct CMD_AUDIO_INPUT_GET_BLOCKS */
CMD_USB_CONTROL_GET_TR_DEQ_PTR_ID = 239, /* [0x00ef] -> struct CMD_USB_CONTROL_GET_TR_DEQ_PTR */
CMD_AUDIO_INPUT_GET_MODULES_ID = 239, /* [0x00ef] -> struct CMD_AUDIO_INPUT_GET_MODULES */
CMD_USB_CONTROL_NOTIFY_CONN_STAT_ID = 240, /* [0x00f0] -> struct CMD_USB_CONTROL_NOTIFY_CONN_STAT */
CMD_AUDIO_INPUT_HOTWORD_TEST_TRIGGER_ID = 240, /* [0x00f0] -> struct CMD_HDR */
CMD_AUDIO_INPUT_HOTWORD_DETECTED_ID = 241, /* [0x00f1] -> struct CMD_AUDIO_INPUT_AMBIENT_MUSIC_DETECTED */
CMD_AUDIO_OUTPUT_FACTORY_TEST_ID = 241, /* [0x00f1] -> struct CMD_AUDIO_OUTPUT_FACTORY_TEST */
CMD_AUDIO_OUTPUT_BT_A2DP_ENC_CFG_ID = 242, /* [0x00f2] -> struct CMD_AUDIO_OUTPUT_BT_A2DP_ENC_CFG */
CMD_USB_CONTROL_GET_DCBAA_PTR_ID = 243, /* [0x00f3] -> struct CMD_USB_CONTROL_GET_DCBAA_PTR */
CMD_USB_CONTROL_GET_ISOC_TR_INFO_ID = 244, /* [0x00f4] -> struct CMD_USB_CONTROL_GET_ISOC_TR_INFO */
CMD_AUDIO_OUTPUT_GET_SINKS_BITMAPS_ID = 245, /* [0x00f5] -> struct CMD_AUDIO_OUTPUT_GET_SINKS_BITMAPS */
CMD_AUDIO_INPUT_GET_MIC_STATUS_ID = 246, /* [0x00f6] -> struct CMD_AUDIO_INPUT_GET_MIC_STATUS */
CMD_AUDIO_OUTPUT_USB_CONFIG_ID = 246, /* [0x00f6] -> struct CMD_AUDIO_OUTPUT_USB_CONFIG */
CMD_AUDIO_INPUT_GET_MIC_CLOCK_FREQUENCY_ID = 247, /* [0x00f7] -> struct CMD_AUDIO_INPUT_GET_MIC_CLOCK_FREQUENCY */
CMD_AUDIO_OUTPUT_SET_SIDETONE_ID = 247, /* [0x00f7] -> struct CMD_AUDIO_OUTPUT_SET_SIDETONE */
CMD_AUDIO_INPUT_GET_MIC_LOW_POWER_HW_GAIN_ID = 248, /* [0x00f8] -> struct CMD_AUDIO_INPUT_GET_MIC_LOW_POWER_HW_GAIN */
CMD_AUDIO_OUTPUT_GET_SIDETONE_ID = 248, /* [0x00f8] -> struct CMD_AUDIO_OUTPUT_GET_SIDETONE */
CMD_AUDIO_INPUT_GET_MIC_HIGH_POWER_HW_GAIN_ID = 249, /* [0x00f9] -> struct CMD_AUDIO_INPUT_GET_MIC_HIGH_POWER_HW_GAIN */
CMD_AUDIO_OUTPUT_SET_SIDETONE_EQ_ID = 249, /* [0x00f9] -> struct CMD_AUDIO_OUTPUT_SET_SIDETONE_EQ */
CMD_AUDIO_INPUT_GET_MIC_CURRENT_HW_GAIN_ID = 250, /* [0x00fa] -> struct CMD_AUDIO_INPUT_GET_MIC_CURRENT_HW_GAIN */
CMD_AUDIO_OUTPUT_GET_SIDETONE_EQ_ID = 250, /* [0x00fa] -> struct CMD_AUDIO_OUTPUT_GET_SIDETONE_EQ */
CMD_AUDIO_INPUT_GET_MIC_DC_BLOCKER_ID = 251, /* [0x00fb] -> struct CMD_AUDIO_INPUT_GET_MIC_DC_BLOCKER */
CMD_AUDIO_OUTPUT_SET_TELE_CAPTURE_ID = 251, /* [0x00fb] -> struct CMD_AUDIO_OUTPUT_TELE_CAPTURE */
CMD_AUDIO_INPUT_SET_MIC_DC_BLOCKER_ID = 252, /* [0x00fc] -> struct CMD_AUDIO_INPUT_SET_MIC_DC_BLOCKER */
CMD_AUDIO_OUTPUT_GET_TELE_CAPTURE_ID = 252, /* [0x00fc] -> struct CMD_AUDIO_OUTPUT_TELE_CAPTURE */
CMD_AUDIO_INPUT_SET_MIC_LOW_POWER_HW_GAIN_ID = 253, /* [0x00fd] -> struct CMD_AUDIO_INPUT_SET_MIC_LOW_POWER_HW_GAIN */
CMD_AUDIO_OUTPUT_DECODER_CFG_ID = 253, /* [0x00fd] -> struct CMD_AUDIO_OUTPUT_DECODER_CFG */
CMD_AUDIO_INPUT_SET_MIC_HIGH_POWER_HW_GAIN_ID = 254, /* [0x00fe] -> struct CMD_AUDIO_INPUT_SET_MIC_HIGH_POWER_HW_GAIN */
CMD_AUDIO_OUTPUT_SET_TELE_CAPT_ID = 254, /* [0x00fe] -> struct CMD_AUDIO_OUTPUT_TELE_CAPT */
CMD_AUDIO_OUTPUT_GET_TELE_CAPT_ID = 255, /* [0x00ff] -> struct CMD_AUDIO_OUTPUT_TELE_CAPT */
CMD_AUDIO_INPUT_AMBIENT_MUSIC_START_ID = 256, /* [0x0100] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_TELEPHONY_MODEM_START_ID = 256, /* [0x0100] -> struct CMD_HDR */
CMD_AUDIO_INPUT_AMBIENT_MUSIC_STOP_ID = 257, /* [0x0101] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_TELEPHONY_MODEM_STOP_ID = 257, /* [0x0101] -> struct CMD_HDR */
CMD_AUDIO_INPUT_AMBIENT_MUSIC_TEST_TRIGGER_ID = 258, /* [0x0102] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_TELEPHONY_VOIP_START_ID = 258, /* [0x0102] -> struct CMD_HDR */
CMD_AUDIO_INPUT_AMBIENT_MUSIC_DETECTED_ID = 259, /* [0x0103] -> struct CMD_AUDIO_INPUT_AMBIENT_MUSIC_DETECTED */
CMD_AUDIO_OUTPUT_TELEPHONY_VOIP_STOP_ID = 259, /* [0x0103] -> struct CMD_HDR */
CMD_AUDIO_INPUT_HOTWORD_WRITE_MODEL_ID = 260, /* [0x0104] -> struct CMD_AUDIO_INPUT_HOTWORD_WRITE_MODEL */
CMD_AUDIO_OUTPUT_SPKR_ANDROID_AEC_START_ID = 260, /* [0x0104] -> struct CMD_HDR */
CMD_AUDIO_INPUT_HOTWORD_LOAD_MODEL_ID = 261, /* [0x0105] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_SPKR_ANDROID_AEC_STOP_ID = 261, /* [0x0105] -> struct CMD_HDR */
CMD_AUDIO_INPUT_HOTWORD_UNLOAD_MODEL_ID = 262, /* [0x0106] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_USB_HIFI_PLAYBACK_START_ID = 262, /* [0x0106] -> struct CMD_HDR */
CMD_AUDIO_INPUT_AMBIENT_MUSIC_WRITE_MODEL_ID = 263, /* [0x0107] -> struct CMD_AUDIO_INPUT_AMBIENT_MUSIC_WRITE_MODEL */
CMD_AUDIO_OUTPUT_USB_HIFI_PLAYBACK_STOP_ID = 263, /* [0x0107] -> struct CMD_HDR */
CMD_AUDIO_INPUT_AMBIENT_MUSIC_LOAD_MODEL_ID = 264, /* [0x0108] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_DEC_CH_GAIN_SET_ID = 264, /* [0x0108] -> struct CMD_AUDIO_OUTPUT_DEC_CH_GAIN */
CMD_AUDIO_INPUT_AMBIENT_MUSIC_UNLOAD_MODEL_ID = 265, /* [0x0109] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_DEC_CH_GAIN_GET_ID = 265, /* [0x0109] -> struct CMD_AUDIO_OUTPUT_DEC_CH_GAIN */
CMD_AUDIO_INPUT_GET_AP_MIC_INDEX_ID = 266, /* [0x010a] -> struct CMD_AUDIO_INPUT_GET_AP_MIC_INDEX */
CMD_AUDIO_OUTPUT_SET_INCALL_MUSIC_ID = 266, /* [0x010a] -> struct CMD_AUDIO_OUTPUT_INCALL_MUSIC */
CMD_AUDIO_INPUT_HOTWORD_FORCE_TRIGGER_TIMESTAMP_ID = 267, /* [0x010b] -> struct CMD_AUDIO_INPUT_HOTWORD_FORCE_TRIGGER_TIMESTAMP */
CMD_AUDIO_OUTPUT_SET_INCALL_MUSIC_CHAN_ID = 267, /* [0x010b] -> struct CMD_AUDIO_OUTPUT_INCALL_MUSIC_CHAN */
CMD_AUDIO_INPUT_HOTWORD_FORCE_TRIGGER_ID = 268, /* [0x010c] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_GET_INCALL_MUSIC_ID = 268, /* [0x010c] -> struct CMD_AUDIO_OUTPUT_INCALL_MUSIC */
CMD_AUDIO_INPUT_AMBIENT_MUSIC_FORCE_TRIGGER_ID = 269, /* [0x010d] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_GET_INCALL_MUSIC_CHAN_ID = 269, /* [0x010d] -> struct CMD_AUDIO_OUTPUT_INCALL_MUSIC_CHAN */
CMD_AUDIO_INPUT_HOTWORD_SRC_GET_SAMPLE_RATE_ID = 270, /* [0x010e] -> struct CMD_AUDIO_INPUT_HOTWORD_SRC_GET_SAMPLE_RATE */
CMD_AUDIO_OUTPUT_SINK2_ID = 270, /* [0x010e] -> struct CMD_AUDIO_OUTPUT_SINK2 */
CMD_AUDIO_INPUT_HOTWORD_SRC_GET_BIT_DEPTH_ID = 271, /* [0x010f] -> struct CMD_AUDIO_INPUT_HOTWORD_SRC_GET_BIT_DEPTH */
CMD_AUDIO_OUTPUT_BIND2_ID = 271, /* [0x010f] -> struct CMD_AUDIO_OUTPUT_BIND */
CMD_AUDIO_INPUT_HOTWORD_SRC_GET_CHANNEL_ID = 272, /* [0x0110] -> struct CMD_AUDIO_INPUT_HOTWORD_SRC_GET_CHANNEL */
CMD_USB_CONTROL_SET_DCBAA_PTR_ID = 272, /* [0x0110] -> struct CMD_USB_CONTROL_SET_DCBAA_PTR */
CMD_AUDIO_INPUT_HOTWORD_SRC_GET_INPUT_PATH_ID = 273, /* [0x0111] -> struct CMD_AUDIO_INPUT_HOTWORD_SRC_GET_INPUT_PATH */
CMD_USB_CONTROL_SET_ISOC_TR_INFO_ID = 273, /* [0x0111] -> struct CMD_USB_CONTROL_SET_ISOC_TR_INFO */
CMD_AUDIO_INPUT_HOTWORD_GET_ERASER_PRE_GAIN_ID = 274, /* [0x0112] -> struct CMD_AUDIO_INPUT_HOTWORD_GET_ERASER_PRE_GAIN */
CMD_AUDIO_OUTPUT_USB_CONFIG_V2_ID = 274, /* [0x0112] -> struct CMD_AUDIO_OUTPUT_USB_CONFIG_V2 */
CMD_AUDIO_INPUT_HOTWORD_SET_ERASER_PRE_GAIN_ID = 275, /* [0x0113] -> struct CMD_AUDIO_INPUT_HOTWORD_SET_ERASER_PRE_GAIN */
CMD_USB_CONTROL_NOTIFY_CONN_STAT_V2_ID = 275, /* [0x0113] -> struct CMD_USB_CONTROL_NOTIFY_CONN_STAT_V2 */
CMD_AUDIO_INPUT_HOTWORD_GET_ERASER_POST_GAIN_ID = 276, /* [0x0114] -> struct CMD_AUDIO_INPUT_HOTWORD_GET_ERASER_POST_GAIN */
CMD_AUDIO_INPUT_HOTWORD_SET_ERASER_POST_GAIN_ID = 277, /* [0x0115] -> struct CMD_AUDIO_INPUT_HOTWORD_SET_ERASER_POST_GAIN */
CMD_AUDIO_OUTPUT_DSP_MODE_SET_ID = 277, /* [0x0115] -> struct CMD_AUDIO_OUTPUT_DSP_MODE */
CMD_AUDIO_INPUT_HOTWORD_GET_NON_ERASER_GAIN_ID = 278, /* [0x0116] -> struct CMD_AUDIO_INPUT_HOTWORD_GET_NON_ERASER_GAIN */
CMD_AUDIO_OUTPUT_DSP_MODE_GET_ID = 278, /* [0x0116] -> struct CMD_AUDIO_OUTPUT_DSP_MODE */
CMD_AUDIO_INPUT_HOTWORD_SET_NON_ERASER_GAIN_ID = 279, /* [0x0117] -> struct CMD_AUDIO_INPUT_HOTWORD_SET_NON_ERASER_GAIN */
CMD_AUDIO_OUTPUT_DEC_RESET_CURRENT_GAIN_ID = 279, /* [0x0117] -> struct CMD_HDR */
CMD_AUDIO_INPUT_SET_INCALL_MUSIC_ID = 280, /* [0x0118] -> struct CMD_AUDIO_INPUT_INCALL_MUSIC */
CMD_USB_CONTROL_SET_OFFLOAD_STATE_ID = 280, /* [0x0118] -> struct CMD_USB_CONTROL_SET_OFFLOAD_STATE */
CMD_AUDIO_INPUT_GET_INCALL_MUSIC_ID = 281, /* [0x0119] -> struct CMD_AUDIO_INPUT_INCALL_MUSIC */
CMD_AUDIO_OUTPUT_VOICE_CCA_START_ID = 281, /* [0x0119] -> struct CMD_HDR */
CMD_AUDIO_INPUT_GET_DSP_IDENTIFIER_ID = 282, /* [0x011a] -> struct CMD_AUDIO_INPUT_DSP_IDENTIFIER */
CMD_AUDIO_OUTPUT_VOICE_CCA_STOP_ID = 282, /* [0x011a] -> struct CMD_HDR */
CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_START_ID = 283, /* [0x011b] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_DECODER_CFG_GAPLESS_ID = 283, /* [0x011b] -> struct CMD_AUDIO_OUTPUT_DECODER_CFG */
CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_STOP_ID = 284, /* [0x011c] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_DECODER_GAPLESS_METADATA_ID = 284, /* [0x011c] -> struct CMD_AUDIO_OUTPUT_DECODER_GAPLESS_METADATA */
CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_TEST_TRIGGER_ID = 285, /* [0x011d] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_DECODER_GAPLESS_PARTIAL_DRAIN_ID = 285, /* [0x011d] -> struct CMD_HDR */
CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_DETECTED_ID = 286, /* [0x011e] -> struct CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_DETECTED */
CMD_AUDIO_OUTPUT_DECODER_GAPLESS_DEINIT_ID = 286, /* [0x011e] -> struct CMD_HDR */
CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_WRITE_MODEL_ID = 287, /* [0x011f] -> struct CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_WRITE_MODEL */
CMD_USB_CONTROL_SEND_FEEDBACK_EP_INFO_ID = 287, /* [0x011f] -> struct CMD_USB_CONTROL_SEND_FEEDBACK_EP_INFO */
CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_LOAD_MODEL_ID = 288, /* [0x0120] -> struct CMD_HDR */
CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_UNLOAD_MODEL_ID = 289, /* [0x0121] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_TELEPHONY_RTP_START_ID = 289, /* [0x0121] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_TELEPHONY_RTP_STOP_ID = 290, /* [0x0122] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_VOICE_ENABLE_CCA_ON_VOIP_ID = 291, /* [0x0123] -> struct CMD_HDR */
CMD_AUDIO_INPUT_MIC_RECORD_AP_START_PREPARE_ID = 292, /* [0x0124] -> struct CMD_HDR */
CMD_AUDIO_OUTPUT_VOICE_DISABLE_CCA_ON_VOIP_ID = 292, /* [0x0124] -> struct CMD_HDR */
CMD_AUDIO_INPUT_MIC_RECORD_AP_START_DATA_ID = 293, /* [0x0125] -> struct CMD_HDR */
CMD_AUDIO_INPUT_MIC_MMAP_ENABLE_ID = 294, /* [0x0126] -> struct CMD_AUDIO_INPUT_AP_INPUT_START */
CMD_AUDIO_INPUT_MIC_MMAP_DISABLE_ID = 295, /* [0x0127] -> struct CMD_HDR */
CMD_AUDIO_INPUT_GET_CHRE_GAIN_ID = 296, /* [0x0128] -> struct CMD_AUDIO_INPUT_GET_CHRE_GAIN */
CMD_AUDIO_INPUT_SET_CHRE_GAIN_ID = 297, /* [0x0129] -> struct CMD_AUDIO_INPUT_SET_CHRE_GAIN */
CMD_AUDIO_INPUT_HOTWORD_GET_CLEANER_POST_GAIN_ID = 298, /* [0x012a] -> struct CMD_AUDIO_INPUT_HOTWORD_GET_CLEANER_POST_GAIN */
CMD_AUDIO_INPUT_HOTWORD_SET_CLEANER_POST_GAIN_ID = 299, /* [0x012b] -> struct CMD_AUDIO_INPUT_HOTWORD_SET_CLEANER_POST_GAIN */
CMD_AUDIO_INPUT_WNR_START_ID = 301, /* [0x012d] -> struct CMD_HDR */
CMD_AUDIO_INPUT_WNR_STOP_ID = 302, /* [0x012e] -> struct CMD_HDR */
CMD_AUDIO_INPUT_SPATIAL_CAPTURE_START_ID = 303, /* [0x012f] -> struct CMD_HDR */
CMD_AUDIO_INPUT_SPATIAL_CAPTURE_STOP_ID = 304, /* [0x0130] -> struct CMD_HDR */
CMD_AUDIO_INPUT_MIC_RAW_ENABLE_ID = 305, /* [0x0131] -> struct CMD_AUDIO_INPUT_AP_INPUT_START */
CMD_AUDIO_INPUT_MIC_RAW_DISABLE_ID = 306, /* [0x0132] -> struct CMD_HDR */
CMD_AUDIO_INPUT_USB_HIFI_CAPTURE_START_ID = 307, /* [0x0133] -> struct CMD_HDR */
CMD_AUDIO_INPUT_USB_HIFI_CAPTURE_STOP_ID = 308, /* [0x0134] -> struct CMD_HDR */
CMD_AUDIO_INPUT_SET_INCALL_MUSIC_CHAN_ID = 309, /* [0x0135] -> struct CMD_AUDIO_INPUT_INCALL_MUSIC_CHAN */
CMD_AUDIO_INPUT_GET_INCALL_MUSIC_CHAN_ID = 310, /* [0x0136] -> struct CMD_AUDIO_INPUT_INCALL_MUSIC_CHAN */
CMD_AUDIO_INPUT_MMAP_ENABLE_2_ID = 313, /* [0x0139] -> struct CMD_AUDIO_INPUT_MMAP_ENABLE_2 */
CMD_AUDIO_INPUT_RAW_ENABLE_2_ID = 314, /* [0x013a] -> struct CMD_AUDIO_INPUT_RAW_ENABLE_2 */
CMD_AUDIO_INPUT_SET_AP_MIC_INDEX_ID = 319, /* [0x013f] -> struct CMD_AUDIO_INPUT_GET_AP_MIC_INDEX */
CMD_AUDIO_INPUT_DIRECT_ULTRASONIC_CAPTURE_ENABLE_ID = 320, /* [0x0140] -> struct CMD_HDR */
CMD_AUDIO_INPUT_DIRECT_ULTRASONIC_CAPTURE_DISABLE_ID = 321, /* [0x0141] -> struct CMD_HDR */
CMD_AUDIO_INPUT_MIC_RECORD_AP_ENABLE_AEC_ID = 322, /* [0x0142] -> struct CMD_HDR */
CMD_AUDIO_INPUT_MIC_RECORD_AP_DISABLE_AEC_ID = 323, /* [0x0143] -> struct CMD_HDR */
CMD_AUDIO_INPUT_MODEM_INPUT_START_2_ID = 324, /* [0x0144] -> struct CMD_AUDIO_INPUT_MODEM_INPUT_START_2 */
CMD_AUDIO_INPUT_HOTWORD_SELECT_AEC_REF_ID = 325, /* [0x0145] -> struct CMD_AUDIO_INPUT_FEEDBACK_SRC_SELECT_REF */
CMD_AUDIO_INPUT_ULTRASONIC_CAPTURE_START_ID = 326, /* [0x0146] -> struct CMD_HDR */
CMD_AUDIO_INPUT_ULTRASONIC_CAPTURE_STOP_ID = 327, /* [0x0147] -> struct CMD_HDR */
CMD_AUDIO_INPUT_ULTRASONIC_AP_SET_PARAMS_ID = 328, /* [0x0148] -> struct CMD_AUDIO_INPUT_MIC_RECORD_AP_SET_PARAMS */
CMD_AUDIO_INPUT_ULTRASONIC_AP_START_ID = 329, /* [0x0149] -> struct CMD_HDR */
CMD_AUDIO_INPUT_MEDIA_COMMANDS_START_ID = 330, /* [0x014a] -> struct CMD_HDR */
CMD_AUDIO_INPUT_MEDIA_COMMANDS_STOP_ID = 331, /* [0x014b] -> struct CMD_HDR */
CMD_AUDIO_INPUT_MEDIA_COMMANDS_TEST_TRIGGER_ID = 332, /* [0x014c] -> struct CMD_AUDIO_INPUT_AMBIENT_MUSIC_DETECTED */
CMD_AUDIO_INPUT_MEDIA_COMMANDS_DETECTED_ID = 333, /* [0x014d] -> struct CMD_AUDIO_INPUT_AMBIENT_MUSIC_DETECTED */
CMD_AUDIO_INPUT_MEDIA_COMMANDS_WRITE_MODEL_ID = 334, /* [0x014e] -> struct CMD_AUDIO_INPUT_MEDIA_COMMANDS_WRITE_MODEL */
CMD_AUDIO_INPUT_MEDIA_COMMANDS_LOAD_MODEL_ID = 335, /* [0x014f] -> struct CMD_HDR */
CMD_AUDIO_INPUT_MEDIA_COMMANDS_UNLOAD_MODEL_ID = 336, /* [0x0150] -> struct CMD_HDR */
CMD_AUDIO_INPUT_HOTWORD_SET_AP_OFFLOAD_ID = 339, /* [0x0153] -> struct CMD_AUDIO_INPUT_HOTWORD_SET_AP_OFFLOAD */
CMD_AUDIO_INPUT_CAPTURE_INJECTION_START_ID = 340, /* [0x0154] -> struct CMD_HDR */
CMD_AUDIO_INPUT_CAPTURE_INJECTION_STOP_ID = 341, /* [0x0155] -> struct CMD_HDR */
CMD_AUDIO_INPUT_HOTWORD_ENABLE_PRIMARY_MIC_SWAP_ID = 342, /* [0x0156] -> struct CMD_HDR */
CMD_AUDIO_INPUT_HOTWORD_DISABLE_PRIMARY_MIC_SWAP_ID = 343, /* [0x0157] -> struct CMD_HDR */
CMD_AUDIO_INPUT_SET_CHRE_SRC_AEC_TIMEOUT_ID = 345, /* [0x0159] -> struct CMD_AUDIO_INPUT_SET_CHRE_SRC_AEC_TIMEOUT */
CMD_AUDIO_INPUT_SET_CHRE_SRC_PDM_GAIN_ID = 346, /* [0x015a] -> struct CMD_AUDIO_INPUT_SET_CHRE_SRC_PDM_GAIN */
CMD_AUDIO_INPUT_SET_CHRE_SRC_AEC_GAIN_ID = 347, /* [0x015b] -> struct CMD_AUDIO_INPUT_SET_CHRE_SRC_AEC_GAIN */
CMD_AUDIO_INPUT_HOTWORD_ENABLE_NEURAL_AEC_ID = 350, /* [0x015e] -> struct CMD_HDR */
CMD_AUDIO_INPUT_HOTWORD_DISABLE_NEURAL_AEC_ID = 351, /* [0x015f] -> struct CMD_HDR */
CMD_AUDIO_INPUT_HOTWORD_ENABLE_HOTWORD_TAP_ID = 352, /* [0x0160] -> struct CMD_HDR */
CMD_AUDIO_INPUT_HOTWORD_DISABLE_HOTWORD_TAP_ID = 353, /* [0x0161] -> struct CMD_HDR */
};
/**
* List of available notifications.
*/
enum AOC_NOTIFICATION {
NOTIF_AUDIO_INPUT_AP_MIC_RECORD_DATA_AVAILABLE_ID = 11, /* [0x000b] -> struct NOTIF */
};
enum DATA_TYPE {
DATA_TYPE_CMD = 0,
DATA_TYPE_NOTIF,
DATA_TYPE_SIGNAL,
DATA_TYPE_MSG,
DATA_TYPE_CMD_NO_ACK,
};
struct CONTAINER_HDR {
uint8_t type; /* For valid values, refer to "enum DATA_TYPE" */
uint8_t cntr;
uint16_t len;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_HOTWORD_ENABLE_AEC_ID, UUID: 20a78f1f7636fd03af70078236b4d271
* CMD_AUDIO_INPUT_HOTWORD_DISABLE_AEC_ID, UUID: 8ef204a3efe8efb0ddc50bc49bf1fe06
* CMD_AUDIO_INPUT_AP_INPUT_STOP_ID, UUID: 0a8194454e7909aac5003be176e82091
* CMD_AUDIO_INPUT_MODEM_INPUT_STOP_ID, UUID: 1c8e98ae6fd85847b28400bec1355910
* CMD_AUDIO_INPUT_BT_CAPTURE_START_ID, UUID: 0a8469b5b96b5ccbf73a68d034fc69b6
* CMD_AUDIO_INPUT_BT_CAPTURE_STOP_ID, UUID: 6f215c20b81395c0e948481d8956d568
* CMD_AUDIO_INPUT_BT_DECODER_START_ID, UUID: 03bbd87e56c452d627b91e6fb135aa6d
* CMD_AUDIO_INPUT_BT_DECODER_STOP_ID, UUID: da9c0b00756b060bd1c4e0bb2d93d29f
* CMD_AUDIO_INPUT_IN_CALL_SELECT_START_ID, UUID: 017e8791508f329711806b7b1784654a
* CMD_AUDIO_INPUT_IN_CALL_SELECT_STOP_ID, UUID: d763ea0ff8f3385185ccf4fa40531e82
* CMD_AUDIO_INPUT_MIC_RECORD_AP_START_ID, UUID: 8542edc955df6bd649c5c12c92a92134
* CMD_AUDIO_INPUT_MIC_RECORD_AP_STOP_ID, UUID: de64e56e6aba9eb0021279db42ed6b46
* CMD_AUDIO_INPUT_HOTWORD_START_ID, UUID: 6e8872b5789b3c3c82392504f3febada
* CMD_AUDIO_INPUT_HOTWORD_STOP_ID, UUID: f6c4378bb2c94c021f9d9f4b76c2ac80
* CMD_AUDIO_INPUT_MIC_LOOPBACK_STOP_ID, UUID: ef3fb88005c81022b399c4c4d932973a
* CMD_AUDIO_INPUT_SPATIAL_START_ID, UUID: 7c247fcef1ccb6643e8372885dbbf629
* CMD_AUDIO_OUTPUT_DECODE_FLUSH_RB_ID, UUID: 57c67deea6d111d607d6914e29c7a32c
* CMD_AUDIO_INPUT_SPATIAL_STOP_ID, UUID: 7830c577ed8e2b474198d36529417649
* CMD_AUDIO_INPUT_HOTWORD_TEST_TRIGGER_ID, UUID: 25d16d037a41a1f85406a0029017a02a
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_START_ID, UUID: 6a5b7998d885b2f33409413aa9bdf39c
* CMD_AUDIO_OUTPUT_TELEPHONY_MODEM_START_ID, UUID: a2dcee61c1283d5aff021c0c5f803dc0
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_STOP_ID, UUID: 40bdd53e1632962334594cb1f0f92da5
* CMD_AUDIO_OUTPUT_TELEPHONY_MODEM_STOP_ID, UUID: 4a4ec74c3eda935d8a28e2a942e4a75b
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_TEST_TRIGGER_ID, UUID: b68ac180042a442f6c509069ca076784
* CMD_AUDIO_OUTPUT_TELEPHONY_VOIP_START_ID, UUID: 21d23b51107547ec3a083380cace825e
* CMD_AUDIO_OUTPUT_TELEPHONY_VOIP_STOP_ID, UUID: 367cc9dcdb4ccb5295d11ab054c37106
* CMD_AUDIO_OUTPUT_SPKR_ANDROID_AEC_START_ID, UUID: fdc99d0d19fdae73c0dd4f2a21c94be6
* CMD_AUDIO_INPUT_HOTWORD_LOAD_MODEL_ID, UUID: 32209e632ee67e9b507a066e1ce31e64
* CMD_AUDIO_OUTPUT_SPKR_ANDROID_AEC_STOP_ID, UUID: d148bbdd17267d54f6341e9c43848aad
* CMD_AUDIO_INPUT_HOTWORD_UNLOAD_MODEL_ID, UUID: be7aad055fbb5439ceab4c6c59efb3b6
* CMD_AUDIO_OUTPUT_USB_HIFI_PLAYBACK_START_ID, UUID: 17da3adbbbfbdbe6215b813dca17e141
* CMD_AUDIO_OUTPUT_USB_HIFI_PLAYBACK_STOP_ID, UUID: c3889a9de9dc360425cde2b0afdd2b2a
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_LOAD_MODEL_ID, UUID: d1121b14e655df65385b0f474fcefd7d
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_UNLOAD_MODEL_ID, UUID: bedaaff890bda7ffd077902bf913f4b9
* CMD_AUDIO_INPUT_HOTWORD_FORCE_TRIGGER_ID, UUID: 8d14b4097cffcca6227bbc587f8279d8
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_FORCE_TRIGGER_ID, UUID: ab98a91ea27d62bbc4a0bb77b082a139
* CMD_AUDIO_OUTPUT_DEC_RESET_CURRENT_GAIN_ID, UUID: 12892dadd9ba4d23eae485d3d59fccf0
* CMD_AUDIO_OUTPUT_VOICE_CCA_START_ID, UUID: 8d121421548f265e4f296acbf300fe33
* CMD_AUDIO_OUTPUT_VOICE_CCA_STOP_ID, UUID: f7982f7ff04be3cae52ab7db8f24649d
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_START_ID, UUID: 5be7b99d97f4bf06af231be04ab783ab
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_STOP_ID, UUID: edd0a66ee107ea64b8f6a0a324a7856b
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_TEST_TRIGGER_ID, UUID: 1a8f67d766cc9a1e21d6548afdc2ba57
* CMD_AUDIO_OUTPUT_DECODER_GAPLESS_PARTIAL_DRAIN_ID, UUID: 117682af13455a3de0f0f01a02a3d466
* CMD_AUDIO_OUTPUT_DECODER_GAPLESS_DEINIT_ID, UUID: a77ecb0deb43d8b2cff697ec83bd8571
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_LOAD_MODEL_ID, UUID: 3667c2affee42fed78892d05626d0a88
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_UNLOAD_MODEL_ID, UUID: d3b7cbecbc7f3c607bf090245f691002
* CMD_AUDIO_OUTPUT_TELEPHONY_RTP_START_ID, UUID: 9d12f53f498b427930257a6d8010478c
* CMD_AUDIO_OUTPUT_TELEPHONY_RTP_STOP_ID, UUID: cc499dc1692b5fe55df8fc02f9809c7f
* CMD_AUDIO_OUTPUT_VOICE_ENABLE_CCA_ON_VOIP_ID, UUID: 514450e55854eed2a15651067d6a3e55
* CMD_AUDIO_INPUT_MIC_RECORD_AP_START_PREPARE_ID, UUID: a2d983137ee5c50405f719a310c20971
* CMD_AUDIO_OUTPUT_VOICE_DISABLE_CCA_ON_VOIP_ID, UUID: 67226e15aef11c25557ca1130234a756
* CMD_AUDIO_INPUT_MIC_RECORD_AP_START_DATA_ID, UUID: eb4ca3ecc1e61d8abbdc79671dc0edbb
* CMD_AUDIO_INPUT_MIC_MMAP_DISABLE_ID, UUID: 02aa59769391dbf4e0bae82fbcaebb3c
* CMD_AUDIO_INPUT_WNR_START_ID, UUID: cdfe4c6b0cbbebb53cd4f1de4cf7d10a
* CMD_AUDIO_INPUT_WNR_STOP_ID, UUID: 14a6598537e19f97879eaf9cfa6fb9ba
* CMD_AUDIO_INPUT_SPATIAL_CAPTURE_START_ID, UUID: cded22dfdd10ab966c5b6f4c0d15b417
* CMD_AUDIO_INPUT_SPATIAL_CAPTURE_STOP_ID, UUID: a2132771c2f32e730de3fd3bd7f79dbe
* CMD_AUDIO_INPUT_MIC_RAW_DISABLE_ID, UUID: c602ddac88428952c9e8d444e2a3a927
* CMD_AUDIO_INPUT_USB_HIFI_CAPTURE_START_ID, UUID: 2a392f6c9f9ac788fb2a12a6e4a5dde5
* CMD_AUDIO_INPUT_USB_HIFI_CAPTURE_STOP_ID, UUID: 76f7a92e726aa3e997c74b399381c069
* CMD_AUDIO_INPUT_DIRECT_ULTRASONIC_CAPTURE_ENABLE_ID, UUID: 05c8db46e274a9083197bddbf534e637
* CMD_AUDIO_INPUT_DIRECT_ULTRASONIC_CAPTURE_DISABLE_ID, UUID: 2c0489afcb07c271454e4da7166223ff
* CMD_AUDIO_INPUT_MIC_RECORD_AP_ENABLE_AEC_ID, UUID: 249ada53f8b6ce226ba9aa73dabbf5e6
* CMD_AUDIO_INPUT_MIC_RECORD_AP_DISABLE_AEC_ID, UUID: 5c42e0725b9b1bbd6879fcb2d6692c90
* CMD_AUDIO_INPUT_ULTRASONIC_CAPTURE_START_ID, UUID: 08036d24f52fe021a2ef8419f28dbf0d
* CMD_AUDIO_INPUT_ULTRASONIC_CAPTURE_STOP_ID, UUID: 94b7271ea12a31a0e2400e17e9be0335
* CMD_AUDIO_INPUT_ULTRASONIC_AP_START_ID, UUID: 271872e1bf7b57d8c2bb10847206e888
* CMD_AUDIO_INPUT_MEDIA_COMMANDS_START_ID, UUID: fdc8fcf51dec427d9f0ecbd240d2cea5
* CMD_AUDIO_INPUT_MEDIA_COMMANDS_STOP_ID, UUID: c57e4843d5a425ef3b3404a47824ab57
* CMD_AUDIO_INPUT_MEDIA_COMMANDS_LOAD_MODEL_ID, UUID: 0a59d4c72b387711454fbd375d304417
* CMD_AUDIO_INPUT_MEDIA_COMMANDS_UNLOAD_MODEL_ID, UUID: d18c4488e716162dfc772e30376f83ac
* CMD_AUDIO_INPUT_CAPTURE_INJECTION_START_ID, UUID: 6ce14e7447365ee0ce8bfb7cccbb3c7a
* CMD_AUDIO_INPUT_CAPTURE_INJECTION_STOP_ID, UUID: 59bd69e4f8da57ee844043c426239ba0
* CMD_AUDIO_INPUT_HOTWORD_ENABLE_PRIMARY_MIC_SWAP_ID, UUID: 14406b26352156fc3fd45dbd2afe8f21
* CMD_AUDIO_INPUT_HOTWORD_DISABLE_PRIMARY_MIC_SWAP_ID, UUID: 8dcc7c59a45658053cffdef0ac6d079e
* CMD_AUDIO_INPUT_HOTWORD_ENABLE_NEURAL_AEC_ID, UUID: 9d485929dc61d3babd81ddff05cf9392
* CMD_AUDIO_INPUT_HOTWORD_DISABLE_NEURAL_AEC_ID, UUID: c8a19d5b447ce1fae9a8666883c723d7
* CMD_AUDIO_INPUT_HOTWORD_ENABLE_HOTWORD_TAP_ID, UUID: 26bde63caffd544e581a7293f1cf793c
* CMD_AUDIO_INPUT_HOTWORD_DISABLE_HOTWORD_TAP_ID, UUID: 228b2b4c01e7c126658056a596ac4e5c
*/
struct CMD_HDR {
struct CONTAINER_HDR parent;
uint16_t id;
int16_t reply;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_SYS_BANNER_ID, UUID: 504d490d704ac2bef2af10887b9b1ad3
* CMD_SYS_STATS_ID, UUID: 2ab98ec58f7c9704b4e83b93bbcefaa2
* CMD_DBG_WATCHDOG_TRIGGER_ID, UUID: d9ef98fe070ef538bee623643537eeed
* CMD_DBG_TREE_ID, UUID: 43fd27ea86c0ab0971ba99275dbec161
* CMD_DBG_CONTROLLERS_ID, UUID: c89caebb6b7061d1232b0dd45ff3fe13
* CMD_DBG_FILTERS_ID, UUID: 7c56165bc53102a4442811f0ef2b2b63
* CMD_DBG_PIPES_ID, UUID: c84d222dc0e7ae06be2535e426919b34
* CMD_DBG_POOLS_ID, UUID: d57a0ddcef560feec8e6413a7cf33c87
* CMD_DBG_RINGS_ID, UUID: a77f8e45e2b6f9190e18a5e980e01bdd
* CMD_DBG_IPCS_ID, UUID: ffa1935344543128298b05f31c2db4fa
* CMD_DBG_FSM_ID, UUID: 15c1570c1258ba2acdd2d4dd2e172fbe
* CMD_DBG_TASKS_ID, UUID: 538e9ac88022dc3bcec311eda8b8780f
* CMD_DBG_TIMER_ID, UUID: cfb3bd6083c745bbb3dffaa85b9123a1
* CMD_DBG_INTCNTRL_ID, UUID: 3613177f5b587dfdaad15524d2976726
* CMD_DBG_IPC_SPACES_ID, UUID: 8deb052245037bdc892886f52f4a3fd1
* CMD_DBG_IPC_CHANNELS_ID, UUID: 2fcedfa697ab0343863d06f3d608c10e
* CMD_DBG_MEM_INVAL_ACCESS_ID, UUID: da303a56481b5192393842b400259d21
*/
struct CMD_CORE_GENERIC {
struct CMD_HDR parent;
int32_t core;
} __attribute__((packed));
enum DbgHeapMode {
DBG_HEAP_NONE = 0,
DBG_HEAP_TRACE,
DBG_HEAP_CRC_INFO,
DBG_HEAP_CRC,
};
/**
* Structure associated with the following commands:
*
* CMD_DBG_HEAP_ID, UUID: f684800cbb1524ee1814f70099799cbe
*/
struct CMD_DBG_HEAP {
struct CMD_CORE_GENERIC parent;
uint32_t crc;
uint8_t mode; /* For valid values, refer to "enum DbgHeapMode" */
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_RING_BIND_ID, UUID: 9c5bee4588fffe71e78024b6005102ad
*/
struct CMD_RING_BIND {
struct CMD_HDR parent;
int32_t pin;
uint16_t ipc_tag;
uint32_t write_descr;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_IPC_NOTIF_ENABLE_ID, UUID: 922f1525a44efdbab3edf48586cf3ad5
*/
struct CMD_IPC_NOTIF_ENABLE {
struct CMD_HDR parent;
uint32_t tag;
uint8_t enable;
} __attribute__((packed));
#define CMD_SYS_VERSION_SIZE_MAX (64) /* UUID: 523a9f7b743ea29ea23a18c0879b0dcc */
/**
* Structure associated with the following commands:
*
* CMD_SYS_VERSION_GET_ID, UUID: 085b3c10693de3cd14a5abc2258280ce
*/
struct CMD_SYS_VERSION_GET {
struct CMD_CORE_GENERIC parent;
char version[CMD_SYS_VERSION_SIZE_MAX];
char link_time[CMD_SYS_VERSION_SIZE_MAX];
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_SYS_STATS_TOT_ID, UUID: 61c84e3e09983de7c5184f81298c2024
*/
struct CMD_SYS_STATS_TOT {
struct CMD_CORE_GENERIC parent;
int32_t tot;
} __attribute__((packed));
enum STATS_TYPE {
STATS_TYPE_TIMED_STATUS = 0,
STATS_TYPE_DATA_TRANSFER,
};
#define STATS_ENTRY_LEN (7) /* UUID: 733b57b1d8a9342523a49b8c37ad2d0a */
struct STATS_ENTRY_INFO {
char name[STATS_ENTRY_LEN];
uint8_t type; /* For valid values, refer to "enum STATS_TYPE" */
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_SYS_STATS_INFO_GET_ID, UUID: e518d09ccf3b2768676f64bd744d03d6
*/
struct CMD_SYS_STATS_INFO_GET {
struct CMD_CORE_GENERIC parent;
int32_t index;
struct STATS_ENTRY_INFO info;
} __attribute__((packed));
struct STATS_TIMED_STATUS {
uint64_t counter;
uint64_t cumulative_time;
uint64_t timestamp_enter_last;
uint64_t timestamp_exit_last;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_SYS_STATS_TIMED_GET_ID, UUID: e3bd9e12d29027ccbf10538e3f79063b
*/
struct CMD_SYS_STATS_TIMED_GET {
struct CMD_CORE_GENERIC parent;
int32_t index;
struct STATS_TIMED_STATUS timed;
} __attribute__((packed));
struct STATS_DATA_TRANSFER {
uint64_t counter;
uint64_t counter_failed;
uint64_t transfer_tx;
uint64_t transfer_rx;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_SYS_STATS_DATA_GET_ID, UUID: e3235ddcdf9ecf229fd318b7c409b76e
*/
struct CMD_SYS_STATS_DATA_GET {
struct CMD_CORE_GENERIC parent;
int32_t index;
struct STATS_DATA_TRANSFER transfer;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_SYS_LOGIC_TRACE_ENABLE_ID, UUID: fc8ef6690b1147b887acdf44c0b78ab7
* CMD_DBG_TIMESTAMP_ID, UUID: f0d0ab26cd620a32c7f27f8862434e7c
*/
struct CMD_ENABLE {
struct CMD_CORE_GENERIC parent;
uint8_t enable;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_SYS_LOGIC_TRACE_SCHEME_SET_ID, UUID: 59f22b5d76f7074cc59842557004bb5a
* CMD_SYS_LOGIC_TRACE_SCHEME_GET_ID, UUID: 4b0929d902bd8dfb960f5b417042982c
*/
struct CMD_CORE_LOGIC_TRACE_SCHEME {
struct CMD_CORE_GENERIC parent;
int8_t scheme;
} __attribute__((packed));
#define EFWObject_kNameSize (16) /* UUID: 7488eddabe0654e3f0ac58cda17a1530 */
/**
* Structure associated with the following commands:
*
* CMD_DBG_INFO_ID, UUID: 927126c1e5bdea5c6c5674d6855d6e16
*/
struct CMD_DBG_INFO {
struct CMD_CORE_GENERIC parent;
char string[EFWObject_kNameSize];
uint8_t system;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_DBG_LEVEL_GET_ID, UUID: fa0736f425f7ee729ab1ed21bbe40f0b
*/
struct CMD_DBG_LEVEL_GET {
struct CMD_CORE_GENERIC parent;
char string[EFWObject_kNameSize];
uint8_t system;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_DBG_POWERMAN_ID, UUID: b7759fa324678e6a7e7fbe1b24be450f
*/
struct CMD_DBG_POWERMAN {
struct CMD_CORE_GENERIC parent;
uint8_t standby_modify;
uint8_t standby_on;
uint8_t retention_modify;
uint8_t retention_on;
uint8_t shutdown_modify;
uint8_t shutdown_on;
uint8_t status;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_DBG_LOG_ID, UUID: a4b82f60bcefb799d11a46342c8fc459
*/
struct CMD_DBG_LOG {
struct CMD_CORE_GENERIC parent;
uint8_t reset;
uint8_t marker;
} __attribute__((packed));
enum DbgMemMode {
DBG_MEM_MODE_32 = 0,
DBG_MEM_MODE_16,
DBG_MEM_MODE_8,
DBG_MEM_MODE_RANGE,
};
/**
* Structure associated with the following commands:
*
* CMD_DBG_MEM_SET_ID, UUID: 37b9c686489b1c896ab3e66ea084f646
*/
struct CMD_DBG_MEM_SET {
struct CMD_CORE_GENERIC parent;
uint32_t address;
uint32_t value;
uint8_t mode; /* For valid values, refer to "enum DbgMemMode" */
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_DBG_MEM_DUMP_ID, UUID: 214087af52dcfa3f3930c8a9a986c783
*/
struct CMD_DBG_MEM_DUMP {
struct CMD_CORE_GENERIC parent;
uint32_t address;
uint32_t size;
} __attribute__((packed));
enum BTDecoderOutputIndex {
BT_MODEM_OUTPUT_INDEX = 0,
BT_AP_OUTPUT_INDEX,
BT_HOTWORD_OUTPUT_INDEX,
BT_DECODER_NUM_OUTPUTS,
};
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_BT_DECODER_ENABLE_OUTPUT_ID, UUID: 9db47f9d9aa8b675423820ef42f3c656
*/
struct CMD_AUDIO_INPUT_BT_ENABLE_OUTPUT {
struct CMD_HDR parent;
uint8_t output_index; /* For valid values, refer to "enum BTDecoderOutputIndex" */
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_BT_DECODER_DISABLE_OUTPUT_ID, UUID: 8dc3757cd2b17c6ea53f81a4df1f2526
*/
struct CMD_AUDIO_INPUT_BT_DISABLE_OUTPUT {
struct CMD_HDR parent;
uint8_t output_index; /* For valid values, refer to "enum BTDecoderOutputIndex" */
} __attribute__((packed));
enum InCallSelectOutputIndex {
IN_CALL_SELECT_MODEM_IN_OUTPUT_INDEX = 0,
IN_CALL_SELECT_MODEM_TX_OUTPUT_INDEX,
IN_CALL_SELECT_NUM_OUTPUTS,
};
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_IN_CALL_SELECT_ENABLE_OUTPUT_ID, UUID: d77dc2f6476fec8ea6e8f062125eeb6e
*/
struct CMD_AUDIO_INPUT_IN_CALL_SELECT_ENABLE_OUTPUT {
struct CMD_HDR parent;
uint8_t output_index; /* For valid values, refer to "enum InCallSelectOutputIndex" */
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_IN_CALL_SELECT_DISABLE_OUTPUT_ID, UUID: f3662825cd66dd6ff36425eccf6ce23b
*/
struct CMD_AUDIO_INPUT_IN_CALL_SELECT_DISABLE_OUTPUT {
struct CMD_HDR parent;
uint8_t output_index; /* For valid values, refer to "enum InCallSelectOutputIndex" */
} __attribute__((packed));
enum APMicProcessIndex {
AP_MIC_PROCESS_RAW = 0,
AP_MIC_PROCESS_SPATIAL,
NUM_AP_MIC_PROCESS,
};
enum SampleRate {
SR_8KHZ = 0,
SR_16KHZ,
SR_24KHZ,
SR_32KHZ,
SR_44K1HZ,
SR_48KHZ,
SR_96KHZ,
SR_192KHZ,
};
#define AUDIO_CAPTURE_PDM_PDM_MAX (4) /* UUID: 4ce9e232b0ad1dc19bd98d7665bf9353 */
enum Format {
FRMT_FLOATING_POINT = 0,
FRMT_FIXED_POINT,
FRMT_ULAW,
};
enum BitsPerSample {
WIDTH_8_BIT = 0,
WIDTH_16_BIT,
WIDTH_24_BIT,
WIDTH_32_BIT,
};
enum Channels {
CH_RESERVED = 0,
CH_MONO,
CH_STEREO,
CH_3,
CH_4,
CH_5_1,
};
struct channelMetadataUnpacked {
uint8_t chan; /* For valid values, refer to "enum Channels" */
uint8_t bits; /* For valid values, refer to "enum BitsPerSample" */
uint8_t sr; /* For valid values, refer to "enum SampleRate" */
uint8_t format; /* For valid values, refer to "enum Format" */
uint8_t offset;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_MIC_RECORD_AP_SET_PARAMS_ID, UUID: f0b64ed4024e019884bc797a3a4f183d
* CMD_AUDIO_INPUT_ULTRASONIC_AP_SET_PARAMS_ID, UUID: af134d505c05101b193ccb3544e08dcf
*/
struct CMD_AUDIO_INPUT_MIC_RECORD_AP_SET_PARAMS {
struct CMD_HDR parent;
struct channelMetadataUnpacked requested_format;
uint8_t pdm_mask;
uint8_t period_ms;
uint8_t num_periods;
uint8_t interleaving[AUDIO_CAPTURE_PDM_PDM_MAX];
uint8_t sample_rate; /* For valid values, refer to "enum SampleRate" */
uint8_t mic_process_index; /* For valid values, refer to "enum APMicProcessIndex" */
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_MIC_LOOPBACK_START_ID, UUID: 4b17cf2442ac4af494e2f727388d8ed8
*/
struct CMD_AUDIO_INPUT_ENABLE_MIC_LOOPBACK {
struct CMD_HDR parent;
uint8_t sample_rate; /* For valid values, refer to "enum SampleRate" */
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_MIC_POWER_ON_ID, UUID: 790997fcbc5b31216a6ed4aacdfeaaf0
*/
struct CMD_AUDIO_INPUT_MIC_POWER_ON {
struct CMD_HDR parent;
uint8_t mic_index;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_MIC_POWER_OFF_ID, UUID: 8c6f6ab39aed0b4fc898f42aef3d4ba4
*/
struct CMD_AUDIO_INPUT_MIC_POWER_OFF {
struct CMD_HDR parent;
uint8_t mic_index;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_MIC_GET_POWER_STATE_ID, UUID: 88a345935cad7a95cb30ceb092d948d3
*/
struct CMD_AUDIO_INPUT_MIC_GET_POWER_STATE {
struct CMD_HDR parent;
uint8_t mic_index;
uint8_t power_state;
} __attribute__((packed));
enum ModemInputIndex {
MODEM_MIC_INPUT_INDEX = 0,
MODEM_BT_INPUT_INDEX,
MODEM_USB_INPUT_INDEX,
MODEM_INCALL_INPUT_INDEX,
MODEM_ZERO_INPUT_INDEX,
MODEM_NUM_INPUTS,
};
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_MODEM_INPUT_START_ID, UUID: dbbf677680a271a40193ccff8361bb3c
*/
struct CMD_AUDIO_INPUT_MODEM_INPUT_START {
struct CMD_HDR parent;
uint8_t mic_input_source; /* For valid values, refer to "enum ModemInputIndex" */
} __attribute__((packed));
enum AUDIO_SINKS_ID {
ASNK_SPEAKER = 0,
ASNK_HEADPHONE,
ASNK_BT,
ASNK_MODEM,
ASNK_USB,
AUDIO_OUTPUT_SINKS,
};
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_SINK_ID, UUID: f5496054472a5be703a32e46206c74ab
*/
struct CMD_AUDIO_OUTPUT_SINK {
struct CMD_HDR parent;
uint8_t sink; /* For valid values, refer to "enum AUDIO_SINKS_ID" */
uint8_t mode;
uint8_t timestamping;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_SOURCE_ID, UUID: 7abd928d4b17904f7267d3ed77f6174e
*/
struct CMD_AUDIO_OUTPUT_SOURCE {
struct CMD_HDR parent;
uint8_t source;
uint8_t on;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_BIND_ID, UUID: 06c96d4cc0173e6fe6bfe95c97bfe933
* CMD_AUDIO_OUTPUT_BIND2_ID, UUID: 8f572f5621ed71748992531b40e45148
*/
struct CMD_AUDIO_OUTPUT_BIND {
struct CMD_HDR parent;
uint8_t src;
uint8_t dst;
uint8_t bind;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_WAV_PLAYBACK_ID, UUID: 63d33aa8677ba043b76fc5e2873b7695
*/
struct CMD_AUDIO_OUTPUT_WAV_PLAYBACK {
struct CMD_HDR parent;
uint8_t sink;
uint8_t on;
uint32_t address;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_GAIN_ID, UUID: 858dde9ab4a90a99fbb98e0a991afa1f
*/
struct CMD_AUDIO_OUTPUT_GAIN {
struct CMD_HDR parent;
uint8_t sink;
uint8_t channel;
uint16_t gain;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_FX_EQ_ID, UUID: fd4102faa31419227ebb81346f250c33
*/
struct CMD_AUDIO_OUTPUT_FX_EQ {
struct CMD_HDR parent;
uint8_t sink;
int8_t l;
int8_t m;
int8_t h;
} __attribute__((packed));
enum EntrypointMode {
ENTRYPOINT_MODE_PLAYBACK = 0,
ENTRYPOINT_MODE_VOICE_TX,
ENTRYPOINT_MODE_VOICE_RX,
ENTRYPOINT_MODE_HAPTICS,
ENTRYPOINT_MODE_DECODE_OFFLOAD,
ENTRYPOINT_MODE_SIGGEN,
ENTRYPOINT_MODE_BT_RX,
};
struct EntrypointDescriptorUnpacked {
uint32_t address;
uint32_t watermark;
uint32_t length;
struct channelMetadataUnpacked metadata;
uint8_t channel;
uint8_t wraparound;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_EP_SETUP_ID, UUID: e3887daa74a66ecdfa8f122abad227e1
*/
struct CMD_AUDIO_OUTPUT_EP_SETUP {
struct CMD_HDR parent;
struct EntrypointDescriptorUnpacked d;
uint8_t mode; /* For valid values, refer to "enum EntrypointMode" */
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_DECODE_ID, UUID: fcfcb4332a3f13deecbc0320d218213c
*/
struct CMD_AUDIO_OUTPUT_DECODE {
struct CMD_HDR parent;
struct EntrypointDescriptorUnpacked raw_ep_descr;
uint32_t address;
int32_t size;
uint8_t codec;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_AEC_NOTIFY_ID, UUID: be67c03d50fd910dd9e8ca667ea7df3e
*/
struct CMD_AUDIO_OUTPUT_AEC_NOTIFY {
struct CMD_HDR parent;
int32_t index;
uint8_t on;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_RESYNC_AUDIO_SINK_ID, UUID: b4726c9713c1e7030c55900a4636f672
*/
struct CMD_AUDIO_OUTPUT_RESYNC_AUDIO_SINK {
struct CMD_HDR parent;
uint8_t sink;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_GET_PARAMETER_ID, UUID: 3394e985e5a4c767efd2f376a6d3f10f
*/
struct CMD_AUDIO_OUTPUT_GET_PARAMETER {
struct CMD_HDR parent;
uint8_t block;
uint8_t component;
uint32_t key;
uint32_t val;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_GET_PARAMETER_BULK_ID, UUID: 1dfcc8cf130b1b42e6728cacd4e0a7d3
*/
struct CMD_AUDIO_OUTPUT_GET_PARAMETER_BULK {
struct CMD_HDR parent;
uint8_t block;
uint8_t component;
uint32_t rx_offset;
uint32_t rx_address;
uint32_t rx_size;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_SET_PARAMETER_ID, UUID: fd9fdc99db9a5e7f267bc02d9f9ee5df
*/
struct CMD_AUDIO_OUTPUT_SET_PARAMETER {
struct CMD_HDR parent;
uint8_t block;
uint8_t component;
uint32_t key;
uint32_t val;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_SET_PARAMETER_BULK_ID, UUID: 9bded656cc615614e769112bfc76c0f8
*/
struct CMD_AUDIO_OUTPUT_SET_PARAMETER_BULK {
struct CMD_HDR parent;
uint8_t block;
uint8_t component;
uint32_t tx_offset;
uint32_t tx_address;
uint32_t tx_size;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_SET_GET_PARAM_BULK_ID, UUID: 750ca7b8ed997b3f741c6f39d215f36d
*/
struct CMD_AUDIO_OUTPUT_SET_GET_PARAM_BULK {
struct CMD_HDR parent;
uint8_t block;
uint8_t component;
uint16_t tx_offset;
uint16_t rx_offset;
uint32_t tx_address;
uint32_t rx_address;
uint16_t tx_size;
uint16_t rx_size;
} __attribute__((packed));
enum ASP_BLK_CMD_ID {
ASP_CMD_ID_NONE = 0,
ASP_CMD_ID_GET_MODULE,
ASP_CMD_ID_GET_TAP_PT,
ASP_CMD_ID_SET_TAP_PT,
ASP_NUM_CMD_ID,
};
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_GET_BLOCKS_ID, UUID: a20584bf8ec75826438fad0175a908f4
*/
struct CMD_AUDIO_OUTPUT_GET_BLOCKS {
struct CMD_HDR parent;
uint8_t block;
uint8_t component;
uint8_t cmd; /* For valid values, refer to "enum ASP_BLK_CMD_ID" */
uint32_t val;
} __attribute__((packed));
enum ASP_MODULE_ID {
ASP_ID_NONE = 0,
ASP_ID_GAIN = 0,
ASP_ID_BASE,
ASP_ID_EQ = 1,
ASP_ID_WAVES,
ASP_ID_FM,
ASP_ID_LIMITERTD,
ASP_ID_AGC,
ASP_ID_SURROUNDRECORD,
ASP_ID_MULTICHANNEL_IIR,
ASP_ID_MBDRC,
ASP_ID_WAVES01,
ASP_ID_WAVES02,
ASP_ID_SNS,
ASP_ID_SRC01,
ASP_ID_SRC02,
ASP_ID_LINEAR_GAIN,
ASP_ID_MIXER,
ASP_ID_IIREQ,
ASP_ID_WNR,
ASP_ID_AUDIO_INPUT_MULTICHANNEL_IIR,
ASP_ID_LVM,
ASP_ID_GAIN_DB,
ASP_ID_VP_MCPS,
ASP_NUM_MODULE,
};
enum AUDIO_BLOCK_ID {
AUDIO_BLOCK_ID_START = 14,
ABLOCK_DCDOFF = 14,
ABLOCK_PAD_15,
ABLOCK_SPEAKER,
ABLOCK_HEADPHONE,
ABLOCK_BT,
ABLOCK_MODEM,
ABLOCK_USB,
AUDIO_BLOCK_ID_END,
};
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_GET_MODULES_ID, UUID: 14f144af013e1a5ff4cd17fc43bd9080
*/
struct CMD_AUDIO_OUTPUT_GET_MODULES {
struct CMD_HDR parent;
uint8_t block;
uint8_t component;
uint8_t blk; /* For valid values, refer to "enum AUDIO_BLOCK_ID" */
uint8_t module; /* For valid values, refer to "enum ASP_MODULE_ID" */
uint32_t val;
} __attribute__((packed));
enum HapticsMode {
HAPTICS_MODE_OFF = 0,
HAPTICS_MODE_PCM,
HAPTICS_MODE_FX,
};
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_CFG_HAPTICS_ID, UUID: 2ad9119c66c8c48a457d6d175c532760
*/
struct CMD_AUDIO_OUTPUT_CFG_HAPTICS {
struct CMD_HDR parent;
uint8_t mode; /* For valid values, refer to "enum HapticsMode" */
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_CFG_SIGGEN_ID, UUID: 8d0a76b0197ebe638803cc5974c49ece
*/
struct CMD_AUDIO_OUTPUT_CFG_SIGGEN {
struct CMD_HDR parent;
uint8_t wf_type;
uint16_t wf_period;
uint32_t wf_amplitude;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_GET_EP_CUR_SAMPLES_ID, UUID: f8ea75dd361fe567360ab33eb1ed5904
* CMD_AUDIO_OUTPUT_GET_EP_TOT_SAMPLES_ID, UUID: 37f85bad8dca4be83d27b4ecc93c5bdd
*/
struct CMD_AUDIO_OUTPUT_GET_EP_SAMPLES {
struct CMD_HDR parent;
uint8_t source;
uint64_t samples;
} __attribute__((packed));
enum AUDIO_OUTPUT_MODE {
AUDIO_OUTPUT_MODE_IDLE = 0,
AUDIO_OUTPUT_MODE_PLAYBACK,
AUDIO_OUTPUT_MODE_VOICE,
};
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_GET_DSP_STATE_ID, UUID: 67b5ba406a710f65fe63a9d166948f54
*/
struct CMD_AUDIO_OUTPUT_GET_DSP_STATE {
struct CMD_HDR parent;
uint8_t mode; /* For valid values, refer to "enum AUDIO_OUTPUT_MODE" */
} __attribute__((packed));
enum AUDIO_OUTPUT_SINK_PROCESSING_MODE {
AUDIO_OUTPUT_SINK_PROCESSING_IDLE = 0,
AUDIO_OUTPUT_SINK_PROCESSING_ACTIVE,
AUDIO_OUTPUT_SINK_PROCESSING_BYPASS,
};
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_GET_SINK_PROCESSING_STATE_ID, UUID: a02ad55bf6328b3de730fb1e04ee07e5
*/
struct CMD_AUDIO_OUTPUT_GET_SINK_PROCESSING_STATE {
struct CMD_HDR parent;
uint8_t sink;
uint8_t mode; /* For valid values, refer to "enum AUDIO_OUTPUT_SINK_PROCESSING_MODE" */
} __attribute__((packed));
enum CORE_POWER_STATE {
CORE_POWER_STATE_ON = 0,
CORE_POWER_STATE_WFI,
CORE_POWER_STATE_RETENTION,
CORE_POWER_STATE_OFF,
CORE_POWER_STATE_TOT,
};
/**
* Structure associated with the following commands:
*
* CMD_DIAG_CORE_POWER_ID, UUID: a5feea3c467350d9e9f94d900b60fbed
*/
struct CMD_DIAG_CORE_POWER {
struct CMD_HDR parent;
uint32_t seconds;
uint32_t a32_power_state; /* For valid values, refer to "enum CORE_POWER_STATE" */
uint32_t f1_power_state; /* For valid values, refer to "enum CORE_POWER_STATE" */
uint32_t hf0_power_state; /* For valid values, refer to "enum CORE_POWER_STATE" */
uint32_t hf1_power_state; /* For valid values, refer to "enum CORE_POWER_STATE" */
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_DIAG_MONITOR_MODE_ID, UUID: 1db11b446ba22db992421bdb59011751
*/
struct CMD_DIAG_MONITOR_MODE {
struct CMD_HDR parent;
uint32_t delay_ms;
uint32_t iterations;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_USB_CONTROL_GET_XHCI_VERSION_ID, UUID: 91fa1fcf2402f2fd55f1fca81bdcfe32
*/
struct CMD_USB_CONTROL_GET_XHCI_VERSION {
struct CMD_HDR parent;
uint32_t xhci_version;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_USB_CONTROL_SETUP_ID, UUID: 6a06c2c168c0750017bb5a0de4da4445
*/
struct CMD_USB_CONTROL_SETUP {
struct CMD_HDR parent;
uint32_t page_size;
uint8_t type;
uint8_t ctx_idx;
uint8_t spbuf_idx;
uint8_t payload[2048];
uint32_t length;
uint32_t aoc_dcbaa;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_USB_CONTROL_STATUS_GET_ID, UUID: f03d16097710ea3bee61e847c978705e
*/
struct CMD_USB_CONTROL_STATUS_GET {
struct CMD_HDR parent;
uint32_t status;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_USB_CONTROL_GET_DEVICE_CONTEXT_ID, UUID: e0273d601b0837479d5ef24bb72a9719
*/
struct CMD_USB_CONTROL_GET_DEVICE_CONTEXT {
struct CMD_HDR parent;
uint16_t device_id;
uint32_t length;
uint8_t payload[2048];
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_USB_CONTROL_GET_TR_DEQ_PTR_ID, UUID: 3bfa87999faf40df0feef23dd94cc594
*/
struct CMD_USB_CONTROL_GET_TR_DEQ_PTR {
struct CMD_HDR parent;
uint16_t device_id;
uint16_t endpoint_id;
uint64_t tr_deq_ptr;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_USB_CONTROL_NOTIFY_CONN_STAT_ID, UUID: 2a3891f4d9667305cc1d5dcf03be8d85
*/
struct CMD_USB_CONTROL_NOTIFY_CONN_STAT {
struct CMD_HDR parent;
uint32_t conn_state;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_USB_CONTROL_GET_DCBAA_PTR_ID, UUID: 719daf404c6869c3e384153d481d24a8
*/
struct CMD_USB_CONTROL_GET_DCBAA_PTR {
struct CMD_HDR parent;
uint64_t aoc_dcbaa_ptr;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_USB_CONTROL_GET_ISOC_TR_INFO_ID, UUID: 6bb65aad89f57f762974882f0232462f
*/
struct CMD_USB_CONTROL_GET_ISOC_TR_INFO {
struct CMD_HDR parent;
uint16_t ep_id;
uint16_t dir;
uint32_t type;
uint32_t num_segs;
uint32_t seg_ptr;
uint32_t max_packet;
uint32_t deq_ptr;
uint32_t enq_ptr;
uint32_t cycle_state;
uint32_t num_trbs_free;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_SET_PARAMETER_ID, UUID: 4a1ee581b64d2d1e3cf701413475a850
*/
struct CMD_AUDIO_INPUT_SET_PARAMETER {
struct CMD_HDR parent;
uint8_t block;
uint8_t component;
uint32_t key;
uint32_t val;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_SET_PARAMETER_BULK_ID, UUID: ee50e9be27f515f9f666d1c698a0d8dc
*/
struct CMD_AUDIO_INPUT_SET_PARAMETER_BULK {
struct CMD_HDR parent;
uint8_t block;
uint8_t component;
uint32_t tx_offset;
uint32_t tx_address;
uint32_t tx_size;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_GET_PARAMETER_ID, UUID: af479d1fe992db232903a40f0e659e1f
*/
struct CMD_AUDIO_INPUT_GET_PARAMETER {
struct CMD_HDR parent;
uint8_t block;
uint8_t component;
uint32_t key;
uint32_t val;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_GET_PARAMETER_BULK_ID, UUID: 04bb6cf8cd4290cab2f4a1d5984ad137
*/
struct CMD_AUDIO_INPUT_GET_PARAMETER_BULK {
struct CMD_HDR parent;
uint8_t block;
uint8_t component;
uint32_t rx_offset;
uint32_t rx_address;
uint32_t rx_size;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_SET_GET_PARAM_BULK_ID, UUID: b9ef3a7d4e427a79cf7272a87ea96b4a
*/
struct CMD_AUDIO_INPUT_SET_GET_PARAM_BULK {
struct CMD_HDR parent;
uint8_t block;
uint8_t component;
uint16_t tx_offset;
uint16_t rx_offset;
uint32_t tx_address;
uint32_t rx_address;
uint16_t tx_size;
uint16_t rx_size;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_GET_BLOCKS_ID, UUID: 3f7e2128194abb2c2072f2b895fad9f3
*/
struct CMD_AUDIO_INPUT_GET_BLOCKS {
struct CMD_HDR parent;
uint8_t block;
uint8_t component;
uint8_t cmd; /* For valid values, refer to "enum ASP_BLK_CMD_ID" */
uint32_t val;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_GET_MODULES_ID, UUID: bb179fb7dc7af74f2ea99c9dc8532998
*/
struct CMD_AUDIO_INPUT_GET_MODULES {
struct CMD_HDR parent;
uint8_t block;
uint8_t component;
uint8_t blk; /* For valid values, refer to "enum AUDIO_BLOCK_ID" */
uint8_t module; /* For valid values, refer to "enum ASP_MODULE_ID" */
uint32_t val;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_HOTWORD_DETECTED_ID, UUID: b8bd613cc46f44cd5dccd428a04381b8
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_DETECTED_ID, UUID: d80140c821d48f62be47d86e60a7435d
* CMD_AUDIO_INPUT_MEDIA_COMMANDS_TEST_TRIGGER_ID, UUID: 2c3d11cf788e47c09375b60ef44777fc
* CMD_AUDIO_INPUT_MEDIA_COMMANDS_DETECTED_ID, UUID: 733c6a37d10841ee075f0a2a10a9df86
*/
struct CMD_AUDIO_INPUT_AMBIENT_MUSIC_DETECTED {
struct CMD_HDR parent;
uint8_t payload[32];
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_GET_MIC_STATUS_ID, UUID: b78b9461365de8f9c67645108e6f0873
*/
struct CMD_AUDIO_INPUT_GET_MIC_STATUS {
struct CMD_HDR parent;
uint8_t mic_id;
uint8_t mic_active;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_GET_MIC_CLOCK_FREQUENCY_ID, UUID: fe23e6aea7fe941c7d3766553288b327
*/
struct CMD_AUDIO_INPUT_GET_MIC_CLOCK_FREQUENCY {
struct CMD_HDR parent;
uint32_t mic_clock_frequency_hz;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_GET_MIC_LOW_POWER_HW_GAIN_ID, UUID: 95bcfc52b22b1c8069a60cce0d79e462
*/
struct CMD_AUDIO_INPUT_GET_MIC_LOW_POWER_HW_GAIN {
struct CMD_HDR parent;
int32_t mic_hw_gain_cb;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_GET_MIC_HIGH_POWER_HW_GAIN_ID, UUID: c8c2e6acd20afb5bd95b02c30aa2aaa0
*/
struct CMD_AUDIO_INPUT_GET_MIC_HIGH_POWER_HW_GAIN {
struct CMD_HDR parent;
int32_t mic_hw_gain_cb;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_GET_MIC_CURRENT_HW_GAIN_ID, UUID: 7fdeea6d604facd25f1aebb5db6ab31c
*/
struct CMD_AUDIO_INPUT_GET_MIC_CURRENT_HW_GAIN {
struct CMD_HDR parent;
int32_t mic_hw_gain_cb;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_GET_MIC_DC_BLOCKER_ID, UUID: 1ac2b5c194cb1267b0a9d9da7ae1d6c9
*/
struct CMD_AUDIO_INPUT_GET_MIC_DC_BLOCKER {
struct CMD_HDR parent;
uint8_t dc_blocker_enabled;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_SET_MIC_DC_BLOCKER_ID, UUID: fce65c0f10fb73ecad035e7d0aedba90
*/
struct CMD_AUDIO_INPUT_SET_MIC_DC_BLOCKER {
struct CMD_HDR parent;
uint8_t dc_blocker_enabled;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_SET_MIC_LOW_POWER_HW_GAIN_ID, UUID: 4c6da404f6f1e1e02ed9a1bfa1bef436
*/
struct CMD_AUDIO_INPUT_SET_MIC_LOW_POWER_HW_GAIN {
struct CMD_HDR parent;
int32_t mic_hw_gain_cb;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_SET_MIC_HIGH_POWER_HW_GAIN_ID, UUID: e85ebf92a29e074fe969be6314303874
*/
struct CMD_AUDIO_INPUT_SET_MIC_HIGH_POWER_HW_GAIN {
struct CMD_HDR parent;
int32_t mic_hw_gain_cb;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_FACTORY_TEST_ID, UUID: 3076f387a678ce54fada1af5a83b63d6
*/
struct CMD_AUDIO_OUTPUT_FACTORY_TEST {
struct CMD_HDR parent;
uint32_t test;
uint32_t iterations;
uint32_t options;
uint32_t options2;
uint32_t options3;
uint8_t sink;
} __attribute__((packed));
enum AUDIO_OUTPUT_BT_A2DP_ENC_CODEC {
AUDIO_OUTPUT_BT_A2DP_ENC_CODEC_UNKNOWN = 0,
AUDIO_OUTPUT_BT_A2DP_ENC_CODEC_SBC,
AUDIO_OUTPUT_BT_A2DP_ENC_CODEC_AAC,
AUDIO_OUTPUT_BT_A2DP_ENC_CODEC_APTX,
AUDIO_OUTPUT_BT_A2DP_ENC_CODEC_APTXHD,
AUDIO_OUTPUT_BT_A2DP_ENC_CODEC_LDAC,
AUDIO_OUTPUT_BT_BLE_ENC_CODEC_LC3,
AUDIO_OUTPUT_BT_A2DP_ENC_CODEC_OPUS,
AUDIO_OUTPUT_BT_BLE_DEC_CODEC_LC3,
AUDIO_OUTPUT_BT_BLE_ENC_CODEC_LC3_DYN_CHG,
};
struct AUDIO_OUTPUT_BT_A2DP_ENC_CFG {
uint32_t codecType; /* For valid values, refer to "enum AUDIO_OUTPUT_BT_A2DP_ENC_CODEC" */
uint32_t bitrate;
uint16_t peerMTU;
uint32_t params[6];
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_BT_A2DP_ENC_CFG_ID, UUID: dbe05975a0090604729311b2993c13a0
*/
struct CMD_AUDIO_OUTPUT_BT_A2DP_ENC_CFG {
struct CMD_HDR parent;
struct AUDIO_OUTPUT_BT_A2DP_ENC_CFG bt_a2dp_enc_cfg;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_GET_SINKS_BITMAPS_ID, UUID: 3e8dadc99d9d30ffd9ca0359b481aefd
*/
struct CMD_AUDIO_OUTPUT_GET_SINKS_BITMAPS {
struct CMD_HDR parent;
uint16_t bitmap[AUDIO_OUTPUT_SINKS];
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_USB_CONFIG_ID, UUID: 1d92a552f020db5742f11a3ffd7e544c
*/
struct CMD_AUDIO_OUTPUT_USB_CONFIG {
struct CMD_HDR parent;
uint16_t dev_id;
uint16_t tx_ep_num;
uint32_t tx_sr;
uint8_t tx_ch;
uint8_t tx_width;
uint8_t tx_enable;
uint16_t rx_ep_num;
uint32_t rx_sr;
uint8_t rx_ch;
uint8_t rx_width;
uint8_t rx_enable;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_SET_SIDETONE_ID, UUID: 2cab0e9482cec6aef3715810b1741d7e
*/
struct CMD_AUDIO_OUTPUT_SET_SIDETONE {
struct CMD_HDR parent;
int8_t volume;
int8_t eq_num_stages;
int8_t mic_select;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_GET_SIDETONE_ID, UUID: 3aecffd3a2b31727fdc51f80c619a2e8
*/
struct CMD_AUDIO_OUTPUT_GET_SIDETONE {
struct CMD_HDR parent;
int8_t volume;
int8_t eq_num_stages;
int8_t mic_select;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_SET_SIDETONE_EQ_ID, UUID: 170dc9a272cfdce7ddc3be51336cfd31
*/
struct CMD_AUDIO_OUTPUT_SET_SIDETONE_EQ {
struct CMD_HDR parent;
float coeffs[6];
uint8_t stage_num;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_GET_SIDETONE_EQ_ID, UUID: 8353407caa4726c9e13e007a4693e8d6
*/
struct CMD_AUDIO_OUTPUT_GET_SIDETONE_EQ {
struct CMD_HDR parent;
float coeffs[6];
uint8_t stage_num;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_HOTWORD_WRITE_MODEL_ID, UUID: 0d0ed5ab5392d3d50af34fbf2b152515
*/
struct CMD_AUDIO_INPUT_HOTWORD_WRITE_MODEL {
struct CMD_HDR parent;
uint32_t offset;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_WRITE_MODEL_ID, UUID: c4cf89e0be39c52970e3a51fc7fde8bf
*/
struct CMD_AUDIO_INPUT_AMBIENT_MUSIC_WRITE_MODEL {
struct CMD_HDR parent;
uint32_t offset;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_DETECTED_ID, UUID: 79e7a33c1db0ae28cd055974446e43ec
*/
struct CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_DETECTED {
struct CMD_HDR parent;
uint8_t payload[32];
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_WRITE_MODEL_ID, UUID: f5e3d3b21178744d127ed7621be137d4
*/
struct CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_WRITE_MODEL {
struct CMD_HDR parent;
uint32_t offset;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_UWB_GET_RESET_GPIO_ID, UUID: f0590c6bcc5b702e287fda529dee80f0
*/
struct CMD_UWB_GET_RESET_GPIO {
struct CMD_HDR parent;
uint32_t gpio_value;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_UWB_SET_RESET_GPIO_ID, UUID: f25dfde2fb0bf967c267be45c8232bb6
*/
struct CMD_UWB_SET_RESET_GPIO {
struct CMD_HDR parent;
uint32_t gpio_value;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_UWB_GET_RESET_GPIO_DIRECTION_ID, UUID: e273f999da994560b2a6f6933bdaff8a
*/
struct CMD_UWB_GET_RESET_GPIO_DIRECTION {
struct CMD_HDR parent;
uint32_t gpio_direction;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_UWB_SET_RESET_GPIO_DIRECTION_ID, UUID: 9a120e2a96942ef11b23f77583a0324c
*/
struct CMD_UWB_SET_RESET_GPIO_DIRECTION {
struct CMD_HDR parent;
uint32_t gpio_direction;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_GET_AP_MIC_INDEX_ID, UUID: a929df5b5bddfa49ff1ea831cfc4a720
* CMD_AUDIO_INPUT_SET_AP_MIC_INDEX_ID, UUID: b045a51ff156eace07a40be17d62bd57
*/
struct CMD_AUDIO_INPUT_GET_AP_MIC_INDEX {
struct CMD_HDR parent;
uint8_t mic_process_index; /* For valid values, refer to "enum APMicProcessIndex" */
} __attribute__((packed));
enum APInputProcessorInputIndex {
AP_INPUT_PROCESSOR_MODEM_INPUT_INDEX = 0,
AP_INPUT_PROCESSOR_MIC_INPUT_INDEX,
AP_INPUT_PROCESSOR_BT_INPUT_INDEX,
AP_INPUT_PROCESSOR_USB_INPUT_INDEX,
AP_INPUT_PROCESSOR_ERASER_INPUT_INDEX,
AP_INPUT_PROCESSOR_NUM_INPUTS,
};
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_AP_INPUT_START_ID, UUID: 7db51beda9ec3f72045bcf088eff0458
* CMD_AUDIO_INPUT_MIC_MMAP_ENABLE_ID, UUID: c71f9a144fdcb825b7f3d41a8f750a6e
* CMD_AUDIO_INPUT_MIC_RAW_ENABLE_ID, UUID: 73f00d3c555976a5ee1c49de9344fb0f
*/
struct CMD_AUDIO_INPUT_AP_INPUT_START {
struct CMD_HDR parent;
uint8_t mic_input_source; /* For valid values, refer to "enum APInputProcessorInputIndex" */
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_HOTWORD_FORCE_TRIGGER_TIMESTAMP_ID, UUID: 9246d3839c8088408789a15c4856296b
*/
struct CMD_AUDIO_INPUT_HOTWORD_FORCE_TRIGGER_TIMESTAMP {
struct CMD_HDR parent;
uint64_t request_aoc_ticks;
} __attribute__((packed));
enum CMD_AUDIO_OUTPUT_TELE_CAPTURE_STREAMS {
CMD_AUDIO_OUTPUT_TELE_CAPTURE_UL = 0,
CMD_AUDIO_OUTPUT_TELE_CAPTURE_DL,
CMD_AUDIO_OUTPUT_TELE_CAPTURE_UL_DL,
};
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_SET_TELE_CAPTURE_ID, UUID: b8142505b012cbe9475672086308f5fd
* CMD_AUDIO_OUTPUT_GET_TELE_CAPTURE_ID, UUID: 0475fa5e0509e04286170bbd43166fe0
*/
struct CMD_AUDIO_OUTPUT_TELE_CAPTURE {
struct CMD_HDR parent;
uint8_t stream; /* For valid values, refer to "enum CMD_AUDIO_OUTPUT_TELE_CAPTURE_STREAMS" */
uint8_t enable;
} __attribute__((packed));
#define AUDIO_OUTPUT_DECODER_CFG_OPTIONS_LEN (14) /* UUID: 9ff1a9404bee1600cfdb3e1179714312 */
enum AUDIO_OUTPUT_DECODER_FMT {
AUDIO_OUTPUT_DECODER_UNKNOWN = 0,
AUDIO_OUTPUT_DECODER_MP3,
AUDIO_OUTPUT_DECODER_AAC_LC,
AUDIO_OUTPUT_DECODER_AAC_HE,
AUDIO_OUTPUT_DECODER_AAC_HE2,
AUDIO_OUTPUT_DECODER_AAC_DAB,
AUDIO_OUTPUT_DECODER_AAC_DABPLUS,
};
struct AUDIO_OUTPUT_DECODER_CFG {
uint32_t samplerate;
uint8_t format; /* For valid values, refer to "enum AUDIO_OUTPUT_DECODER_FMT" */
uint8_t channels;
uint8_t options[AUDIO_OUTPUT_DECODER_CFG_OPTIONS_LEN];
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_DECODER_CFG_ID, UUID: ba2da19bc3bea467290ccbf43c7a7d15
* CMD_AUDIO_OUTPUT_DECODER_CFG_GAPLESS_ID, UUID: 98ad7841b31ff246e212d686a87668b9
*/
struct CMD_AUDIO_OUTPUT_DECODER_CFG {
struct CMD_HDR parent;
struct EntrypointDescriptorUnpacked raw_ep_descr;
uint32_t address;
int32_t size;
struct AUDIO_OUTPUT_DECODER_CFG cfg;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_HOTWORD_SRC_GET_SAMPLE_RATE_ID, UUID: cb3c1bfe9fe0d6be597309e557932c23
*/
struct CMD_AUDIO_INPUT_HOTWORD_SRC_GET_SAMPLE_RATE {
struct CMD_HDR parent;
uint8_t input_sample_rate; /* For valid values, refer to "enum SampleRate" */
uint8_t output_sample_rate; /* For valid values, refer to "enum SampleRate" */
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_HOTWORD_SRC_GET_BIT_DEPTH_ID, UUID: b389fd2bc632d44070ad4fdec03f9c6b
*/
struct CMD_AUDIO_INPUT_HOTWORD_SRC_GET_BIT_DEPTH {
struct CMD_HDR parent;
uint8_t bit_depth; /* For valid values, refer to "enum BitsPerSample" */
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_HOTWORD_SRC_GET_CHANNEL_ID, UUID: 571cbaebd082ec6d9b509c68be16dfea
*/
struct CMD_AUDIO_INPUT_HOTWORD_SRC_GET_CHANNEL {
struct CMD_HDR parent;
uint8_t channels; /* For valid values, refer to "enum Channels" */
uint8_t pdm_mask;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_HOTWORD_SRC_GET_INPUT_PATH_ID, UUID: 2225e4b179a5dfbc0ad456c811045909
*/
struct CMD_AUDIO_INPUT_HOTWORD_SRC_GET_INPUT_PATH {
struct CMD_HDR parent;
uint8_t path_id;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_HOTWORD_GET_ERASER_PRE_GAIN_ID, UUID: 64e92f18218e84369cbcd89059ebdd37
*/
struct CMD_AUDIO_INPUT_HOTWORD_GET_ERASER_PRE_GAIN {
struct CMD_HDR parent;
int32_t eraser_pre_gain_cb;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_HOTWORD_SET_ERASER_PRE_GAIN_ID, UUID: fc399c556fc69f7c721c38e2d5052662
*/
struct CMD_AUDIO_INPUT_HOTWORD_SET_ERASER_PRE_GAIN {
struct CMD_HDR parent;
int32_t eraser_pre_gain_cb;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_HOTWORD_GET_ERASER_POST_GAIN_ID, UUID: 6ca3160b1c5ad27b01fa343902fbea84
*/
struct CMD_AUDIO_INPUT_HOTWORD_GET_ERASER_POST_GAIN {
struct CMD_HDR parent;
int32_t eraser_post_gain_cb;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_HOTWORD_SET_ERASER_POST_GAIN_ID, UUID: 7b13944bbccd2f1d0a9faf9dac482163
*/
struct CMD_AUDIO_INPUT_HOTWORD_SET_ERASER_POST_GAIN {
struct CMD_HDR parent;
int32_t eraser_post_gain_cb;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_HOTWORD_GET_NON_ERASER_GAIN_ID, UUID: 93fdd0792f83c3f0889fbd5a5b725a7a
*/
struct CMD_AUDIO_INPUT_HOTWORD_GET_NON_ERASER_GAIN {
struct CMD_HDR parent;
int32_t non_eraser_gain_cb;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_HOTWORD_SET_NON_ERASER_GAIN_ID, UUID: 5194874595245e958523a171ea2f6bad
*/
struct CMD_AUDIO_INPUT_HOTWORD_SET_NON_ERASER_GAIN {
struct CMD_HDR parent;
int32_t non_eraser_gain_cb;
} __attribute__((packed));
enum TeleCaptureMode {
ANDROID_TELE_CAPTURE_MODE_OFF = 0,
ANDROID_TELE_CAPTURE_MODE_UL,
ANDROID_TELE_CAPTURE_MODE_DL,
ANDROID_TELE_CAPTURE_MODE_ULDL,
ANDROID_TELE_CAPTURE_MODE_TOT,
};
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_SET_TELE_CAPT_ID, UUID: 942e867ea3ba1c439083a68bf4bf9f94
* CMD_AUDIO_OUTPUT_GET_TELE_CAPT_ID, UUID: 10aa17f6012e86309e2fd059ee03253a
*/
struct CMD_AUDIO_OUTPUT_TELE_CAPT {
struct CMD_HDR parent;
uint8_t ring;
uint8_t mode; /* For valid values, refer to "enum TeleCaptureMode" */
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_SET_INCALL_MUSIC_ID, UUID: d97070f9802ed4b33d5f03c7a796f591
* CMD_AUDIO_INPUT_GET_INCALL_MUSIC_ID, UUID: 30cae4a279c54727dbbd0272edb37335
*/
struct CMD_AUDIO_INPUT_INCALL_MUSIC {
struct CMD_HDR parent;
uint8_t ring;
uint8_t enable;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_GET_DSP_IDENTIFIER_ID, UUID: eeca1a8393a2d6e8a95edd61cbfae641
*/
struct CMD_AUDIO_INPUT_DSP_IDENTIFIER {
struct CMD_HDR parent;
uint32_t version;
uint8_t payload[64];
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_HOTWORD_GET_CLEANER_POST_GAIN_ID, UUID: cbd7af8666b927f82aeddcb86fc5bde5
*/
struct CMD_AUDIO_INPUT_HOTWORD_GET_CLEANER_POST_GAIN {
struct CMD_HDR parent;
int32_t cleaner_post_gain_cb;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_HOTWORD_SET_CLEANER_POST_GAIN_ID, UUID: 6c5048c15135ce52744e1af037cef70e
*/
struct CMD_AUDIO_INPUT_HOTWORD_SET_CLEANER_POST_GAIN {
struct CMD_HDR parent;
int32_t cleaner_post_gain_cb;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_GET_CHRE_GAIN_ID, UUID: a861c0ef25f62e08f6f2a6d6ba9b7f3f
*/
struct CMD_AUDIO_INPUT_GET_CHRE_GAIN {
struct CMD_HDR parent;
int32_t chre_gain_cb;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_SET_CHRE_GAIN_ID, UUID: 8db5cdb6c1ebae6952adb452693a9bca
*/
struct CMD_AUDIO_INPUT_SET_CHRE_GAIN {
struct CMD_HDR parent;
int32_t chre_gain_cb;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_SET_INCALL_MUSIC_CHAN_ID, UUID: 92b41b1c667d42b82749d16a767fb384
* CMD_AUDIO_INPUT_GET_INCALL_MUSIC_CHAN_ID, UUID: 7e647c28e7f23a1473fc9267821f1051
*/
struct CMD_AUDIO_INPUT_INCALL_MUSIC_CHAN {
struct CMD_HDR parent;
uint8_t ring;
uint8_t channel;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_DEC_CH_GAIN_SET_ID, UUID: 372207e1fa69087ada47e23a3f964954
* CMD_AUDIO_OUTPUT_DEC_CH_GAIN_GET_ID, UUID: 132703c51bb018bbf2c9a870e8b974d8
*/
struct CMD_AUDIO_OUTPUT_DEC_CH_GAIN {
struct CMD_HDR parent;
uint32_t ch_bit_mask;
int32_t ch_gains[2];
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_SET_INCALL_MUSIC_ID, UUID: ae8516b1e4237d7e7ab63c7193ef60b7
* CMD_AUDIO_OUTPUT_GET_INCALL_MUSIC_ID, UUID: 9924e5b1371480463653336a2b911175
*/
struct CMD_AUDIO_OUTPUT_INCALL_MUSIC {
struct CMD_HDR parent;
uint8_t ring;
uint8_t enable;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_SET_INCALL_MUSIC_CHAN_ID, UUID: 06ec150b46781df7093004014363bcf1
* CMD_AUDIO_OUTPUT_GET_INCALL_MUSIC_CHAN_ID, UUID: b712dc35a95e562dfc1f90e7df03eb33
*/
struct CMD_AUDIO_OUTPUT_INCALL_MUSIC_CHAN {
struct CMD_HDR parent;
uint8_t ring;
uint8_t channel;
} __attribute__((packed));
enum SINK_ID {
SINK_SPEAKER = 0,
SINK_HEADPHONE,
SINK_BT,
SINK_USB,
SINK_MODEM,
SINK_TOT,
};
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_SINK2_ID, UUID: afcb174afe4b8670d9750e812d1c7d8a
*/
struct CMD_AUDIO_OUTPUT_SINK2 {
struct CMD_HDR parent;
uint8_t sink; /* For valid values, refer to "enum SINK_ID" */
uint8_t mode;
uint8_t timestamping;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_MMAP_ENABLE_2_ID, UUID: b7ab82241eca695a59c93379d6ef8fc4
*/
struct CMD_AUDIO_INPUT_MMAP_ENABLE_2 {
struct CMD_HDR parent;
uint8_t chan; /* For valid values, refer to "enum Channels" */
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_RAW_ENABLE_2_ID, UUID: 756ed891fa5df48204ddef41bed9e0d8
*/
struct CMD_AUDIO_INPUT_RAW_ENABLE_2 {
struct CMD_HDR parent;
uint8_t chan; /* For valid values, refer to "enum Channels" */
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_USB_CONFIG_V2_ID, UUID: b6537926b5b2d37c4c174b18427a21ea
*/
struct CMD_AUDIO_OUTPUT_USB_CONFIG_V2 {
struct CMD_HDR parent;
uint16_t bus_id;
uint16_t dev_num;
uint16_t tx_ep_num;
uint32_t tx_format;
uint32_t tx_sr;
uint8_t tx_ch;
uint8_t tx_width;
uint8_t tx_enable;
uint16_t rx_ep_num;
uint32_t rx_format;
uint32_t rx_sr;
uint8_t rx_ch;
uint8_t rx_width;
uint8_t rx_enable;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_USB_CONTROL_NOTIFY_CONN_STAT_V2_ID, UUID: 815b96706de911ee94096151094dcd08
*/
struct CMD_USB_CONTROL_NOTIFY_CONN_STAT_V2 {
struct CMD_HDR parent;
uint16_t bus_id;
uint16_t dev_num;
uint16_t slot_id;
uint32_t conn_state;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_USB_CONTROL_SET_DCBAA_PTR_ID, UUID: 062ec07be950de1a51f6672f6be16e31
*/
struct CMD_USB_CONTROL_SET_DCBAA_PTR {
struct CMD_HDR parent;
uint64_t aoc_dcbaa_ptr;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_USB_CONTROL_SET_ISOC_TR_INFO_ID, UUID: 332af5a31fdbaeced70194c13e177a1f
*/
struct CMD_USB_CONTROL_SET_ISOC_TR_INFO {
struct CMD_HDR parent;
uint16_t ep_id;
uint16_t dir;
uint32_t type;
uint32_t num_segs;
uint32_t seg_ptr;
uint32_t max_packet;
uint32_t deq_ptr;
uint32_t enq_ptr;
uint32_t cycle_state;
uint32_t num_trbs_free;
} __attribute__((packed));
enum AudioDSPMode {
AUDIO_DSP_MODE_AMBIENT = 0,
AUDIO_DSP_MODE_RECORD,
AUDIO_DSP_MODE_TELEPHONY,
AUDIO_DSP_MODE_RESERVED_0,
AUDIO_DSP_MODE_RESERVED_1,
AUDIO_DSP_MODE_RESERVED_2,
};
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_DSP_MODE_SET_ID, UUID: 9df7cfb0c11779420f8e25164c143673
* CMD_AUDIO_OUTPUT_DSP_MODE_GET_ID, UUID: 33ae968607b1c6af3d5708e95dd8709e
*/
struct CMD_AUDIO_OUTPUT_DSP_MODE {
struct CMD_HDR parent;
uint8_t mode; /* For valid values, refer to "enum AudioDSPMode" */
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_GET_MEMORY_EXCEPTION_DATA_COUNT_ID, UUID: a205712df6b7c487c9c62b486dc1b056
*/
struct CMD_GET_MEMORY_EXCEPTION_DATA_COUNT {
struct CMD_HDR parent;
uint32_t num_memory_exception;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_GET_MEMORY_EXCEPTION_DATA_ID, UUID: 68cb4b7529be7de160dda916502bdd6f
*/
struct CMD_GET_MEMORY_EXCEPTION_DATA {
struct CMD_HDR parent;
uint32_t id;
uint32_t return_address;
uint32_t fault_address;
char task_name[16];
uint8_t log_index;
uint8_t valid;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_GET_MEMORY_VOTES_DATA_COUNT_ID, UUID: 3c71e64c267c6e4a4e2e67535de0b5bd
*/
struct CMD_GET_MEMORY_VOTES_DATA_COUNT {
struct CMD_HDR parent;
uint32_t num_of_clients;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_GET_MEMORY_VOTES_DATA_ID, UUID: 09a0d51b06bf64fd7333c09abf73ed6a
*/
struct CMD_GET_MEMORY_VOTES_DATA {
struct CMD_HDR parent;
uint64_t last_on_time_ns;
uint64_t total_time_us;
uint32_t votes;
uint32_t total_votes;
uint32_t on_votes;
uint8_t core_id;
uint8_t app_id;
uint8_t valid;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_MODEM_INPUT_START_2_ID, UUID: 0c7111383813f4cc270e1b7a20d07b5e
*/
struct CMD_AUDIO_INPUT_MODEM_INPUT_START_2 {
struct CMD_HDR parent;
uint8_t mic_input_source; /* For valid values, refer to "enum ModemInputIndex" */
uint8_t ref_input_source; /* For valid values, refer to "enum ModemInputIndex" */
} __attribute__((packed));
enum FeedbackSrcInputIndex {
FEEDBACK_SRC_AEC_SPKR_INPUT_INDEX = 0,
FEEDBACK_SRC_AEC_BT_INPUT_INDEX,
FEEDBACK_SRC_AEC_USB_INPUT_INDEX,
FEEDBACK_SRC_NUM_INPUTS,
};
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_HOTWORD_SELECT_AEC_REF_ID, UUID: a5fec1494a593b4bc313fd4fca0645dd
*/
struct CMD_AUDIO_INPUT_FEEDBACK_SRC_SELECT_REF {
struct CMD_HDR parent;
int32_t aec_ref_index; /* For valid values, refer to "enum FeedbackSrcInputIndex" */
} __attribute__((packed));
enum UDFPS_INPUT_SOURCE {
SOURCE_NONE = 0,
SOURCE_OSC,
SOURCE_DISP,
SOURCE_TOT,
};
/**
* Structure associated with the following commands:
*
* CMD_UDFPS_SET_CLOCK_SOURCE_ID, UUID: a4c07b287b2f1b34f9d8f53b3d129cc6
*/
struct CMD_UDFPS_SET_CLOCK_SOURCE {
struct CMD_HDR parent;
uint8_t clock_source; /* For valid values, refer to "enum UDFPS_INPUT_SOURCE" */
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_UDFPS_GET_CLOCK_FREQUENCY_ID, UUID: bcaae012229513cb5c78aa608d2366af
*/
struct CMD_UDFPS_GET_CLOCK_FREQUENCY {
struct CMD_HDR parent;
uint32_t clock_freq_in_u32;
uint8_t clock_source; /* For valid values, refer to "enum UDFPS_INPUT_SOURCE" */
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_USB_CONTROL_SET_OFFLOAD_STATE_ID, UUID: 7c3fb83ef3e4cb867213a8cecc55759e
*/
struct CMD_USB_CONTROL_SET_OFFLOAD_STATE {
struct CMD_HDR parent;
uint8_t offloading;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_USB_CONTROL_SEND_FEEDBACK_EP_INFO_ID, UUID: ad56add5dc20f99eea004f40c28ed0ae
*/
struct CMD_USB_CONTROL_SEND_FEEDBACK_EP_INFO {
struct CMD_HDR parent;
uint8_t enabled;
uint16_t bus_id;
uint16_t dev_num;
uint16_t slot_id;
uint16_t ep_num;
uint32_t max_packet;
uint16_t binterval;
uint16_t brefresh;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_MEDIA_COMMANDS_WRITE_MODEL_ID, UUID: 28a42016e23074c21d1462197b9c9d59
*/
struct CMD_AUDIO_INPUT_MEDIA_COMMANDS_WRITE_MODEL {
struct CMD_HDR parent;
uint32_t offset;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_MEM_MAP_REGION_ID, UUID: 0e5f7c97aa5dfa4e27aea3606fee68e4
*/
struct CMD_MEM_MAP_REGION {
struct CMD_CORE_GENERIC parent;
uint32_t handle;
uint32_t base;
uint32_t size;
uint8_t mapped;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_OUTPUT_DECODER_GAPLESS_METADATA_ID, UUID: 71656480fba7c2512eb2c8493e71e7e6
*/
struct CMD_AUDIO_OUTPUT_DECODER_GAPLESS_METADATA {
struct CMD_HDR parent;
uint32_t curr_track_delay_frames;
uint32_t curr_track_padding_frames;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_HOTWORD_SET_AP_OFFLOAD_ID, UUID: 56f7e66fe4bff9842ca5fc4c2c5718a7
*/
struct CMD_AUDIO_INPUT_HOTWORD_SET_AP_OFFLOAD {
struct CMD_HDR parent;
uint8_t enable_offload;
uint8_t num_mics;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_DBG_MCPS_ID, UUID: 1c45eb22738c03451a98b22ff078c44e
*/
struct CMD_DBG_MCPS {
struct CMD_CORE_GENERIC parent;
int32_t is_enabled;
int32_t is_cumulative;
int32_t print_now;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_DBG_SCRIB_ID, UUID: ba73a85513bc179cd15e9ba3f7a3ec4b
*/
struct CMD_DBG_SCRIB {
struct CMD_CORE_GENERIC parent;
int32_t override_enable;
int32_t prescrib;
int32_t postscrib;
int32_t free_after_free;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_DBG_PRIVATE_ID, UUID: e338efdfe6222a0d2dd95100233654c1
*/
struct CMD_DBG_PRIVATE {
struct CMD_CORE_GENERIC parent;
uint8_t sub_cmd;
uint8_t payload_size;
} __attribute__((packed));
enum ApStateTransition {
ENTER_SLEEP = 0,
EXIT_SLEEP,
ENTER_SICD,
EXIT_SICD,
AP_STATE_TRANSITION_TOT,
};
/**
* Structure associated with the following commands:
*
* CMD_AP_STATE_TRANSITION_ID, UUID: a52bd38054f3e3f92eabb5c94f5d65fe
*/
struct CMD_AP_STATE_TRANSITION {
struct CMD_HDR parent;
uint8_t transition; /* For valid values, refer to "enum ApStateTransition" */
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_SET_CHRE_SRC_AEC_TIMEOUT_ID, UUID: cf9af404b8238148390eb250b535c2a9
*/
struct CMD_AUDIO_INPUT_SET_CHRE_SRC_AEC_TIMEOUT {
struct CMD_HDR parent;
uint32_t timeout_ms;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_SET_CHRE_SRC_PDM_GAIN_ID, UUID: 70ad1f841ce46465e2389e08938835c9
*/
struct CMD_AUDIO_INPUT_SET_CHRE_SRC_PDM_GAIN {
struct CMD_HDR parent;
int32_t gain_centibel;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_AUDIO_INPUT_SET_CHRE_SRC_AEC_GAIN_ID, UUID: fde782e5f1431573bd867d163fbf43a1
*/
struct CMD_AUDIO_INPUT_SET_CHRE_SRC_AEC_GAIN {
struct CMD_HDR parent;
int32_t gain_centibel;
} __attribute__((packed));
struct NOTIF_HDR {
struct CONTAINER_HDR parent;
uint32_t id;
uint32_t tag;
} __attribute__((packed));
#define notif_payload (36) /* UUID: 21377ce718fd3e9bec883f8fb476c056 */
/**
* Structure associated with the following notifications:
*
* NOTIF_AUDIO_INPUT_AP_MIC_RECORD_DATA_AVAILABLE_ID, UUID: 855757d797533015c32d352f66e04679
*/
struct NOTIF {
struct NOTIF_HDR parent;
uint8_t payload[notif_payload];
} __attribute__((packed));
/**
* Helper function to initialize commands
*
* \param[out] cmd Pointer to command structure to initialize
* \param[in] id Command ID. Refer to \ref AOC_COMMAND
* \param[in] length Command length (size of the command structure)
*/
static inline void AocCmdHdrSet(struct CMD_HDR * cmd, uint16_t id, uint16_t length) {
#ifdef __KERNEL__
static atomic_t cmd_cntr_ = ATOMIC_INIT(-1);
cmd->parent.cntr = atomic_inc_return(&cmd_cntr_);
#else
static int cmd_cntr_ = 0;
cmd->parent.cntr = cmd_cntr_++;
#endif
cmd->parent.type = DATA_TYPE_CMD;
cmd->parent.len = length;
cmd->id = id;
}
/**
* Helper function to initialize commands that don't need to be acked
*
* \param[out] cmd Pointer to command structure to initialize
* \param[in] id Command ID. Refer to \ref AOC_COMMAND
* \param[in] length Command length (size of the command structure)
*/
static inline void AocCmdNoAckHdrSet(struct CMD_HDR * cmd, uint16_t id, uint16_t length) {
#ifdef __KERNEL__
static atomic_t cmd_cntr_ = ATOMIC_INIT(-1);
cmd->parent.cntr = atomic_inc_return(&cmd_cntr_);
#else
static int cmd_cntr_ = 0;
cmd->parent.cntr = cmd_cntr_++;
#endif
cmd->parent.type = DATA_TYPE_CMD_NO_ACK;
cmd->parent.len = length;
cmd->id = id;
}
/**
* Total number of UUID strings to check against the FW image.
*/
#define AOC_UUID_ENTRIES (258)
/**
* UUID entry size.
*/
#define AOC_UUID_SIZE (16)
/**
* Function to check interface compatibility
*
* \param[in] addr UUID table's address
* \param[in] size UUID table's size
*
* \return 0 if compatibility is Ok, -1 otherwise
*/
static inline int AocInterfaceCheck(const void * addr, int size) {
static const uint8_t uuid_array[AOC_UUID_ENTRIES][AOC_UUID_SIZE] = {
{ 0x01, 0x7e, 0x87, 0x91, 0x50, 0x8f, 0x32, 0x97, 0x11, 0x80, 0x6b, 0x7b, 0x17, 0x84, 0x65, 0x4a},
{ 0x02, 0xaa, 0x59, 0x76, 0x93, 0x91, 0xdb, 0xf4, 0xe0, 0xba, 0xe8, 0x2f, 0xbc, 0xae, 0xbb, 0x3c},
{ 0x03, 0xbb, 0xd8, 0x7e, 0x56, 0xc4, 0x52, 0xd6, 0x27, 0xb9, 0x1e, 0x6f, 0xb1, 0x35, 0xaa, 0x6d},
{ 0x04, 0x75, 0xfa, 0x5e, 0x05, 0x09, 0xe0, 0x42, 0x86, 0x17, 0x0b, 0xbd, 0x43, 0x16, 0x6f, 0xe0},
{ 0x04, 0xbb, 0x6c, 0xf8, 0xcd, 0x42, 0x90, 0xca, 0xb2, 0xf4, 0xa1, 0xd5, 0x98, 0x4a, 0xd1, 0x37},
{ 0x05, 0xc8, 0xdb, 0x46, 0xe2, 0x74, 0xa9, 0x08, 0x31, 0x97, 0xbd, 0xdb, 0xf5, 0x34, 0xe6, 0x37},
{ 0x06, 0x2e, 0xc0, 0x7b, 0xe9, 0x50, 0xde, 0x1a, 0x51, 0xf6, 0x67, 0x2f, 0x6b, 0xe1, 0x6e, 0x31},
{ 0x06, 0xc9, 0x6d, 0x4c, 0xc0, 0x17, 0x3e, 0x6f, 0xe6, 0xbf, 0xe9, 0x5c, 0x97, 0xbf, 0xe9, 0x33},
{ 0x06, 0xec, 0x15, 0x0b, 0x46, 0x78, 0x1d, 0xf7, 0x09, 0x30, 0x04, 0x01, 0x43, 0x63, 0xbc, 0xf1},
{ 0x08, 0x03, 0x6d, 0x24, 0xf5, 0x2f, 0xe0, 0x21, 0xa2, 0xef, 0x84, 0x19, 0xf2, 0x8d, 0xbf, 0x0d},
{ 0x08, 0x5b, 0x3c, 0x10, 0x69, 0x3d, 0xe3, 0xcd, 0x14, 0xa5, 0xab, 0xc2, 0x25, 0x82, 0x80, 0xce},
{ 0x09, 0xa0, 0xd5, 0x1b, 0x06, 0xbf, 0x64, 0xfd, 0x73, 0x33, 0xc0, 0x9a, 0xbf, 0x73, 0xed, 0x6a},
{ 0x0a, 0x59, 0xd4, 0xc7, 0x2b, 0x38, 0x77, 0x11, 0x45, 0x4f, 0xbd, 0x37, 0x5d, 0x30, 0x44, 0x17},
{ 0x0a, 0x81, 0x94, 0x45, 0x4e, 0x79, 0x09, 0xaa, 0xc5, 0x00, 0x3b, 0xe1, 0x76, 0xe8, 0x20, 0x91},
{ 0x0a, 0x84, 0x69, 0xb5, 0xb9, 0x6b, 0x5c, 0xcb, 0xf7, 0x3a, 0x68, 0xd0, 0x34, 0xfc, 0x69, 0xb6},
{ 0x0c, 0x71, 0x11, 0x38, 0x38, 0x13, 0xf4, 0xcc, 0x27, 0x0e, 0x1b, 0x7a, 0x20, 0xd0, 0x7b, 0x5e},
{ 0x0d, 0x0e, 0xd5, 0xab, 0x53, 0x92, 0xd3, 0xd5, 0x0a, 0xf3, 0x4f, 0xbf, 0x2b, 0x15, 0x25, 0x15},
{ 0x0e, 0x5f, 0x7c, 0x97, 0xaa, 0x5d, 0xfa, 0x4e, 0x27, 0xae, 0xa3, 0x60, 0x6f, 0xee, 0x68, 0xe4},
{ 0x10, 0xaa, 0x17, 0xf6, 0x01, 0x2e, 0x86, 0x30, 0x9e, 0x2f, 0xd0, 0x59, 0xee, 0x03, 0x25, 0x3a},
{ 0x11, 0x76, 0x82, 0xaf, 0x13, 0x45, 0x5a, 0x3d, 0xe0, 0xf0, 0xf0, 0x1a, 0x02, 0xa3, 0xd4, 0x66},
{ 0x12, 0x89, 0x2d, 0xad, 0xd9, 0xba, 0x4d, 0x23, 0xea, 0xe4, 0x85, 0xd3, 0xd5, 0x9f, 0xcc, 0xf0},
{ 0x13, 0x27, 0x03, 0xc5, 0x1b, 0xb0, 0x18, 0xbb, 0xf2, 0xc9, 0xa8, 0x70, 0xe8, 0xb9, 0x74, 0xd8},
{ 0x14, 0x40, 0x6b, 0x26, 0x35, 0x21, 0x56, 0xfc, 0x3f, 0xd4, 0x5d, 0xbd, 0x2a, 0xfe, 0x8f, 0x21},
{ 0x14, 0xa6, 0x59, 0x85, 0x37, 0xe1, 0x9f, 0x97, 0x87, 0x9e, 0xaf, 0x9c, 0xfa, 0x6f, 0xb9, 0xba},
{ 0x14, 0xf1, 0x44, 0xaf, 0x01, 0x3e, 0x1a, 0x5f, 0xf4, 0xcd, 0x17, 0xfc, 0x43, 0xbd, 0x90, 0x80},
{ 0x15, 0xc1, 0x57, 0x0c, 0x12, 0x58, 0xba, 0x2a, 0xcd, 0xd2, 0xd4, 0xdd, 0x2e, 0x17, 0x2f, 0xbe},
{ 0x17, 0x0d, 0xc9, 0xa2, 0x72, 0xcf, 0xdc, 0xe7, 0xdd, 0xc3, 0xbe, 0x51, 0x33, 0x6c, 0xfd, 0x31},
{ 0x17, 0xda, 0x3a, 0xdb, 0xbb, 0xfb, 0xdb, 0xe6, 0x21, 0x5b, 0x81, 0x3d, 0xca, 0x17, 0xe1, 0x41},
{ 0x1a, 0x8f, 0x67, 0xd7, 0x66, 0xcc, 0x9a, 0x1e, 0x21, 0xd6, 0x54, 0x8a, 0xfd, 0xc2, 0xba, 0x57},
{ 0x1a, 0xc2, 0xb5, 0xc1, 0x94, 0xcb, 0x12, 0x67, 0xb0, 0xa9, 0xd9, 0xda, 0x7a, 0xe1, 0xd6, 0xc9},
{ 0x1c, 0x45, 0xeb, 0x22, 0x73, 0x8c, 0x03, 0x45, 0x1a, 0x98, 0xb2, 0x2f, 0xf0, 0x78, 0xc4, 0x4e},
{ 0x1c, 0x8e, 0x98, 0xae, 0x6f, 0xd8, 0x58, 0x47, 0xb2, 0x84, 0x00, 0xbe, 0xc1, 0x35, 0x59, 0x10},
{ 0x1d, 0x92, 0xa5, 0x52, 0xf0, 0x20, 0xdb, 0x57, 0x42, 0xf1, 0x1a, 0x3f, 0xfd, 0x7e, 0x54, 0x4c},
{ 0x1d, 0xb1, 0x1b, 0x44, 0x6b, 0xa2, 0x2d, 0xb9, 0x92, 0x42, 0x1b, 0xdb, 0x59, 0x01, 0x17, 0x51},
{ 0x1d, 0xfc, 0xc8, 0xcf, 0x13, 0x0b, 0x1b, 0x42, 0xe6, 0x72, 0x8c, 0xac, 0xd4, 0xe0, 0xa7, 0xd3},
{ 0x20, 0xa7, 0x8f, 0x1f, 0x76, 0x36, 0xfd, 0x03, 0xaf, 0x70, 0x07, 0x82, 0x36, 0xb4, 0xd2, 0x71},
{ 0x21, 0x37, 0x7c, 0xe7, 0x18, 0xfd, 0x3e, 0x9b, 0xec, 0x88, 0x3f, 0x8f, 0xb4, 0x76, 0xc0, 0x56},
{ 0x21, 0x40, 0x87, 0xaf, 0x52, 0xdc, 0xfa, 0x3f, 0x39, 0x30, 0xc8, 0xa9, 0xa9, 0x86, 0xc7, 0x83},
{ 0x21, 0xd2, 0x3b, 0x51, 0x10, 0x75, 0x47, 0xec, 0x3a, 0x08, 0x33, 0x80, 0xca, 0xce, 0x82, 0x5e},
{ 0x22, 0x25, 0xe4, 0xb1, 0x79, 0xa5, 0xdf, 0xbc, 0x0a, 0xd4, 0x56, 0xc8, 0x11, 0x04, 0x59, 0x09},
{ 0x24, 0x9a, 0xda, 0x53, 0xf8, 0xb6, 0xce, 0x22, 0x6b, 0xa9, 0xaa, 0x73, 0xda, 0xbb, 0xf5, 0xe6},
{ 0x25, 0xd1, 0x6d, 0x03, 0x7a, 0x41, 0xa1, 0xf8, 0x54, 0x06, 0xa0, 0x02, 0x90, 0x17, 0xa0, 0x2a},
{ 0x27, 0x18, 0x72, 0xe1, 0xbf, 0x7b, 0x57, 0xd8, 0xc2, 0xbb, 0x10, 0x84, 0x72, 0x06, 0xe8, 0x88},
{ 0x28, 0xa4, 0x20, 0x16, 0xe2, 0x30, 0x74, 0xc2, 0x1d, 0x14, 0x62, 0x19, 0x7b, 0x9c, 0x9d, 0x59},
{ 0x2a, 0x38, 0x91, 0xf4, 0xd9, 0x66, 0x73, 0x05, 0xcc, 0x1d, 0x5d, 0xcf, 0x03, 0xbe, 0x8d, 0x85},
{ 0x2a, 0x39, 0x2f, 0x6c, 0x9f, 0x9a, 0xc7, 0x88, 0xfb, 0x2a, 0x12, 0xa6, 0xe4, 0xa5, 0xdd, 0xe5},
{ 0x2a, 0xb9, 0x8e, 0xc5, 0x8f, 0x7c, 0x97, 0x04, 0xb4, 0xe8, 0x3b, 0x93, 0xbb, 0xce, 0xfa, 0xa2},
{ 0x2a, 0xd9, 0x11, 0x9c, 0x66, 0xc8, 0xc4, 0x8a, 0x45, 0x7d, 0x6d, 0x17, 0x5c, 0x53, 0x27, 0x60},
{ 0x2c, 0x04, 0x89, 0xaf, 0xcb, 0x07, 0xc2, 0x71, 0x45, 0x4e, 0x4d, 0xa7, 0x16, 0x62, 0x23, 0xff},
{ 0x2c, 0x3d, 0x11, 0xcf, 0x78, 0x8e, 0x47, 0xc0, 0x93, 0x75, 0xb6, 0x0e, 0xf4, 0x47, 0x77, 0xfc},
{ 0x2c, 0xab, 0x0e, 0x94, 0x82, 0xce, 0xc6, 0xae, 0xf3, 0x71, 0x58, 0x10, 0xb1, 0x74, 0x1d, 0x7e},
{ 0x2f, 0xce, 0xdf, 0xa6, 0x97, 0xab, 0x03, 0x43, 0x86, 0x3d, 0x06, 0xf3, 0xd6, 0x08, 0xc1, 0x0e},
{ 0x30, 0x76, 0xf3, 0x87, 0xa6, 0x78, 0xce, 0x54, 0xfa, 0xda, 0x1a, 0xf5, 0xa8, 0x3b, 0x63, 0xd6},
{ 0x30, 0xca, 0xe4, 0xa2, 0x79, 0xc5, 0x47, 0x27, 0xdb, 0xbd, 0x02, 0x72, 0xed, 0xb3, 0x73, 0x35},
{ 0x32, 0x20, 0x9e, 0x63, 0x2e, 0xe6, 0x7e, 0x9b, 0x50, 0x7a, 0x06, 0x6e, 0x1c, 0xe3, 0x1e, 0x64},
{ 0x33, 0x2a, 0xf5, 0xa3, 0x1f, 0xdb, 0xae, 0xce, 0xd7, 0x01, 0x94, 0xc1, 0x3e, 0x17, 0x7a, 0x1f},
{ 0x33, 0x94, 0xe9, 0x85, 0xe5, 0xa4, 0xc7, 0x67, 0xef, 0xd2, 0xf3, 0x76, 0xa6, 0xd3, 0xf1, 0x0f},
{ 0x33, 0xae, 0x96, 0x86, 0x07, 0xb1, 0xc6, 0xaf, 0x3d, 0x57, 0x08, 0xe9, 0x5d, 0xd8, 0x70, 0x9e},
{ 0x36, 0x13, 0x17, 0x7f, 0x5b, 0x58, 0x7d, 0xfd, 0xaa, 0xd1, 0x55, 0x24, 0xd2, 0x97, 0x67, 0x26},
{ 0x36, 0x67, 0xc2, 0xaf, 0xfe, 0xe4, 0x2f, 0xed, 0x78, 0x89, 0x2d, 0x05, 0x62, 0x6d, 0x0a, 0x88},
{ 0x36, 0x7c, 0xc9, 0xdc, 0xdb, 0x4c, 0xcb, 0x52, 0x95, 0xd1, 0x1a, 0xb0, 0x54, 0xc3, 0x71, 0x06},
{ 0x37, 0x22, 0x07, 0xe1, 0xfa, 0x69, 0x08, 0x7a, 0xda, 0x47, 0xe2, 0x3a, 0x3f, 0x96, 0x49, 0x54},
{ 0x37, 0xb9, 0xc6, 0x86, 0x48, 0x9b, 0x1c, 0x89, 0x6a, 0xb3, 0xe6, 0x6e, 0xa0, 0x84, 0xf6, 0x46},
{ 0x37, 0xf8, 0x5b, 0xad, 0x8d, 0xca, 0x4b, 0xe8, 0x3d, 0x27, 0xb4, 0xec, 0xc9, 0x3c, 0x5b, 0xdd},
{ 0x3a, 0xec, 0xff, 0xd3, 0xa2, 0xb3, 0x17, 0x27, 0xfd, 0xc5, 0x1f, 0x80, 0xc6, 0x19, 0xa2, 0xe8},
{ 0x3b, 0xfa, 0x87, 0x99, 0x9f, 0xaf, 0x40, 0xdf, 0x0f, 0xee, 0xf2, 0x3d, 0xd9, 0x4c, 0xc5, 0x94},
{ 0x3c, 0x71, 0xe6, 0x4c, 0x26, 0x7c, 0x6e, 0x4a, 0x4e, 0x2e, 0x67, 0x53, 0x5d, 0xe0, 0xb5, 0xbd},
{ 0x3e, 0x8d, 0xad, 0xc9, 0x9d, 0x9d, 0x30, 0xff, 0xd9, 0xca, 0x03, 0x59, 0xb4, 0x81, 0xae, 0xfd},
{ 0x3f, 0x7e, 0x21, 0x28, 0x19, 0x4a, 0xbb, 0x2c, 0x20, 0x72, 0xf2, 0xb8, 0x95, 0xfa, 0xd9, 0xf3},
{ 0x40, 0xbd, 0xd5, 0x3e, 0x16, 0x32, 0x96, 0x23, 0x34, 0x59, 0x4c, 0xb1, 0xf0, 0xf9, 0x2d, 0xa5},
{ 0x43, 0xfd, 0x27, 0xea, 0x86, 0xc0, 0xab, 0x09, 0x71, 0xba, 0x99, 0x27, 0x5d, 0xbe, 0xc1, 0x61},
{ 0x4a, 0x1e, 0xe5, 0x81, 0xb6, 0x4d, 0x2d, 0x1e, 0x3c, 0xf7, 0x01, 0x41, 0x34, 0x75, 0xa8, 0x50},
{ 0x4a, 0x4e, 0xc7, 0x4c, 0x3e, 0xda, 0x93, 0x5d, 0x8a, 0x28, 0xe2, 0xa9, 0x42, 0xe4, 0xa7, 0x5b},
{ 0x4b, 0x09, 0x29, 0xd9, 0x02, 0xbd, 0x8d, 0xfb, 0x96, 0x0f, 0x5b, 0x41, 0x70, 0x42, 0x98, 0x2c},
{ 0x4b, 0x17, 0xcf, 0x24, 0x42, 0xac, 0x4a, 0xf4, 0x94, 0xe2, 0xf7, 0x27, 0x38, 0x8d, 0x8e, 0xd8},
{ 0x4c, 0x6d, 0xa4, 0x04, 0xf6, 0xf1, 0xe1, 0xe0, 0x2e, 0xd9, 0xa1, 0xbf, 0xa1, 0xbe, 0xf4, 0x36},
{ 0x4c, 0xe9, 0xe2, 0x32, 0xb0, 0xad, 0x1d, 0xc1, 0x9b, 0xd9, 0x8d, 0x76, 0x65, 0xbf, 0x93, 0x53},
{ 0x50, 0x4d, 0x49, 0x0d, 0x70, 0x4a, 0xc2, 0xbe, 0xf2, 0xaf, 0x10, 0x88, 0x7b, 0x9b, 0x1a, 0xd3},
{ 0x51, 0x94, 0x87, 0x45, 0x95, 0x24, 0x5e, 0x95, 0x85, 0x23, 0xa1, 0x71, 0xea, 0x2f, 0x6b, 0xad},
{ 0x52, 0x3a, 0x9f, 0x7b, 0x74, 0x3e, 0xa2, 0x9e, 0xa2, 0x3a, 0x18, 0xc0, 0x87, 0x9b, 0x0d, 0xcc},
{ 0x53, 0x8e, 0x9a, 0xc8, 0x80, 0x22, 0xdc, 0x3b, 0xce, 0xc3, 0x11, 0xed, 0xa8, 0xb8, 0x78, 0x0f},
{ 0x56, 0xf7, 0xe6, 0x6f, 0xe4, 0xbf, 0xf9, 0x84, 0x2c, 0xa5, 0xfc, 0x4c, 0x2c, 0x57, 0x18, 0xa7},
{ 0x57, 0x1c, 0xba, 0xeb, 0xd0, 0x82, 0xec, 0x6d, 0x9b, 0x50, 0x9c, 0x68, 0xbe, 0x16, 0xdf, 0xea},
{ 0x57, 0xc6, 0x7d, 0xee, 0xa6, 0xd1, 0x11, 0xd6, 0x07, 0xd6, 0x91, 0x4e, 0x29, 0xc7, 0xa3, 0x2c},
{ 0x59, 0xbd, 0x69, 0xe4, 0xf8, 0xda, 0x57, 0xee, 0x84, 0x40, 0x43, 0xc4, 0x26, 0x23, 0x9b, 0xa0},
{ 0x59, 0xf2, 0x2b, 0x5d, 0x76, 0xf7, 0x07, 0x4c, 0xc5, 0x98, 0x42, 0x55, 0x70, 0x04, 0xbb, 0x5a},
{ 0x5b, 0xe7, 0xb9, 0x9d, 0x97, 0xf4, 0xbf, 0x06, 0xaf, 0x23, 0x1b, 0xe0, 0x4a, 0xb7, 0x83, 0xab},
{ 0x5c, 0x42, 0xe0, 0x72, 0x5b, 0x9b, 0x1b, 0xbd, 0x68, 0x79, 0xfc, 0xb2, 0xd6, 0x69, 0x2c, 0x90},
{ 0x61, 0xc8, 0x4e, 0x3e, 0x09, 0x98, 0x3d, 0xe7, 0xc5, 0x18, 0x4f, 0x81, 0x29, 0x8c, 0x20, 0x24},
{ 0x63, 0xd3, 0x3a, 0xa8, 0x67, 0x7b, 0xa0, 0x43, 0xb7, 0x6f, 0xc5, 0xe2, 0x87, 0x3b, 0x76, 0x95},
{ 0x64, 0xe9, 0x2f, 0x18, 0x21, 0x8e, 0x84, 0x36, 0x9c, 0xbc, 0xd8, 0x90, 0x59, 0xeb, 0xdd, 0x37},
{ 0x67, 0xb5, 0xba, 0x40, 0x6a, 0x71, 0x0f, 0x65, 0xfe, 0x63, 0xa9, 0xd1, 0x66, 0x94, 0x8f, 0x54},
{ 0x68, 0xcb, 0x4b, 0x75, 0x29, 0xbe, 0x7d, 0xe1, 0x60, 0xdd, 0xa9, 0x16, 0x50, 0x2b, 0xdd, 0x6f},
{ 0x6a, 0x06, 0xc2, 0xc1, 0x68, 0xc0, 0x75, 0x00, 0x17, 0xbb, 0x5a, 0x0d, 0xe4, 0xda, 0x44, 0x45},
{ 0x6a, 0x5b, 0x79, 0x98, 0xd8, 0x85, 0xb2, 0xf3, 0x34, 0x09, 0x41, 0x3a, 0xa9, 0xbd, 0xf3, 0x9c},
{ 0x6b, 0xb6, 0x5a, 0xad, 0x89, 0xf5, 0x7f, 0x76, 0x29, 0x74, 0x88, 0x2f, 0x02, 0x32, 0x46, 0x2f},
{ 0x6c, 0x50, 0x48, 0xc1, 0x51, 0x35, 0xce, 0x52, 0x74, 0x4e, 0x1a, 0xf0, 0x37, 0xce, 0xf7, 0x0e},
{ 0x6c, 0xa3, 0x16, 0x0b, 0x1c, 0x5a, 0xd2, 0x7b, 0x01, 0xfa, 0x34, 0x39, 0x02, 0xfb, 0xea, 0x84},
{ 0x6c, 0xe1, 0x4e, 0x74, 0x47, 0x36, 0x5e, 0xe0, 0xce, 0x8b, 0xfb, 0x7c, 0xcc, 0xbb, 0x3c, 0x7a},
{ 0x6e, 0x88, 0x72, 0xb5, 0x78, 0x9b, 0x3c, 0x3c, 0x82, 0x39, 0x25, 0x04, 0xf3, 0xfe, 0xba, 0xda},
{ 0x6f, 0x21, 0x5c, 0x20, 0xb8, 0x13, 0x95, 0xc0, 0xe9, 0x48, 0x48, 0x1d, 0x89, 0x56, 0xd5, 0x68},
{ 0x71, 0x65, 0x64, 0x80, 0xfb, 0xa7, 0xc2, 0x51, 0x2e, 0xb2, 0xc8, 0x49, 0x3e, 0x71, 0xe7, 0xe6},
{ 0x71, 0x9d, 0xaf, 0x40, 0x4c, 0x68, 0x69, 0xc3, 0xe3, 0x84, 0x15, 0x3d, 0x48, 0x1d, 0x24, 0xa8},
{ 0x73, 0x3b, 0x57, 0xb1, 0xd8, 0xa9, 0x34, 0x25, 0x23, 0xa4, 0x9b, 0x8c, 0x37, 0xad, 0x2d, 0x0a},
{ 0x73, 0x3c, 0x6a, 0x37, 0xd1, 0x08, 0x41, 0xee, 0x07, 0x5f, 0x0a, 0x2a, 0x10, 0xa9, 0xdf, 0x86},
{ 0x73, 0xf0, 0x0d, 0x3c, 0x55, 0x59, 0x76, 0xa5, 0xee, 0x1c, 0x49, 0xde, 0x93, 0x44, 0xfb, 0x0f},
{ 0x74, 0x88, 0xed, 0xda, 0xbe, 0x06, 0x54, 0xe3, 0xf0, 0xac, 0x58, 0xcd, 0xa1, 0x7a, 0x15, 0x30},
{ 0x75, 0x0c, 0xa7, 0xb8, 0xed, 0x99, 0x7b, 0x3f, 0x74, 0x1c, 0x6f, 0x39, 0xd2, 0x15, 0xf3, 0x6d},
{ 0x75, 0x6e, 0xd8, 0x91, 0xfa, 0x5d, 0xf4, 0x82, 0x04, 0xdd, 0xef, 0x41, 0xbe, 0xd9, 0xe0, 0xd8},
{ 0x76, 0xf7, 0xa9, 0x2e, 0x72, 0x6a, 0xa3, 0xe9, 0x97, 0xc7, 0x4b, 0x39, 0x93, 0x81, 0xc0, 0x69},
{ 0x78, 0x30, 0xc5, 0x77, 0xed, 0x8e, 0x2b, 0x47, 0x41, 0x98, 0xd3, 0x65, 0x29, 0x41, 0x76, 0x49},
{ 0x79, 0x09, 0x97, 0xfc, 0xbc, 0x5b, 0x31, 0x21, 0x6a, 0x6e, 0xd4, 0xaa, 0xcd, 0xfe, 0xaa, 0xf0},
{ 0x79, 0xe7, 0xa3, 0x3c, 0x1d, 0xb0, 0xae, 0x28, 0xcd, 0x05, 0x59, 0x74, 0x44, 0x6e, 0x43, 0xec},
{ 0x7a, 0xbd, 0x92, 0x8d, 0x4b, 0x17, 0x90, 0x4f, 0x72, 0x67, 0xd3, 0xed, 0x77, 0xf6, 0x17, 0x4e},
{ 0x7b, 0x13, 0x94, 0x4b, 0xbc, 0xcd, 0x2f, 0x1d, 0x0a, 0x9f, 0xaf, 0x9d, 0xac, 0x48, 0x21, 0x63},
{ 0x7c, 0x24, 0x7f, 0xce, 0xf1, 0xcc, 0xb6, 0x64, 0x3e, 0x83, 0x72, 0x88, 0x5d, 0xbb, 0xf6, 0x29},
{ 0x7c, 0x3f, 0xb8, 0x3e, 0xf3, 0xe4, 0xcb, 0x86, 0x72, 0x13, 0xa8, 0xce, 0xcc, 0x55, 0x75, 0x9e},
{ 0x7c, 0x56, 0x16, 0x5b, 0xc5, 0x31, 0x02, 0xa4, 0x44, 0x28, 0x11, 0xf0, 0xef, 0x2b, 0x2b, 0x63},
{ 0x7d, 0xb5, 0x1b, 0xed, 0xa9, 0xec, 0x3f, 0x72, 0x04, 0x5b, 0xcf, 0x08, 0x8e, 0xff, 0x04, 0x58},
{ 0x7e, 0x64, 0x7c, 0x28, 0xe7, 0xf2, 0x3a, 0x14, 0x73, 0xfc, 0x92, 0x67, 0x82, 0x1f, 0x10, 0x51},
{ 0x7f, 0xde, 0xea, 0x6d, 0x60, 0x4f, 0xac, 0xd2, 0x5f, 0x1a, 0xeb, 0xb5, 0xdb, 0x6a, 0xb3, 0x1c},
{ 0x81, 0x5b, 0x96, 0x70, 0x6d, 0xe9, 0x11, 0xee, 0x94, 0x09, 0x61, 0x51, 0x09, 0x4d, 0xcd, 0x08},
{ 0x83, 0x53, 0x40, 0x7c, 0xaa, 0x47, 0x26, 0xc9, 0xe1, 0x3e, 0x00, 0x7a, 0x46, 0x93, 0xe8, 0xd6},
{ 0x85, 0x42, 0xed, 0xc9, 0x55, 0xdf, 0x6b, 0xd6, 0x49, 0xc5, 0xc1, 0x2c, 0x92, 0xa9, 0x21, 0x34},
{ 0x85, 0x57, 0x57, 0xd7, 0x97, 0x53, 0x30, 0x15, 0xc3, 0x2d, 0x35, 0x2f, 0x66, 0xe0, 0x46, 0x79},
{ 0x85, 0x8d, 0xde, 0x9a, 0xb4, 0xa9, 0x0a, 0x99, 0xfb, 0xb9, 0x8e, 0x0a, 0x99, 0x1a, 0xfa, 0x1f},
{ 0x88, 0xa3, 0x45, 0x93, 0x5c, 0xad, 0x7a, 0x95, 0xcb, 0x30, 0xce, 0xb0, 0x92, 0xd9, 0x48, 0xd3},
{ 0x8c, 0x6f, 0x6a, 0xb3, 0x9a, 0xed, 0x0b, 0x4f, 0xc8, 0x98, 0xf4, 0x2a, 0xef, 0x3d, 0x4b, 0xa4},
{ 0x8d, 0x0a, 0x76, 0xb0, 0x19, 0x7e, 0xbe, 0x63, 0x88, 0x03, 0xcc, 0x59, 0x74, 0xc4, 0x9e, 0xce},
{ 0x8d, 0x12, 0x14, 0x21, 0x54, 0x8f, 0x26, 0x5e, 0x4f, 0x29, 0x6a, 0xcb, 0xf3, 0x00, 0xfe, 0x33},
{ 0x8d, 0x14, 0xb4, 0x09, 0x7c, 0xff, 0xcc, 0xa6, 0x22, 0x7b, 0xbc, 0x58, 0x7f, 0x82, 0x79, 0xd8},
{ 0x8d, 0xb5, 0xcd, 0xb6, 0xc1, 0xeb, 0xae, 0x69, 0x52, 0xad, 0xb4, 0x52, 0x69, 0x3a, 0x9b, 0xca},
{ 0x8d, 0xc3, 0x75, 0x7c, 0xd2, 0xb1, 0x7c, 0x6e, 0xa5, 0x3f, 0x81, 0xa4, 0xdf, 0x1f, 0x25, 0x26},
{ 0x8d, 0xcc, 0x7c, 0x59, 0xa4, 0x56, 0x58, 0x05, 0x3c, 0xff, 0xde, 0xf0, 0xac, 0x6d, 0x07, 0x9e},
{ 0x8d, 0xeb, 0x05, 0x22, 0x45, 0x03, 0x7b, 0xdc, 0x89, 0x28, 0x86, 0xf5, 0x2f, 0x4a, 0x3f, 0xd1},
{ 0x8e, 0xf2, 0x04, 0xa3, 0xef, 0xe8, 0xef, 0xb0, 0xdd, 0xc5, 0x0b, 0xc4, 0x9b, 0xf1, 0xfe, 0x06},
{ 0x8f, 0x57, 0x2f, 0x56, 0x21, 0xed, 0x71, 0x74, 0x89, 0x92, 0x53, 0x1b, 0x40, 0xe4, 0x51, 0x48},
{ 0x91, 0xfa, 0x1f, 0xcf, 0x24, 0x02, 0xf2, 0xfd, 0x55, 0xf1, 0xfc, 0xa8, 0x1b, 0xdc, 0xfe, 0x32},
{ 0x92, 0x2f, 0x15, 0x25, 0xa4, 0x4e, 0xfd, 0xba, 0xb3, 0xed, 0xf4, 0x85, 0x86, 0xcf, 0x3a, 0xd5},
{ 0x92, 0x46, 0xd3, 0x83, 0x9c, 0x80, 0x88, 0x40, 0x87, 0x89, 0xa1, 0x5c, 0x48, 0x56, 0x29, 0x6b},
{ 0x92, 0x71, 0x26, 0xc1, 0xe5, 0xbd, 0xea, 0x5c, 0x6c, 0x56, 0x74, 0xd6, 0x85, 0x5d, 0x6e, 0x16},
{ 0x92, 0xb4, 0x1b, 0x1c, 0x66, 0x7d, 0x42, 0xb8, 0x27, 0x49, 0xd1, 0x6a, 0x76, 0x7f, 0xb3, 0x84},
{ 0x93, 0xfd, 0xd0, 0x79, 0x2f, 0x83, 0xc3, 0xf0, 0x88, 0x9f, 0xbd, 0x5a, 0x5b, 0x72, 0x5a, 0x7a},
{ 0x94, 0x2e, 0x86, 0x7e, 0xa3, 0xba, 0x1c, 0x43, 0x90, 0x83, 0xa6, 0x8b, 0xf4, 0xbf, 0x9f, 0x94},
{ 0x94, 0xb7, 0x27, 0x1e, 0xa1, 0x2a, 0x31, 0xa0, 0xe2, 0x40, 0x0e, 0x17, 0xe9, 0xbe, 0x03, 0x35},
{ 0x95, 0xbc, 0xfc, 0x52, 0xb2, 0x2b, 0x1c, 0x80, 0x69, 0xa6, 0x0c, 0xce, 0x0d, 0x79, 0xe4, 0x62},
{ 0x98, 0xad, 0x78, 0x41, 0xb3, 0x1f, 0xf2, 0x46, 0xe2, 0x12, 0xd6, 0x86, 0xa8, 0x76, 0x68, 0xb9},
{ 0x99, 0x24, 0xe5, 0xb1, 0x37, 0x14, 0x80, 0x46, 0x36, 0x53, 0x33, 0x6a, 0x2b, 0x91, 0x11, 0x75},
{ 0x9a, 0x12, 0x0e, 0x2a, 0x96, 0x94, 0x2e, 0xf1, 0x1b, 0x23, 0xf7, 0x75, 0x83, 0xa0, 0x32, 0x4c},
{ 0x9b, 0xde, 0xd6, 0x56, 0xcc, 0x61, 0x56, 0x14, 0xe7, 0x69, 0x11, 0x2b, 0xfc, 0x76, 0xc0, 0xf8},
{ 0x9c, 0x5b, 0xee, 0x45, 0x88, 0xff, 0xfe, 0x71, 0xe7, 0x80, 0x24, 0xb6, 0x00, 0x51, 0x02, 0xad},
{ 0x9d, 0xb4, 0x7f, 0x9d, 0x9a, 0xa8, 0xb6, 0x75, 0x42, 0x38, 0x20, 0xef, 0x42, 0xf3, 0xc6, 0x56},
{ 0x9d, 0xf7, 0xcf, 0xb0, 0xc1, 0x17, 0x79, 0x42, 0x0f, 0x8e, 0x25, 0x16, 0x4c, 0x14, 0x36, 0x73},
{ 0x9f, 0x35, 0x29, 0x3f, 0xa3, 0xc2, 0x59, 0x32, 0x7e, 0xfc, 0x47, 0xcd, 0x2d, 0x68, 0xf7, 0xaf},
{ 0x9f, 0xf1, 0xa9, 0x40, 0x4b, 0xee, 0x16, 0x00, 0xcf, 0xdb, 0x3e, 0x11, 0x79, 0x71, 0x43, 0x12},
{ 0xa0, 0x2a, 0xd5, 0x5b, 0xf6, 0x32, 0x8b, 0x3d, 0xe7, 0x30, 0xfb, 0x1e, 0x04, 0xee, 0x07, 0xe5},
{ 0xa2, 0x05, 0x71, 0x2d, 0xf6, 0xb7, 0xc4, 0x87, 0xc9, 0xc6, 0x2b, 0x48, 0x6d, 0xc1, 0xb0, 0x56},
{ 0xa2, 0x05, 0x84, 0xbf, 0x8e, 0xc7, 0x58, 0x26, 0x43, 0x8f, 0xad, 0x01, 0x75, 0xa9, 0x08, 0xf4},
{ 0xa2, 0x13, 0x27, 0x71, 0xc2, 0xf3, 0x2e, 0x73, 0x0d, 0xe3, 0xfd, 0x3b, 0xd7, 0xf7, 0x9d, 0xbe},
{ 0xa2, 0xd9, 0x83, 0x13, 0x7e, 0xe5, 0xc5, 0x04, 0x05, 0xf7, 0x19, 0xa3, 0x10, 0xc2, 0x09, 0x71},
{ 0xa2, 0xdc, 0xee, 0x61, 0xc1, 0x28, 0x3d, 0x5a, 0xff, 0x02, 0x1c, 0x0c, 0x5f, 0x80, 0x3d, 0xc0},
{ 0xa4, 0xb8, 0x2f, 0x60, 0xbc, 0xef, 0xb7, 0x99, 0xd1, 0x1a, 0x46, 0x34, 0x2c, 0x8f, 0xc4, 0x59},
{ 0xa4, 0xc0, 0x7b, 0x28, 0x7b, 0x2f, 0x1b, 0x34, 0xf9, 0xd8, 0xf5, 0x3b, 0x3d, 0x12, 0x9c, 0xc6},
{ 0xa5, 0x2b, 0xd3, 0x80, 0x54, 0xf3, 0xe3, 0xf9, 0x2e, 0xab, 0xb5, 0xc9, 0x4f, 0x5d, 0x65, 0xfe},
{ 0xa5, 0xfe, 0xc1, 0x49, 0x4a, 0x59, 0x3b, 0x4b, 0xc3, 0x13, 0xfd, 0x4f, 0xca, 0x06, 0x45, 0xdd},
{ 0xa5, 0xfe, 0xea, 0x3c, 0x46, 0x73, 0x50, 0xd9, 0xe9, 0xf9, 0x4d, 0x90, 0x0b, 0x60, 0xfb, 0xed},
{ 0xa7, 0x7e, 0xcb, 0x0d, 0xeb, 0x43, 0xd8, 0xb2, 0xcf, 0xf6, 0x97, 0xec, 0x83, 0xbd, 0x85, 0x71},
{ 0xa7, 0x7f, 0x8e, 0x45, 0xe2, 0xb6, 0xf9, 0x19, 0x0e, 0x18, 0xa5, 0xe9, 0x80, 0xe0, 0x1b, 0xdd},
{ 0xa8, 0x61, 0xc0, 0xef, 0x25, 0xf6, 0x2e, 0x08, 0xf6, 0xf2, 0xa6, 0xd6, 0xba, 0x9b, 0x7f, 0x3f},
{ 0xa9, 0x29, 0xdf, 0x5b, 0x5b, 0xdd, 0xfa, 0x49, 0xff, 0x1e, 0xa8, 0x31, 0xcf, 0xc4, 0xa7, 0x20},
{ 0xab, 0x98, 0xa9, 0x1e, 0xa2, 0x7d, 0x62, 0xbb, 0xc4, 0xa0, 0xbb, 0x77, 0xb0, 0x82, 0xa1, 0x39},
{ 0xad, 0x56, 0xad, 0xd5, 0xdc, 0x20, 0xf9, 0x9e, 0xea, 0x00, 0x4f, 0x40, 0xc2, 0x8e, 0xd0, 0xae},
{ 0xae, 0x85, 0x16, 0xb1, 0xe4, 0x23, 0x7d, 0x7e, 0x7a, 0xb6, 0x3c, 0x71, 0x93, 0xef, 0x60, 0xb7},
{ 0xaf, 0x13, 0x4d, 0x50, 0x5c, 0x05, 0x10, 0x1b, 0x19, 0x3c, 0xcb, 0x35, 0x44, 0xe0, 0x8d, 0xcf},
{ 0xaf, 0x47, 0x9d, 0x1f, 0xe9, 0x92, 0xdb, 0x23, 0x29, 0x03, 0xa4, 0x0f, 0x0e, 0x65, 0x9e, 0x1f},
{ 0xaf, 0xcb, 0x17, 0x4a, 0xfe, 0x4b, 0x86, 0x70, 0xd9, 0x75, 0x0e, 0x81, 0x2d, 0x1c, 0x7d, 0x8a},
{ 0xb0, 0x45, 0xa5, 0x1f, 0xf1, 0x56, 0xea, 0xce, 0x07, 0xa4, 0x0b, 0xe1, 0x7d, 0x62, 0xbd, 0x57},
{ 0xb3, 0x89, 0xfd, 0x2b, 0xc6, 0x32, 0xd4, 0x40, 0x70, 0xad, 0x4f, 0xde, 0xc0, 0x3f, 0x9c, 0x6b},
{ 0xb4, 0x72, 0x6c, 0x97, 0x13, 0xc1, 0xe7, 0x03, 0x0c, 0x55, 0x90, 0x0a, 0x46, 0x36, 0xf6, 0x72},
{ 0xb6, 0x53, 0x79, 0x26, 0xb5, 0xb2, 0xd3, 0x7c, 0x4c, 0x17, 0x4b, 0x18, 0x42, 0x7a, 0x21, 0xea},
{ 0xb6, 0x8a, 0xc1, 0x80, 0x04, 0x2a, 0x44, 0x2f, 0x6c, 0x50, 0x90, 0x69, 0xca, 0x07, 0x67, 0x84},
{ 0xb7, 0x12, 0xdc, 0x35, 0xa9, 0x5e, 0x56, 0x2d, 0xfc, 0x1f, 0x90, 0xe7, 0xdf, 0x03, 0xeb, 0x33},
{ 0xb7, 0x75, 0x9f, 0xa3, 0x24, 0x67, 0x8e, 0x6a, 0x7e, 0x7f, 0xbe, 0x1b, 0x24, 0xbe, 0x45, 0x0f},
{ 0xb7, 0x8b, 0x94, 0x61, 0x36, 0x5d, 0xe8, 0xf9, 0xc6, 0x76, 0x45, 0x10, 0x8e, 0x6f, 0x08, 0x73},
{ 0xb7, 0xab, 0x82, 0x24, 0x1e, 0xca, 0x69, 0x5a, 0x59, 0xc9, 0x33, 0x79, 0xd6, 0xef, 0x8f, 0xc4},
{ 0xb8, 0x14, 0x25, 0x05, 0xb0, 0x12, 0xcb, 0xe9, 0x47, 0x56, 0x72, 0x08, 0x63, 0x08, 0xf5, 0xfd},
{ 0xb8, 0xbd, 0x61, 0x3c, 0xc4, 0x6f, 0x44, 0xcd, 0x5d, 0xcc, 0xd4, 0x28, 0xa0, 0x43, 0x81, 0xb8},
{ 0xb9, 0xef, 0x3a, 0x7d, 0x4e, 0x42, 0x7a, 0x79, 0xcf, 0x72, 0x72, 0xa8, 0x7e, 0xa9, 0x6b, 0x4a},
{ 0xba, 0x2d, 0xa1, 0x9b, 0xc3, 0xbe, 0xa4, 0x67, 0x29, 0x0c, 0xcb, 0xf4, 0x3c, 0x7a, 0x7d, 0x15},
{ 0xba, 0x73, 0xa8, 0x55, 0x13, 0xbc, 0x17, 0x9c, 0xd1, 0x5e, 0x9b, 0xa3, 0xf7, 0xa3, 0xec, 0x4b},
{ 0xbb, 0x17, 0x9f, 0xb7, 0xdc, 0x7a, 0xf7, 0x4f, 0x2e, 0xa9, 0x9c, 0x9d, 0xc8, 0x53, 0x29, 0x98},
{ 0xbc, 0xaa, 0xe0, 0x12, 0x22, 0x95, 0x13, 0xcb, 0x5c, 0x78, 0xaa, 0x60, 0x8d, 0x23, 0x66, 0xaf},
{ 0xbe, 0x67, 0xc0, 0x3d, 0x50, 0xfd, 0x91, 0x0d, 0xd9, 0xe8, 0xca, 0x66, 0x7e, 0xa7, 0xdf, 0x3e},
{ 0xbe, 0x7a, 0xad, 0x05, 0x5f, 0xbb, 0x54, 0x39, 0xce, 0xab, 0x4c, 0x6c, 0x59, 0xef, 0xb3, 0xb6},
{ 0xbe, 0xda, 0xaf, 0xf8, 0x90, 0xbd, 0xa7, 0xff, 0xd0, 0x77, 0x90, 0x2b, 0xf9, 0x13, 0xf4, 0xb9},
{ 0xc3, 0x88, 0x9a, 0x9d, 0xe9, 0xdc, 0x36, 0x04, 0x25, 0xcd, 0xe2, 0xb0, 0xaf, 0xdd, 0x2b, 0x2a},
{ 0xc4, 0xcf, 0x89, 0xe0, 0xbe, 0x39, 0xc5, 0x29, 0x70, 0xe3, 0xa5, 0x1f, 0xc7, 0xfd, 0xe8, 0xbf},
{ 0xc5, 0x7e, 0x48, 0x43, 0xd5, 0xa4, 0x25, 0xef, 0x3b, 0x34, 0x04, 0xa4, 0x78, 0x24, 0xab, 0x57},
{ 0xc6, 0x02, 0xdd, 0xac, 0x88, 0x42, 0x89, 0x52, 0xc9, 0xe8, 0xd4, 0x44, 0xe2, 0xa3, 0xa9, 0x27},
{ 0xc7, 0x1f, 0x9a, 0x14, 0x4f, 0xdc, 0xb8, 0x25, 0xb7, 0xf3, 0xd4, 0x1a, 0x8f, 0x75, 0x0a, 0x6e},
{ 0xc8, 0x4d, 0x22, 0x2d, 0xc0, 0xe7, 0xae, 0x06, 0xbe, 0x25, 0x35, 0xe4, 0x26, 0x91, 0x9b, 0x34},
{ 0xc8, 0x9c, 0xae, 0xbb, 0x6b, 0x70, 0x61, 0xd1, 0x23, 0x2b, 0x0d, 0xd4, 0x5f, 0xf3, 0xfe, 0x13},
{ 0xc8, 0xc2, 0xe6, 0xac, 0xd2, 0x0a, 0xfb, 0x5b, 0xd9, 0x5b, 0x02, 0xc3, 0x0a, 0xa2, 0xaa, 0xa0},
{ 0xcb, 0x3c, 0x1b, 0xfe, 0x9f, 0xe0, 0xd6, 0xbe, 0x59, 0x73, 0x09, 0xe5, 0x57, 0x93, 0x2c, 0x23},
{ 0xcb, 0xd7, 0xaf, 0x86, 0x66, 0xb9, 0x27, 0xf8, 0x2a, 0xed, 0xdc, 0xb8, 0x6f, 0xc5, 0xbd, 0xe5},
{ 0xcd, 0xed, 0x22, 0xdf, 0xdd, 0x10, 0xab, 0x96, 0x6c, 0x5b, 0x6f, 0x4c, 0x0d, 0x15, 0xb4, 0x17},
{ 0xcd, 0xfe, 0x4c, 0x6b, 0x0c, 0xbb, 0xeb, 0xb5, 0x3c, 0xd4, 0xf1, 0xde, 0x4c, 0xf7, 0xd1, 0x0a},
{ 0xcf, 0xb3, 0xbd, 0x60, 0x83, 0xc7, 0x45, 0xbb, 0xb3, 0xdf, 0xfa, 0xa8, 0x5b, 0x91, 0x23, 0xa1},
{ 0xd1, 0x12, 0x1b, 0x14, 0xe6, 0x55, 0xdf, 0x65, 0x38, 0x5b, 0x0f, 0x47, 0x4f, 0xce, 0xfd, 0x7d},
{ 0xd1, 0x48, 0xbb, 0xdd, 0x17, 0x26, 0x7d, 0x54, 0xf6, 0x34, 0x1e, 0x9c, 0x43, 0x84, 0x8a, 0xad},
{ 0xd1, 0x8c, 0x44, 0x88, 0xe7, 0x16, 0x16, 0x2d, 0xfc, 0x77, 0x2e, 0x30, 0x37, 0x6f, 0x83, 0xac},
{ 0xd3, 0xb7, 0xcb, 0xec, 0xbc, 0x7f, 0x3c, 0x60, 0x7b, 0xf0, 0x90, 0x24, 0x5f, 0x69, 0x10, 0x02},
{ 0xd5, 0x7a, 0x0d, 0xdc, 0xef, 0x56, 0x0f, 0xee, 0xc8, 0xe6, 0x41, 0x3a, 0x7c, 0xf3, 0x3c, 0x87},
{ 0xd7, 0x63, 0xea, 0x0f, 0xf8, 0xf3, 0x38, 0x51, 0x85, 0xcc, 0xf4, 0xfa, 0x40, 0x53, 0x1e, 0x82},
{ 0xd7, 0x7d, 0xc2, 0xf6, 0x47, 0x6f, 0xec, 0x8e, 0xa6, 0xe8, 0xf0, 0x62, 0x12, 0x5e, 0xeb, 0x6e},
{ 0xd8, 0x01, 0x40, 0xc8, 0x21, 0xd4, 0x8f, 0x62, 0xbe, 0x47, 0xd8, 0x6e, 0x60, 0xa7, 0x43, 0x5d},
{ 0xd9, 0x70, 0x70, 0xf9, 0x80, 0x2e, 0xd4, 0xb3, 0x3d, 0x5f, 0x03, 0xc7, 0xa7, 0x96, 0xf5, 0x91},
{ 0xd9, 0xef, 0x98, 0xfe, 0x07, 0x0e, 0xf5, 0x38, 0xbe, 0xe6, 0x23, 0x64, 0x35, 0x37, 0xee, 0xed},
{ 0xda, 0x30, 0x3a, 0x56, 0x48, 0x1b, 0x51, 0x92, 0x39, 0x38, 0x42, 0xb4, 0x00, 0x25, 0x9d, 0x21},
{ 0xda, 0x9c, 0x0b, 0x00, 0x75, 0x6b, 0x06, 0x0b, 0xd1, 0xc4, 0xe0, 0xbb, 0x2d, 0x93, 0xd2, 0x9f},
{ 0xdb, 0xbf, 0x67, 0x76, 0x80, 0xa2, 0x71, 0xa4, 0x01, 0x93, 0xcc, 0xff, 0x83, 0x61, 0xbb, 0x3c},
{ 0xdb, 0xe0, 0x59, 0x75, 0xa0, 0x09, 0x06, 0x04, 0x72, 0x93, 0x11, 0xb2, 0x99, 0x3c, 0x13, 0xa0},
{ 0xde, 0x64, 0xe5, 0x6e, 0x6a, 0xba, 0x9e, 0xb0, 0x02, 0x12, 0x79, 0xdb, 0x42, 0xed, 0x6b, 0x46},
{ 0xe0, 0x27, 0x3d, 0x60, 0x1b, 0x08, 0x37, 0x47, 0x9d, 0x5e, 0xf2, 0x4b, 0xb7, 0x2a, 0x97, 0x19},
{ 0xe2, 0x73, 0xf9, 0x99, 0xda, 0x99, 0x45, 0x60, 0xb2, 0xa6, 0xf6, 0x93, 0x3b, 0xda, 0xff, 0x8a},
{ 0xe3, 0x23, 0x5d, 0xdc, 0xdf, 0x9e, 0xcf, 0x22, 0x9f, 0xd3, 0x18, 0xb7, 0xc4, 0x09, 0xb7, 0x6e},
{ 0xe3, 0x88, 0x7d, 0xaa, 0x74, 0xa6, 0x6e, 0xcd, 0xfa, 0x8f, 0x12, 0x2a, 0xba, 0xd2, 0x27, 0xe1},
{ 0xe3, 0xbd, 0x9e, 0x12, 0xd2, 0x90, 0x27, 0xcc, 0xbf, 0x10, 0x53, 0x8e, 0x3f, 0x79, 0x06, 0x3b},
{ 0xe5, 0x18, 0xd0, 0x9c, 0xcf, 0x3b, 0x27, 0x68, 0x67, 0x6f, 0x64, 0xbd, 0x74, 0x4d, 0x03, 0xd6},
{ 0xe8, 0x5e, 0xbf, 0x92, 0xa2, 0x9e, 0x07, 0x4f, 0xe9, 0x69, 0xbe, 0x63, 0x14, 0x30, 0x38, 0x74},
{ 0xeb, 0x4c, 0xa3, 0xec, 0xc1, 0xe6, 0x1d, 0x8a, 0xbb, 0xdc, 0x79, 0x67, 0x1d, 0xc0, 0xed, 0xbb},
{ 0xed, 0xd0, 0xa6, 0x6e, 0xe1, 0x07, 0xea, 0x64, 0xb8, 0xf6, 0xa0, 0xa3, 0x24, 0xa7, 0x85, 0x6b},
{ 0xee, 0x50, 0xe9, 0xbe, 0x27, 0xf5, 0x15, 0xf9, 0xf6, 0x66, 0xd1, 0xc6, 0x98, 0xa0, 0xd8, 0xdc},
{ 0xee, 0xca, 0x1a, 0x83, 0x93, 0xa2, 0xd6, 0xe8, 0xa9, 0x5e, 0xdd, 0x61, 0xcb, 0xfa, 0xe6, 0x41},
{ 0xef, 0x3f, 0xb8, 0x80, 0x05, 0xc8, 0x10, 0x22, 0xb3, 0x99, 0xc4, 0xc4, 0xd9, 0x32, 0x97, 0x3a},
{ 0xf0, 0x3d, 0x16, 0x09, 0x77, 0x10, 0xea, 0x3b, 0xee, 0x61, 0xe8, 0x47, 0xc9, 0x78, 0x70, 0x5e},
{ 0xf0, 0x59, 0x0c, 0x6b, 0xcc, 0x5b, 0x70, 0x2e, 0x28, 0x7f, 0xda, 0x52, 0x9d, 0xee, 0x80, 0xf0},
{ 0xf0, 0xb6, 0x4e, 0xd4, 0x02, 0x4e, 0x01, 0x98, 0x84, 0xbc, 0x79, 0x7a, 0x3a, 0x4f, 0x18, 0x3d},
{ 0xf0, 0xd0, 0xab, 0x26, 0xcd, 0x62, 0x0a, 0x32, 0xc7, 0xf2, 0x7f, 0x88, 0x62, 0x43, 0x4e, 0x7c},
{ 0xf2, 0x5d, 0xfd, 0xe2, 0xfb, 0x0b, 0xf9, 0x67, 0xc2, 0x67, 0xbe, 0x45, 0xc8, 0x23, 0x2b, 0xb6},
{ 0xf3, 0x66, 0x28, 0x25, 0xcd, 0x66, 0xdd, 0x6f, 0xf3, 0x64, 0x25, 0xec, 0xcf, 0x6c, 0xe2, 0x3b},
{ 0xf5, 0x49, 0x60, 0x54, 0x47, 0x2a, 0x5b, 0xe7, 0x03, 0xa3, 0x2e, 0x46, 0x20, 0x6c, 0x74, 0xab},
{ 0xf5, 0xe3, 0xd3, 0xb2, 0x11, 0x78, 0x74, 0x4d, 0x12, 0x7e, 0xd7, 0x62, 0x1b, 0xe1, 0x37, 0xd4},
{ 0xf6, 0x84, 0x80, 0x0c, 0xbb, 0x15, 0x24, 0xee, 0x18, 0x14, 0xf7, 0x00, 0x99, 0x79, 0x9c, 0xbe},
{ 0xf6, 0xc4, 0x37, 0x8b, 0xb2, 0xc9, 0x4c, 0x02, 0x1f, 0x9d, 0x9f, 0x4b, 0x76, 0xc2, 0xac, 0x80},
{ 0xf7, 0x98, 0x2f, 0x7f, 0xf0, 0x4b, 0xe3, 0xca, 0xe5, 0x2a, 0xb7, 0xdb, 0x8f, 0x24, 0x64, 0x9d},
{ 0xf8, 0xea, 0x75, 0xdd, 0x36, 0x1f, 0xe5, 0x67, 0x36, 0x0a, 0xb3, 0x3e, 0xb1, 0xed, 0x59, 0x04},
{ 0xfa, 0x07, 0x36, 0xf4, 0x25, 0xf7, 0xee, 0x72, 0x9a, 0xb1, 0xed, 0x21, 0xbb, 0xe4, 0x0f, 0x0b},
{ 0xfc, 0x39, 0x9c, 0x55, 0x6f, 0xc6, 0x9f, 0x7c, 0x72, 0x1c, 0x38, 0xe2, 0xd5, 0x05, 0x26, 0x62},
{ 0xfc, 0x8e, 0xf6, 0x69, 0x0b, 0x11, 0x47, 0xb8, 0x87, 0xac, 0xdf, 0x44, 0xc0, 0xb7, 0x8a, 0xb7},
{ 0xfc, 0xe6, 0x5c, 0x0f, 0x10, 0xfb, 0x73, 0xec, 0xad, 0x03, 0x5e, 0x7d, 0x0a, 0xed, 0xba, 0x90},
{ 0xfc, 0xfc, 0xb4, 0x33, 0x2a, 0x3f, 0x13, 0xde, 0xec, 0xbc, 0x03, 0x20, 0xd2, 0x18, 0x21, 0x3c},
{ 0xfd, 0x41, 0x02, 0xfa, 0xa3, 0x14, 0x19, 0x22, 0x7e, 0xbb, 0x81, 0x34, 0x6f, 0x25, 0x0c, 0x33},
{ 0xfd, 0x9f, 0xdc, 0x99, 0xdb, 0x9a, 0x5e, 0x7f, 0x26, 0x7b, 0xc0, 0x2d, 0x9f, 0x9e, 0xe5, 0xdf},
{ 0xfd, 0xc8, 0xfc, 0xf5, 0x1d, 0xec, 0x42, 0x7d, 0x9f, 0x0e, 0xcb, 0xd2, 0x40, 0xd2, 0xce, 0xa5},
{ 0xfd, 0xc9, 0x9d, 0x0d, 0x19, 0xfd, 0xae, 0x73, 0xc0, 0xdd, 0x4f, 0x2a, 0x21, 0xc9, 0x4b, 0xe6},
{ 0xfe, 0x23, 0xe6, 0xae, 0xa7, 0xfe, 0x94, 0x1c, 0x7d, 0x37, 0x66, 0x55, 0x32, 0x88, 0xb3, 0x27},
{ 0xff, 0xa1, 0x93, 0x53, 0x44, 0x54, 0x31, 0x28, 0x29, 0x8b, 0x05, 0xf3, 0x1c, 0x2d, 0xb4, 0xfa},
};
int start = 0;
int last = size / AOC_UUID_SIZE;
int entry;
int rc = 0;
/*
* The UUIDs entries are sorted therefore moving the start of the
* inner loop is enough to minimize the search checks
*/
for (entry = 0; entry < AOC_UUID_ENTRIES; entry++) {
const uint8_t * uuid = &(uuid_array[entry][0]);
int index;
rc = -1;
for (index = start; index < last; index += 1) {
const uint8_t * ptr;
int j;
ptr = &(((const uint8_t *)addr)[index * AOC_UUID_SIZE]);
for (j = 0; j < AOC_UUID_SIZE; j++) {
if (uuid[j] != ptr[j]) {
break;
}
}
if (j == AOC_UUID_SIZE) {
if (index == start) {
start += 1;
}
rc = 0;
break;
}
}
if (index == last) {
rc = -1;
break;
}
}
return rc;
}
#endif /* AOC_INTERFACE_H_ */