blob: c529ef8dc2e89c49417e665cde432265fe445ac2 [file] [log] [blame]
/**
* Copyright 2019-2022 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: 8459ca90f969a09c539f83b2365debff10f8537d
*
* DO NOT MODIFY THIS FILE
*
*/
#ifndef AOC_INTERFACE_H_
#define AOC_INTERFACE_H_
#ifdef __KERNEL__
#include <linux/kernel.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_MEM_MAP_REGION_ID = 43, /* [0x002b] -> struct CMD_MEM_MAP_REGION */
CMD_DBG_MEM_INVAL_ACCESS_ID = 46, /* [0x002e] -> struct CMD_CORE_GENERIC */
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_AUDIO_OUTPUT_SET_GET_PARAM_BULK_ID = 213, /* [0x00d5] -> struct CMD_AUDIO_OUTPUT_SET_GET_PARAM_BULK */
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_INPUT_GET_DSP_IDENTIFIER_ID = 282, /* [0x011a] -> struct CMD_AUDIO_INPUT_DSP_IDENTIFIER */
CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_START_ID = 283, /* [0x011b] -> struct CMD_HDR */
CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_STOP_ID = 284, /* [0x011c] -> struct CMD_HDR */
CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_TEST_TRIGGER_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_INPUT_AMBIENT_MUSIC_BREAK_WRITE_MODEL_ID = 287, /* [0x011f] -> struct CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_WRITE_MODEL */
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_INPUT_MIC_RECORD_AP_START_PREPARE_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 */
};
/**
* 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,
};
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: 182253d37f2c1abf0b3d7e7d663b6a15
* CMD_AUDIO_INPUT_HOTWORD_DISABLE_AEC_ID, UUID: 60d38364d6e3a56db52b4ae6ef3330ee
* CMD_AUDIO_INPUT_AP_INPUT_STOP_ID, UUID: 0088d99e35729a48dd6c5aa2aaeddc9f
* CMD_AUDIO_INPUT_MODEM_INPUT_STOP_ID, UUID: a1ab309b642fe763e33e7277cac596a1
* CMD_AUDIO_INPUT_BT_CAPTURE_START_ID, UUID: 05d5076beb3f512e815d86d738a63a87
* CMD_AUDIO_INPUT_BT_CAPTURE_STOP_ID, UUID: 0ef0b4f3c977d0977c5fbc357f08f8ef
* CMD_AUDIO_INPUT_BT_DECODER_START_ID, UUID: a611b2c4ab2970528b30a3c0e70a33cb
* CMD_AUDIO_INPUT_BT_DECODER_STOP_ID, UUID: 04ac830ab65f08085b25e64d453ba9d0
* CMD_AUDIO_INPUT_IN_CALL_SELECT_START_ID, UUID: dbfe4fb7b69f6258d15ea3fae0275a8b
* CMD_AUDIO_INPUT_IN_CALL_SELECT_STOP_ID, UUID: 5380851321b19297144c6eaf7f6978dd
* CMD_AUDIO_INPUT_MIC_RECORD_AP_START_ID, UUID: 8628164eb555884b4359db0d11cd6873
* CMD_AUDIO_INPUT_MIC_RECORD_AP_STOP_ID, UUID: 87bfb8e1ee154e195f9c06054ab0ffbc
* CMD_AUDIO_INPUT_HOTWORD_START_ID, UUID: 872bab980499adfc8b6e89b8ce9f083d
* CMD_AUDIO_INPUT_HOTWORD_STOP_ID, UUID: 90d92460104e4bc6c2d9c9a0f635b5c9
* CMD_AUDIO_INPUT_MIC_LOOPBACK_STOP_ID, UUID: 956c8b0572bea5028c3d287470f19f78
* CMD_AUDIO_INPUT_SPATIAL_START_ID, UUID: c5ec7d4f20a9b728a462b9f75033248b
* CMD_AUDIO_OUTPUT_DECODE_FLUSH_RB_ID, UUID: d7a97be0acc6977054e71ae789399552
* CMD_AUDIO_INPUT_SPATIAL_STOP_ID, UUID: 24568000e9e7dd150ef3308355fea3f3
* CMD_AUDIO_INPUT_HOTWORD_TEST_TRIGGER_ID, UUID: 9746e5b68493fb62e5657dc95f02d8ef
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_START_ID, UUID: 4b4f36fc4e960129eafaee1229513ce7
* CMD_AUDIO_OUTPUT_TELEPHONY_MODEM_START_ID, UUID: a288d7ade0d6a83f4c1a3cdc089f0175
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_STOP_ID, UUID: eb63319b965fd0ef7cf92badac1f31fa
* CMD_AUDIO_OUTPUT_TELEPHONY_MODEM_STOP_ID, UUID: be6942f18e280b2d32df8d1cfdc4209e
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_TEST_TRIGGER_ID, UUID: 5ab2c20fadf665f9f7864f90ebc61d41
* CMD_AUDIO_OUTPUT_TELEPHONY_VOIP_START_ID, UUID: 5451db39e4d52034f9af6332c91e779e
* CMD_AUDIO_OUTPUT_TELEPHONY_VOIP_STOP_ID, UUID: d09698e3a18a70ee0898784ac83c9461
* CMD_AUDIO_OUTPUT_SPKR_ANDROID_AEC_START_ID, UUID: 8181842725eccdc35129617f1862a99b
* CMD_AUDIO_INPUT_HOTWORD_LOAD_MODEL_ID, UUID: 5174cbec9e355e784647a3ec659cdcb7
* CMD_AUDIO_OUTPUT_SPKR_ANDROID_AEC_STOP_ID, UUID: 55c019bebb2a49d2a2abb88027c22664
* CMD_AUDIO_INPUT_HOTWORD_UNLOAD_MODEL_ID, UUID: 4a9677a691b8a28f9dce2261162ad0d3
* CMD_AUDIO_OUTPUT_USB_HIFI_PLAYBACK_START_ID, UUID: bd2520f782b29ef241b74a181da5ee14
* CMD_AUDIO_OUTPUT_USB_HIFI_PLAYBACK_STOP_ID, UUID: e16e93926a5319c1cad648897d2df85c
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_LOAD_MODEL_ID, UUID: 6ced0beb0a24e72dea365f21c4f0496e
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_UNLOAD_MODEL_ID, UUID: 3c62ed13ccb63dbc3497979fe2675741
* CMD_AUDIO_INPUT_HOTWORD_FORCE_TRIGGER_ID, UUID: f9bcadaaf8598168c55971d4fc2617a7
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_FORCE_TRIGGER_ID, UUID: 614e114381773fb2a26e98288f3ed7f1
* CMD_AUDIO_OUTPUT_DEC_RESET_CURRENT_GAIN_ID, UUID: 5e8dcf3702acc87b417f3c121d571133
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_START_ID, UUID: 640f83411256c0f1f69e9c6cbc2fa07a
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_STOP_ID, UUID: 4c9d1207d95a977307d0c44ccee882d6
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_TEST_TRIGGER_ID, UUID: bfa2af7cf0a0c847f0411043cd7316e6
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_LOAD_MODEL_ID, UUID: 55044d8ad459b1ed1999544c12a57164
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_BREAK_UNLOAD_MODEL_ID, UUID: 7f65b22115be360389ad1b84cabb6ab2
* CMD_AUDIO_INPUT_MIC_RECORD_AP_START_PREPARE_ID, UUID: 757b4e18d672bf13ef099d8ccc5022d6
* CMD_AUDIO_INPUT_MIC_RECORD_AP_START_DATA_ID, UUID: 074314af03870944e35d50452be3a4c4
* CMD_AUDIO_INPUT_MIC_MMAP_DISABLE_ID, UUID: 98e9913a9dc69449f323f0404a5f7a6a
* CMD_AUDIO_INPUT_WNR_START_ID, UUID: aa3092e5cab3366e01cc4a148109312f
* CMD_AUDIO_INPUT_WNR_STOP_ID, UUID: 38ed6344985d21036dd376cddb5ac54c
* CMD_AUDIO_INPUT_SPATIAL_CAPTURE_START_ID, UUID: 19901e5eb6b5b5694eb3bc4e05bf3820
* CMD_AUDIO_INPUT_SPATIAL_CAPTURE_STOP_ID, UUID: 936b010cde4c786ca6e8d8acec5d87f8
* CMD_AUDIO_INPUT_MIC_RAW_DISABLE_ID, UUID: 8a69e9fc1f800c59dab90e17d5bff69d
* CMD_AUDIO_INPUT_USB_HIFI_CAPTURE_START_ID, UUID: a2a1d1f5e0b78f3a354702231cf3864c
* CMD_AUDIO_INPUT_USB_HIFI_CAPTURE_STOP_ID, UUID: eafda54e83fb87fb126f6f43f240603c
* CMD_AUDIO_INPUT_DIRECT_ULTRASONIC_CAPTURE_ENABLE_ID, UUID: 4b25eda20b296847ce7613aa74f9d608
* CMD_AUDIO_INPUT_DIRECT_ULTRASONIC_CAPTURE_DISABLE_ID, UUID: 8407ede115d8b317b38c2fe384c07f5b
* CMD_AUDIO_INPUT_MIC_RECORD_AP_ENABLE_AEC_ID, UUID: 68430d51ecedb2e353784ad560beda7b
* CMD_AUDIO_INPUT_MIC_RECORD_AP_DISABLE_AEC_ID, UUID: 786af50b0d48615eeb0c037a05462ac1
*/
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: 7f3783aedbae03854d3cb2851aa07b40
* CMD_SYS_STATS_ID, UUID: 6dafca1b50ff4f7aacc4006c0e104b7e
* CMD_DBG_WATCHDOG_TRIGGER_ID, UUID: 2fad4cb475c496c9f76c32dca4c0136a
* CMD_DBG_TREE_ID, UUID: da949c27a8bc2dc785655f91075aca1a
* CMD_DBG_CONTROLLERS_ID, UUID: 71bc548e4d11016c86ef267c16a161d9
* CMD_DBG_FILTERS_ID, UUID: 63cb8f092494b957fcd93039d904613f
* CMD_DBG_PIPES_ID, UUID: d3a52cad717826918f484ef64874d181
* CMD_DBG_POOLS_ID, UUID: d1c958027b2ed6f8a4bfab4e29deb01f
* CMD_DBG_RINGS_ID, UUID: 26ff9e044e65510775291abe87405fbc
* CMD_DBG_IPCS_ID, UUID: 7b9075e0318eba314f60f62fe53cda03
* CMD_DBG_FSM_ID, UUID: b082cbc3dd47affcbed81f2f6a8bdc26
* CMD_DBG_TASKS_ID, UUID: 821763f8cd27aa29b90a86ef77bb794c
* CMD_DBG_TIMER_ID, UUID: ac7f67e633131cfd09d18498faaa66d0
* CMD_DBG_INTCNTRL_ID, UUID: d35af9493e8b7346f322651855961d21
* CMD_DBG_IPC_SPACES_ID, UUID: f89239963c881425d919527452eedcc7
* CMD_DBG_IPC_CHANNELS_ID, UUID: 47239853e10637d6ff8121e84fd692fd
* CMD_DBG_MEM_INVAL_ACCESS_ID, UUID: fd9b475fbe112649efbffaad13bc91e2
*/
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: 85e7278dbc868c35ff2c8a3dcc0d8447
*/
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: 83c7fd9ba41a12ead4920ddbe02ce8fb
*/
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: 80822072da6458b080f488c1b16ab008
*/
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: a55b87f7dced9dc940f821514344afb0
*/
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: d3bacb0018cda42370e66d13020c60b8
*/
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: a64551efd22e0590c51862fbdae982d0
*/
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: d01577d896b1ce3c5406f93768bbccb4
*/
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: 2b508f8f52029e2f70505c9055ca50ce
*/
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: 432fd371a0d5419f2d4e3e66f1b3f296
* CMD_DBG_TIMESTAMP_ID, UUID: a3776fb0d645d229eb361f7667ad22b2
*/
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: 7188029a1fbb346bc53225b3afe5b030
* CMD_SYS_LOGIC_TRACE_SCHEME_GET_ID, UUID: fbb537085ace7493c9ee3208ceaf8bdb
*/
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: b68f8b693a8e2f56412d3c9fd0764f3f
*/
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: d9802e9e0e84b713e0efe86f3b2c7d29
*/
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: 6636d2dceee1973b26d4033d28e5ff1c
*/
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: 84ed33f0d9a49a2e41bfc9f716205c0e
*/
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: a0053bf6a498c6e83468ef77d59c669e
*/
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: 67540c4b228399c23f5f6b21a2e1a5aa
*/
struct CMD_DBG_MEM_DUMP {
struct CMD_CORE_GENERIC parent;
uint32_t address;
uint32_t size;
} __attribute__((packed));
/**
* Structure associated with the following commands:
*
* CMD_MEM_MAP_REGION_ID, UUID: 6fb53cb69db0955c4eeebe869e588b0a
*/
struct CMD_MEM_MAP_REGION {
struct CMD_CORE_GENERIC parent;
uint32_t handle;
uint32_t base;
uint32_t size;
uint8_t mapped;
} __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: 6bd35b8cffeec1206902c14eb5f9e401
*/
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: cec4f3b03bdd0a37f4c4353e26ba2502
*/
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: 5147459e76383f48f7e007fa6075e0da
*/
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: c77d1d596c29725d591d56cf8b0196af
*/
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,
};
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: 2262b7f54dbb7e9541bdfbd852d90601
*/
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 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: d800eb409b3d37ae286675ce5c7c073f
*/
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: 4030346301bb91faf04e5b0e76f68e34
*/
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: e91a955e15cde47288937c7a1df2b283
*/
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: b5959fe6522417f55ab8fe812a5cac17
*/
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: 5a1a3c4ea1d7585eaace3f747cdb3474
*/
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: 0f2debf12df3ba43f621846250335763
*/
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: eded0c8fc6d0419a50dd1239bea3e6c5
*/
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: 5c0ef76ebf767ff152a5cd6567525fab
* CMD_AUDIO_OUTPUT_BIND2_ID, UUID: 6f829e35d85a8080709ee7adf8d9c66c
*/
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: 053176d6d8c217a8876f8a2ed2c1705c
*/
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: 9aa958e99020e71530839a1ead12343b
*/
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: 12f4cb0122b8189edee6a849df5af66f
*/
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: 16592ca6b3d36e2baac2b6bf8da12476
*/
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: 449f41b26885ab2522007fe7fa5aa926
*/
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: 5f0290d132825732db2a1557835f0599
*/
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: 39d7ce4e208ddc8e9421ed86e85debb9
*/
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: f5a3647963762119f5076649d7631251
*/
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: 16c6943a6b978a8b0879b998a31797c9
*/
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: 1a70d4d5d8a39b987f16e4a95fa37bd5
*/
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: 2b6ffada0fb04f029e778cc4d0e3579b
*/
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: 99319135e0aeb804e09a24230a80e4f9
*/
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: f7e34f17de0d45674818cf59e1ee45d1
*/
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: ec69f58a5bdcf60c017bbfc2f6522e5d
*/
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: 70b00e17b8bfcef76c266849ef34f5bc
*/
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: f5f12e29f6351f64261f249d7120bf06
*/
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: 0c04d4f9bb990e962496d353a23dfe78
* CMD_AUDIO_OUTPUT_GET_EP_TOT_SAMPLES_ID, UUID: a06aacfb2c7820db5fe6e8b64ba8d1e1
*/
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: 35bec2bcb579fc921a33c20cc89c1f1e
*/
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: 0e0b64422532950afff5c633b0a72934
*/
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: 50c75bfad866a2b59154985975c13224
*/
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: 5b4acee2025d0d177b203a976d8d64cc
*/
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: 6429894e56111611f097f000b67b955c
*/
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: fe1511140cf3c3bf121f1daf2cdc759b
*/
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: 863035538d10041c2fb643ecef15dde1
*/
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: 6c2a66b93bbedf1e25763f3132dc3649
*/
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: 0260f2f42a5dccfb501c2669034bbcdc
*/
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: fb50c4e28b0a4c9bf9afb1f4ab6489b8
*/
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: e5f60f3dc17265e1261a01f9b0c2413b
*/
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: 41dca108d52f1bf2b7676c2cc15a6787
*/
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: 2c349697419bc8cd01b2913b550de132
*/
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: e54ce57246b85c10640dd4716240633b
*/
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: b6be8f72fb37f16351cd293b12d642d4
*/
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: 1a20c5e03c9d371d74ecf6b5ea500c4d
*/
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: 1b85bceff8be2a9bae9fee20ad5d370e
*/
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: a39e5a5fe46f81f13bee42af6b09e2df
*/
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: 731bbf5eeaddd79be5d0afc154b4c610
*/
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: a7c11a3eeb18927e80f593421c1ef8d9
* CMD_AUDIO_INPUT_AMBIENT_MUSIC_DETECTED_ID, UUID: 129b8be8cf44f27c8dc7c9c08bca3455
*/
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: 2ce5bca29ee5de4adf6e55ba34b9e0b7
*/
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: 28c0b7335f0bfd1f67dbe011ca7a074e
*/
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: 1dcca12214ab40d63b0f31c59dfa9bbd
*/
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: 958a79e735297c53160984847d71c640
*/
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: d6471b8dfcf56e245e540d6b03a2de66
*/
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: 1fc9f60225c548a17d330db1bbe37633
*/
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: 347131f1b70abb073e7359214b30712a
*/
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: be5a9f893d41a0aaabcef151332fcc68
*/
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: c743a2d8608d2149ff07c5878e1929d8
*/
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: 191041a2fbf942888143f525ab00a3d4
*/
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_A2DP_ENC_CODEC_LC3,
};
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: 5b91bbc1de58574678cb87d7ba322069
*/
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: dc4d4681a32160320c989fd3132050b1
*/
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: 04f947c5b7b2ea06f7d99a0203a1de91
*/
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: b708955666049ba0a3efaf0d173a8ece
*/
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: 64ddeb68762705ea7d6e8f3b730920af
*/
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: de7257628c22a1048be588bdcb0cebdb
*/
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: 99dc7c77ea6b82170111cc583df382bb
*/
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: a69f7ebaa159929ca7f89ba328ef1c2f
*/
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: c38e0ceb5d263db65008d8e6827d8344
*/
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: b09b9d8bc0b766e9e7c4135b05bbe3b9
*/
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: 5637c202f6d7740dc3133afb2e7fc966
*/
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: 61076d197aff2715508b276e92f0518a
*/
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: d5728c966cc9209dc2f026a842ff9083
*/
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: 78677de128573fbfb196c40dda4e0320
*/
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: 7f98e80d90d06391c85ad23634c19543
*/
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: 86bdc053fc5196cb0b71fa55627ddd01
* CMD_AUDIO_INPUT_SET_AP_MIC_INDEX_ID, UUID: 71a84667791cb11a998cba7f29d3f8b3
*/
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: 6c9a6d35edbe31ce65e6e391b85e6921
* CMD_AUDIO_INPUT_MIC_MMAP_ENABLE_ID, UUID: f8f6ec7705b2f28ea42c3e0a0b08d134
* CMD_AUDIO_INPUT_MIC_RAW_ENABLE_ID, UUID: a015e7f10a66fd567b22b0186cc223ac
*/
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: adfbbefedefbd5e62f3a99efcad7e355
*/
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: 6a8b9542abaa264e76ab8bde2af481de
* CMD_AUDIO_OUTPUT_GET_TELE_CAPTURE_ID, UUID: 8d92dbfb08a71f8b4476f314c852bdbe
*/
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: 0871ab37ee3b57b41b87954b18392471
*/
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: 1301e8b47b5658afe0ac3967a834725c
*/
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: c4006b36d945df2f40a301866aec3d6b
*/
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: e5cd0414009648e0a1d233f81a27cb50
*/
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: 8180c621a68e9c87853af316994371c9
*/
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: 233f8bba63f6b63a767ccabc983c0939
*/
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: 84da65a45383f30bae0a23933ad971c5
*/
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: da2720525875c120187f8fc4db4aeaef
*/
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: 73e0beef4261e3223c2896ec0caec493
*/
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: 0c154febfc95c027beeafe05dfe25136
*/
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: aad03ef3b9a58abc130fef3e371b5bd9
*/
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: fab6a9b0c01a1b056e56d6e35411cacd
* CMD_AUDIO_OUTPUT_GET_TELE_CAPT_ID, UUID: f7a8eed68b93f43cdec0ab40f173c693
*/
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: e1975a3c8ead55cbf2bc09063f163049
* CMD_AUDIO_INPUT_GET_INCALL_MUSIC_ID, UUID: 7f57d7e121e0a72ef23d8b8790b90194
*/
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: 2a1e68a1c7a21fdc68043f7026a34e4a
*/
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: 2509ef218579e86f419390b701efa7a9
*/
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: dad0a767c6316a3816f8c5800b92fd84
*/
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: b8bcabe208ad85d4e883ac130f6633f2
*/
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: 20b12d638baeec9bbc67238e46914d24
*/
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: 876763e51cec34d72df0a2b9d7f01f8b
* CMD_AUDIO_INPUT_GET_INCALL_MUSIC_CHAN_ID, UUID: 46b25687591dd15187c12f72ee68d4a7
*/
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: 2a2b7438e16876658321cc7e8c4f2351
* CMD_AUDIO_OUTPUT_DEC_CH_GAIN_GET_ID, UUID: 10e507dc9a267119a9b6e412017de080
*/
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: 1fc00bf86111936348eb44a8a1bd21ab
* CMD_AUDIO_OUTPUT_GET_INCALL_MUSIC_ID, UUID: 34d249fdff0e5122c2ec9dd2b952c8a9
*/
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: 90690cdeeed110278c34ab2ce5b1e847
* CMD_AUDIO_OUTPUT_GET_INCALL_MUSIC_CHAN_ID, UUID: 626a829447c50a2a2d04c72e505c7332
*/
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: 90b192119b471f4bf2353ac4f0ac8a86
*/
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: 4a7c58e61a4dcfeb287abad929846f3e
*/
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: fb16063fd13ec28c5a5647fbbfeade63
*/
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: 51d2a45c0146277706368cca97361c72
*/
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: 0832c388c866af5f8b91a962d99ff273
*/
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: 94cf5cad30280a4ec7853ea7e7a01ca2
*/
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: e274c1b9a40fda14faea5c182840f33d
*/
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: 6475d43f33dbdd5e32d38d284bafa476
* CMD_AUDIO_OUTPUT_DSP_MODE_GET_ID, UUID: 045a7d63e23987268f2cf9e79896428c
*/
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: 28f0f531d9df8239a69ecc3144864106
*/
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: 9212b73d3346ace571f370610f20166a
*/
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: b3431de3ef89bdef6541ff11aaa38cfc
*/
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: 16449c7c7a5570c831d12156789b1f89
*/
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 app_id;
uint8_t valid;
} __attribute__((packed));
enum UDFPS_INPUT_SOURCE {
SOURCE_OSC = 0,
SOURCE_DISP,
SOURCE_TOT,
};
/**
* Structure associated with the following commands:
*
* CMD_UDFPS_SET_CLOCK_SOURCE_ID, UUID: eebc5a468fbad45d18406f737c2830ee
*/
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: 318797ef187189b88b26a1e30d5a1984
*/
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: 63c47fe2afd31670394f4c33e1de7ca5
*/
struct CMD_USB_CONTROL_SET_OFFLOAD_STATE {
struct CMD_HDR parent;
uint8_t offloading;
} __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: 227a04e5c2af674048667cb5a57c4fc1
*/
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) {
static uint8_t cmd_cntr_ = 0;
cmd->parent.type = DATA_TYPE_CMD;
cmd->parent.cntr = cmd_cntr_++;
cmd->parent.len = length;
cmd->id = id;
}
/**
* Total number of UUID strings to check against the FW image.
*/
#define AOC_UUID_ENTRIES (229)
/**
* 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] = {
{ 0x00, 0x88, 0xd9, 0x9e, 0x35, 0x72, 0x9a, 0x48, 0xdd, 0x6c, 0x5a, 0xa2, 0xaa, 0xed, 0xdc, 0x9f},
{ 0x02, 0x60, 0xf2, 0xf4, 0x2a, 0x5d, 0xcc, 0xfb, 0x50, 0x1c, 0x26, 0x69, 0x03, 0x4b, 0xbc, 0xdc},
{ 0x04, 0x5a, 0x7d, 0x63, 0xe2, 0x39, 0x87, 0x26, 0x8f, 0x2c, 0xf9, 0xe7, 0x98, 0x96, 0x42, 0x8c},
{ 0x04, 0xac, 0x83, 0x0a, 0xb6, 0x5f, 0x08, 0x08, 0x5b, 0x25, 0xe6, 0x4d, 0x45, 0x3b, 0xa9, 0xd0},
{ 0x04, 0xf9, 0x47, 0xc5, 0xb7, 0xb2, 0xea, 0x06, 0xf7, 0xd9, 0x9a, 0x02, 0x03, 0xa1, 0xde, 0x91},
{ 0x05, 0x31, 0x76, 0xd6, 0xd8, 0xc2, 0x17, 0xa8, 0x87, 0x6f, 0x8a, 0x2e, 0xd2, 0xc1, 0x70, 0x5c},
{ 0x05, 0xd5, 0x07, 0x6b, 0xeb, 0x3f, 0x51, 0x2e, 0x81, 0x5d, 0x86, 0xd7, 0x38, 0xa6, 0x3a, 0x87},
{ 0x07, 0x43, 0x14, 0xaf, 0x03, 0x87, 0x09, 0x44, 0xe3, 0x5d, 0x50, 0x45, 0x2b, 0xe3, 0xa4, 0xc4},
{ 0x08, 0x32, 0xc3, 0x88, 0xc8, 0x66, 0xaf, 0x5f, 0x8b, 0x91, 0xa9, 0x62, 0xd9, 0x9f, 0xf2, 0x73},
{ 0x08, 0x71, 0xab, 0x37, 0xee, 0x3b, 0x57, 0xb4, 0x1b, 0x87, 0x95, 0x4b, 0x18, 0x39, 0x24, 0x71},
{ 0x0c, 0x04, 0xd4, 0xf9, 0xbb, 0x99, 0x0e, 0x96, 0x24, 0x96, 0xd3, 0x53, 0xa2, 0x3d, 0xfe, 0x78},
{ 0x0c, 0x15, 0x4f, 0xeb, 0xfc, 0x95, 0xc0, 0x27, 0xbe, 0xea, 0xfe, 0x05, 0xdf, 0xe2, 0x51, 0x36},
{ 0x0e, 0x0b, 0x64, 0x42, 0x25, 0x32, 0x95, 0x0a, 0xff, 0xf5, 0xc6, 0x33, 0xb0, 0xa7, 0x29, 0x34},
{ 0x0e, 0xf0, 0xb4, 0xf3, 0xc9, 0x77, 0xd0, 0x97, 0x7c, 0x5f, 0xbc, 0x35, 0x7f, 0x08, 0xf8, 0xef},
{ 0x0f, 0x2d, 0xeb, 0xf1, 0x2d, 0xf3, 0xba, 0x43, 0xf6, 0x21, 0x84, 0x62, 0x50, 0x33, 0x57, 0x63},
{ 0x10, 0xe5, 0x07, 0xdc, 0x9a, 0x26, 0x71, 0x19, 0xa9, 0xb6, 0xe4, 0x12, 0x01, 0x7d, 0xe0, 0x80},
{ 0x12, 0x9b, 0x8b, 0xe8, 0xcf, 0x44, 0xf2, 0x7c, 0x8d, 0xc7, 0xc9, 0xc0, 0x8b, 0xca, 0x34, 0x55},
{ 0x12, 0xf4, 0xcb, 0x01, 0x22, 0xb8, 0x18, 0x9e, 0xde, 0xe6, 0xa8, 0x49, 0xdf, 0x5a, 0xf6, 0x6f},
{ 0x13, 0x01, 0xe8, 0xb4, 0x7b, 0x56, 0x58, 0xaf, 0xe0, 0xac, 0x39, 0x67, 0xa8, 0x34, 0x72, 0x5c},
{ 0x16, 0x44, 0x9c, 0x7c, 0x7a, 0x55, 0x70, 0xc8, 0x31, 0xd1, 0x21, 0x56, 0x78, 0x9b, 0x1f, 0x89},
{ 0x16, 0x59, 0x2c, 0xa6, 0xb3, 0xd3, 0x6e, 0x2b, 0xaa, 0xc2, 0xb6, 0xbf, 0x8d, 0xa1, 0x24, 0x76},
{ 0x16, 0xc6, 0x94, 0x3a, 0x6b, 0x97, 0x8a, 0x8b, 0x08, 0x79, 0xb9, 0x98, 0xa3, 0x17, 0x97, 0xc9},
{ 0x18, 0x22, 0x53, 0xd3, 0x7f, 0x2c, 0x1a, 0xbf, 0x0b, 0x3d, 0x7e, 0x7d, 0x66, 0x3b, 0x6a, 0x15},
{ 0x19, 0x10, 0x41, 0xa2, 0xfb, 0xf9, 0x42, 0x88, 0x81, 0x43, 0xf5, 0x25, 0xab, 0x00, 0xa3, 0xd4},
{ 0x19, 0x90, 0x1e, 0x5e, 0xb6, 0xb5, 0xb5, 0x69, 0x4e, 0xb3, 0xbc, 0x4e, 0x05, 0xbf, 0x38, 0x20},
{ 0x1a, 0x20, 0xc5, 0xe0, 0x3c, 0x9d, 0x37, 0x1d, 0x74, 0xec, 0xf6, 0xb5, 0xea, 0x50, 0x0c, 0x4d},
{ 0x1a, 0x70, 0xd4, 0xd5, 0xd8, 0xa3, 0x9b, 0x98, 0x7f, 0x16, 0xe4, 0xa9, 0x5f, 0xa3, 0x7b, 0xd5},
{ 0x1b, 0x85, 0xbc, 0xef, 0xf8, 0xbe, 0x2a, 0x9b, 0xae, 0x9f, 0xee, 0x20, 0xad, 0x5d, 0x37, 0x0e},
{ 0x1d, 0xcc, 0xa1, 0x22, 0x14, 0xab, 0x40, 0xd6, 0x3b, 0x0f, 0x31, 0xc5, 0x9d, 0xfa, 0x9b, 0xbd},
{ 0x1f, 0xc0, 0x0b, 0xf8, 0x61, 0x11, 0x93, 0x63, 0x48, 0xeb, 0x44, 0xa8, 0xa1, 0xbd, 0x21, 0xab},
{ 0x1f, 0xc9, 0xf6, 0x02, 0x25, 0xc5, 0x48, 0xa1, 0x7d, 0x33, 0x0d, 0xb1, 0xbb, 0xe3, 0x76, 0x33},
{ 0x20, 0xb1, 0x2d, 0x63, 0x8b, 0xae, 0xec, 0x9b, 0xbc, 0x67, 0x23, 0x8e, 0x46, 0x91, 0x4d, 0x24},
{ 0x21, 0x37, 0x7c, 0xe7, 0x18, 0xfd, 0x3e, 0x9b, 0xec, 0x88, 0x3f, 0x8f, 0xb4, 0x76, 0xc0, 0x56},
{ 0x22, 0x62, 0xb7, 0xf5, 0x4d, 0xbb, 0x7e, 0x95, 0x41, 0xbd, 0xfb, 0xd8, 0x52, 0xd9, 0x06, 0x01},
{ 0x22, 0x7a, 0x04, 0xe5, 0xc2, 0xaf, 0x67, 0x40, 0x48, 0x66, 0x7c, 0xb5, 0xa5, 0x7c, 0x4f, 0xc1},
{ 0x23, 0x3f, 0x8b, 0xba, 0x63, 0xf6, 0xb6, 0x3a, 0x76, 0x7c, 0xca, 0xbc, 0x98, 0x3c, 0x09, 0x39},
{ 0x24, 0x56, 0x80, 0x00, 0xe9, 0xe7, 0xdd, 0x15, 0x0e, 0xf3, 0x30, 0x83, 0x55, 0xfe, 0xa3, 0xf3},
{ 0x25, 0x09, 0xef, 0x21, 0x85, 0x79, 0xe8, 0x6f, 0x41, 0x93, 0x90, 0xb7, 0x01, 0xef, 0xa7, 0xa9},
{ 0x26, 0xff, 0x9e, 0x04, 0x4e, 0x65, 0x51, 0x07, 0x75, 0x29, 0x1a, 0xbe, 0x87, 0x40, 0x5f, 0xbc},
{ 0x28, 0xc0, 0xb7, 0x33, 0x5f, 0x0b, 0xfd, 0x1f, 0x67, 0xdb, 0xe0, 0x11, 0xca, 0x7a, 0x07, 0x4e},
{ 0x28, 0xf0, 0xf5, 0x31, 0xd9, 0xdf, 0x82, 0x39, 0xa6, 0x9e, 0xcc, 0x31, 0x44, 0x86, 0x41, 0x06},
{ 0x2a, 0x1e, 0x68, 0xa1, 0xc7, 0xa2, 0x1f, 0xdc, 0x68, 0x04, 0x3f, 0x70, 0x26, 0xa3, 0x4e, 0x4a},
{ 0x2a, 0x2b, 0x74, 0x38, 0xe1, 0x68, 0x76, 0x65, 0x83, 0x21, 0xcc, 0x7e, 0x8c, 0x4f, 0x23, 0x51},
{ 0x2b, 0x50, 0x8f, 0x8f, 0x52, 0x02, 0x9e, 0x2f, 0x70, 0x50, 0x5c, 0x90, 0x55, 0xca, 0x50, 0xce},
{ 0x2b, 0x6f, 0xfa, 0xda, 0x0f, 0xb0, 0x4f, 0x02, 0x9e, 0x77, 0x8c, 0xc4, 0xd0, 0xe3, 0x57, 0x9b},
{ 0x2c, 0x34, 0x96, 0x97, 0x41, 0x9b, 0xc8, 0xcd, 0x01, 0xb2, 0x91, 0x3b, 0x55, 0x0d, 0xe1, 0x32},
{ 0x2c, 0xe5, 0xbc, 0xa2, 0x9e, 0xe5, 0xde, 0x4a, 0xdf, 0x6e, 0x55, 0xba, 0x34, 0xb9, 0xe0, 0xb7},
{ 0x2f, 0xad, 0x4c, 0xb4, 0x75, 0xc4, 0x96, 0xc9, 0xf7, 0x6c, 0x32, 0xdc, 0xa4, 0xc0, 0x13, 0x6a},
{ 0x31, 0x87, 0x97, 0xef, 0x18, 0x71, 0x89, 0xb8, 0x8b, 0x26, 0xa1, 0xe3, 0x0d, 0x5a, 0x19, 0x84},
{ 0x34, 0x71, 0x31, 0xf1, 0xb7, 0x0a, 0xbb, 0x07, 0x3e, 0x73, 0x59, 0x21, 0x4b, 0x30, 0x71, 0x2a},
{ 0x34, 0xd2, 0x49, 0xfd, 0xff, 0x0e, 0x51, 0x22, 0xc2, 0xec, 0x9d, 0xd2, 0xb9, 0x52, 0xc8, 0xa9},
{ 0x35, 0xbe, 0xc2, 0xbc, 0xb5, 0x79, 0xfc, 0x92, 0x1a, 0x33, 0xc2, 0x0c, 0xc8, 0x9c, 0x1f, 0x1e},
{ 0x38, 0xed, 0x63, 0x44, 0x98, 0x5d, 0x21, 0x03, 0x6d, 0xd3, 0x76, 0xcd, 0xdb, 0x5a, 0xc5, 0x4c},
{ 0x39, 0xd7, 0xce, 0x4e, 0x20, 0x8d, 0xdc, 0x8e, 0x94, 0x21, 0xed, 0x86, 0xe8, 0x5d, 0xeb, 0xb9},
{ 0x3c, 0x62, 0xed, 0x13, 0xcc, 0xb6, 0x3d, 0xbc, 0x34, 0x97, 0x97, 0x9f, 0xe2, 0x67, 0x57, 0x41},
{ 0x40, 0x30, 0x34, 0x63, 0x01, 0xbb, 0x91, 0xfa, 0xf0, 0x4e, 0x5b, 0x0e, 0x76, 0xf6, 0x8e, 0x34},
{ 0x41, 0xdc, 0xa1, 0x08, 0xd5, 0x2f, 0x1b, 0xf2, 0xb7, 0x67, 0x6c, 0x2c, 0xc1, 0x5a, 0x67, 0x87},
{ 0x43, 0x2f, 0xd3, 0x71, 0xa0, 0xd5, 0x41, 0x9f, 0x2d, 0x4e, 0x3e, 0x66, 0xf1, 0xb3, 0xf2, 0x96},
{ 0x44, 0x9f, 0x41, 0xb2, 0x68, 0x85, 0xab, 0x25, 0x22, 0x00, 0x7f, 0xe7, 0xfa, 0x5a, 0xa9, 0x26},
{ 0x46, 0xb2, 0x56, 0x87, 0x59, 0x1d, 0xd1, 0x51, 0x87, 0xc1, 0x2f, 0x72, 0xee, 0x68, 0xd4, 0xa7},
{ 0x47, 0x23, 0x98, 0x53, 0xe1, 0x06, 0x37, 0xd6, 0xff, 0x81, 0x21, 0xe8, 0x4f, 0xd6, 0x92, 0xfd},
{ 0x4a, 0x7c, 0x58, 0xe6, 0x1a, 0x4d, 0xcf, 0xeb, 0x28, 0x7a, 0xba, 0xd9, 0x29, 0x84, 0x6f, 0x3e},
{ 0x4a, 0x96, 0x77, 0xa6, 0x91, 0xb8, 0xa2, 0x8f, 0x9d, 0xce, 0x22, 0x61, 0x16, 0x2a, 0xd0, 0xd3},
{ 0x4b, 0x25, 0xed, 0xa2, 0x0b, 0x29, 0x68, 0x47, 0xce, 0x76, 0x13, 0xaa, 0x74, 0xf9, 0xd6, 0x08},
{ 0x4b, 0x4f, 0x36, 0xfc, 0x4e, 0x96, 0x01, 0x29, 0xea, 0xfa, 0xee, 0x12, 0x29, 0x51, 0x3c, 0xe7},
{ 0x4c, 0x9d, 0x12, 0x07, 0xd9, 0x5a, 0x97, 0x73, 0x07, 0xd0, 0xc4, 0x4c, 0xce, 0xe8, 0x82, 0xd6},
{ 0x50, 0xc7, 0x5b, 0xfa, 0xd8, 0x66, 0xa2, 0xb5, 0x91, 0x54, 0x98, 0x59, 0x75, 0xc1, 0x32, 0x24},
{ 0x51, 0x47, 0x45, 0x9e, 0x76, 0x38, 0x3f, 0x48, 0xf7, 0xe0, 0x07, 0xfa, 0x60, 0x75, 0xe0, 0xda},
{ 0x51, 0x74, 0xcb, 0xec, 0x9e, 0x35, 0x5e, 0x78, 0x46, 0x47, 0xa3, 0xec, 0x65, 0x9c, 0xdc, 0xb7},
{ 0x51, 0xd2, 0xa4, 0x5c, 0x01, 0x46, 0x27, 0x77, 0x06, 0x36, 0x8c, 0xca, 0x97, 0x36, 0x1c, 0x72},
{ 0x52, 0x3a, 0x9f, 0x7b, 0x74, 0x3e, 0xa2, 0x9e, 0xa2, 0x3a, 0x18, 0xc0, 0x87, 0x9b, 0x0d, 0xcc},
{ 0x53, 0x80, 0x85, 0x13, 0x21, 0xb1, 0x92, 0x97, 0x14, 0x4c, 0x6e, 0xaf, 0x7f, 0x69, 0x78, 0xdd},
{ 0x54, 0x51, 0xdb, 0x39, 0xe4, 0xd5, 0x20, 0x34, 0xf9, 0xaf, 0x63, 0x32, 0xc9, 0x1e, 0x77, 0x9e},
{ 0x55, 0x04, 0x4d, 0x8a, 0xd4, 0x59, 0xb1, 0xed, 0x19, 0x99, 0x54, 0x4c, 0x12, 0xa5, 0x71, 0x64},
{ 0x55, 0xc0, 0x19, 0xbe, 0xbb, 0x2a, 0x49, 0xd2, 0xa2, 0xab, 0xb8, 0x80, 0x27, 0xc2, 0x26, 0x64},
{ 0x56, 0x37, 0xc2, 0x02, 0xf6, 0xd7, 0x74, 0x0d, 0xc3, 0x13, 0x3a, 0xfb, 0x2e, 0x7f, 0xc9, 0x66},
{ 0x5a, 0x1a, 0x3c, 0x4e, 0xa1, 0xd7, 0x58, 0x5e, 0xaa, 0xce, 0x3f, 0x74, 0x7c, 0xdb, 0x34, 0x74},
{ 0x5a, 0xb2, 0xc2, 0x0f, 0xad, 0xf6, 0x65, 0xf9, 0xf7, 0x86, 0x4f, 0x90, 0xeb, 0xc6, 0x1d, 0x41},
{ 0x5b, 0x4a, 0xce, 0xe2, 0x02, 0x5d, 0x0d, 0x17, 0x7b, 0x20, 0x3a, 0x97, 0x6d, 0x8d, 0x64, 0xcc},
{ 0x5b, 0x91, 0xbb, 0xc1, 0xde, 0x58, 0x57, 0x46, 0x78, 0xcb, 0x87, 0xd7, 0xba, 0x32, 0x20, 0x69},
{ 0x5c, 0x0e, 0xf7, 0x6e, 0xbf, 0x76, 0x7f, 0xf1, 0x52, 0xa5, 0xcd, 0x65, 0x67, 0x52, 0x5f, 0xab},
{ 0x5e, 0x8d, 0xcf, 0x37, 0x02, 0xac, 0xc8, 0x7b, 0x41, 0x7f, 0x3c, 0x12, 0x1d, 0x57, 0x11, 0x33},
{ 0x5f, 0x02, 0x90, 0xd1, 0x32, 0x82, 0x57, 0x32, 0xdb, 0x2a, 0x15, 0x57, 0x83, 0x5f, 0x05, 0x99},
{ 0x60, 0xd3, 0x83, 0x64, 0xd6, 0xe3, 0xa5, 0x6d, 0xb5, 0x2b, 0x4a, 0xe6, 0xef, 0x33, 0x30, 0xee},
{ 0x61, 0x07, 0x6d, 0x19, 0x7a, 0xff, 0x27, 0x15, 0x50, 0x8b, 0x27, 0x6e, 0x92, 0xf0, 0x51, 0x8a},
{ 0x61, 0x4e, 0x11, 0x43, 0x81, 0x77, 0x3f, 0xb2, 0xa2, 0x6e, 0x98, 0x28, 0x8f, 0x3e, 0xd7, 0xf1},
{ 0x62, 0x6a, 0x82, 0x94, 0x47, 0xc5, 0x0a, 0x2a, 0x2d, 0x04, 0xc7, 0x2e, 0x50, 0x5c, 0x73, 0x32},
{ 0x63, 0xc4, 0x7f, 0xe2, 0xaf, 0xd3, 0x16, 0x70, 0x39, 0x4f, 0x4c, 0x33, 0xe1, 0xde, 0x7c, 0xa5},
{ 0x63, 0xcb, 0x8f, 0x09, 0x24, 0x94, 0xb9, 0x57, 0xfc, 0xd9, 0x30, 0x39, 0xd9, 0x04, 0x61, 0x3f},
{ 0x64, 0x0f, 0x83, 0x41, 0x12, 0x56, 0xc0, 0xf1, 0xf6, 0x9e, 0x9c, 0x6c, 0xbc, 0x2f, 0xa0, 0x7a},
{ 0x64, 0x29, 0x89, 0x4e, 0x56, 0x11, 0x16, 0x11, 0xf0, 0x97, 0xf0, 0x00, 0xb6, 0x7b, 0x95, 0x5c},
{ 0x64, 0x75, 0xd4, 0x3f, 0x33, 0xdb, 0xdd, 0x5e, 0x32, 0xd3, 0x8d, 0x28, 0x4b, 0xaf, 0xa4, 0x76},
{ 0x64, 0xdd, 0xeb, 0x68, 0x76, 0x27, 0x05, 0xea, 0x7d, 0x6e, 0x8f, 0x3b, 0x73, 0x09, 0x20, 0xaf},
{ 0x66, 0x36, 0xd2, 0xdc, 0xee, 0xe1, 0x97, 0x3b, 0x26, 0xd4, 0x03, 0x3d, 0x28, 0xe5, 0xff, 0x1c},
{ 0x67, 0x54, 0x0c, 0x4b, 0x22, 0x83, 0x99, 0xc2, 0x3f, 0x5f, 0x6b, 0x21, 0xa2, 0xe1, 0xa5, 0xaa},
{ 0x68, 0x43, 0x0d, 0x51, 0xec, 0xed, 0xb2, 0xe3, 0x53, 0x78, 0x4a, 0xd5, 0x60, 0xbe, 0xda, 0x7b},
{ 0x6a, 0x8b, 0x95, 0x42, 0xab, 0xaa, 0x26, 0x4e, 0x76, 0xab, 0x8b, 0xde, 0x2a, 0xf4, 0x81, 0xde},
{ 0x6b, 0xd3, 0x5b, 0x8c, 0xff, 0xee, 0xc1, 0x20, 0x69, 0x02, 0xc1, 0x4e, 0xb5, 0xf9, 0xe4, 0x01},
{ 0x6c, 0x2a, 0x66, 0xb9, 0x3b, 0xbe, 0xdf, 0x1e, 0x25, 0x76, 0x3f, 0x31, 0x32, 0xdc, 0x36, 0x49},
{ 0x6c, 0x9a, 0x6d, 0x35, 0xed, 0xbe, 0x31, 0xce, 0x65, 0xe6, 0xe3, 0x91, 0xb8, 0x5e, 0x69, 0x21},
{ 0x6c, 0xed, 0x0b, 0xeb, 0x0a, 0x24, 0xe7, 0x2d, 0xea, 0x36, 0x5f, 0x21, 0xc4, 0xf0, 0x49, 0x6e},
{ 0x6d, 0xaf, 0xca, 0x1b, 0x50, 0xff, 0x4f, 0x7a, 0xac, 0xc4, 0x00, 0x6c, 0x0e, 0x10, 0x4b, 0x7e},
{ 0x6f, 0x82, 0x9e, 0x35, 0xd8, 0x5a, 0x80, 0x80, 0x70, 0x9e, 0xe7, 0xad, 0xf8, 0xd9, 0xc6, 0x6c},
{ 0x6f, 0xb5, 0x3c, 0xb6, 0x9d, 0xb0, 0x95, 0x5c, 0x4e, 0xee, 0xbe, 0x86, 0x9e, 0x58, 0x8b, 0x0a},
{ 0x70, 0xb0, 0x0e, 0x17, 0xb8, 0xbf, 0xce, 0xf7, 0x6c, 0x26, 0x68, 0x49, 0xef, 0x34, 0xf5, 0xbc},
{ 0x71, 0x88, 0x02, 0x9a, 0x1f, 0xbb, 0x34, 0x6b, 0xc5, 0x32, 0x25, 0xb3, 0xaf, 0xe5, 0xb0, 0x30},
{ 0x71, 0xa8, 0x46, 0x67, 0x79, 0x1c, 0xb1, 0x1a, 0x99, 0x8c, 0xba, 0x7f, 0x29, 0xd3, 0xf8, 0xb3},
{ 0x71, 0xbc, 0x54, 0x8e, 0x4d, 0x11, 0x01, 0x6c, 0x86, 0xef, 0x26, 0x7c, 0x16, 0xa1, 0x61, 0xd9},
{ 0x73, 0x1b, 0xbf, 0x5e, 0xea, 0xdd, 0xd7, 0x9b, 0xe5, 0xd0, 0xaf, 0xc1, 0x54, 0xb4, 0xc6, 0x10},
{ 0x73, 0x3b, 0x57, 0xb1, 0xd8, 0xa9, 0x34, 0x25, 0x23, 0xa4, 0x9b, 0x8c, 0x37, 0xad, 0x2d, 0x0a},
{ 0x73, 0xe0, 0xbe, 0xef, 0x42, 0x61, 0xe3, 0x22, 0x3c, 0x28, 0x96, 0xec, 0x0c, 0xae, 0xc4, 0x93},
{ 0x74, 0x88, 0xed, 0xda, 0xbe, 0x06, 0x54, 0xe3, 0xf0, 0xac, 0x58, 0xcd, 0xa1, 0x7a, 0x15, 0x30},
{ 0x75, 0x7b, 0x4e, 0x18, 0xd6, 0x72, 0xbf, 0x13, 0xef, 0x09, 0x9d, 0x8c, 0xcc, 0x50, 0x22, 0xd6},
{ 0x78, 0x67, 0x7d, 0xe1, 0x28, 0x57, 0x3f, 0xbf, 0xb1, 0x96, 0xc4, 0x0d, 0xda, 0x4e, 0x03, 0x20},
{ 0x78, 0x6a, 0xf5, 0x0b, 0x0d, 0x48, 0x61, 0x5e, 0xeb, 0x0c, 0x03, 0x7a, 0x05, 0x46, 0x2a, 0xc1},
{ 0x7b, 0x90, 0x75, 0xe0, 0x31, 0x8e, 0xba, 0x31, 0x4f, 0x60, 0xf6, 0x2f, 0xe5, 0x3c, 0xda, 0x03},
{ 0x7f, 0x37, 0x83, 0xae, 0xdb, 0xae, 0x03, 0x85, 0x4d, 0x3c, 0xb2, 0x85, 0x1a, 0xa0, 0x7b, 0x40},
{ 0x7f, 0x57, 0xd7, 0xe1, 0x21, 0xe0, 0xa7, 0x2e, 0xf2, 0x3d, 0x8b, 0x87, 0x90, 0xb9, 0x01, 0x94},
{ 0x7f, 0x65, 0xb2, 0x21, 0x15, 0xbe, 0x36, 0x03, 0x89, 0xad, 0x1b, 0x84, 0xca, 0xbb, 0x6a, 0xb2},
{ 0x7f, 0x98, 0xe8, 0x0d, 0x90, 0xd0, 0x63, 0x91, 0xc8, 0x5a, 0xd2, 0x36, 0x34, 0xc1, 0x95, 0x43},
{ 0x80, 0x82, 0x20, 0x72, 0xda, 0x64, 0x58, 0xb0, 0x80, 0xf4, 0x88, 0xc1, 0xb1, 0x6a, 0xb0, 0x08},
{ 0x81, 0x80, 0xc6, 0x21, 0xa6, 0x8e, 0x9c, 0x87, 0x85, 0x3a, 0xf3, 0x16, 0x99, 0x43, 0x71, 0xc9},
{ 0x81, 0x81, 0x84, 0x27, 0x25, 0xec, 0xcd, 0xc3, 0x51, 0x29, 0x61, 0x7f, 0x18, 0x62, 0xa9, 0x9b},
{ 0x82, 0x17, 0x63, 0xf8, 0xcd, 0x27, 0xaa, 0x29, 0xb9, 0x0a, 0x86, 0xef, 0x77, 0xbb, 0x79, 0x4c},
{ 0x83, 0xc7, 0xfd, 0x9b, 0xa4, 0x1a, 0x12, 0xea, 0xd4, 0x92, 0x0d, 0xdb, 0xe0, 0x2c, 0xe8, 0xfb},
{ 0x84, 0x07, 0xed, 0xe1, 0x15, 0xd8, 0xb3, 0x17, 0xb3, 0x8c, 0x2f, 0xe3, 0x84, 0xc0, 0x7f, 0x5b},
{ 0x84, 0xda, 0x65, 0xa4, 0x53, 0x83, 0xf3, 0x0b, 0xae, 0x0a, 0x23, 0x93, 0x3a, 0xd9, 0x71, 0xc5},
{ 0x84, 0xed, 0x33, 0xf0, 0xd9, 0xa4, 0x9a, 0x2e, 0x41, 0xbf, 0xc9, 0xf7, 0x16, 0x20, 0x5c, 0x0e},
{ 0x85, 0xe7, 0x27, 0x8d, 0xbc, 0x86, 0x8c, 0x35, 0xff, 0x2c, 0x8a, 0x3d, 0xcc, 0x0d, 0x84, 0x47},
{ 0x86, 0x28, 0x16, 0x4e, 0xb5, 0x55, 0x88, 0x4b, 0x43, 0x59, 0xdb, 0x0d, 0x11, 0xcd, 0x68, 0x73},
{ 0x86, 0x30, 0x35, 0x53, 0x8d, 0x10, 0x04, 0x1c, 0x2f, 0xb6, 0x43, 0xec, 0xef, 0x15, 0xdd, 0xe1},
{ 0x86, 0xbd, 0xc0, 0x53, 0xfc, 0x51, 0x96, 0xcb, 0x0b, 0x71, 0xfa, 0x55, 0x62, 0x7d, 0xdd, 0x01},
{ 0x87, 0x2b, 0xab, 0x98, 0x04, 0x99, 0xad, 0xfc, 0x8b, 0x6e, 0x89, 0xb8, 0xce, 0x9f, 0x08, 0x3d},
{ 0x87, 0x67, 0x63, 0xe5, 0x1c, 0xec, 0x34, 0xd7, 0x2d, 0xf0, 0xa2, 0xb9, 0xd7, 0xf0, 0x1f, 0x8b},
{ 0x87, 0xbf, 0xb8, 0xe1, 0xee, 0x15, 0x4e, 0x19, 0x5f, 0x9c, 0x06, 0x05, 0x4a, 0xb0, 0xff, 0xbc},
{ 0x8a, 0x69, 0xe9, 0xfc, 0x1f, 0x80, 0x0c, 0x59, 0xda, 0xb9, 0x0e, 0x17, 0xd5, 0xbf, 0xf6, 0x9d},
{ 0x8d, 0x92, 0xdb, 0xfb, 0x08, 0xa7, 0x1f, 0x8b, 0x44, 0x76, 0xf3, 0x14, 0xc8, 0x52, 0xbd, 0xbe},
{ 0x90, 0x69, 0x0c, 0xde, 0xee, 0xd1, 0x10, 0x27, 0x8c, 0x34, 0xab, 0x2c, 0xe5, 0xb1, 0xe8, 0x47},
{ 0x90, 0xb1, 0x92, 0x11, 0x9b, 0x47, 0x1f, 0x4b, 0xf2, 0x35, 0x3a, 0xc4, 0xf0, 0xac, 0x8a, 0x86},
{ 0x90, 0xd9, 0x24, 0x60, 0x10, 0x4e, 0x4b, 0xc6, 0xc2, 0xd9, 0xc9, 0xa0, 0xf6, 0x35, 0xb5, 0xc9},
{ 0x92, 0x12, 0xb7, 0x3d, 0x33, 0x46, 0xac, 0xe5, 0x71, 0xf3, 0x70, 0x61, 0x0f, 0x20, 0x16, 0x6a},
{ 0x93, 0x6b, 0x01, 0x0c, 0xde, 0x4c, 0x78, 0x6c, 0xa6, 0xe8, 0xd8, 0xac, 0xec, 0x5d, 0x87, 0xf8},
{ 0x94, 0xcf, 0x5c, 0xad, 0x30, 0x28, 0x0a, 0x4e, 0xc7, 0x85, 0x3e, 0xa7, 0xe7, 0xa0, 0x1c, 0xa2},
{ 0x95, 0x6c, 0x8b, 0x05, 0x72, 0xbe, 0xa5, 0x02, 0x8c, 0x3d, 0x28, 0x74, 0x70, 0xf1, 0x9f, 0x78},
{ 0x95, 0x8a, 0x79, 0xe7, 0x35, 0x29, 0x7c, 0x53, 0x16, 0x09, 0x84, 0x84, 0x7d, 0x71, 0xc6, 0x40},
{ 0x97, 0x46, 0xe5, 0xb6, 0x84, 0x93, 0xfb, 0x62, 0xe5, 0x65, 0x7d, 0xc9, 0x5f, 0x02, 0xd8, 0xef},
{ 0x98, 0xe9, 0x91, 0x3a, 0x9d, 0xc6, 0x94, 0x49, 0xf3, 0x23, 0xf0, 0x40, 0x4a, 0x5f, 0x7a, 0x6a},
{ 0x99, 0x31, 0x91, 0x35, 0xe0, 0xae, 0xb8, 0x04, 0xe0, 0x9a, 0x24, 0x23, 0x0a, 0x80, 0xe4, 0xf9},
{ 0x99, 0xdc, 0x7c, 0x77, 0xea, 0x6b, 0x82, 0x17, 0x01, 0x11, 0xcc, 0x58, 0x3d, 0xf3, 0x82, 0xbb},
{ 0x9a, 0xa9, 0x58, 0xe9, 0x90, 0x20, 0xe7, 0x15, 0x30, 0x83, 0x9a, 0x1e, 0xad, 0x12, 0x34, 0x3b},
{ 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, 0x05, 0x3b, 0xf6, 0xa4, 0x98, 0xc6, 0xe8, 0x34, 0x68, 0xef, 0x77, 0xd5, 0x9c, 0x66, 0x9e},
{ 0xa0, 0x15, 0xe7, 0xf1, 0x0a, 0x66, 0xfd, 0x56, 0x7b, 0x22, 0xb0, 0x18, 0x6c, 0xc2, 0x23, 0xac},
{ 0xa0, 0x6a, 0xac, 0xfb, 0x2c, 0x78, 0x20, 0xdb, 0x5f, 0xe6, 0xe8, 0xb6, 0x4b, 0xa8, 0xd1, 0xe1},
{ 0xa1, 0xab, 0x30, 0x9b, 0x64, 0x2f, 0xe7, 0x63, 0xe3, 0x3e, 0x72, 0x77, 0xca, 0xc5, 0x96, 0xa1},
{ 0xa2, 0x88, 0xd7, 0xad, 0xe0, 0xd6, 0xa8, 0x3f, 0x4c, 0x1a, 0x3c, 0xdc, 0x08, 0x9f, 0x01, 0x75},
{ 0xa2, 0xa1, 0xd1, 0xf5, 0xe0, 0xb7, 0x8f, 0x3a, 0x35, 0x47, 0x02, 0x23, 0x1c, 0xf3, 0x86, 0x4c},
{ 0xa3, 0x77, 0x6f, 0xb0, 0xd6, 0x45, 0xd2, 0x29, 0xeb, 0x36, 0x1f, 0x76, 0x67, 0xad, 0x22, 0xb2},
{ 0xa3, 0x9e, 0x5a, 0x5f, 0xe4, 0x6f, 0x81, 0xf1, 0x3b, 0xee, 0x42, 0xaf, 0x6b, 0x09, 0xe2, 0xdf},
{ 0xa5, 0x5b, 0x87, 0xf7, 0xdc, 0xed, 0x9d, 0xc9, 0x40, 0xf8, 0x21, 0x51, 0x43, 0x44, 0xaf, 0xb0},
{ 0xa6, 0x11, 0xb2, 0xc4, 0xab, 0x29, 0x70, 0x52, 0x8b, 0x30, 0xa3, 0xc0, 0xe7, 0x0a, 0x33, 0xcb},
{ 0xa6, 0x45, 0x51, 0xef, 0xd2, 0x2e, 0x05, 0x90, 0xc5, 0x18, 0x62, 0xfb, 0xda, 0xe9, 0x82, 0xd0},
{ 0xa6, 0x9f, 0x7e, 0xba, 0xa1, 0x59, 0x92, 0x9c, 0xa7, 0xf8, 0x9b, 0xa3, 0x28, 0xef, 0x1c, 0x2f},
{ 0xa7, 0xc1, 0x1a, 0x3e, 0xeb, 0x18, 0x92, 0x7e, 0x80, 0xf5, 0x93, 0x42, 0x1c, 0x1e, 0xf8, 0xd9},
{ 0xaa, 0x30, 0x92, 0xe5, 0xca, 0xb3, 0x36, 0x6e, 0x01, 0xcc, 0x4a, 0x14, 0x81, 0x09, 0x31, 0x2f},
{ 0xaa, 0xd0, 0x3e, 0xf3, 0xb9, 0xa5, 0x8a, 0xbc, 0x13, 0x0f, 0xef, 0x3e, 0x37, 0x1b, 0x5b, 0xd9},
{ 0xac, 0x7f, 0x67, 0xe6, 0x33, 0x13, 0x1c, 0xfd, 0x09, 0xd1, 0x84, 0x98, 0xfa, 0xaa, 0x66, 0xd0},
{ 0xad, 0xfb, 0xbe, 0xfe, 0xde, 0xfb, 0xd5, 0xe6, 0x2f, 0x3a, 0x99, 0xef, 0xca, 0xd7, 0xe3, 0x55},
{ 0xb0, 0x82, 0xcb, 0xc3, 0xdd, 0x47, 0xaf, 0xfc, 0xbe, 0xd8, 0x1f, 0x2f, 0x6a, 0x8b, 0xdc, 0x26},
{ 0xb0, 0x9b, 0x9d, 0x8b, 0xc0, 0xb7, 0x66, 0xe9, 0xe7, 0xc4, 0x13, 0x5b, 0x05, 0xbb, 0xe3, 0xb9},
{ 0xb3, 0x43, 0x1d, 0xe3, 0xef, 0x89, 0xbd, 0xef, 0x65, 0x41, 0xff, 0x11, 0xaa, 0xa3, 0x8c, 0xfc},
{ 0xb5, 0x95, 0x9f, 0xe6, 0x52, 0x24, 0x17, 0xf5, 0x5a, 0xb8, 0xfe, 0x81, 0x2a, 0x5c, 0xac, 0x17},
{ 0xb6, 0x8f, 0x8b, 0x69, 0x3a, 0x8e, 0x2f, 0x56, 0x41, 0x2d, 0x3c, 0x9f, 0xd0, 0x76, 0x4f, 0x3f},
{ 0xb6, 0xbe, 0x8f, 0x72, 0xfb, 0x37, 0xf1, 0x63, 0x51, 0xcd, 0x29, 0x3b, 0x12, 0xd6, 0x42, 0xd4},
{ 0xb7, 0x08, 0x95, 0x56, 0x66, 0x04, 0x9b, 0xa0, 0xa3, 0xef, 0xaf, 0x0d, 0x17, 0x3a, 0x8e, 0xce},
{ 0xb8, 0xbc, 0xab, 0xe2, 0x08, 0xad, 0x85, 0xd4, 0xe8, 0x83, 0xac, 0x13, 0x0f, 0x66, 0x33, 0xf2},
{ 0xbd, 0x25, 0x20, 0xf7, 0x82, 0xb2, 0x9e, 0xf2, 0x41, 0xb7, 0x4a, 0x18, 0x1d, 0xa5, 0xee, 0x14},
{ 0xbe, 0x5a, 0x9f, 0x89, 0x3d, 0x41, 0xa0, 0xaa, 0xab, 0xce, 0xf1, 0x51, 0x33, 0x2f, 0xcc, 0x68},
{ 0xbe, 0x69, 0x42, 0xf1, 0x8e, 0x28, 0x0b, 0x2d, 0x32, 0xdf, 0x8d, 0x1c, 0xfd, 0xc4, 0x20, 0x9e},
{ 0xbf, 0xa2, 0xaf, 0x7c, 0xf0, 0xa0, 0xc8, 0x47, 0xf0, 0x41, 0x10, 0x43, 0xcd, 0x73, 0x16, 0xe6},
{ 0xc3, 0x8e, 0x0c, 0xeb, 0x5d, 0x26, 0x3d, 0xb6, 0x50, 0x08, 0xd8, 0xe6, 0x82, 0x7d, 0x83, 0x44},
{ 0xc4, 0x00, 0x6b, 0x36, 0xd9, 0x45, 0xdf, 0x2f, 0x40, 0xa3, 0x01, 0x86, 0x6a, 0xec, 0x3d, 0x6b},
{ 0xc5, 0xec, 0x7d, 0x4f, 0x20, 0xa9, 0xb7, 0x28, 0xa4, 0x62, 0xb9, 0xf7, 0x50, 0x33, 0x24, 0x8b},
{ 0xc7, 0x43, 0xa2, 0xd8, 0x60, 0x8d, 0x21, 0x49, 0xff, 0x07, 0xc5, 0x87, 0x8e, 0x19, 0x29, 0xd8},
{ 0xc7, 0x7d, 0x1d, 0x59, 0x6c, 0x29, 0x72, 0x5d, 0x59, 0x1d, 0x56, 0xcf, 0x8b, 0x01, 0x96, 0xaf},
{ 0xce, 0xc4, 0xf3, 0xb0, 0x3b, 0xdd, 0x0a, 0x37, 0xf4, 0xc4, 0x35, 0x3e, 0x26, 0xba, 0x25, 0x02},
{ 0xd0, 0x15, 0x77, 0xd8, 0x96, 0xb1, 0xce, 0x3c, 0x54, 0x06, 0xf9, 0x37, 0x68, 0xbb, 0xcc, 0xb4},
{ 0xd0, 0x96, 0x98, 0xe3, 0xa1, 0x8a, 0x70, 0xee, 0x08, 0x98, 0x78, 0x4a, 0xc8, 0x3c, 0x94, 0x61},
{ 0xd1, 0xc9, 0x58, 0x02, 0x7b, 0x2e, 0xd6, 0xf8, 0xa4, 0xbf, 0xab, 0x4e, 0x29, 0xde, 0xb0, 0x1f},
{ 0xd3, 0x5a, 0xf9, 0x49, 0x3e, 0x8b, 0x73, 0x46, 0xf3, 0x22, 0x65, 0x18, 0x55, 0x96, 0x1d, 0x21},
{ 0xd3, 0xa5, 0x2c, 0xad, 0x71, 0x78, 0x26, 0x91, 0x8f, 0x48, 0x4e, 0xf6, 0x48, 0x74, 0xd1, 0x81},
{ 0xd3, 0xba, 0xcb, 0x00, 0x18, 0xcd, 0xa4, 0x23, 0x70, 0xe6, 0x6d, 0x13, 0x02, 0x0c, 0x60, 0xb8},
{ 0xd5, 0x72, 0x8c, 0x96, 0x6c, 0xc9, 0x20, 0x9d, 0xc2, 0xf0, 0x26, 0xa8, 0x42, 0xff, 0x90, 0x83},
{ 0xd6, 0x47, 0x1b, 0x8d, 0xfc, 0xf5, 0x6e, 0x24, 0x5e, 0x54, 0x0d, 0x6b, 0x03, 0xa2, 0xde, 0x66},
{ 0xd7, 0xa9, 0x7b, 0xe0, 0xac, 0xc6, 0x97, 0x70, 0x54, 0xe7, 0x1a, 0xe7, 0x89, 0x39, 0x95, 0x52},
{ 0xd8, 0x00, 0xeb, 0x40, 0x9b, 0x3d, 0x37, 0xae, 0x28, 0x66, 0x75, 0xce, 0x5c, 0x7c, 0x07, 0x3f},
{ 0xd9, 0x80, 0x2e, 0x9e, 0x0e, 0x84, 0xb7, 0x13, 0xe0, 0xef, 0xe8, 0x6f, 0x3b, 0x2c, 0x7d, 0x29},
{ 0xda, 0x27, 0x20, 0x52, 0x58, 0x75, 0xc1, 0x20, 0x18, 0x7f, 0x8f, 0xc4, 0xdb, 0x4a, 0xea, 0xef},
{ 0xda, 0x94, 0x9c, 0x27, 0xa8, 0xbc, 0x2d, 0xc7, 0x85, 0x65, 0x5f, 0x91, 0x07, 0x5a, 0xca, 0x1a},
{ 0xda, 0xd0, 0xa7, 0x67, 0xc6, 0x31, 0x6a, 0x38, 0x16, 0xf8, 0xc5, 0x80, 0x0b, 0x92, 0xfd, 0x84},
{ 0xdb, 0xfe, 0x4f, 0xb7, 0xb6, 0x9f, 0x62, 0x58, 0xd1, 0x5e, 0xa3, 0xfa, 0xe0, 0x27, 0x5a, 0x8b},
{ 0xdc, 0x4d, 0x46, 0x81, 0xa3, 0x21, 0x60, 0x32, 0x0c, 0x98, 0x9f, 0xd3, 0x13, 0x20, 0x50, 0xb1},
{ 0xde, 0x72, 0x57, 0x62, 0x8c, 0x22, 0xa1, 0x04, 0x8b, 0xe5, 0x88, 0xbd, 0xcb, 0x0c, 0xeb, 0xdb},
{ 0xe1, 0x6e, 0x93, 0x92, 0x6a, 0x53, 0x19, 0xc1, 0xca, 0xd6, 0x48, 0x89, 0x7d, 0x2d, 0xf8, 0x5c},
{ 0xe1, 0x97, 0x5a, 0x3c, 0x8e, 0xad, 0x55, 0xcb, 0xf2, 0xbc, 0x09, 0x06, 0x3f, 0x16, 0x30, 0x49},
{ 0xe2, 0x74, 0xc1, 0xb9, 0xa4, 0x0f, 0xda, 0x14, 0xfa, 0xea, 0x5c, 0x18, 0x28, 0x40, 0xf3, 0x3d},
{ 0xe5, 0x4c, 0xe5, 0x72, 0x46, 0xb8, 0x5c, 0x10, 0x64, 0x0d, 0xd4, 0x71, 0x62, 0x40, 0x63, 0x3b},
{ 0xe5, 0xcd, 0x04, 0x14, 0x00, 0x96, 0x48, 0xe0, 0xa1, 0xd2, 0x33, 0xf8, 0x1a, 0x27, 0xcb, 0x50},
{ 0xe5, 0xf6, 0x0f, 0x3d, 0xc1, 0x72, 0x65, 0xe1, 0x26, 0x1a, 0x01, 0xf9, 0xb0, 0xc2, 0x41, 0x3b},
{ 0xe9, 0x1a, 0x95, 0x5e, 0x15, 0xcd, 0xe4, 0x72, 0x88, 0x93, 0x7c, 0x7a, 0x1d, 0xf2, 0xb2, 0x83},
{ 0xea, 0xfd, 0xa5, 0x4e, 0x83, 0xfb, 0x87, 0xfb, 0x12, 0x6f, 0x6f, 0x43, 0xf2, 0x40, 0x60, 0x3c},
{ 0xeb, 0x63, 0x31, 0x9b, 0x96, 0x5f, 0xd0, 0xef, 0x7c, 0xf9, 0x2b, 0xad, 0xac, 0x1f, 0x31, 0xfa},
{ 0xec, 0x69, 0xf5, 0x8a, 0x5b, 0xdc, 0xf6, 0x0c, 0x01, 0x7b, 0xbf, 0xc2, 0xf6, 0x52, 0x2e, 0x5d},
{ 0xed, 0xed, 0x0c, 0x8f, 0xc6, 0xd0, 0x41, 0x9a, 0x50, 0xdd, 0x12, 0x39, 0xbe, 0xa3, 0xe6, 0xc5},
{ 0xee, 0xbc, 0x5a, 0x46, 0x8f, 0xba, 0xd4, 0x5d, 0x18, 0x40, 0x6f, 0x73, 0x7c, 0x28, 0x30, 0xee},
{ 0xf5, 0xa3, 0x64, 0x79, 0x63, 0x76, 0x21, 0x19, 0xf5, 0x07, 0x66, 0x49, 0xd7, 0x63, 0x12, 0x51},
{ 0xf5, 0xf1, 0x2e, 0x29, 0xf6, 0x35, 0x1f, 0x64, 0x26, 0x1f, 0x24, 0x9d, 0x71, 0x20, 0xbf, 0x06},
{ 0xf7, 0xa8, 0xee, 0xd6, 0x8b, 0x93, 0xf4, 0x3c, 0xde, 0xc0, 0xab, 0x40, 0xf1, 0x73, 0xc6, 0x93},
{ 0xf7, 0xe3, 0x4f, 0x17, 0xde, 0x0d, 0x45, 0x67, 0x48, 0x18, 0xcf, 0x59, 0xe1, 0xee, 0x45, 0xd1},
{ 0xf8, 0x92, 0x39, 0x96, 0x3c, 0x88, 0x14, 0x25, 0xd9, 0x19, 0x52, 0x74, 0x52, 0xee, 0xdc, 0xc7},
{ 0xf8, 0xf6, 0xec, 0x77, 0x05, 0xb2, 0xf2, 0x8e, 0xa4, 0x2c, 0x3e, 0x0a, 0x0b, 0x08, 0xd1, 0x34},
{ 0xf9, 0xbc, 0xad, 0xaa, 0xf8, 0x59, 0x81, 0x68, 0xc5, 0x59, 0x71, 0xd4, 0xfc, 0x26, 0x17, 0xa7},
{ 0xfa, 0xb6, 0xa9, 0xb0, 0xc0, 0x1a, 0x1b, 0x05, 0x6e, 0x56, 0xd6, 0xe3, 0x54, 0x11, 0xca, 0xcd},
{ 0xfb, 0x16, 0x06, 0x3f, 0xd1, 0x3e, 0xc2, 0x8c, 0x5a, 0x56, 0x47, 0xfb, 0xbf, 0xea, 0xde, 0x63},
{ 0xfb, 0x50, 0xc4, 0xe2, 0x8b, 0x0a, 0x4c, 0x9b, 0xf9, 0xaf, 0xb1, 0xf4, 0xab, 0x64, 0x89, 0xb8},
{ 0xfb, 0xb5, 0x37, 0x08, 0x5a, 0xce, 0x74, 0x93, 0xc9, 0xee, 0x32, 0x08, 0xce, 0xaf, 0x8b, 0xdb},
{ 0xfd, 0x9b, 0x47, 0x5f, 0xbe, 0x11, 0x26, 0x49, 0xef, 0xbf, 0xfa, 0xad, 0x13, 0xbc, 0x91, 0xe2},
{ 0xfe, 0x15, 0x11, 0x14, 0x0c, 0xf3, 0xc3, 0xbf, 0x12, 0x1f, 0x1d, 0xaf, 0x2c, 0xdc, 0x75, 0x9b},
};
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_ */