^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) .. SPDX-License-Identifier: GPL-2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) .. The Linux Kernel documentation master file, created by
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) sphinx-quickstart on Fri Feb 12 13:51:46 2016.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) You can adapt this file completely to your liking, but it should at least
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) contain the root `toctree` directive.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) .. _linux_doc:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) The Linux Kernel documentation
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) ==============================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) This is the top level of the kernel's documentation tree. Kernel
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) documentation, like the kernel itself, is very much a work in progress;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) that is especially true as we work to integrate our many scattered
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) documents into a coherent whole. Please note that improvements to the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) documentation are welcome; join the linux-doc list at vger.kernel.org if
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) you want to help out.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) Licensing documentation
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) -----------------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) The following describes the license of the Linux kernel source code
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) (GPLv2), how to properly mark the license of individual files in the source
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) tree, as well as links to the full license text.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) * :ref:`kernel_licensing`
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) User-oriented documentation
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) ---------------------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) The following manuals are written for *users* of the kernel — those who are
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) trying to get it to work optimally on a given system.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) .. toctree::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) :maxdepth: 2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) admin-guide/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) kbuild/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) Firmware-related documentation
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) ------------------------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) The following holds information on the kernel's expectations regarding the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) platform firmwares.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) .. toctree::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) :maxdepth: 2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) firmware-guide/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) devicetree/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) Application-developer documentation
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) -----------------------------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) The user-space API manual gathers together documents describing aspects of
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) the kernel interface as seen by application developers.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) .. toctree::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) :maxdepth: 2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) userspace-api/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) Introduction to kernel development
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) ----------------------------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) These manuals contain overall information about how to develop the kernel.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) The kernel community is quite large, with thousands of developers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) contributing over the course of a year. As with any large community,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) knowing how things are done will make the process of getting your changes
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) merged much easier.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) .. toctree::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) :maxdepth: 2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) process/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) dev-tools/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) doc-guide/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) kernel-hacking/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) trace/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) maintainer/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) fault-injection/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) livepatch/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87) Kernel API documentation
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) ------------------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90) These books get into the details of how specific kernel subsystems work
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91) from the point of view of a kernel developer. Much of the information here
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92) is taken directly from the kernel source, with supplemental material added
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93) as needed (or at least as we managed to add it — probably *not* all that is
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94) needed).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96) .. toctree::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97) :maxdepth: 2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99) driver-api/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) core-api/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) locking/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) accounting/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) block/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) cdrom/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) cpu-freq/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) ide/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) fb/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) fpga/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) hid/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) i2c/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) iio/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) isdn/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) infiniband/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) leds/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) netlabel/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) networking/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) pcmcia/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) power/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) target/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) timers/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) spi/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) w1/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) watchdog/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) virt/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) input/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) hwmon/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) gpu/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) security/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) sound/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) crypto/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) filesystems/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) vm/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133) bpf/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) usb/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) PCI/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136) scsi/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) misc-devices/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) scheduler/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) mhi/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) Architecture-agnostic documentation
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) -----------------------------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) .. toctree::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) :maxdepth: 2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) asm-annotations
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149) Architecture-specific documentation
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) -----------------------------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) These books provide programming details about architecture-specific
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) implementation.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) .. toctree::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156) :maxdepth: 2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) arm/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) arm64/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) ia64/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) m68k/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) mips/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) nios2/nios2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164) openrisc/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) parisc/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) powerpc/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) riscv/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) s390/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169) sh/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) sparc/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171) x86/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) xtensa/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) Filesystem Documentation
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175) ------------------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) The documentation in this section are provided by specific filesystem
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) subprojects.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180) .. toctree::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) :maxdepth: 2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) filesystems/ext4/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185) Other documentation
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) -------------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188) There are several unsorted documents that don't seem to fit on other parts
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189) of the documentation body, or may require some adjustments and/or conversion
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) to ReStructured Text format, or are simply too old.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192) .. toctree::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) :maxdepth: 2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195) staging/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196) watch_queue
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199) Translations
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200) ------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202) .. toctree::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203) :maxdepth: 2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) translations/index
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207) Indices and tables
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208) ==================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210) * :ref:`genindex`