Merge branch 'linux-4.12' of git://github.com/skeggsb/linux into drm-next
[sfrench/cifs-2.6.git] / Documentation / 00-INDEX
1
2 This is a brief list of all the files in ./linux/Documentation and what
3 they contain. If you add a documentation file, please list it here in
4 alphabetical order as well, or risk being hunted down like a rabid dog.
5 Please keep the descriptions small enough to fit on one line.
6                                                          Thanks -- Paul G.
7
8 Following translations are available on the WWW:
9
10    - Japanese, maintained by the JF Project (jf@listserv.linux.or.jp), at
11      http://linuxjf.sourceforge.jp/
12
13 00-INDEX
14         - this file.
15 ABI/
16         - info on kernel <-> userspace ABI and relative interface stability.
17 CodingStyle
18         - nothing here, just a pointer to process/coding-style.rst.
19 DMA-API.txt
20         - DMA API, pci_ API & extensions for non-consistent memory machines.
21 DMA-API-HOWTO.txt
22         - Dynamic DMA mapping Guide
23 DMA-ISA-LPC.txt
24         - How to do DMA with ISA (and LPC) devices.
25 DMA-attributes.txt
26         - listing of the various possible attributes a DMA region can have
27 DocBook/
28         - directory with DocBook templates etc. for kernel documentation.
29 EDID/
30         - directory with info on customizing EDID for broken gfx/displays.
31 IPMI.txt
32         - info on Linux Intelligent Platform Management Interface (IPMI) Driver.
33 IRQ-affinity.txt
34         - how to select which CPU(s) handle which interrupt events on SMP.
35 IRQ-domain.txt
36         - info on interrupt numbering and setting up IRQ domains.
37 IRQ.txt
38         - description of what an IRQ is.
39 Intel-IOMMU.txt
40         - basic info on the Intel IOMMU virtualization support.
41 Makefile
42         - It's not of interest for those who aren't touching the build system.
43 Makefile.sphinx
44         - It's not of interest for those who aren't touching the build system.
45 PCI/
46         - info related to PCI drivers.
47 RCU/
48         - directory with info on RCU (read-copy update).
49 SAK.txt
50         - info on Secure Attention Keys.
51 SM501.txt
52         - Silicon Motion SM501 multimedia companion chip
53 SubmittingPatches
54         - nothing here, just a pointer to process/coding-style.rst.
55 accounting/
56         - documentation on accounting and taskstats.
57 acpi/
58         - info on ACPI-specific hooks in the kernel.
59 admin-guide/
60         - info related to Linux users and system admins.
61 aoe/
62         - description of AoE (ATA over Ethernet) along with config examples.
63 arm/
64         - directory with info about Linux on the ARM architecture.
65 arm64/
66         - directory with info about Linux on the 64 bit ARM architecture.
67 auxdisplay/
68         - misc. LCD driver documentation (cfag12864b, ks0108).
69 backlight/
70         - directory with info on controlling backlights in flat panel displays
71 bcache.txt
72         - Block-layer cache on fast SSDs to improve slow (raid) I/O performance.
73 blackfin/
74         - directory with documentation for the Blackfin arch.
75 block/
76         - info on the Block I/O (BIO) layer.
77 blockdev/
78         - info on block devices & drivers
79 bt8xxgpio.txt
80         - info on how to modify a bt8xx video card for GPIO usage.
81 btmrvl.txt
82         - info on Marvell Bluetooth driver usage.
83 bus-devices/
84         - directory with info on TI GPMC (General Purpose Memory Controller)
85 bus-virt-phys-mapping.txt
86         - how to access I/O mapped memory from within device drivers.
87 cachetlb.txt
88         - describes the cache/TLB flushing interfaces Linux uses.
89 cdrom/
90         - directory with information on the CD-ROM drivers that Linux has.
91 cgroup-v1/
92         - cgroups v1 features, including cpusets and memory controller.
93 cgroup-v2.txt
94         - cgroups v2 features, including cpusets and memory controller.
95 circular-buffers.txt
96         - how to make use of the existing circular buffer infrastructure
97 clk.txt
98         - info on the common clock framework
99 cma/
100         - Continuous Memory Area (CMA) debugfs interface.
101 conf.py
102         - It's not of interest for those who aren't touching the build system.
103 connector/
104         - docs on the netlink based userspace<->kernel space communication mod.
105 console/
106         - documentation on Linux console drivers.
107 core-api/
108         - documentation on kernel core components.
109 cpu-freq/
110         - info on CPU frequency and voltage scaling.
111 cpu-hotplug.txt
112         - document describing CPU hotplug support in the Linux kernel.
113 cpu-load.txt
114         - document describing how CPU load statistics are collected.
115 cpuidle/
116         - info on CPU_IDLE, CPU idle state management subsystem.
117 cputopology.txt
118         - documentation on how CPU topology info is exported via sysfs.
119 crc32.txt
120         - brief tutorial on CRC computation
121 cris/
122         - directory with info about Linux on CRIS architecture.
123 crypto/
124         - directory with info on the Crypto API.
125 dcdbas.txt
126         - information on the Dell Systems Management Base Driver.
127 debugging-modules.txt
128         - some notes on debugging modules after Linux 2.6.3.
129 debugging-via-ohci1394.txt
130         - how to use firewire like a hardware debugger memory reader.
131 dell_rbu.txt
132         - document demonstrating the use of the Dell Remote BIOS Update driver.
133 dev-tools/
134         - directory with info on development tools for the kernel.
135 device-mapper/
136         - directory with info on Device Mapper.
137 dmaengine/
138         - the DMA engine and controller API guides.
139 devicetree/
140         - directory with info on device tree files used by OF/PowerPC/ARM
141 digsig.txt
142         -info on the Digital Signature Verification API
143 dma-buf-sharing.txt
144         - the DMA Buffer Sharing API Guide
145 docutils.conf
146         - nothing here. Just a configuration file for docutils.
147 dontdiff
148         - file containing a list of files that should never be diff'ed.
149 driver-api/
150         - the Linux driver implementer's API guide.
151 driver-model/
152         - directory with info about Linux driver model.
153 early-userspace/
154         - info about initramfs, klibc, and userspace early during boot.
155 efi-stub.txt
156         - How to use the EFI boot stub to bypass GRUB or elilo on EFI systems.
157 eisa.txt
158         - info on EISA bus support.
159 extcon/
160         - directory with porting guide for Android kernel switch driver.
161 isa.txt
162         - info on EISA bus support.
163 fault-injection/
164         - dir with docs about the fault injection capabilities infrastructure.
165 fb/
166         - directory with info on the frame buffer graphics abstraction layer.
167 features/
168         - status of feature implementation on different architectures.
169 filesystems/
170         - info on the vfs and the various filesystems that Linux supports.
171 firmware_class/
172         - request_firmware() hotplug interface info.
173 flexible-arrays.txt
174         - how to make use of flexible sized arrays in linux
175 fmc/
176         - information about the FMC bus abstraction
177 fpga/
178         - FPGA Manager Core.
179 frv/
180         - Fujitsu FR-V Linux documentation.
181 futex-requeue-pi.txt
182         - info on requeueing of tasks from a non-PI futex to a PI futex
183 gcc-plugins.txt
184         - GCC plugin infrastructure.
185 gpio/
186         - gpio related documentation
187 gpu/
188         - directory with information on GPU driver developer's guide.
189 hid/
190         - directory with information on human interface devices
191 highuid.txt
192         - notes on the change from 16 bit to 32 bit user/group IDs.
193 hwspinlock.txt
194         - hardware spinlock provides hardware assistance for synchronization
195 timers/
196         - info on the timer related topics
197 hw_random.txt
198         - info on Linux support for random number generator in i8xx chipsets.
199 hwmon/
200         - directory with docs on various hardware monitoring drivers.
201 i2c/
202         - directory with info about the I2C bus/protocol (2 wire, kHz speed).
203 x86/i386/
204         - directory with info about Linux on Intel 32 bit architecture.
205 ia64/
206         - directory with info about Linux on Intel 64 bit architecture.
207 ide/
208         - Information regarding the Enhanced IDE drive.
209 iio/
210         - info on industrial IIO configfs support.
211 index.rst
212         - main index for the documentation at ReST format.
213 infiniband/
214         - directory with documents concerning Linux InfiniBand support.
215 input/
216         - info on Linux input device support.
217 intel_txt.txt
218         - info on intel Trusted Execution Technology (intel TXT).
219 io-mapping.txt
220         - description of io_mapping functions in linux/io-mapping.h
221 io_ordering.txt
222         - info on ordering I/O writes to memory-mapped addresses.
223 ioctl/
224         - directory with documents describing various IOCTL calls.
225 iostats.txt
226         - info on I/O statistics Linux kernel provides.
227 irqflags-tracing.txt
228         - how to use the irq-flags tracing feature.
229 isapnp.txt
230         - info on Linux ISA Plug & Play support.
231 isdn/
232         - directory with info on the Linux ISDN support, and supported cards.
233 kbuild/
234         - directory with info about the kernel build process.
235 kernel-doc-nano-HOWTO.txt
236         - outdated info about kernel-doc documentation.
237 kdump/
238         - directory with mini HowTo on getting the crash dump code to work.
239 doc-guide/
240         - how to write and format reStructuredText kernel documentation
241 kernel-per-CPU-kthreads.txt
242         - List of all per-CPU kthreads and how they introduce jitter.
243 kobject.txt
244         - info of the kobject infrastructure of the Linux kernel.
245 kprobes.txt
246         - documents the kernel probes debugging feature.
247 kref.txt
248         - docs on adding reference counters (krefs) to kernel objects.
249 kselftest.txt
250         - small unittests for (some) individual codepaths in the kernel.
251 laptops/
252         - directory with laptop related info and laptop driver documentation.
253 ldm.txt
254         - a brief description of LDM (Windows Dynamic Disks).
255 leds/
256         - directory with info about LED handling under Linux.
257 livepatch/
258         - info on kernel live patching.
259 locking/
260         - directory with info about kernel locking primitives
261 lockup-watchdogs.txt
262         - info on soft and hard lockup detectors (aka nmi_watchdog).
263 logo.gif
264         - full colour GIF image of Linux logo (penguin - Tux).
265 logo.txt
266         - info on creator of above logo & site to get additional images from.
267 lzo.txt
268         - kernel LZO decompressor input formats
269 m68k/
270         - directory with info about Linux on Motorola 68k architecture.
271 mailbox.txt
272         - How to write drivers for the common mailbox framework (IPC).
273 md/
274         - directory with info about Linux Software RAID
275 media/
276         - info on media drivers: uAPI, kAPI and driver documentation.
277 memory-barriers.txt
278         - info on Linux kernel memory barriers.
279 memory-devices/
280         - directory with info on parts like the Texas Instruments EMIF driver
281 memory-hotplug.txt
282         - Hotpluggable memory support, how to use and current status.
283 men-chameleon-bus.txt
284         - info on MEN chameleon bus.
285 metag/
286         - directory with info about Linux on Meta architecture.
287 mic/
288         - Intel Many Integrated Core (MIC) architecture device driver.
289 mips/
290         - directory with info about Linux on MIPS architecture.
291 misc-devices/
292         - directory with info about devices using the misc dev subsystem
293 mmc/
294         - directory with info about the MMC subsystem
295 mn10300/
296         - directory with info about the mn10300 architecture port
297 mtd/
298         - directory with info about memory technology devices (flash)
299 namespaces/
300         - directory with various information about namespaces
301 netlabel/
302         - directory with information on the NetLabel subsystem.
303 networking/
304         - directory with info on various aspects of networking with Linux.
305 nfc/
306         - directory relating info about Near Field Communications support.
307 nios2/
308         - Linux on the Nios II architecture.
309 nommu-mmap.txt
310         - documentation about no-mmu memory mapping support.
311 numastat.txt
312         - info on how to read Numa policy hit/miss statistics in sysfs.
313 ntb.txt
314         - info on Non-Transparent Bridge (NTB) drivers.
315 nvdimm/
316         - info on non-volatile devices.
317 nvmem/
318         - info on non volatile memory framework.
319 output/
320         - default directory where html/LaTeX/pdf files will be written.
321 padata.txt
322         - An introduction to the "padata" parallel execution API
323 parisc/
324         - directory with info on using Linux on PA-RISC architecture.
325 parport-lowlevel.txt
326         - description and usage of the low level parallel port functions.
327 pcmcia/
328         - info on the Linux PCMCIA driver.
329 percpu-rw-semaphore.txt
330         - RCU based read-write semaphore optimized for locking for reading
331 perf/
332         - info about the APM X-Gene SoC Performance Monitoring Unit (PMU).
333 phy/
334         - ino on Samsung USB 2.0 PHY adaptation layer.
335 phy.txt
336         - Description of the generic PHY framework.
337 pi-futex.txt
338         - documentation on lightweight priority inheritance futexes.
339 pinctrl.txt
340         - info on pinctrl subsystem and the PINMUX/PINCONF and drivers
341 platform/
342         - List of supported hardware by compal and Dell laptop.
343 pnp.txt
344         - Linux Plug and Play documentation.
345 power/
346         - directory with info on Linux PCI power management.
347 powerpc/
348         - directory with info on using Linux with the PowerPC.
349 prctl/
350         - directory with info on the priveledge control subsystem
351 preempt-locking.txt
352         - info on locking under a preemptive kernel.
353 printk-formats.txt
354         - how to get printk format specifiers right
355 process/
356         - how to work with the mainline kernel development process.
357 pps/
358         - directory with information on the pulse-per-second support
359 pti/
360         - directory with info on Intel MID PTI.
361 ptp/
362         - directory with info on support for IEEE 1588 PTP clocks in Linux.
363 pwm.txt
364         - info on the pulse width modulation driver subsystem
365 rapidio/
366         - directory with info on RapidIO packet-based fabric interconnect
367 rbtree.txt
368         - info on what red-black trees are and what they are for.
369 remoteproc.txt
370         - info on how to handle remote processor (e.g. AMP) offloads/usage.
371 rfkill.txt
372         - info on the radio frequency kill switch subsystem/support.
373 robust-futex-ABI.txt
374         - documentation of the robust futex ABI.
375 robust-futexes.txt
376         - a description of what robust futexes are.
377 rpmsg.txt
378         - info on the Remote Processor Messaging (rpmsg) Framework
379 rtc.txt
380         - notes on how to use the Real Time Clock (aka CMOS clock) driver.
381 s390/
382         - directory with info on using Linux on the IBM S390.
383 scheduler/
384         - directory with info on the scheduler.
385 scsi/
386         - directory with info on Linux scsi support.
387 security/
388         - directory that contains security-related info
389 serial/
390         - directory with info on the low level serial API.
391 sgi-ioc4.txt
392         - description of the SGI IOC4 PCI (multi function) device.
393 sh/
394         - directory with info on porting Linux to a new architecture.
395 smsc_ece1099.txt
396         -info on the smsc Keyboard Scan Expansion/GPIO Expansion device.
397 sound/
398         - directory with info on sound card support.
399 spi/
400         - overview of Linux kernel Serial Peripheral Interface (SPI) support.
401 sphinx/
402         - no documentation here, just files required by Sphinx toolchain.
403 sphinx-static/
404         - no documentation here, just files required by Sphinx toolchain.
405 static-keys.txt
406         - info on how static keys allow debug code in hotpaths via patching
407 svga.txt
408         - short guide on selecting video modes at boot via VGA BIOS.
409 sync_file.txt
410         - Sync file API guide.
411 sysctl/
412         - directory with info on the /proc/sys/* files.
413 target/
414         - directory with info on generating TCM v4 fabric .ko modules
415 tee.txt
416         - info on the TEE subsystem and drivers
417 this_cpu_ops.txt
418         - List rationale behind and the way to use this_cpu operations.
419 thermal/
420         - directory with information on managing thermal issues (CPU/temp)
421 trace/
422         - directory with info on tracing technologies within linux
423 translations/
424         - translations of this document from English to another language
425 unaligned-memory-access.txt
426         - info on how to avoid arch breaking unaligned memory access in code.
427 unshare.txt
428         - description of the Linux unshare system call.
429 usb/
430         - directory with info regarding the Universal Serial Bus.
431 vfio.txt
432         - info on Virtual Function I/O used in guest/hypervisor instances.
433 video-output.txt
434         - sysfs class driver interface to enable/disable a video output device.
435 virtual/
436         - directory with information on the various linux virtualizations.
437 vm/
438         - directory with info on the Linux vm code.
439 w1/
440         - directory with documents regarding the 1-wire (w1) subsystem.
441 watchdog/
442         - how to auto-reboot Linux if it has "fallen and can't get up". ;-)
443 wimax/
444         - directory with info about Intel Wireless Wimax Connections
445 core-api/workqueue.rst
446         - information on the Concurrency Managed Workqueue implementation
447 x86/x86_64/
448         - directory with info on Linux support for AMD x86-64 (Hammer) machines.
449 xillybus.txt
450         - Overview and basic ui of xillybus driver
451 xtensa/
452         - directory with documents relating to arch/xtensa port/implementation
453 xz.txt
454         - how to make use of the XZ data compression within linux kernel
455 zorro.txt
456         - info on writing drivers for Zorro bus devices found on Amigas.