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========================================
2The Linux driver implementer's API guide
3========================================
4
5The kernel offers a wide variety of interfaces to support the development
6of device drivers. This document is an only somewhat organized collection
7of some of those interfaces — it will hopefully get better over time! The
8available subsections can be seen below.
9
10.. class:: toc-title
11
12 Table of contents
13
14.. toctree::
15 :maxdepth: 2
16
17 driver-model/index
18 basics
19 infrastructure
20 ioctl
21 early-userspace/index
22 pm/index
23 clk
24 device-io
25 device_connection
26 dma-buf
27 device_link
28 component
29 message-based
30 infiniband
31 sound
32 frame-buffer
33 regulator
34 iio/index
35 input
36 usb/index
37 firewire
38 pci/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 pinctl
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 backlight/lp855x-driver.rst
78 connector
79 console
80 dcdbas
81 eisa
82 ipmb
83 isa
84 isapnp
85 io-mapping
86 io_ordering
87 generic-counter
88 lightnvm-pblk
89 memory-devices/index
90 men-chameleon-bus
91 ntb
92 nvmem
93 parport-lowlevel
94 pps
95 ptp
96 phy/index
97 pti_intel_mid
98 pwm
99 pldmfw/index
100 rfkill
101 serial/index
102 sm501
103 switchtec
104 sync_file
105 vfio-mediated-device
106 vfio
107 xilinx/index
108 xillybus
109 zorro
110
111.. only:: subproject and html
112
113 Indices
114 =======
115
116 * :ref:`genindex`