[alsa-devel] [PATCH] mfd: Test for jack detection when deciding if wm8994 should suspend
The jack detection on WM1811 is often required during system suspend, add it as another check when deciding if we should suspend.
Signed-off-by: Mark Brown broonie@opensource.wolfsonmicro.com ---
This depends on the ALSA side changes implementing the feature due to the addition of the new register field, I guess merging via ASoC makes sense?
drivers/mfd/wm8994-core.c | 14 ++++++++++++++ 1 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/drivers/mfd/wm8994-core.c b/drivers/mfd/wm8994-core.c index 3160cdd..4549999 100644 --- a/drivers/mfd/wm8994-core.c +++ b/drivers/mfd/wm8994-core.c @@ -242,6 +242,20 @@ static int wm8994_suspend(struct device *dev) break; }
+ switch (wm8994->type) { + case WM1811: + ret = wm8994_reg_read(wm8994, WM8994_ANTIPOP_2); + if (ret < 0) { + dev_err(dev, "Failed to read jackdet: %d\n", ret); + } else if (ret & WM1811_JACKDET_MODE_MASK) { + dev_dbg(dev, "CODEC still active, ignoring suspend\n"); + return 0; + } + break; + default: + break; + } + /* Disable LDO pulldowns while the device is suspended if we * don't know that something will be driving them. */ if (!wm8994->ldo_ena_always_driven)
participants (1)
-
Mark Brown