asoc: add return value check for channel mapping function

Add return value check for channel mapping function, and reject invalid input

Change-Id: If8ddc16b33bf2b6af10f9d6055d6de27d86ad240
Signed-off-by: ftong <quic_ftong@quicinc.com>
This commit is contained in:
ftong 2022-09-19 12:13:32 +08:00
commit 37bcf911fa

View file

@ -964,8 +964,13 @@ static int msm_pcm_channel_mixer_cfg_ctl_put(struct snd_kcontrol *kcontrol,
__func__, chmixer_pspd->input_channel);
return -EINVAL;
}
q6asm_map_channels(asm_ch_map,
ret = q6asm_map_channels(asm_ch_map,
chmixer_pspd->input_channel, false);
if (ret < 0) {
pr_err("%s q6asm_map_channels failed\n", __func__);
return ret;
}
for (i = 0; i < PCM_FORMAT_MAX_NUM_CHANNEL_V8; i++)
chmixer_pspd->in_ch_map[i] = asm_ch_map[i];
chmixer_pspd->override_in_ch_map = true;
@ -977,8 +982,12 @@ static int msm_pcm_channel_mixer_cfg_ctl_put(struct snd_kcontrol *kcontrol,
__func__, chmixer_pspd->output_channel);
return -EINVAL;
}
q6asm_map_channels(asm_ch_map,
ret = q6asm_map_channels(asm_ch_map,
chmixer_pspd->output_channel, false);
if (ret < 0) {
pr_err("%s q6asm_map_channels failed\n", __func__);
return ret;
}
for (i = 0; i < PCM_FORMAT_MAX_NUM_CHANNEL_V8; i++)
chmixer_pspd->out_ch_map[i] = asm_ch_map[i];
chmixer_pspd->override_out_ch_map = true;