nt9856x/BSP/linux-kernel/sound/soc/novatek/xmos_soc_ext.h
2023-03-28 15:07:53 +08:00

148 lines
5.4 KiB
C
Executable File

// Copyright (c) 2018-2019, XMOS Ltd, All rights reserved
#ifndef _XMOS_SOC_EMBD_H_
#define _XMOS_SOC_EMBD_H_
/*=============================================*/
/* The lines below are automatically generated */
/*=============================================*/
enum ap_control_ids {
AP_STAGE_A_CONTROL_ID,
AP_STAGE_B_CONTROL_ID,
AP_STAGE_C_CONTROL_ID,
AP_CONTROL_NUM_IDS
};
enum ap_control_resids {
AP_STAGE_A_RESID = (AP_STAGE_A_CONTROL_ID + 1) << 4,
AEC_RESID,
AP_STAGE_B_RESID = (AP_STAGE_B_CONTROL_ID + 1) << 4,
IC_RESID,
VAD_RESID,
AP_STAGE_C_RESID = (AP_STAGE_C_CONTROL_ID + 1) << 4,
AGC_RESID,
SUP_RESID,
AP_CONTROL_RESID = 0xf0
};
#define AEC_CMD_GET_ADAPTION_CONFIG 0x84
#define AEC_CMD_GET_BYPASS 0x80
#define AEC_CMD_GET_COEFFICIENT_INDEX 0x90
#define AEC_CMD_GET_ERLE_CH0 0x88
#define AEC_CMD_GET_ERLE_CH1 0x89
#define AEC_CMD_GET_F_BIN_COUNT 0x8E
#define AEC_CMD_GET_FILTER_COEFFICIENTS 0x8F
#define AEC_CMD_GET_FORCED_MU_VALUE 0x83
#define AEC_CMD_GET_FRAME_ADVANCE 0x8A
#define AEC_CMD_GET_MU_LIMITS 0x86
#define AEC_CMD_GET_MU_SCALAR 0x85
#define AEC_CMD_GET_X_CHANNEL_PHASES 0x8D
#define AEC_CMD_GET_X_CHANNELS 0x8C
#define AEC_CMD_GET_Y_CHANNELS 0x8B
#define AEC_CMD_RESET_FILTER 0x09
#define AEC_CMD_SET_ADAPTION_CONFIG 0x04
#define AEC_CMD_SET_BYPASS 0x00
#define AEC_CMD_SET_COEFFICIENT_INDEX 0x08
#define AEC_CMD_SET_FORCED_MU_VALUE 0x03
#define AEC_CMD_SET_MU_LIMITS 0x06
#define AEC_CMD_SET_MU_SCALAR 0x05
#define AP_CONTROL_CMD_GET_DELAY_SAMPLES 0x82
#define AP_CONTROL_CMD_GET_STATUS 0x80
#define AP_CONTROL_CMD_GET_VERSION 0x81
#define AP_CONTROL_CMD_SET_DELAY_SAMPLES 0x00
#define AP_STAGE_A_CMD_GET_ADEC_ENABLED 0x8E
#define AP_STAGE_A_CMD_GET_ADEC_MODE 0x8F
#define AP_STAGE_A_CMD_GET_DELAY_DIRECTION 0x8A
#define AP_STAGE_A_CMD_GET_DELAY_ESTIMATE 0x8B
#define AP_STAGE_A_CMD_GET_DELAY_ESTIMATOR_ENABLED 0x8C
#define AP_STAGE_A_CMD_GET_MIC_SHIFT_SATURATE 0x8D
#define AP_STAGE_A_CMD_SET_ADEC_ENABLED 0x04
#define AP_STAGE_A_CMD_SET_DELAY_DIRECTION 0x01
#define AP_STAGE_A_CMD_SET_DELAY_ESTIMATOR_ENABLED 0x02
#define AP_STAGE_A_CMD_SET_MANUAL_ADEC_CYCLE_TRIGGER 0x05
#define AP_STAGE_A_CMD_SET_MIC_SHIFT_SATURATE 0x03
#define AP_STAGE_C_CMD_GET_AGC_ADAPT 0x8C
#define AP_STAGE_C_CMD_GET_AGC_GAIN 0x8A
#define AP_STAGE_C_CMD_GET_ASR_ALL_CHANNELS 0x91
#define AP_STAGE_C_CMD_GET_REF_OUT 0x92
#define AP_STAGE_C_CMD_SET_AGC_ADAPT 0x02
#define AP_STAGE_C_CMD_SET_AGC_GAIN 0x00
#define AP_STAGE_C_CMD_SET_ASR_ALL_CHANNELS 0x07
#define AP_STAGE_C_CMD_SET_REF_OUT 0x08
#define IC_CMD_GET_ADAPTION_CONFIG 0x84
#define IC_CMD_GET_BYPASS 0x80
#define IC_CMD_GET_COEFFICIENT_INDEX 0x8A
#define IC_CMD_GET_FILTER_COEFFICIENTS 0x89
#define IC_CMD_GET_PHASES 0x87
#define IC_CMD_GET_PROC_FRAME_BINS 0x88
#define IC_CMD_RESET_FILTER 0x09
#define IC_CMD_SET_ADAPTION_CONFIG 0x04
#define IC_CMD_SET_BYPASS 0x00
#define IC_CMD_SET_COEFFICIENT_INDEX 0x08
#define SUP_CMD_GET_BYPASS 0x80
#define SUP_CMD_GET_ECHO_SUPPRESSION_ENABLED 0x81
#define SUP_CMD_GET_NOISE_SUPPRESSION_ENABLED 0x82
#define SUP_CMD_SET_BYPASS 0x00
#define SUP_CMD_SET_ECHO_SUPPRESSION_ENABLED 0x01
#define SUP_CMD_SET_NOISE_SUPPRESSION_ENABLED 0x02
typedef struct _XMOS_COMMAND_MAP{
unsigned char request_id;
unsigned char command_id;
unsigned int playload_len;
}XMOS_COMMAND_MAP;
XMOS_COMMAND_MAP xmos_command_map[]=
{
{AP_CONTROL_RESID , AP_CONTROL_CMD_SET_DELAY_SAMPLES , 4},
{AP_CONTROL_RESID , AP_CONTROL_CMD_GET_VERSION , 5},
{AP_CONTROL_RESID , AP_CONTROL_CMD_GET_DELAY_SAMPLES , 5},
{AP_CONTROL_RESID , AP_STAGE_A_CMD_SET_DELAY_DIRECTION , 4},
{AP_CONTROL_RESID , AP_STAGE_A_CMD_GET_DELAY_DIRECTION , 5},
{AP_CONTROL_RESID , AP_STAGE_A_CMD_GET_DELAY_ESTIMATE , 5},
{AP_CONTROL_RESID , AP_STAGE_A_CMD_GET_ADEC_ENABLED , 5},
{AP_CONTROL_RESID , AP_STAGE_A_CMD_SET_ADEC_ENABLED , 4},
{AP_CONTROL_RESID , AP_STAGE_A_CMD_GET_ADEC_MODE , 5},
{AP_CONTROL_RESID , AP_STAGE_A_CMD_GET_MIC_SHIFT_SATURATE , 5},
{AP_CONTROL_RESID , AP_STAGE_A_CMD_SET_MIC_SHIFT_SATURATE , 4},
{AP_CONTROL_RESID , AP_STAGE_A_CMD_SET_MANUAL_ADEC_CYCLE_TRIGGER , 4},
{AEC_RESID , AEC_CMD_SET_BYPASS , 4},
{AEC_RESID , AEC_CMD_GET_BYPASS , 5},
{AEC_RESID , AEC_CMD_SET_ADAPTION_CONFIG , 4},
{AEC_RESID , AEC_CMD_GET_ADAPTION_CONFIG , 5},
{AEC_RESID , AEC_CMD_GET_FILTER_COEFFICIENTS , 15},
{AEC_RESID , AEC_CMD_SET_FORCED_MU_VALUE , 4},
{AEC_RESID , AEC_CMD_GET_FORCED_MU_VALUE , 5},
{AEC_RESID , AEC_CMD_SET_MU_SCALAR , 4},
{AEC_RESID , AEC_CMD_GET_MU_SCALAR , 5},
{AEC_RESID , AEC_CMD_SET_MU_LIMITS , 8},
{AEC_RESID , AEC_CMD_GET_MU_LIMITS , 9},
{AEC_RESID , AEC_CMD_GET_ERLE_CH0 , 5},
{AEC_RESID , AEC_CMD_GET_ERLE_CH1 , 5},
{AEC_RESID , AEC_CMD_RESET_FILTER , 1},
{IC_RESID , IC_CMD_SET_BYPASS , 4},
{IC_RESID , IC_CMD_GET_BYPASS , 5},
{IC_RESID , IC_CMD_SET_ADAPTION_CONFIG , 4},
{IC_RESID , IC_CMD_GET_ADAPTION_CONFIG , 5},
{IC_RESID , IC_CMD_RESET_FILTER , 4},
{IC_RESID , IC_CMD_GET_FILTER_COEFFICIENTS , 15},
{SUP_RESID , SUP_CMD_SET_BYPASS , 4},
{SUP_RESID , SUP_CMD_GET_BYPASS , 5},
{SUP_RESID , SUP_CMD_SET_NOISE_SUPPRESSION_ENABLED , 4},
{SUP_RESID , SUP_CMD_GET_NOISE_SUPPRESSION_ENABLED , 5},
{AP_STAGE_C_RESID , AP_STAGE_C_CMD_SET_ASR_ALL_CHANNELS , 4},
{AP_STAGE_C_RESID , AP_STAGE_C_CMD_SET_ASR_ALL_CHANNELS , 5}
};
#endif /* _XMOS_SOC_EMBD_H_ */