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