Commit 6e146f5c authored by Thierry Reding's avatar Thierry Reding

pwm: Add to device-drivers documentation

Add a short introductory text along with API documentation generated
from kerneldoc comments for the PWM framework.
Signed-off-by: default avatarThierry Reding <thierry.reding@gmail.com>
parent 04883802
...@@ -455,4 +455,31 @@ X!Ilib/fonts/fonts.c ...@@ -455,4 +455,31 @@ X!Ilib/fonts/fonts.c
!Edrivers/hsi/hsi.c !Edrivers/hsi/hsi.c
</chapter> </chapter>
<chapter id="pwm">
<title>Pulse-Width Modulation (PWM)</title>
<para>
Pulse-width modulation is a modulation technique primarily used to
control power supplied to electrical devices.
</para>
<para>
The PWM framework provides an abstraction for providers and consumers
of PWM signals. A controller that provides one or more PWM signals is
registered as <structname>struct pwm_chip</structname>. Providers are
expected to embed this structure in a driver-specific structure. This
structure contains fields that describe a particular chip.
</para>
<para>
A chip exposes one or more PWM signal sources, each of which exposed
as a <structname>struct pwm_device</structname>. Operations can be
performed on PWM devices to control the period, duty cycle, polarity
and active state of the signal.
</para>
<para>
Note that PWM devices are exclusive resources: they can always only be
used by one consumer at a time.
</para>
!Iinclude/linux/pwm.h
!Edrivers/pwm/core.c
</chapter>
</book> </book>
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment