From: Lothar Waßmann Date: Thu, 12 Dec 2013 08:06:48 +0000 (+0100) Subject: pwm: tiehrpwm: honor PWM_POLARITY_INVERTED flag when shutting down PWM X-Git-Tag: KARO-TX-2014-08-29~37 X-Git-Url: https://git.karo-electronics.de/?p=karo-tx-linux.git;a=commitdiff_plain;h=6e6879dba31434001a7157d2b4c205e290cb3680 pwm: tiehrpwm: honor PWM_POLARITY_INVERTED flag when shutting down PWM --- diff --git a/drivers/pwm/pwm-tiehrpwm.c b/drivers/pwm/pwm-tiehrpwm.c index 12a8ae4cb967..578dd92c679a 100644 --- a/drivers/pwm/pwm-tiehrpwm.c +++ b/drivers/pwm/pwm-tiehrpwm.c @@ -377,10 +377,12 @@ static void ehrpwm_pwm_disable(struct pwm_chip *chip, struct pwm_device *pwm) /* Action Qualifier puts PWM output low forcefully */ if (pwm->hwpwm) { - aqcsfrc_val = AQCSFRC_CSFB_FRCLOW; + aqcsfrc_val = pc->polarity[pwm->hwpwm] == PWM_POLARITY_INVERSED ? + AQCSFRC_CSFB_FRCHIGH : AQCSFRC_CSFB_FRCLOW; aqcsfrc_mask = AQCSFRC_CSFB_MASK; } else { - aqcsfrc_val = AQCSFRC_CSFA_FRCLOW; + aqcsfrc_val = pc->polarity[pwm->hwpwm] == PWM_POLARITY_INVERSED ? + AQCSFRC_CSFA_FRCHIGH : AQCSFRC_CSFA_FRCLOW; aqcsfrc_mask = AQCSFRC_CSFA_MASK; }