Messages in this thread | | | Date | Tue, 8 Apr 2014 13:43:22 -0700 | Subject | Re: [PATCHv3 1/3] pwm: make the PWM_POLARITY flag in DTB optional | From | Tim Kryger <> |
| |
On Mon, Apr 7, 2014 at 10:02 PM, Lothar Waßmann <LW@karo-electronics.de> wrote: > Thierry Reding wrote:
>> No. You cannot emulate polarity inversion in software. >> > Why not? > > duty_ns = period_ns - duty_ns;
Since I made the same mistake, I will pass along the pointer Thierry gave me.
In include/linux/pwm.h the second difference for an inverted signal is described.
/** * enum pwm_polarity - polarity of a PWM signal * @PWM_POLARITY_NORMAL: a high signal for the duration of the duty- * cycle, followed by a low signal for the remainder of the pulse * period * @PWM_POLARITY_INVERSED: a low signal for the duration of the duty- * cycle, followed by a high signal for the remainder of the pulse * period */ enum pwm_polarity { PWM_POLARITY_NORMAL, PWM_POLARITY_INVERSED, };
Of course, I suspect not all PWM hardware respects this definition of inverted output.
Either way, hacking the duty in software certainly would get the high/low order wrong.
-Tim -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |