asoc: codecs: Enable main path clk before enabling mix path
Mix path clk is gated by main path clk, as per current logic we are not enabling main path clk for mix path use-cases. Enable main path clk before enabling mix path for UPD dedicated backend to work. Change-Id: I209d1eaf25f4ef08bbd534f5ecc858e465ce7e18 Signed-off-by: Faiz Nabi Kuchay <quic_fkuchay@quicinc.com>
This commit is contained in:

committed by
Gerrit - the friendly Code Review server

parent
6acdb1bc38
commit
42973a5dfc
@@ -1323,6 +1323,7 @@ static int lpass_cdc_wsa_macro_enable_mix_path(struct snd_soc_dapm_widget *w,
|
||||
int offset_val = 0;
|
||||
int val = 0;
|
||||
uint16_t mix_reg = 0;
|
||||
uint16_t reg = 0;
|
||||
|
||||
dev_dbg(component->dev, "%s %d %s\n", __func__, event, w->name);
|
||||
|
||||
@@ -1336,6 +1337,8 @@ static int lpass_cdc_wsa_macro_enable_mix_path(struct snd_soc_dapm_widget *w,
|
||||
return 0;
|
||||
}
|
||||
|
||||
reg = LPASS_CDC_WSA_RX0_RX_PATH_CTL +
|
||||
(LPASS_CDC_WSA_MACRO_RX_PATH_OFFSET * w->shift);
|
||||
mix_reg = LPASS_CDC_WSA_RX0_RX_PATH_MIX_CTL +
|
||||
LPASS_CDC_WSA_MACRO_RX_PATH_OFFSET * w->shift;
|
||||
|
||||
@@ -1344,6 +1347,8 @@ static int lpass_cdc_wsa_macro_enable_mix_path(struct snd_soc_dapm_widget *w,
|
||||
snd_soc_component_update_bits(component, mix_reg, 0x40, 0x40);
|
||||
usleep_range(500, 510);
|
||||
snd_soc_component_update_bits(component, mix_reg, 0x40, 0x00);
|
||||
snd_soc_component_update_bits(component,
|
||||
reg, 0x20, 0x20);
|
||||
snd_soc_component_update_bits(component,
|
||||
mix_reg, 0x20, 0x20);
|
||||
lpass_cdc_wsa_macro_enable_swr(w, kcontrol, event);
|
||||
|
Reference in New Issue
Block a user