xref: /linux/Documentation/driver-api/index.rst (revision 2d7eaeb05ae265bd64270376e6a2c0d80244771f)
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   vfio-selftests
51
52Bus-level documentation
53=======================
54
55.. toctree::
56   :maxdepth: 1
57
58   auxiliary_bus
59   cxl/index
60   eisa
61   firewire
62   i3c/index
63   isa
64   men-chameleon-bus
65   pci/index
66   rapidio/index
67   slimbus
68   usb/index
69   virtio/index
70   vme
71   w1
72   xillybus
73
74
75Subsystem-specific APIs
76=======================
77
78.. toctree::
79   :maxdepth: 1
80
81   80211/index
82   acpi/index
83   backlight/lp855x-driver.rst
84   clk
85   coco/index
86   console
87   crypto/index
88   dmaengine/index
89   dpll
90   edac
91   extcon
92   firmware/index
93   fpga/index
94   frame-buffer
95   aperture
96   generic-counter
97   generic_pt
98   gpio/index
99   hsi
100   hte/index
101   hw-recoverable-errors
102   i2c
103   iio/index
104   infiniband
105   input
106   interconnect
107   ipmb
108   ipmi
109   issei/index
110   libata
111   mailbox
112   md/index
113   media/index
114   mei/index
115   memory-devices/index
116   message-based
117   misc_devices
118   miscellaneous
119   mmc/index
120   mtd/index
121   mtdnand
122   nfc/index
123   ntb
124   nvdimm/index
125   nvmem
126   parport-lowlevel
127   phy/index
128   pin-control
129   pldmfw/index
130   pps
131   ptp
132   pwm
133   pwrseq
134   regulator
135   reset
136   rfkill
137   s390-drivers
138   scsi
139   serial/index
140   sm501
141   soundwire/index
142   spi
143   steal-governor
144   surface_aggregator/index
145   switchtec
146   sync_file
147   target
148   tee
149   thermal/index
150   tty/index
151   wbrf
152   wmi
153   xilinx/index
154   zorro
155