diff --git a/asoc/codecs/lpass-cdc/lpass-cdc-wsa-macro.c b/asoc/codecs/lpass-cdc/lpass-cdc-wsa-macro.c index f6dfe1b540..cc82837077 100644 --- a/asoc/codecs/lpass-cdc/lpass-cdc-wsa-macro.c +++ b/asoc/codecs/lpass-cdc/lpass-cdc-wsa-macro.c @@ -959,6 +959,13 @@ static int lpass_cdc_wsa_macro_mclk_enable( regmap_update_bits(regmap, LPASS_CDC_WSA_CLK_RST_CTRL_MCLK_CONTROL, 0x01, 0x01); + /* Toggle fs_cntr_clr bit*/ + regmap_update_bits(regmap, + LPASS_CDC_WSA_CLK_RST_CTRL_FS_CNT_CONTROL, + 0x02, 0x02); + regmap_update_bits(regmap, + LPASS_CDC_WSA_CLK_RST_CTRL_FS_CNT_CONTROL, + 0x02, 0x0); regmap_update_bits(regmap, LPASS_CDC_WSA_CLK_RST_CTRL_FS_CNT_CONTROL, 0x01, 0x01); diff --git a/asoc/codecs/lpass-cdc/lpass-cdc-wsa2-macro.c b/asoc/codecs/lpass-cdc/lpass-cdc-wsa2-macro.c index 9c9c5b6eb4..5ec02d5151 100644 --- a/asoc/codecs/lpass-cdc/lpass-cdc-wsa2-macro.c +++ b/asoc/codecs/lpass-cdc/lpass-cdc-wsa2-macro.c @@ -964,6 +964,13 @@ static int lpass_cdc_wsa2_macro_mclk_enable( regmap_update_bits(regmap, LPASS_CDC_WSA2_CLK_RST_CTRL_MCLK_CONTROL, 0x01, 0x01); + /* Toggle fs_cntr_clr bit*/ + regmap_update_bits(regmap, + LPASS_CDC_WSA_CLK_RST_CTRL_FS_CNT_CONTROL, + 0x02, 0x02); + regmap_update_bits(regmap, + LPASS_CDC_WSA_CLK_RST_CTRL_FS_CNT_CONTROL, + 0x02, 0x0); regmap_update_bits(regmap, LPASS_CDC_WSA2_CLK_RST_CTRL_FS_CNT_CONTROL, 0x01, 0x01);