Merge tag 'for-linus' of git://github.com/openrisc/linux
[linux/fpc-iii.git] / Documentation / driver-api / miscellaneous.rst
blob304ffb146cf9c195832cae3a998eb4712910488a
1 Parallel Port Devices
2 =====================
4 .. kernel-doc:: include/linux/parport.h
5    :internal:
7 .. kernel-doc:: drivers/parport/ieee1284.c
8    :export:
10 .. kernel-doc:: drivers/parport/share.c
11    :export:
13 .. kernel-doc:: drivers/parport/daisy.c
14    :internal:
16 16x50 UART Driver
17 =================
19 .. kernel-doc:: drivers/tty/serial/serial_core.c
20    :export:
22 .. kernel-doc:: drivers/tty/serial/8250/8250_core.c
23    :export:
25 Pulse-Width Modulation (PWM)
26 ============================
28 Pulse-width modulation is a modulation technique primarily used to
29 control power supplied to electrical devices.
31 The PWM framework provides an abstraction for providers and consumers of
32 PWM signals. A controller that provides one or more PWM signals is
33 registered as :c:type:`struct pwm_chip <pwm_chip>`. Providers
34 are expected to embed this structure in a driver-specific structure.
35 This structure contains fields that describe a particular chip.
37 A chip exposes one or more PWM signal sources, each of which exposed as
38 a :c:type:`struct pwm_device <pwm_device>`. Operations can be
39 performed on PWM devices to control the period, duty cycle, polarity and
40 active state of the signal.
42 Note that PWM devices are exclusive resources: they can always only be
43 used by one consumer at a time.
45 .. kernel-doc:: include/linux/pwm.h
46    :internal:
48 .. kernel-doc:: drivers/pwm/core.c
49    :export: