lkml.org 
[lkml]   [2014]   [Nov]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 3.14 049/203] mfd: ti_am335x_tscadc: Fix TSC resume
    Date
    3.14-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>

    commit 6a71f38dd87f255a0586104ce2a14d5a3ddf3401 upstream.

    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")
    Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
    Signed-off-by: Lee Jones <lee.jones@linaro.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    drivers/mfd/ti_am335x_tscadc.c | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    --- 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_t
    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);
    }



    \
     
     \ /
      Last update: 2014-11-12 03:21    [W:6.113 / U:0.040 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site