GNU Linux-libre 4.14.266-gnu1
[releases.git] / Documentation / driver-api / miscellaneous.rst
1 Parallel Port Devices
2 =====================
3
4 .. kernel-doc:: include/linux/parport.h
5    :internal:
6
7 .. kernel-doc:: drivers/parport/ieee1284.c
8    :export:
9
10 .. kernel-doc:: drivers/parport/share.c
11    :export:
12
13 .. kernel-doc:: drivers/parport/daisy.c
14    :internal:
15
16 16x50 UART Driver
17 =================
18
19 .. kernel-doc:: drivers/tty/serial/serial_core.c
20    :export:
21
22 .. kernel-doc:: drivers/tty/serial/8250/8250_core.c
23    :export:
24
25 Pulse-Width Modulation (PWM)
26 ============================
27
28 Pulse-width modulation is a modulation technique primarily used to
29 control power supplied to electrical devices.
30
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.
36
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.
41
42 Note that PWM devices are exclusive resources: they can always only be
43 used by one consumer at a time.
44
45 .. kernel-doc:: include/linux/pwm.h
46    :internal:
47
48 .. kernel-doc:: drivers/pwm/core.c
49    :export: