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 coco/index 85 console 86 crypto/index 87 dmaengine/index 88 dpll 89 edac 90 extcon 91 firmware/index 92 fpga/index 93 frame-buffer 94 aperture 95 generic-counter 96 gpio/index 97 hsi 98 hte/index 99 i2c 100 iio/index 101 infiniband 102 input 103 interconnect 104 ipmb 105 ipmi 106 libata 107 mailbox 108 md/index 109 media/index 110 mei/index 111 memory-devices/index 112 message-based 113 misc_devices 114 miscellaneous 115 mmc/index 116 mtd/index 117 mtdnand 118 nfc/index 119 ntb 120 nvdimm/index 121 nvmem 122 parport-lowlevel 123 phy/index 124 pin-control 125 pldmfw/index 126 pps 127 ptp 128 pwm 129 pwrseq 130 regulator 131 reset 132 rfkill 133 s390-drivers 134 scsi 135 serial/index 136 sm501 137 soundwire/index 138 spi 139 surface_aggregator/index 140 switchtec 141 sync_file 142 target 143 tee 144 thermal/index 145 tty/index 146 wbrf 147 wmi 148 xilinx/index 149 zorro 150 151.. only:: subproject and html 152 153 Indices 154 ======= 155 156 * :ref:`genindex` 157