diff options
author | Tzung-Bi Shih <tzungbi@google.com> | 2020-10-06 18:12:52 +0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2020-10-29 10:11:35 +0100 |
commit | 47c5823eb7eece2cb5ab3ad463d2b5ba527c275c (patch) | |
tree | e5371b4eb1f1ec7e7af833c6e19f4455b2b39ed5 /sound/soc | |
parent | fd8f1c21c07b6f513366d853d4ee03b7115f6af3 (diff) | |
download | linux-stable-47c5823eb7eece2cb5ab3ad463d2b5ba527c275c.tar.gz linux-stable-47c5823eb7eece2cb5ab3ad463d2b5ba527c275c.tar.bz2 linux-stable-47c5823eb7eece2cb5ab3ad463d2b5ba527c275c.zip |
ASoC: mediatek: mt8183-da7219: fix wrong ops for I2S3
[ Upstream commit ebb11d1d9fe2d6b4a47755f7f09b2b631046e308 ]
DA7219 uses I2S2 and I2S3 for input and output respectively. Commit
9e30251fb22e ("ASoC: mediatek: mt8183-da7219: support machine driver
with rt1015") introduces a bug that:
- If using I2S2 solely, MCLK to DA7219 is 256FS.
- If using I2S3 solely, MCLK to DA7219 is 128FS.
- If using I2S3 first and then I2S2, the MCLK changes from 128FS to
256FS. As a result, no sound output to the headset. Also no sound
input from the headset microphone.
Both I2S2 and I2S3 should set MCLK to 256FS. Fixes the wrong ops for
I2S3.
Fixes: 9e30251fb22e ("ASoC: mediatek: mt8183-da7219: support machine driver with rt1015")
Signed-off-by: Tzung-Bi Shih <tzungbi@google.com>
Link: https://lore.kernel.org/r/20201006101252.1890385-1-tzungbi@google.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'sound/soc')
-rw-r--r-- | sound/soc/mediatek/mt8183/mt8183-da7219-max98357.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sound/soc/mediatek/mt8183/mt8183-da7219-max98357.c b/sound/soc/mediatek/mt8183/mt8183-da7219-max98357.c index 06d0a4f80fc1..a6c690c5308d 100644 --- a/sound/soc/mediatek/mt8183/mt8183-da7219-max98357.c +++ b/sound/soc/mediatek/mt8183/mt8183-da7219-max98357.c @@ -673,7 +673,7 @@ static int mt8183_da7219_max98357_dev_probe(struct platform_device *pdev) if (card == &mt8183_da7219_max98357_card) { dai_link->be_hw_params_fixup = mt8183_i2s_hw_params_fixup; - dai_link->ops = &mt8183_mt6358_i2s_ops; + dai_link->ops = &mt8183_da7219_i2s_ops; dai_link->cpus = i2s3_max98357a_cpus; dai_link->num_cpus = ARRAY_SIZE(i2s3_max98357a_cpus); |