asoc: bolero: Fix slow playback on HPH

After switching from native to non-native clip,
observe slowness in clip playback content heard
on headphones. Update mclk_mux for enable sequence
based on native flag and for disable sequence
use the same setting done during enable.

CRs-Fixed: 2322232
Change-Id: I795e0620e0239b53cdfdadaf2d57acfb570c4c3b
Signed-off-by: Laxminath Kasam <lkasam@codeaurora.org>
diff --git a/asoc/codecs/bolero/rx-macro.c b/asoc/codecs/bolero/rx-macro.c
index 6c936cb..4c45b80 100644
--- a/asoc/codecs/bolero/rx-macro.c
+++ b/asoc/codecs/bolero/rx-macro.c
@@ -970,11 +970,11 @@
 	dev_dbg(rx_priv->dev, "%s: mclk_enable = %u, dapm = %d clk_users= %d\n",
 		__func__, mclk_enable, dapm, rx_priv->rx_mclk_users);
 
-	if (rx_priv->is_native_on)
-		mclk_mux = MCLK_MUX1;
 	mutex_lock(&rx_priv->mclk_lock);
 	if (mclk_enable) {
 		if (rx_priv->rx_mclk_users == 0) {
+			if (rx_priv->is_native_on)
+				mclk_mux = MCLK_MUX1;
 			ret = bolero_request_clock(rx_priv->dev,
 					RX_MACRO, mclk_mux, true);
 			if (ret < 0) {
@@ -1014,6 +1014,7 @@
 			regmap_update_bits(regmap,
 				BOLERO_CDC_RX_CLK_RST_CTRL_MCLK_CONTROL,
 				0x01, 0x00);
+			mclk_mux = rx_priv->mclk_mux;
 			bolero_request_clock(rx_priv->dev,
 					RX_MACRO, mclk_mux, false);
 			rx_priv->mclk_mux = MCLK_MUX0;