diff --git a/sound/soc/amlogic/auge/spdif.c b/sound/soc/amlogic/auge/spdif.c index e4d5cb3f5248..721679739fe2 100644 --- a/sound/soc/amlogic/auge/spdif.c +++ b/sound/soc/amlogic/auge/spdif.c @@ -1532,7 +1532,7 @@ static struct snd_soc_dai_driver aml_spdif_dai[] = { .remove = aml_dai_spdif_remove, .playback = { .channels_min = 1, - .channels_max = 8, + .channels_max = 2, .rates = AML_DAI_SPDIF_RATES, .formats = AML_DAI_SPDIF_FORMATS, }, diff --git a/sound/soc/amlogic/common/spdif_info.c b/sound/soc/amlogic/common/spdif_info.c index 97edbf81afa9..5b87891668b2 100644 --- a/sound/soc/amlogic/common/spdif_info.c +++ b/sound/soc/amlogic/common/spdif_info.c @@ -61,6 +61,7 @@ void spdif_get_channel_status_info( pr_err("Unsupport sample rate\n"); return; } + if (IEC958_mode_codec && IEC958_mode_codec != 9) { if (IEC958_mode_codec == 1) { /* dts, use raw sync-word mode */ @@ -83,12 +84,6 @@ void spdif_get_channel_status_info( chsts->chstat1_l = 0Xe00; chsts->chstat1_r = 0Xe00; } - } else if (IEC958_mode_codec == 8 || IEC958_mode_codec == 7) { - /* DTS-HD MA, TrueHD */ - chsts->chstat0_l = 0x8206; - chsts->chstat0_r = 0x8206; - chsts->chstat1_l = 0x900; - chsts->chstat1_r = 0x900; } else { /* DTS,DD */ if (rate_bit == SNDRV_PCM_RATE_32000) {