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

Commit b5f8b763 authored by Patil, Rachna's avatar Patil, Rachna Committed by Samuel Ortiz
Browse files

MFD: ti_tscadc: Disable TSC config registers in adc mode



AFE Pen Ctrl and TouchScreen transistors enabling is not
required when only ADC mode is being used, so check for availability of
TSC driver before accessing control register.

Signed-off-by: default avatarPatil, Rachna <rachna@ti.com>
Acked-by: default avatarVaibhav Hiremath <hvaibhav@ti.com>
Signed-off-by: default avatarZubair Lutfullah <zubair.lutfullah@gmail.com>
Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
Signed-off-by: default avatarSamuel Ortiz <sameo@linux.intel.com>
parent efe3126a
Loading
Loading
Loading
Loading
+11 −7
Original line number Diff line number Diff line
@@ -204,12 +204,13 @@ static int ti_tscadc_probe(struct platform_device *pdev)

	/* Set the control register bits */
	ctrl = CNTRLREG_STEPCONFIGWRT |
			CNTRLREG_TSCENB |
			CNTRLREG_STEPID |
			CNTRLREG_4WIRE;
			CNTRLREG_STEPID;
	if (tsc_wires > 0)
		ctrl |= CNTRLREG_4WIRE | CNTRLREG_TSCENB;
	tscadc_writel(tscadc, REG_CTRL, ctrl);

	/* Set register bits for Idle Config Mode */
	if (tsc_wires > 0)
		tscadc_idle_config(tscadc);

	/* Enable the TSC module enable bit */
@@ -290,9 +291,12 @@ static int tscadc_resume(struct device *dev)
	pm_runtime_get_sync(dev);

	/* context restore */
	ctrl = CNTRLREG_STEPCONFIGWRT | CNTRLREG_TSCENB |
			CNTRLREG_STEPID | CNTRLREG_4WIRE;
	ctrl = CNTRLREG_STEPCONFIGWRT |	CNTRLREG_STEPID;
	if (tscadc_dev->tsc_cell != -1)
		ctrl |= CNTRLREG_TSCENB | CNTRLREG_4WIRE;
	tscadc_writel(tscadc_dev, REG_CTRL, ctrl);

	if (tscadc_dev->tsc_cell != -1)
		tscadc_idle_config(tscadc_dev);
	am335x_tsc_se_update(tscadc_dev);
	restore = tscadc_readl(tscadc_dev, REG_CTRL);