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