lkml.org 
[lkml]   [2018]   [Sep]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.18 119/145] pwm: tiehrpwm: Fix disabling of output of PWMs
    Date
    4.18-stable review patch.  If anyone has any objections, please let me know.

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

    From: Vignesh R <vigneshr@ti.com>

    commit 38dabd91ff0bde33352ca3cc65ef515599b77a05 upstream.

    pwm-tiehrpwm driver disables PWM output by putting it in low output
    state via active AQCSFRC register in ehrpwm_pwm_disable(). But, the
    AQCSFRC shadow register is not updated. Therefore, when shadow AQCSFRC
    register is re-enabled in ehrpwm_pwm_enable() (say to enable second PWM
    output), previous settings are lost as shadow register value is loaded
    into active register. This results in things like PWMA getting enabled
    automatically, when PWMB is enabled and vice versa. Fix this by
    updating AQCSFRC shadow register as well during ehrpwm_pwm_disable().

    Fixes: 19891b20e7c2 ("pwm: pwm-tiehrpwm: PWM driver support for EHRPWM")
    Cc: stable@vger.kernel.org
    Signed-off-by: Vignesh R <vigneshr@ti.com>
    Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    drivers/pwm/pwm-tiehrpwm.c | 2 ++
    1 file changed, 2 insertions(+)

    --- a/drivers/pwm/pwm-tiehrpwm.c
    +++ b/drivers/pwm/pwm-tiehrpwm.c
    @@ -381,6 +381,8 @@ static void ehrpwm_pwm_disable(struct pw
    aqcsfrc_mask = AQCSFRC_CSFA_MASK;
    }

    + /* Update shadow register first before modifying active register */
    + ehrpwm_modify(pc->mmio_base, AQCSFRC, aqcsfrc_mask, aqcsfrc_val);
    /*
    * Changes to immediate action on Action Qualifier. This puts
    * Action Qualifier control on PWM output from next TBCLK

    \
     
     \ /
      Last update: 2018-09-07 23:21    [W:4.105 / U:0.128 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site