Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e7c248a0 authored by Mark Brown's avatar Mark Brown Committed by Samuel Ortiz
Browse files

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: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
Cc: stable@vger.kernel.org
Signed-off-by: default avatarSamuel Ortiz <sameo@linux.intel.com>
parent 0a35ee47
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -256,6 +256,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)