Loading...
1.. SPDX-License-Identifier: GPL-2.0
2
3==============================
4Driver implementer's API guide
5==============================
6
7The kernel offers a wide variety of interfaces to support the development
8of device drivers. This document is an only somewhat organized collection
9of some of those interfaces — it will hopefully get better over time! The
10available subsections can be seen below.
11
12
13General information for driver authors
14======================================
15
16This section contains documentation that should, at some point or other, be
17of interest to most developers working on device drivers.
18
19.. toctree::
20 :maxdepth: 1
21
22 basics
23 driver-model/index
24 device_link
25 infrastructure
26 ioctl
27 pm/index
28
29Useful support libraries
30========================
31
32This section contains documentation that should, at some point or other, be
33of interest to most developers working on device drivers.
34
35.. toctree::
36 :maxdepth: 1
37
38 early-userspace/index
39 connector
40 device-io
41 devfreq
42 dma-buf
43 component
44 io-mapping
45 io_ordering
46 uio-howto
47 vfio-mediated-device
48 vfio
49 vfio-pci-device-specific-driver-acceptance
50
51Bus-level documentation
52=======================
53
54.. toctree::
55 :maxdepth: 1
56
57 auxiliary_bus
58 cxl/index
59 eisa
60 firewire
61 i3c/index
62 isa
63 men-chameleon-bus
64 pci/index
65 rapidio/index
66 slimbus
67 usb/index
68 virtio/index
69 vme
70 w1
71 xillybus
72
73
74Subsystem-specific APIs
75=======================
76
77.. toctree::
78 :maxdepth: 1
79
80 80211/index
81 acpi/index
82 backlight/lp855x-driver.rst
83 clk
84 console
85 crypto/index
86 dmaengine/index
87 dpll
88 edac
89 firmware/index
90 fpga/index
91 frame-buffer
92 aperture
93 generic-counter
94 gpio/index
95 hsi
96 hte/index
97 i2c
98 iio/index
99 infiniband
100 input
101 interconnect
102 ipmb
103 ipmi
104 libata
105 mailbox
106 md/index
107 media/index
108 mei/index
109 memory-devices/index
110 message-based
111 misc_devices
112 miscellaneous
113 mmc/index
114 mtd/index
115 mtdnand
116 nfc/index
117 ntb
118 nvdimm/index
119 nvmem
120 parport-lowlevel
121 phy/index
122 pin-control
123 pldmfw/index
124 pps
125 ptp
126 pwm
127 pwrseq
128 regulator
129 reset
130 rfkill
131 s390-drivers
132 scsi
133 serial/index
134 sm501
135 soundwire/index
136 spi
137 surface_aggregator/index
138 switchtec
139 sync_file
140 target
141 tee
142 thermal/index
143 tty/index
144 wbrf
145 wmi
146 xilinx/index
147 zorro
148
149.. only:: subproject and html
150
151 Indices
152 =======
153
154 * :ref:`genindex`
1.. SPDX-License-Identifier: GPL-2.0
2
3==============================
4Driver implementer's API guide
5==============================
6
7The kernel offers a wide variety of interfaces to support the development
8of device drivers. This document is an only somewhat organized collection
9of some of those interfaces — it will hopefully get better over time! The
10available subsections can be seen below.
11
12.. toctree::
13 :caption: Table of contents
14 :maxdepth: 2
15
16 driver-model/index
17 basics
18 infrastructure
19 ioctl
20 early-userspace/index
21 pm/index
22 clk
23 device-io
24 dma-buf
25 device_link
26 component
27 message-based
28 infiniband
29 aperture
30 frame-buffer
31 regulator
32 reset
33 iio/index
34 input
35 usb/index
36 firewire
37 pci/index
38 cxl/index
39 spi
40 i2c
41 ipmb
42 ipmi
43 i3c/index
44 interconnect
45 devfreq
46 hsi
47 edac
48 scsi
49 libata
50 target
51 mailbox
52 mtdnand
53 miscellaneous
54 mei/index
55 mtd/index
56 mmc/index
57 nvdimm/index
58 w1
59 rapidio/index
60 s390-drivers
61 vme
62 80211/index
63 uio-howto
64 firmware/index
65 pin-control
66 gpio/index
67 md/index
68 media/index
69 misc_devices
70 nfc/index
71 dmaengine/index
72 slimbus
73 soundwire/index
74 thermal/index
75 fpga/index
76 acpi/index
77 auxiliary_bus
78 backlight/lp855x-driver.rst
79 connector
80 console
81 eisa
82 isa
83 io-mapping
84 io_ordering
85 generic-counter
86 memory-devices/index
87 men-chameleon-bus
88 ntb
89 nvmem
90 parport-lowlevel
91 pps
92 ptp
93 phy/index
94 pwm
95 pldmfw/index
96 rfkill
97 serial/index
98 sm501
99 surface_aggregator/index
100 switchtec
101 sync_file
102 tty/index
103 vfio-mediated-device
104 vfio
105 vfio-pci-device-specific-driver-acceptance
106 virtio/index
107 xilinx/index
108 xillybus
109 zorro
110 hte/index
111 wmi
112 dpll
113 wbrf
114 crypto/index
115 tee
116
117.. only:: subproject and html
118
119 Indices
120 =======
121
122 * :ref:`genindex`