hdmitx21: fix no audio output under PCM/nonPCM switch [1/1]

PD#SWPL-143045

Problem:
aud_src_if update error when set audio mode

Solution:
Unify the audio parameters setting with callback

Verify:
s5/t7

Test:
DRM-TX-33

Change-Id: I69582511de24523d87fd33b1196374efe353acd6
Signed-off-by: Wenjie Qiao <wenjie.qiao@amlogic.com>
This commit is contained in:
Wenjie Qiao
2023-10-19 19:46:29 +08:00
committed by gerrit autosubmit
parent 6ec3720cec
commit d718b4c386
@@ -1468,11 +1468,6 @@ static int hdmitx_set_audmode(struct hdmitx_hw_common *tx_hw,
aud_output_i2s_ch = audio_param->aud_output_i2s_ch;
pr_info(HW "set audio\n");
mutex_lock(&aud_mutex);
/* if hdev->aud_output_i2s_ch is true, select I2S as 8ch in, 2ch out */
if (aud_output_i2s_ch) {
audio_param->aud_src_if = 1;
pr_info("hdmitx aud_output_i2s_ch 0x%x\n", aud_output_i2s_ch);
}
hdmitx21_set_reg_bits(AIP_RST_IVCTX, 1, 0, 1);
if (audio_param->type == CT_MAT || audio_param->type == CT_DTS_HD_MA) {
@@ -1505,12 +1500,6 @@ static int hdmitx_set_audmode(struct hdmitx_hw_common *tx_hw,
pr_info("audio_param->chs = %d\n", audio_param->chs);
hdmitx21_set_reg_bits(SPDIF_SSMPL2_IVCTX, 0, 5, 1);
/* if hdev->aud_output_i2s_ch is true, select I2S as 8ch in, 2ch out */
//if (hdev->aud_output_i2s_ch)
//hdev->tx_comm.cur_audio_param.aud_src_if = 1;
/* aud_mclk_sel: Select to use which clock for ACR measurement.
* 0= Use i2s_mclk; 1=Use spdif_clk.
*/
hdmitx21_set_reg_bits(HDMITX_TOP_CLK_CNTL, 1 - audio_param->aud_src_if, 13, 1);
pr_info(HW "hdmitx aud_src_if = %d\n", audio_param->aud_src_if);