summaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorNeil Armstrong <neil.armstrong@linaro.org>2023-11-16 17:44:21 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2023-12-13 18:45:15 +0100
commit8d73500fcf861c5c56475a5923980371f09f2886 (patch)
treeeb4db016d4cbcb2c34c9ee44a39f9d617e820023 /sound
parent8ebf05908f0e8ab5d2c50555ed059fa239b31072 (diff)
downloadlinux-stable-8d73500fcf861c5c56475a5923980371f09f2886.tar.gz
linux-stable-8d73500fcf861c5c56475a5923980371f09f2886.tar.bz2
linux-stable-8d73500fcf861c5c56475a5923980371f09f2886.zip
ASoC: codecs: lpass-tx-macro: set active_decimator correct default value
[ Upstream commit a2f35ed1d237c459100adb0c39bb811d7f170977 ] The -1 value for active_decimator[dai_id] is considered as "not set", but at probe the table is initialized a 0, this prevents enabling the DEC0 Mixer since it will be considered as already set. Initialize the table entries as -1 to fix tx_macro_tx_mixer_put(). Fixes: 1c6a7f5250ce ("ASoC: codecs: tx-macro: fix active_decimator array") Fixes: c1057a08af43 ("ASoC: codecs: tx-macro: fix kcontrol put") Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Link: https://lore.kernel.org/r/20231116-topic-sm8x50-upstream-tx-macro-fix-active-decimator-set-v1-1-6edf402f4b6f@linaro.org Signed-off-by: Mark Brown <broonie@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'sound')
-rw-r--r--sound/soc/codecs/lpass-tx-macro.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/sound/soc/codecs/lpass-tx-macro.c b/sound/soc/codecs/lpass-tx-macro.c
index 3e33418898e8..ebddfa74ce0a 100644
--- a/sound/soc/codecs/lpass-tx-macro.c
+++ b/sound/soc/codecs/lpass-tx-macro.c
@@ -2021,6 +2021,11 @@ static int tx_macro_probe(struct platform_device *pdev)
tx->dev = dev;
+ /* Set active_decimator default value */
+ tx->active_decimator[TX_MACRO_AIF1_CAP] = -1;
+ tx->active_decimator[TX_MACRO_AIF2_CAP] = -1;
+ tx->active_decimator[TX_MACRO_AIF3_CAP] = -1;
+
/* set MCLK and NPL rates */
clk_set_rate(tx->mclk, MCLK_FREQ);
clk_set_rate(tx->npl, MCLK_FREQ);