Re: [PATCH] mfd: ti_am335x_tscadc: fix TSC resume

From: Lee Jones
Date: Mon Sep 08 2014 - 10:37:13 EST


On Mon, 08 Sep 2014, Sebastian Andrzej Siewior wrote:

> In the resume path, the ADC invokes am335x_tsc_se_set_cache() with 0 as
> the steps argument if continous mode is not in use. This in turn disables
> all steps and so the TSC is not working until one ADC sampling is
> performed.
>
> This patch fixes it by writing the current cached mask instead of the
> passed steps.
>
> Fixes: 7ca6740cd1cd ("mfd: input: iio: ti_amm335x: Rework TSC/ADCA
> synchronization")
> Cc: stable@xxxxxxxxxxxxxxx # v3.13+
> Signed-off-by: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx>
> ---
> drivers/mfd/ti_am335x_tscadc.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)

Applied, thanks.

> diff --git a/drivers/mfd/ti_am335x_tscadc.c b/drivers/mfd/ti_am335x_tscadc.c
> index e3076afe6b3c..e87a2485468f 100644
> --- a/drivers/mfd/ti_am335x_tscadc.c
> +++ b/drivers/mfd/ti_am335x_tscadc.c
> @@ -58,7 +58,7 @@ void am335x_tsc_se_set_cache(struct ti_tscadc_dev *tsadc, u32 val)
> if (tsadc->adc_waiting)
> wake_up(&tsadc->reg_se_wait);
> else if (!tsadc->adc_in_use)
> - tscadc_writel(tsadc, REG_SE, val);
> + tscadc_writel(tsadc, REG_SE, tsadc->reg_se_cache);
>
> spin_unlock_irqrestore(&tsadc->reg_lock, flags);
> }

--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org â Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/