ASoC: wcd938x: Fix headset detection during SSR/PDR
Headset is corrected as lineout during SSR/PDR. This is because adc voltage is not measured correctly due to SSR state. Enable flag deinit_in_progress during SSR down to check if device is not reported and disable it after device up. Change-Id: I6fc4fff4149c36ba16aa668a960505504a5d811f Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
このコミットが含まれているのは:

committed by
Gerrit - the friendly Code Review server

コミット
71e95c67ea
@@ -1589,6 +1589,7 @@ static int wcd937x_event_notify(struct notifier_block *block,
|
||||
0x80, 0x00);
|
||||
break;
|
||||
case BOLERO_WCD_EVT_SSR_DOWN:
|
||||
wcd937x->mbhc->wcd_mbhc.deinit_in_progress = true;
|
||||
mbhc = &wcd937x->mbhc->wcd_mbhc;
|
||||
wcd937x_mbhc_ssr_down(wcd937x->mbhc, component);
|
||||
wcd937x_reset_low(wcd937x->dev);
|
||||
@@ -1612,6 +1613,7 @@ static int wcd937x_event_notify(struct notifier_block *block,
|
||||
} else {
|
||||
wcd937x_mbhc_hs_detect(component, mbhc->mbhc_cfg);
|
||||
}
|
||||
wcd937x->mbhc->wcd_mbhc.deinit_in_progress = false;
|
||||
break;
|
||||
default:
|
||||
dev_err(component->dev, "%s: invalid event %d\n", __func__,
|
||||
|
新しいイシューから参照
ユーザーをブロックする