Merge "asoc: codecs: wcd938x: Fix HPHL mute when ear path teardown"
diff --git a/asoc/codecs/wcd938x/wcd938x.c b/asoc/codecs/wcd938x/wcd938x.c
index 2980c37..9bc75a0 100644
--- a/asoc/codecs/wcd938x/wcd938x.c
+++ b/asoc/codecs/wcd938x/wcd938x.c
@@ -1048,16 +1048,21 @@
}
break;
case SND_SOC_DAPM_PRE_PMD:
- if (wcd938x->ear_rx_path & EAR_RX_PATH_AUX)
+ if (wcd938x->ear_rx_path & EAR_RX_PATH_AUX) {
wcd_disable_irq(&wcd938x->irq_info,
WCD938X_IRQ_AUX_PDM_WD_INT);
- else
+ if (wcd938x->update_wcd_event)
+ wcd938x->update_wcd_event(wcd938x->handle,
+ WCD_BOLERO_EVT_RX_MUTE,
+ (WCD_RX3 << 0x10 | 0x1));
+ } else {
wcd_disable_irq(&wcd938x->irq_info,
WCD938X_IRQ_HPHL_PDM_WD_INT);
- if (wcd938x->update_wcd_event)
- wcd938x->update_wcd_event(wcd938x->handle,
+ if (wcd938x->update_wcd_event)
+ wcd938x->update_wcd_event(wcd938x->handle,
WCD_BOLERO_EVT_RX_MUTE,
(WCD_RX1 << 0x10 | 0x1));
+ }
break;
case SND_SOC_DAPM_POST_PMD:
/* 7 msec delay as per HW requirement */