| /** |
| * 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_ */ |
| |