Merge tag 'for-linux-6.12-ofs1' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux-block.git] / Documentation / driver-api / index.rst
CommitLineData
4f46ae9f
SP
1.. SPDX-License-Identifier: GPL-2.0
2
941c95fd
SP
3==============================
4Driver implementer's API guide
5==============================
dcec3c8c
JC
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
0c17bb5e
JC
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
dcec3c8c 19.. toctree::
0c17bb5e 20 :maxdepth: 1
dcec3c8c
JC
21
22 basics
0c17bb5e
JC
23 driver-model/index
24 device_link
dcec3c8c 25 infrastructure
6505a18e 26 ioctl
2728b2d2 27 pm/index
0c17bb5e
JC
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
8a8a602f 40 device-io
0c17bb5e 41 devfreq
868c97a8 42 dma-buf
4d69c80e 43 component
0c17bb5e
JC
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
4cdadfd5 58 cxl/index
0c17bb5e
JC
59 eisa
60 firewire
bd360e81 61 i3c/index
0c17bb5e
JC
62 isa
63 men-chameleon-bus
64 pci/index
d2bdd48a 65 rapidio/index
0c17bb5e
JC
66 slimbus
67 usb/index
68 virtio/index
75a163c4 69 vme
0c17bb5e
JC
70 w1
71 xillybus
72
73
74Subsystem-specific APIs
75=======================
76
77.. toctree::
78 :maxdepth: 1
79
0bb33e25 80 80211/index
0c17bb5e
JC
81 acpi/index
82 backlight/lp855x-driver.rst
83 clk
84 console
85 crypto/index
86 dmaengine/index
87 dpll
88 edac
113ccc38 89 firmware/index
0c17bb5e
JC
90 fpga/index
91 frame-buffer
92 aperture
93 generic-counter
7e633259 94 gpio/index
0c17bb5e
JC
95 hsi
96 hte/index
97 i2c
98 iio/index
99 infiniband
100 input
101 interconnect
102 ipmb
103 ipmi
104 libata
105 mailbox
c0b11a50 106 md/index
d29e1ef4 107 media/index
0c17bb5e
JC
108 mei/index
109 memory-devices/index
110 message-based
c7e2c064 111 misc_devices
0c17bb5e
JC
112 miscellaneous
113 mmc/index
114 mtd/index
115 mtdnand
e253d2c5 116 nfc/index
baa293e9 117 ntb
0c17bb5e 118 nvdimm/index
baa293e9
MCC
119 nvmem
120 parport-lowlevel
0c17bb5e
JC
121 phy/index
122 pin-control
123 pldmfw/index
c92992fc
MCC
124 pps
125 ptp
baa293e9 126 pwm
8b7e0a6c 127 pwrseq
0c17bb5e
JC
128 regulator
129 reset
baa293e9 130 rfkill
0c17bb5e
JC
131 s390-drivers
132 scsi
65388dad 133 serial/index
baa293e9 134 sm501
0c17bb5e
JC
135 soundwire/index
136 spi
8d779282 137 surface_aggregator/index
baa293e9
MCC
138 switchtec
139 sync_file
0c17bb5e
JC
140 target
141 tee
142 thermal/index
2a72b1b2 143 tty/index
0c17bb5e
JC
144 wbrf
145 wmi
fb8c5327 146 xilinx/index
baa293e9 147 zorro
241a8021
MH
148
149.. only:: subproject and html
150
151 Indices
152 =======
153
154 * :ref:`genindex`