Message ID | 1412956207-24008-2-git-send-email-vladimir_zapolskiy@mentor.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
diff --git a/drivers/pwm/core.c b/drivers/pwm/core.c index 966497d..681d154 100644 --- a/drivers/pwm/core.c +++ b/drivers/pwm/core.c @@ -174,6 +174,13 @@ of_pwm_simple_xlate(struct pwm_chip *pc, const struct of_phandle_args *args) pwm_set_period(pwm, args->args[1]); + if (pc->of_pwm_n_cells > 2) { + if (args->args[2] & PWM_POLARITY_INVERTED) + pwm_set_polarity(pwm, PWM_POLARITY_INVERSED); + else + pwm_set_polarity(pwm, PWM_POLARITY_NORMAL); + } + return pwm; }
The third optional argument of pwms is well defined as polarity and it is already used in a number of pwm drivers, so, to minimize changes in the remaining drivers which are to be updated accordingly set polarity in default of_xlate() function. Signed-off-by: Vladimir Zapolskiy <vladimir_zapolskiy@mentor.com> Cc: Lothar Waßmann <LW@KARO-electronics.de> Cc: Sascha Hauer <s.hauer@pengutronix.de> Cc: Thierry Reding <thierry.reding@gmail.com> Cc: Shawn Guo <shawn.guo@linaro.org> --- drivers/pwm/core.c | 7 +++++++ 1 file changed, 7 insertions(+)