blob: 57719744774c2fe9fcb747c85975123d2a8126f6 [file] [log] [blame]
Mauro Carvalho Chehab4ef7f572020-04-15 16:45:15 +02001.. SPDX-License-Identifier: GPL-2.0
2
Mauro Carvalho Chehabdc7a12b2019-04-14 15:51:10 -03003
Jani Nikula22cba312016-05-19 15:14:05 +03004.. The Linux Kernel documentation master file, created by
5 sphinx-quickstart on Fri Feb 12 13:51:46 2016.
6 You can adapt this file completely to your liking, but it should at least
7 contain the root `toctree` directive.
8
Federico Vagaaa586e22018-06-06 00:49:01 +02009.. _linux_doc:
10
Konstantin Ryabitsev61ca5fd2017-06-06 16:50:04 -040011The Linux Kernel documentation
12==============================
Jani Nikula22cba312016-05-19 15:14:05 +030013
Jonathan Corbetb51208d2016-10-26 15:43:00 -060014This is the top level of the kernel's documentation tree. Kernel
15documentation, like the kernel itself, is very much a work in progress;
16that is especially true as we work to integrate our many scattered
17documents into a coherent whole. Please note that improvements to the
18documentation are welcome; join the linux-doc list at vger.kernel.org if
19you want to help out.
20
Thomas Gleixneraa19a172017-12-28 23:17:17 +010021Licensing documentation
22-----------------------
23
24The following describes the license of the Linux kernel source code
25(GPLv2), how to properly mark the license of individual files in the source
26tree, as well as links to the full license text.
27
Markus Heiser97994452018-08-14 13:43:12 +020028* :ref:`kernel_licensing`
Thomas Gleixneraa19a172017-12-28 23:17:17 +010029
Jonathan Corbetb51208d2016-10-26 15:43:00 -060030User-oriented documentation
31---------------------------
32
33The following manuals are written for *users* of the kernel — those who are
34trying to get it to work optimally on a given system.
Jani Nikula22cba312016-05-19 15:14:05 +030035
36.. toctree::
37 :maxdepth: 2
38
Mauro Carvalho Chehab9d850252016-09-21 09:51:11 -030039 admin-guide/index
Mauro Carvalho Chehab113094f2019-06-28 08:36:50 -030040 kbuild/index
Jonathan Corbetb51208d2016-10-26 15:43:00 -060041
Changbin Du680e6ff2019-04-25 23:30:54 +080042Firmware-related documentation
43------------------------------
44The following holds information on the kernel's expectations regarding the
45platform firmwares.
46
47.. toctree::
48 :maxdepth: 2
49
50 firmware-guide/index
Mauro Carvalho Chehab4ef7f572020-04-15 16:45:15 +020051 devicetree/index
Changbin Du680e6ff2019-04-25 23:30:54 +080052
Jonathan Corbet1d596de2017-04-02 14:58:01 -060053Application-developer documentation
54-----------------------------------
55
56The user-space API manual gathers together documents describing aspects of
57the kernel interface as seen by application developers.
58
59.. toctree::
60 :maxdepth: 2
61
Mike Rapoport82381912018-03-21 21:22:48 +020062 userspace-api/index
Jonathan Corbet1d596de2017-04-02 14:58:01 -060063
64
Jonathan Corbetb51208d2016-10-26 15:43:00 -060065Introduction to kernel development
66----------------------------------
67
68These manuals contain overall information about how to develop the kernel.
69The kernel community is quite large, with thousands of developers
70contributing over the course of a year. As with any large community,
71knowing how things are done will make the process of getting your changes
72merged much easier.
73
74.. toctree::
75 :maxdepth: 2
76
Mauro Carvalho Chehab0e4f07a2016-10-18 09:05:32 -020077 process/index
Markus Heiserc2893122016-10-26 08:23:14 +020078 dev-tools/index
Mauro Carvalho Chehab1dc4bbf2016-11-17 08:32:33 -020079 doc-guide/index
Mauro Carvalho Chehabc4fcd7c2017-05-11 08:03:27 -030080 kernel-hacking/index
Changbin Du583bc6b2018-02-17 13:39:34 +080081 trace/index
Tobin C. Harding9727a012017-12-04 10:27:29 +110082 maintainer/index
Mauro Carvalho Chehab113094f2019-06-28 08:36:50 -030083 fault-injection/index
84 livepatch/index
85
Jonathan Corbetb51208d2016-10-26 15:43:00 -060086
87Kernel API documentation
88------------------------
89
90These books get into the details of how specific kernel subsystems work
91from the point of view of a kernel developer. Much of the information here
92is taken directly from the kernel source, with supplemental material added
93as needed (or at least as we managed to add it probably *not* all that is
Andy Deng20698892017-01-25 12:14:33 +080094needed).
Jonathan Corbetb51208d2016-10-26 15:43:00 -060095
96.. toctree::
97 :maxdepth: 2
98
Jonathan Corbetdcec3c82016-08-20 13:17:32 -060099 driver-api/index
Silvio Fricke24755a52016-10-28 10:14:10 +0200100 core-api/index
Mauro Carvalho Chehab4c680602019-06-28 07:29:15 -0300101 locking/index
Mauro Carvalho Chehabdf1b7ce2019-06-18 17:16:23 -0300102 accounting/index
103 block/index
Mauro Carvalho Chehab113094f2019-06-28 08:36:50 -0300104 cdrom/index
Mauro Carvalho Chehab12bd1122020-03-03 14:52:03 +0100105 cpu-freq/index
Mauro Carvalho Chehab113094f2019-06-28 08:36:50 -0300106 ide/index
107 fb/index
108 fpga/index
Mauro Carvalho Chehabdf1b7ce2019-06-18 17:16:23 -0300109 hid/index
Mauro Carvalho Chehabccf988b2019-07-26 09:51:16 -0300110 i2c/index
Mauro Carvalho Chehabdf1b7ce2019-06-18 17:16:23 -0300111 iio/index
Mauro Carvalho Chehab5a5e0452019-07-26 09:51:25 -0300112 isdn/index
Mauro Carvalho Chehaba3a400d2019-06-28 09:30:28 -0300113 infiniband/index
Mauro Carvalho Chehab09fdc952019-06-18 16:51:34 -0300114 leds/index
Mauro Carvalho Chehab113094f2019-06-28 08:36:50 -0300115 netlabel/index
Mauro Carvalho Chehab05e0f3b2017-05-12 09:14:02 -0300116 networking/index
Mauro Carvalho Chehab113094f2019-06-28 08:36:50 -0300117 pcmcia/index
Mauro Carvalho Chehab08a69052019-07-15 09:39:57 -0300118 power/index
Mauro Carvalho Chehab113094f2019-06-28 08:36:50 -0300119 target/index
120 timers/index
Mauro Carvalho Chehab9cdd2732019-07-31 17:08:50 -0300121 spi/index
Mauro Carvalho Chehabe9bb6272019-07-31 17:08:53 -0300122 w1/index
Mauro Carvalho Chehab113094f2019-06-28 08:36:50 -0300123 watchdog/index
Sheriff Esseson03d36522019-08-09 14:23:49 +0100124 virt/index
Mauro Carvalho Chehabaeb899a2017-04-11 07:01:19 -0300125 input/index
Mauro Carvalho Chehab7ebd8b662019-04-17 06:46:29 -0300126 hwmon/index
Jani Nikulacb597fc2016-06-21 14:48:57 +0300127 gpu/index
Jarkko Sakkinen799a5452016-11-03 17:57:52 -0600128 security/index
Takashi Iwai85519142016-11-02 21:30:39 +0100129 sound/index
Stephan Mueller3b72c812016-10-21 04:54:22 +0200130 crypto/index
Mauro Carvalho Chehab90f9f112017-05-12 06:50:22 -0300131 filesystems/index
Mike Rapoport82381912018-03-21 21:22:48 +0200132 vm/index
Tobin C. Harding32095702018-07-26 15:03:04 +1000133 bpf/index
Mauro Carvalho Chehabecefae62019-06-18 18:05:38 -0300134 usb/index
Changbin Duc42eaff2019-05-14 22:47:23 +0800135 PCI/index
Mauro Carvalho Chehab31df2fd2020-03-02 09:15:34 +0100136 scsi/index
Randy Dunlap5591a302019-01-13 19:21:46 -0800137 misc-devices/index
Mauro Carvalho Chehabc92992f2019-04-22 16:49:11 -0300138 scheduler/index
Manivannan Sadhasivam9435dc32020-02-20 15:28:39 +0530139 mhi/index
Jani Nikula22cba312016-05-19 15:14:05 +0300140
Jiri Slabyffedeeb2019-10-11 13:50:41 +0200141Architecture-agnostic documentation
142-----------------------------------
143
144.. toctree::
145 :maxdepth: 2
146
147 asm-annotations
148
Mauro Carvalho Chehabbffac832017-05-13 07:50:43 -0300149Architecture-specific documentation
150-----------------------------------
151
152These books provide programming details about architecture-specific
153implementation.
154
155.. toctree::
156 :maxdepth: 2
157
Mauro Carvalho Chehab159a5e72019-04-22 16:10:26 -0300158 arm/index
159 arm64/index
160 ia64/index
161 m68k/index
Mauro Carvalho Chehab80b15052019-07-26 09:51:31 -0300162 mips/index
Mauro Carvalho Chehab47359e52019-07-26 09:51:33 -0300163 nios2/nios2
Mauro Carvalho Chehab32fc3cd2019-07-26 09:51:24 -0300164 openrisc/index
Mauro Carvalho Chehabe77e9182019-07-26 09:51:23 -0300165 parisc/index
Linus Torvalds5c6bd5d2019-09-22 09:30:30 -0700166 powerpc/index
Mauro Carvalho Chehab159a5e72019-04-22 16:10:26 -0300167 riscv/index
168 s390/index
169 sh/index
170 sparc/index
Thomas Gleixner6a9e5292019-02-18 23:13:06 +0100171 x86/index
Mauro Carvalho Chehab159a5e72019-04-22 16:10:26 -0300172 xtensa/index
Mauro Carvalho Chehabbffac832017-05-13 07:50:43 -0300173
Darrick J. Wong66848742018-07-29 16:14:02 -0400174Filesystem Documentation
175------------------------
176
177The documentation in this section are provided by specific filesystem
178subprojects.
179
180.. toctree::
Theodore Ts'o0694f8c2018-07-29 16:35:23 -0400181 :maxdepth: 2
Darrick J. Wong66848742018-07-29 16:14:02 -0400182
183 filesystems/ext4/index
184
Mauro Carvalho Chehab8e2a46a2020-06-15 08:50:25 +0200185Other documentation
186-------------------
187
188There are several unsorted documents that don't seem to fit on other parts
189of the documentation body, or may require some adjustments and/or conversion
190to ReStructured Text format, or are simply too old.
191
192.. toctree::
193 :maxdepth: 2
194
195 staging/index
Daniel W. S. Almeida3657c3e2020-07-18 13:51:07 -0300196 watch_queue
Mauro Carvalho Chehab8e2a46a2020-06-15 08:50:25 +0200197
198
Federico Vaga85c32d92018-06-06 00:49:00 +0200199Translations
200------------
SeongJae Parkba42c572016-11-08 21:26:09 +0900201
202.. toctree::
Federico Vaga85c32d92018-06-06 00:49:00 +0200203 :maxdepth: 2
SeongJae Parkba42c572016-11-08 21:26:09 +0900204
Federico Vaga85c32d92018-06-06 00:49:00 +0200205 translations/index
Tsugikazu Shibataf0127332017-04-08 12:24:04 +0200206
Jani Nikula22cba312016-05-19 15:14:05 +0300207Indices and tables
208==================
209
210* :ref:`genindex`