static int audio_dsp_set_iir(struct audio_in *audio)
{
	audpreproc_cmd_cfg_iir_tuning_filter_params cmd;

	memset(&cmd, 0, sizeof(cmd));

	audio->iir_cfg.cmd_id = AUDPREPROC_CMD_CFG_IIR_TUNING_FILTER_PARAMS;

	if (audio->iir_enable)
		/* cmd.active_flag is 0xFFFF from sample code but 0x0001 here */
		audio->iir_cfg.active_flag = AUDPREPROC_CMD_IIR_ACTIVE_FLAG_ENA;
	else
		audio->iir_cfg.active_flag = AUDPREPROC_CMD_IIR_ACTIVE_FLAG_DIS;

	cmd = audio->iir_cfg;

	return audpreproc_dsp_set_iir(&cmd, sizeof(cmd));
}
예제 #2
0
static int audio_dsp_set_iir(struct audio_in *audio)
{
	audpreproc_cmd_cfg_iir_tuning_filter_params cmd;

	memset(&cmd, 0, sizeof(cmd));

	cmd.cmd_id = AUDPREPROC_CMD_CFG_IIR_TUNING_FILTER_PARAMS;

	if (audio->iir_enable)
		
		cmd.active_flag = AUDPREPROC_CMD_IIR_ACTIVE_FLAG_ENA;
	else
		cmd.active_flag = AUDPREPROC_CMD_IIR_ACTIVE_FLAG_DIS;

#if DEBUG
	MM_AUD_INFO("cmd_id = 0x%04x\n", cmd.cmd_id);
	MM_AUD_INFO("active_flag = 0x%04x\n", cmd.active_flag);
#endif

	return audpreproc_dsp_set_iir(&cmd, sizeof(cmd));
}