From 3533e47a4df2c6ce50d219e521a54f509316f9ab Mon Sep 17 00:00:00 2001 From: Ganapathiraju Sarath Varma Date: Fri, 12 Aug 2022 11:29:11 +0530 Subject: [PATCH] ASoC: lpass_cdc: Disable va_swr gpio on clk failure During SSR down event, ensure swr gpios are put to sleep even in error conditions. Change-Id: I649d088d0bc429c9b7a02304272eaea06774ca51 Signed-off-by: Ganapathiraju Sarath Varma --- asoc/codecs/lpass-cdc/lpass-cdc-va-macro.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/asoc/codecs/lpass-cdc/lpass-cdc-va-macro.c b/asoc/codecs/lpass-cdc/lpass-cdc-va-macro.c index e53c51c96b..6765201b6d 100644 --- a/asoc/codecs/lpass-cdc/lpass-cdc-va-macro.c +++ b/asoc/codecs/lpass-cdc/lpass-cdc-va-macro.c @@ -732,6 +732,10 @@ static int lpass_cdc_va_macro_tx_va_mclk_enable( TX_CORE_CLK, false); if (ret < 0) { + if (va_priv->swr_clk_users == 0) { + msm_cdc_pinctrl_select_sleep_state( + va_priv->va_swr_gpio_p); + } dev_err_ratelimited(va_priv->dev, "%s: swr request clk failed\n", __func__);