Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 39fe5434 authored by David Woodhouse's avatar David Woodhouse
Browse files
parents 0fc72b81 f695baf2
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@
tags
TAGS
vmlinux*
!vmlinux.lds.S
System.map
Module.symvers

@@ -45,3 +46,6 @@ series

# cscope files
cscope.*

*.orig
*.rej
+5 −5
Original line number Diff line number Diff line
@@ -2212,13 +2212,13 @@ S: 2300 Copenhagen S
S: Denmark

N: Claudio S. Matsuoka
E: claudio@conectiva.com
E: claudio@helllabs.org
E: cmatsuoka@gmail.com
E: claudio@mandriva.com
W: http://helllabs.org/~claudio
D: V4L, OV511 driver hacks
D: V4L, OV511 and HDA-codec hacks
S: Conectiva S.A.
S: R. Tocantins 89
S: 80050-430  Curitiba PR
S: Souza Naves 1250
S: 80050-040  Curitiba PR
S: Brazil

N: Heinz Mauelshagen
+133 −9
Original line number Diff line number Diff line
@@ -12,6 +12,8 @@ Following translations are available on the WWW:

00-INDEX
	- this file.
ABI/
	- info on kernel <-> userspace ABI and relative interface stability.
BUG-HUNTING
	- brute force method of doing binary search of patches to find bug.
Changes
@@ -25,37 +27,57 @@ DMA-mapping.txt
DocBook/
	- directory with DocBook templates etc. for kernel documentation.
HOWTO
	- The process and procedures of how to do Linux kernel development.
	- the process and procedures of how to do Linux kernel development.
IO-mapping.txt
	- how to access I/O mapped memory from within device drivers.
IPMI.txt
	- info on Linux Intelligent Platform Management Interface (IPMI) Driver.
IRQ-affinity.txt
	- how to select which CPU(s) handle which interrupt events on SMP.
IRQ.txt
	- description of what an IRQ is.
ManagementStyle
	- how to (attempt to) manage kernel hackers.
MSI-HOWTO.txt
	- the Message Signaled Interrupts (MSI) Driver Guide HOWTO and FAQ.
PCIEBUS-HOWTO.txt
	- a guide describing the PCI Express Port Bus driver.
RCU/
	- directory with info on RCU (read-copy update).
README.DAC960
	- info on Mylex DAC960/DAC1100 PCI RAID Controller Driver for Linux.
README.cycladesZ
	- info on Cyclades-Z firmware loading.
SAK.txt
	- info on Secure Attention Keys.
SecurityBugs
	- procedure for reporting security bugs found in the kernel.
SubmitChecklist
	- Linux kernel patch submission checklist.
SubmittingDrivers
	- procedure to get a new driver source included into the kernel tree.
SubmittingPatches
	- procedure to get a source patch included into the kernel tree.
VGA-softcursor.txt
	- how to change your VGA cursor from a blinking underscore.
accounting/
	- documentation on accounting and taskstats.
aoe/
	- description of AoE (ATA over Ethernet) along with config examples.
applying-patches.txt
	- description of various trees and how to apply their patches.
arm/
	- directory with info about Linux on the ARM architecture.
atomic_ops.txt
	- semantics and behavior of atomic and bitmask operations.
auxdisplay/
	- misc. LCD driver documentation (cfag12864b, ks0108).
basic_profiling.txt
	- basic instructions for those who wants to profile Linux kernel.
binfmt_misc.txt
	- info on the kernel support for extra binary formats.
blackfin/
	- directory with documentation for the Blackfin arch.
block/
	- info on the Block I/O (BIO) layer.
cachetlb.txt
@@ -68,16 +90,32 @@ cli-sti-removal.txt
	- cli()/sti() removal guide.
computone.txt
	- info on Computone Intelliport II/Plus Multiport Serial Driver.
connector/
	- docs on the netlink based userspace<->kernel space communication mod.
console/
	- documentation on Linux console drivers.
cpqarray.txt
	- info on using Compaq's SMART2 Intelligent Disk Array Controllers.
cpu-freq/
	- info on CPU frequency and voltage scaling.
cpu-hotplug.txt
	- document describing CPU hotplug support in the Linux kernel.
cpu-load.txt
	- document describing how CPU load statistics are collected.
cpusets.txt
	- documents the cpusets feature; assign CPUs and Mem to a set of tasks.
cputopology.txt
	- documentation on how CPU topology info is exported via sysfs.
cris/
	- directory with info about Linux on CRIS architecture.
crypto/
	- directory with info on the Crypto API.
dcdbas.txt
	- information on the Dell Systems Management Base Driver.
debugging-modules.txt
	- some notes on debugging modules after Linux 2.6.3.
dell_rbu.txt
	- document demonstrating the use of the Dell Remote BIOS Update driver.
device-mapper/
	- directory with info on Device Mapper.
devices.txt
@@ -86,32 +124,52 @@ digiepca.txt
	- info on Digi Intl. {PC,PCI,EISA}Xx and Xem series cards.
dnotify.txt
	- info about directory notification in Linux.
dontdiff
	- file containing a list of files that should never be diff'ed.
driver-model/
	- directory with info about Linux driver model.
drivers/
	- directory with driver documentation (currently only EDAC).
dvb/
	- info on Linux Digital Video Broadcast (DVB) subsystem.
early-userspace/
	- info about initramfs, klibc, and userspace early during boot.
ecryptfs.txt
	- docs on eCryptfs: stacked cryptographic filesystem for Linux.
eisa.txt
	- info on EISA bus support.
exception.txt
	- how Linux v2.2 handles exceptions without verify_area etc.
fault-injection/
	- dir with docs about the fault injection capabilities infrastructure.
fb/
	- directory with info on the frame buffer graphics abstraction layer.
feature-removal-schedule.txt
	- list of files and features that are going to be removed.
filesystems/
	- directory with info on the various filesystems that Linux supports.
firmware_class/
	- request_firmware() hotplug interface info.
floppy.txt
	- notes and driver options for the floppy disk driver.
fujitsu/
	- Fujitsu FR-V Linux documentation.
gpio.txt
	- overview of GPIO (General Purpose Input/Output) access conventions.
hayes-esp.txt
	- info on using the Hayes ESP serial driver.
highuid.txt
	- notes on the change from 16 bit to 32 bit user/group IDs.
hpet.txt
	- High Precision Event Timer Driver for Linux.
hrtimer/
	- info on the timer_stats debugging facility for timer (ab)use.
hrtimers/
	- info on the hrtimers subsystem for high-resolution kernel timers.
hw_random.txt
	- info on Linux support for random number generator in i8xx chipsets.
hwmon/
	- directory with docs on various hardware monitoring drivers.
i2c/
	- directory with info about the I2C bus/protocol (2 wire, kHz speed).
i2o/
@@ -122,16 +180,22 @@ ia64/
	- directory with info about Linux on Intel 64 bit architecture.
ide.txt
	- important info for users of ATA devices (IDE/EIDE disks and CD-ROMS).
infiniband/
	- directory with documents concerning Linux InfiniBand support.
initrd.txt
	- how to use the RAM disk as an initial/temporary root filesystem.
input/
	- info on Linux input device support.
io_ordering.txt
	- info on ordering I/O writes to memory-mapped addresses.
ioctl/
	- directory with documents describing various IOCTL calls.
ioctl-number.txt
	- how to implement and register device/driver ioctl calls.
iostats.txt
	- info on I/O statistics Linux kernel provides.
irqflags-tracing.txt
	- how to use the irq-flags tracing feature.
isapnp.txt
	- info on Linux ISA Plug & Play support.
isdn/
@@ -140,26 +204,40 @@ java.txt
	- info on the in-kernel binary support for Java(tm).
kbuild/
	- directory with info about the kernel build process.
kdumpt.txt
       - mini HowTo on getting the crash dump code to work.
kdump/
	- directory with mini HowTo on getting the crash dump code to work.
kernel-doc-nano-HOWTO.txt
	- mini HowTo on generation and location of kernel documentation files.
kernel-docs.txt
	- listing of various WWW + books that document kernel internals.
kernel-parameters.txt
	- summary listing of command line / boot prompt args for the kernel.
keys-request-key.txt
	- description of the kernel key request service.
keys.txt
	- description of the kernel key retention service.
kobject.txt
	- info of the kobject infrastructure of the Linux kernel.
kprobes.txt
	- documents the kernel probes debugging feature.
kref.txt
	- docs on adding reference counters (krefs) to kernel objects.
laptop-mode.txt
	- How to conserve battery power using laptop-mode.
	- how to conserve battery power using laptop-mode.
ldm.txt
	- a brief description of LDM (Windows Dynamic Disks).
leds-class.txt
	- documents LED handling under Linux.
local_ops.txt
	- semantics and behavior of local atomic operations.
lockdep-design.txt
	- documentation on the runtime locking correctness validator.
locks.txt
	- info on file locking implementations, flock() vs. fcntl(), etc.
logo.gif
	- Full colour GIF image of Linux logo (penguin).
	- full colour GIF image of Linux logo (penguin - Tux).
logo.txt
	- Info on creator of above logo & site to get additional images from.
	- info on creator of above logo & site to get additional images from.
m68k/
	- directory with info about Linux on Motorola 68k architecture.
magic-number.txt
@@ -170,6 +248,8 @@ mca.txt
	- info on supporting Micro Channel Architecture (e.g. PS/2) systems.
md.txt
	- info on boot arguments for the multiple devices driver.
memory-barriers.txt
	- info on Linux kernel memory barriers.
memory.txt
	- info on typical Linux memory problems.
mips/
@@ -177,9 +257,11 @@ mips/
mono.txt
	- how to execute Mono-based .NET binaries with the help of BINFMT_MISC.
moxa-smartio
	- info on installing/using Moxa multiport serial driver.
	- file with info on installing/using Moxa multiport serial driver.
mtrr.txt
	- how to use PPro Memory Type Range Registers to increase performance.
mutex-design.txt
	- info on the generic mutex subsystem.
nbd.txt
	- info on a TCP implementation of a network block device.
netlabel/
@@ -190,6 +272,8 @@ nfsroot.txt
	- short guide on setting up a diskless box with NFS root filesystem.
nmi_watchdog.txt
	- info on NMI watchdog for SMP systems.
nommu-mmap.txt
	- documentation about no-mmu memory mapping support.
numastat.txt
	- info on how to read Numa policy hit/miss statistics in sysfs.
oops-tracing.txt
@@ -202,8 +286,16 @@ parport.txt
	- how to use the parallel-port driver.
parport-lowlevel.txt
	- description and usage of the low level parallel port functions.
pci-error-recovery.txt
	- info on PCI error recovery.
pci.txt
	- info on the PCI subsystem for device driver authors.
pcieaer-howto.txt
	- the PCI Express Advanced Error Reporting Driver Guide HOWTO.
pcmcia/
	- info on the Linux PCMCIA driver.
pi-futex.txt
	- documentation on lightweight PI-futexes.
pm.txt
	- info on Linux power management support.
pnp.txt
@@ -214,18 +306,32 @@ powerpc/
	- directory with info on using Linux with the PowerPC.
preempt-locking.txt
	- info on locking under a preemptive kernel.
prio_tree.txt
	- info on radix-priority-search-tree use for indexing vmas.
ramdisk.txt
	- short guide on how to set up and use the RAM disk.
rbtree.txt
	- info on what red-black trees are and what they are for.
riscom8.txt
	- notes on using the RISCom/8 multi-port serial driver.
robust-futex-ABI.txt
	- documentation of the robust futex ABI.
robust-futexes.txt
	- a description of what robust futexes are.
rocket.txt
	- info on the Comtrol RocketPort multiport serial driver.
rpc-cache.txt
	- introduction to the caching mechanisms in the sunrpc layer.
rt-mutex-design.txt
	- description of the RealTime mutex implementation design.
rt-mutex.txt
	- desc. of RT-mutex subsystem with PI (Priority Inheritance) support.
rtc.txt
	- notes on how to use the Real Time Clock (aka CMOS clock) driver.
s390/
	- directory with info on using Linux on the IBM S390.
sched-arch.txt
	- CPU Scheduler implementation hints for architecture specific code.
sched-coding.txt
	- reference for various scheduler-related methods in the O(1) scheduler.
sched-design.txt
@@ -240,22 +346,32 @@ serial/
	- directory with info on the low level serial API.
serial-console.txt
	- how to set up Linux with a serial line console as the default.
sgi-ioc4.txt
	- description of the SGI IOC4 PCI (multi function) device.
sgi-visws.txt
	- short blurb on the SGI Visual Workstations.
sh/
	- directory with info on porting Linux to a new architecture.
sharedsubtree.txt
	- a description of shared subtrees for namespaces.
smart-config.txt
	- description of the Smart Config makefile feature.
smp.txt
	- a few notes on symmetric multi-processing.
sony-laptop.txt
	- Sony Notebook Control Driver (SNC) Readme.
sonypi.txt
	- info on Linux Sony Programmable I/O Device support.
sound/
	- directory with info on sound card support.
sparc/
	- directory with info on using Linux on Sparc architecture.
sparse.txt
	- info on how to obtain and use the sparse tool for typechecking.
specialix.txt
	- info on hardware/driver for specialix IO8+ multiport serial card.
spi/
	- overview of Linux kernel Serial Peripheral Interface (SPI) support.
spinlocks.txt
	- info on using spinlocks to provide exclusive access in kernel.
stable_api_nonsense.txt
@@ -274,24 +390,32 @@ sysrq.txt
	- info on the magic SysRq key.
telephony/
	- directory with info on telephony (e.g. voice over IP) support.
thinkpad-acpi.txt
	- information on the (IBM and Lenovo) ThinkPad ACPI Extras driver.
time_interpolators.txt
	- info on time interpolators.
tipar.txt
	- information about Parallel link cable for Texas Instruments handhelds.
tty.txt
	- guide to the locking policies of the tty layer.
unicode.txt
	- info on the Unicode character/font mapping used in Linux.
uml/
	- directory with information about User Mode Linux.
unicode.txt
	- info on the Unicode character/font mapping used in Linux.
unshare.txt
	- description of the Linux unshare system call.
usb/
	- directory with info regarding the Universal Serial Bus.
video-output.txt
	- sysfs class driver interface to enable/disable a video output device.
video4linux/
	- directory with info regarding video/TV/radio cards and linux.
vm/
	- directory with info on the Linux vm code.
voyager.txt
	- guide to running Linux on the Voyager architecture.
w1/
	- directory with documents regarding the 1-wire (w1) subsystem.
watchdog/
	- how to auto-reboot Linux if it has "fallen and can't get up". ;-)
x86_64/
+13 −0
Original line number Diff line number Diff line
@@ -39,3 +39,16 @@ Description:
		If you want to suspend a device immediately but leave it
		free to wake up in response to I/O requests, you should
		write "0" to power/autosuspend.

What:		/sys/bus/usb/devices/.../power/persist
Date:		May 2007
KernelVersion:	2.6.23
Contact:	Alan Stern <stern@rowland.harvard.edu>
Description:
		If CONFIG_USB_PERSIST is set, then each USB device directory
		will contain a file named power/persist.  The file holds a
		boolean value (0 or 1) indicating whether or not the
		"USB-Persist" facility is enabled for the device.  Since the
		facility is inherently dangerous, it is disabled by default
		for all devices except hubs.  For more information, see
		Documentation/usb/persist.txt.
+57 −2
Original line number Diff line number Diff line
@@ -218,6 +218,18 @@ no space after the prefix increment & decrement unary operators:

and no space around the '.' and "->" structure member operators.

Do not leave trailing whitespace at the ends of lines.  Some editors with
"smart" indentation will insert whitespace at the beginning of new lines as
appropriate, so you can start typing the next line of code right away.
However, some such editors do not remove the whitespace if you end up not
putting a line of code there, such as if you leave a blank line.  As a result,
you end up with lines containing trailing whitespace.

Git will warn you about patches that introduce trailing whitespace, and can
optionally strip the trailing whitespace for you; however, if applying a series
of patches, this may make later patches in the series fail by changing their
context lines.


		Chapter 4: Naming

@@ -621,12 +633,27 @@ covers RTL which is used frequently with assembly language in the kernel.

Kernel developers like to be seen as literate. Do mind the spelling
of kernel messages to make a good impression. Do not use crippled
words like "dont" and use "do not" or "don't" instead.
words like "dont"; use "do not" or "don't" instead.  Make the messages
concise, clear, and unambiguous.

Kernel messages do not have to be terminated with a period.

Printing numbers in parentheses (%d) adds no value and should be avoided.

There are a number of driver model diagnostic macros in <linux/device.h>
which you should use to make sure messages are matched to the right device
and driver, and are tagged with the right level:  dev_err(), dev_warn(),
dev_info(), and so forth.  For messages that aren't associated with a
particular device, <linux/kernel.h> defines pr_debug() and pr_info().

Coming up with good debugging messages can be quite a challenge; and once
you have them, they can be a huge help for remote troubleshooting.  Such
messages should be compiled out when the DEBUG symbol is not defined (that
is, by default they are not included).  When you use dev_dbg() or pr_debug(),
that's automatic.  Many subsystems have Kconfig options to turn on -DDEBUG.
A related convention uses VERBOSE_DEBUG to add dev_vdbg() messages to the
ones already enabled by DEBUG.


		Chapter 14: Allocating memory

@@ -726,6 +753,33 @@ need them. Feel free to peruse that header file to see what else is already
defined that you shouldn't reproduce in your code.


		Chapter 18:  Editor modelines and other cruft

Some editors can interpret configuration information embedded in source files,
indicated with special markers.  For example, emacs interprets lines marked
like this:

-*- mode: c -*-

Or like this:

/*
Local Variables:
compile-command: "gcc -DMAGIC_DEBUG_FLAG foo.c"
End:
*/

Vim interprets markers that look like this:

/* vim:set sw=8 noet */

Do not include any of these in source files.  People have their own personal
editor configurations, and your source files should not override them.  This
includes markers for indentation and mode configuration.  People may use their
own custom mode, or may have some other magic method for making indentation
work correctly.



		Appendix I: References

@@ -751,4 +805,5 @@ Kernel CodingStyle, by greg@kroah.com at OLS 2002:
http://www.kroah.com/linux/talks/ols_2002_kernel_codingstyle_talk/html/

--
Last updated on 2006-December-06.
Last updated on 2007-July-13.
Loading