Browse Source

Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6

Paul Mundt 16 years ago
parent
commit
f499cae1e5
100 changed files with 4150 additions and 898 deletions
  1. 9 9
      Documentation/DMA-mapping.txt
  2. 8 3
      Documentation/DocBook/Makefile
  3. 1 1
      Documentation/DocBook/kernel-api.tmpl
  4. 4 4
      Documentation/DocBook/writing-an-alsa-driver.tmpl
  5. 2 0
      Documentation/blockdev/00-INDEX
  6. 84 0
      Documentation/blockdev/mflash.txt
  7. 18 0
      Documentation/cgroups/cpuacct.txt
  8. 5 1
      Documentation/devices.txt
  9. 4 3
      Documentation/fb/uvesafb.txt
  10. 11 1
      Documentation/feature-removal-schedule.txt
  11. 2 0
      Documentation/filesystems/00-INDEX
  12. 159 0
      Documentation/filesystems/knfsd-stats.txt
  13. 161 0
      Documentation/filesystems/nfs41-server.txt
  14. 200 0
      Documentation/filesystems/nilfs2.txt
  15. 36 0
      Documentation/hwmon/g760a
  16. 45 0
      Documentation/infiniband/ipoib.txt
  17. 101 0
      Documentation/input/rotary-encoder.txt
  18. 32 20
      Documentation/isdn/README.gigaset
  19. 75 8
      Documentation/kbuild/makefiles.txt
  20. 226 255
      Documentation/kernel-parameters.txt
  21. 32 6
      Documentation/kprobes.txt
  22. 37 2
      Documentation/powerpc/dts-bindings/fsl/upm-nand.txt
  23. 37 9
      Documentation/powerpc/dts-bindings/gpio/led.txt
  24. 4 11
      Documentation/scsi/aacraid.txt
  25. 71 0
      Documentation/sound/alsa/soc/jack.txt
  26. 8 0
      Documentation/sparse.txt
  27. 28 0
      Documentation/sysctl/vm.txt
  28. 0 0
      Documentation/trace/ftrace.txt
  29. 0 0
      Documentation/trace/kmemtrace.txt
  30. 0 0
      Documentation/trace/mmiotrace.txt
  31. 0 0
      Documentation/trace/tracepoints.txt
  32. 125 0
      Documentation/video4linux/pxa_camera.txt
  33. 4 17
      Documentation/video4linux/v4l2-framework.txt
  34. 1402 194
      MAINTAINERS
  35. 8 4
      Makefile
  36. 3 0
      arch/Kconfig
  37. 5 1
      arch/arm/configs/magician_defconfig
  38. 1 0
      arch/arm/include/asm/sizes.h
  39. 1 1
      arch/arm/mach-at91/include/mach/board.h
  40. 2 2
      arch/arm/mach-davinci/board-evm.c
  41. 80 0
      arch/arm/mach-davinci/include/mach/nand.h
  42. 2 2
      arch/arm/mach-davinci/usb.c
  43. 4 4
      arch/arm/mach-iop13xx/setup.c
  44. 5 5
      arch/arm/mach-iop13xx/tpmi.c
  45. 5 5
      arch/arm/mach-kirkwood/common.c
  46. 3 0
      arch/arm/mach-mx1/Makefile
  47. 1 1
      arch/arm/mach-mx1/devices.c
  48. 18 0
      arch/arm/mach-mx1/ksym_mx1.c
  49. 35 0
      arch/arm/mach-mx1/mx1_camera_fiq.S
  50. 1 1
      arch/arm/mach-mx3/clock.c
  51. 11 10
      arch/arm/mach-omap1/clock.c
  52. 3 3
      arch/arm/mach-orion5x/common.c
  53. 9 0
      arch/arm/mach-pxa/Kconfig
  54. 1 0
      arch/arm/mach-pxa/Makefile
  55. 1 1
      arch/arm/mach-pxa/cm-x2xx.c
  56. 6 5
      arch/arm/mach-pxa/colibri-pxa300.c
  57. 5 5
      arch/arm/mach-pxa/colibri-pxa320.c
  58. 35 0
      arch/arm/mach-pxa/colibri-pxa3xx.c
  59. 5 0
      arch/arm/mach-pxa/csb701.c
  60. 2 0
      arch/arm/mach-pxa/e740.c
  61. 2 0
      arch/arm/mach-pxa/e750.c
  62. 2 0
      arch/arm/mach-pxa/e800.c
  63. 78 8
      arch/arm/mach-pxa/em-x270.c
  64. 7 0
      arch/arm/mach-pxa/include/mach/colibri.h
  65. 2 2
      arch/arm/mach-pxa/include/mach/magician.h
  66. 1 0
      arch/arm/mach-pxa/include/mach/palmld.h
  67. 1 0
      arch/arm/mach-pxa/include/mach/palmt5.h
  68. 68 0
      arch/arm/mach-pxa/include/mach/palmte2.h
  69. 2 0
      arch/arm/mach-pxa/include/mach/palmtx.h
  70. 1 0
      arch/arm/mach-pxa/include/mach/pxa2xx_spi.h
  71. 3 0
      arch/arm/mach-pxa/include/mach/pxa3xx_nand.h
  72. 41 43
      arch/arm/mach-pxa/magician.c
  73. 2 4
      arch/arm/mach-pxa/mioa701.c
  74. 32 4
      arch/arm/mach-pxa/palmld.c
  75. 31 4
      arch/arm/mach-pxa/palmt5.c
  76. 466 0
      arch/arm/mach-pxa/palmte2.c
  77. 31 4
      arch/arm/mach-pxa/palmtx.c
  78. 2 0
      arch/arm/mach-pxa/tosa.c
  79. 1 2
      arch/arm/mach-s3c2410/mach-bast.c
  80. 1 2
      arch/arm/mach-s3c2410/mach-n30.c
  81. 1 2
      arch/arm/mach-s3c2412/mach-jive.c
  82. 11 0
      arch/arm/mm/mmu.c
  83. 4 4
      arch/arm/plat-iop/adma.c
  84. 25 0
      arch/arm/plat-mxc/include/mach/i2c.h
  85. 8 0
      arch/arm/plat-mxc/include/mach/memory.h
  86. 35 0
      arch/arm/plat-mxc/include/mach/mx1_camera.h
  87. 3 4
      arch/arm/plat-s3c/dev-i2c0.c
  88. 3 4
      arch/arm/plat-s3c/dev-i2c1.c
  89. 19 14
      arch/arm/plat-s3c/include/plat/iic.h
  90. 2 2
      arch/avr32/boards/hammerhead/flash.c
  91. 4 4
      arch/avr32/mach-at32ap/at32ap700x.c
  92. 5 0
      arch/blackfin/include/asm/bfin5xx_spi.h
  93. 1 1
      arch/blackfin/kernel/process.c
  94. 7 3
      arch/blackfin/mach-bf518/include/mach/bfin_serial_5xx.h
  95. 7 29
      arch/blackfin/mach-bf527/include/mach/bfin_serial_5xx.h
  96. 6 23
      arch/blackfin/mach-bf533/include/mach/bfin_serial_5xx.h
  97. 7 30
      arch/blackfin/mach-bf537/include/mach/bfin_serial_5xx.h
  98. 7 3
      arch/blackfin/mach-bf538/include/mach/bfin_serial_5xx.h
  99. 32 85
      arch/blackfin/mach-bf548/include/mach/bfin_serial_5xx.h
  100. 6 23
      arch/blackfin/mach-bf561/include/mach/bfin_serial_5xx.h

+ 9 - 9
Documentation/DMA-mapping.txt

@@ -136,7 +136,7 @@ exactly why.
 The standard 32-bit addressing PCI device would do something like
 The standard 32-bit addressing PCI device would do something like
 this:
 this:
 
 
-	if (pci_set_dma_mask(pdev, DMA_32BIT_MASK)) {
+	if (pci_set_dma_mask(pdev, DMA_BIT_MASK(32))) {
 		printk(KERN_WARNING
 		printk(KERN_WARNING
 		       "mydev: No suitable DMA available.\n");
 		       "mydev: No suitable DMA available.\n");
 		goto ignore_this_device;
 		goto ignore_this_device;
@@ -155,9 +155,9 @@ all 64-bits when accessing streaming DMA:
 
 
 	int using_dac;
 	int using_dac;
 
 
-	if (!pci_set_dma_mask(pdev, DMA_64BIT_MASK)) {
+	if (!pci_set_dma_mask(pdev, DMA_BIT_MASK(64))) {
 		using_dac = 1;
 		using_dac = 1;
-	} else if (!pci_set_dma_mask(pdev, DMA_32BIT_MASK)) {
+	} else if (!pci_set_dma_mask(pdev, DMA_BIT_MASK(32))) {
 		using_dac = 0;
 		using_dac = 0;
 	} else {
 	} else {
 		printk(KERN_WARNING
 		printk(KERN_WARNING
@@ -170,14 +170,14 @@ the case would look like this:
 
 
 	int using_dac, consistent_using_dac;
 	int using_dac, consistent_using_dac;
 
 
-	if (!pci_set_dma_mask(pdev, DMA_64BIT_MASK)) {
+	if (!pci_set_dma_mask(pdev, DMA_BIT_MASK(64))) {
 		using_dac = 1;
 		using_dac = 1;
 	   	consistent_using_dac = 1;
 	   	consistent_using_dac = 1;
-		pci_set_consistent_dma_mask(pdev, DMA_64BIT_MASK);
-	} else if (!pci_set_dma_mask(pdev, DMA_32BIT_MASK)) {
+		pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(64));
+	} else if (!pci_set_dma_mask(pdev, DMA_BIT_MASK(32))) {
 		using_dac = 0;
 		using_dac = 0;
 		consistent_using_dac = 0;
 		consistent_using_dac = 0;
-		pci_set_consistent_dma_mask(pdev, DMA_32BIT_MASK);
+		pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32));
 	} else {
 	} else {
 		printk(KERN_WARNING
 		printk(KERN_WARNING
 		       "mydev: No suitable DMA available.\n");
 		       "mydev: No suitable DMA available.\n");
@@ -192,7 +192,7 @@ check the return value from pci_set_consistent_dma_mask().
 Finally, if your device can only drive the low 24-bits of
 Finally, if your device can only drive the low 24-bits of
 address during PCI bus mastering you might do something like:
 address during PCI bus mastering you might do something like:
 
 
-	if (pci_set_dma_mask(pdev, DMA_24BIT_MASK)) {
+	if (pci_set_dma_mask(pdev, DMA_BIT_MASK(24))) {
 		printk(KERN_WARNING
 		printk(KERN_WARNING
 		       "mydev: 24-bit DMA addressing not available.\n");
 		       "mydev: 24-bit DMA addressing not available.\n");
 		goto ignore_this_device;
 		goto ignore_this_device;
@@ -213,7 +213,7 @@ most specific mask.
 
 
 Here is pseudo-code showing how this might be done:
 Here is pseudo-code showing how this might be done:
 
 
-	#define PLAYBACK_ADDRESS_BITS	DMA_32BIT_MASK
+	#define PLAYBACK_ADDRESS_BITS	DMA_BIT_MASK(32)
 	#define RECORD_ADDRESS_BITS	0x00ffffff
 	#define RECORD_ADDRESS_BITS	0x00ffffff
 
 
 	struct my_sound_card *card;
 	struct my_sound_card *card;

+ 8 - 3
Documentation/DocBook/Makefile

@@ -31,7 +31,7 @@ PS_METHOD	= $(prefer-db2x)
 
 
 ###
 ###
 # The targets that may be used.
 # The targets that may be used.
-PHONY += xmldocs sgmldocs psdocs pdfdocs htmldocs mandocs installmandocs
+PHONY += xmldocs sgmldocs psdocs pdfdocs htmldocs mandocs installmandocs cleandocs
 
 
 BOOKS := $(addprefix $(obj)/,$(DOCBOOKS))
 BOOKS := $(addprefix $(obj)/,$(DOCBOOKS))
 xmldocs: $(BOOKS)
 xmldocs: $(BOOKS)
@@ -213,11 +213,12 @@ silent_gen_xml = :
 dochelp:
 dochelp:
 	@echo  ' Linux kernel internal documentation in different formats:'
 	@echo  ' Linux kernel internal documentation in different formats:'
 	@echo  '  htmldocs        - HTML'
 	@echo  '  htmldocs        - HTML'
-	@echo  '  installmandocs  - install man pages generated by mandocs'
-	@echo  '  mandocs         - man pages'
 	@echo  '  pdfdocs         - PDF'
 	@echo  '  pdfdocs         - PDF'
 	@echo  '  psdocs          - Postscript'
 	@echo  '  psdocs          - Postscript'
 	@echo  '  xmldocs         - XML DocBook'
 	@echo  '  xmldocs         - XML DocBook'
+	@echo  '  mandocs         - man pages'
+	@echo  '  installmandocs  - install man pages generated by mandocs'
+	@echo  '  cleandocs       - clean all generated DocBook files'
 
 
 ###
 ###
 # Temporary files left by various tools
 # Temporary files left by various tools
@@ -235,6 +236,10 @@ clean-files := $(DOCBOOKS) \
 
 
 clean-dirs := $(patsubst %.xml,%,$(DOCBOOKS)) man
 clean-dirs := $(patsubst %.xml,%,$(DOCBOOKS)) man
 
 
+cleandocs:
+	$(Q)rm -f $(call objectify, $(clean-files))
+	$(Q)rm -rf $(call objectify, $(clean-dirs))
+
 # Declare the contents of the .PHONY variable as phony.  We keep that
 # Declare the contents of the .PHONY variable as phony.  We keep that
 # information in a variable se we can use it in if_changed and friends.
 # information in a variable se we can use it in if_changed and friends.
 
 

+ 1 - 1
Documentation/DocBook/kernel-api.tmpl

@@ -259,7 +259,7 @@ X!Earch/x86/kernel/mca_32.c
 !Eblock/blk-tag.c
 !Eblock/blk-tag.c
 !Iblock/blk-tag.c
 !Iblock/blk-tag.c
 !Eblock/blk-integrity.c
 !Eblock/blk-integrity.c
-!Iblock/blktrace.c
+!Ikernel/trace/blktrace.c
 !Iblock/genhd.c
 !Iblock/genhd.c
 !Eblock/genhd.c
 !Eblock/genhd.c
   </chapter>
   </chapter>

+ 4 - 4
Documentation/DocBook/writing-an-alsa-driver.tmpl

@@ -1137,8 +1137,8 @@
           if (err < 0)
           if (err < 0)
                   return err;
                   return err;
           /* check PCI availability (28bit DMA) */
           /* check PCI availability (28bit DMA) */
-          if (pci_set_dma_mask(pci, DMA_28BIT_MASK) < 0 ||
-              pci_set_consistent_dma_mask(pci, DMA_28BIT_MASK) < 0) {
+          if (pci_set_dma_mask(pci, DMA_BIT_MASK(28)) < 0 ||
+              pci_set_consistent_dma_mask(pci, DMA_BIT_MASK(28)) < 0) {
                   printk(KERN_ERR "error to set 28bit mask DMA\n");
                   printk(KERN_ERR "error to set 28bit mask DMA\n");
                   pci_disable_device(pci);
                   pci_disable_device(pci);
                   return -ENXIO;
                   return -ENXIO;
@@ -1252,8 +1252,8 @@
   err = pci_enable_device(pci);
   err = pci_enable_device(pci);
   if (err < 0)
   if (err < 0)
           return err;
           return err;
-  if (pci_set_dma_mask(pci, DMA_28BIT_MASK) < 0 ||
-      pci_set_consistent_dma_mask(pci, DMA_28BIT_MASK) < 0) {
+  if (pci_set_dma_mask(pci, DMA_BIT_MASK(28)) < 0 ||
+      pci_set_consistent_dma_mask(pci, DMA_BIT_MASK(28)) < 0) {
           printk(KERN_ERR "error to set 28bit mask DMA\n");
           printk(KERN_ERR "error to set 28bit mask DMA\n");
           pci_disable_device(pci);
           pci_disable_device(pci);
           return -ENXIO;
           return -ENXIO;

+ 2 - 0
Documentation/blockdev/00-INDEX

@@ -8,6 +8,8 @@ cpqarray.txt
 	- info on using Compaq's SMART2 Intelligent Disk Array Controllers.
 	- info on using Compaq's SMART2 Intelligent Disk Array Controllers.
 floppy.txt
 floppy.txt
 	- notes and driver options for the floppy disk driver.
 	- notes and driver options for the floppy disk driver.
+mflash.txt
+	- info on mGine m(g)flash driver for linux.
 nbd.txt
 nbd.txt
 	- info on a TCP implementation of a network block device.
 	- info on a TCP implementation of a network block device.
 paride.txt
 paride.txt

+ 84 - 0
Documentation/blockdev/mflash.txt

@@ -0,0 +1,84 @@
+This document describes m[g]flash support in linux.
+
+Contents
+  1. Overview
+  2. Reserved area configuration
+  3. Example of mflash platform driver registration
+
+1. Overview
+
+Mflash and gflash are embedded flash drive. The only difference is mflash is
+MCP(Multi Chip Package) device. These two device operate exactly same way.
+So the rest mflash repersents mflash and gflash altogether.
+
+Internally, mflash has nand flash and other hardware logics and supports
+2 different operation (ATA, IO) modes. ATA mode doesn't need any new
+driver and currently works well under standard IDE subsystem. Actually it's
+one chip SSD. IO mode is ATA-like custom mode for the host that doesn't have
+IDE interface.
+
+Followings are brief descriptions about IO mode.
+A. IO mode based on ATA protocol and uses some custom command. (read confirm,
+write confirm)
+B. IO mode uses SRAM bus interface.
+C. IO mode supports 4kB boot area, so host can boot from mflash.
+
+2. Reserved area configuration
+If host boot from mflash, usually needs raw area for boot loader image. All of
+the mflash's block device operation will be taken this value as start offset.
+Note that boot loader's size of reserved area and kernel configuration value
+must be same.
+
+3. Example of mflash platform driver registration
+Working mflash is very straight forward. Adding platform device stuff to board
+configuration file is all. Here is some pseudo example.
+
+static struct mg_drv_data mflash_drv_data = {
+	/* If you want to polling driver set to 1 */
+	.use_polling = 0,
+	/* device attribution */
+	.dev_attr = MG_BOOT_DEV
+};
+
+static struct resource mg_mflash_rsc[] = {
+	/* Base address of mflash */
+	[0] = {
+		.start = 0x08000000,
+		.end = 0x08000000 + SZ_64K - 1,
+		.flags = IORESOURCE_MEM
+	},
+	/* mflash interrupt pin */
+	[1] = {
+		.start = IRQ_GPIO(84),
+		.end = IRQ_GPIO(84),
+		.flags = IORESOURCE_IRQ
+	},
+	/* mflash reset pin */
+	[2] = {
+		.start = 43,
+		.end = 43,
+		.name = MG_RST_PIN,
+		.flags = IORESOURCE_IO
+	},
+	/* mflash reset-out pin
+	 * If you use mflash as storage device (i.e. other than MG_BOOT_DEV),
+	 * should assign this */
+	[3] = {
+		.start = 51,
+		.end = 51,
+		.name = MG_RSTOUT_PIN,
+		.flags = IORESOURCE_IO
+	}
+};
+
+static struct platform_device mflash_dev = {
+	.name = MG_DEV_NAME,
+	.id = -1,
+	.dev = {
+		.platform_data = &mflash_drv_data,
+	},
+	.num_resources = ARRAY_SIZE(mg_mflash_rsc),
+	.resource = mg_mflash_rsc
+};
+
+platform_device_register(&mflash_dev);

+ 18 - 0
Documentation/cgroups/cpuacct.txt

@@ -30,3 +30,21 @@ The above steps create a new group g1 and move the current shell
 process (bash) into it. CPU time consumed by this bash and its children
 process (bash) into it. CPU time consumed by this bash and its children
 can be obtained from g1/cpuacct.usage and the same is accumulated in
 can be obtained from g1/cpuacct.usage and the same is accumulated in
 /cgroups/cpuacct.usage also.
 /cgroups/cpuacct.usage also.
+
+cpuacct.stat file lists a few statistics which further divide the
+CPU time obtained by the cgroup into user and system times. Currently
+the following statistics are supported:
+
+user: Time spent by tasks of the cgroup in user mode.
+system: Time spent by tasks of the cgroup in kernel mode.
+
+user and system are in USER_HZ unit.
+
+cpuacct controller uses percpu_counter interface to collect user and
+system times. This has two side effects:
+
+- It is theoretically possible to see wrong values for user and system times.
+  This is because percpu_counter_read() on 32bit systems isn't safe
+  against concurrent writes.
+- It is possible to see slightly outdated values for user and system times
+  due to the batch processing nature of percpu_counter.

+ 5 - 1
Documentation/devices.txt

@@ -3,7 +3,7 @@
 
 
 	     Maintained by Alan Cox <device@lanana.org>
 	     Maintained by Alan Cox <device@lanana.org>
 
 
-		      Last revised: 29 November 2006
+		      Last revised: 6th April 2009
 
 
 This list is the Linux Device List, the official registry of allocated
 This list is the Linux Device List, the official registry of allocated
 device numbers and /dev directory nodes for the Linux operating
 device numbers and /dev directory nodes for the Linux operating
@@ -2797,6 +2797,10 @@ Your cooperation is appreciated.
 		 206 = /dev/ttySC1		SC26xx serial port 1
 		 206 = /dev/ttySC1		SC26xx serial port 1
 		 207 = /dev/ttySC2		SC26xx serial port 2
 		 207 = /dev/ttySC2		SC26xx serial port 2
 		 208 = /dev/ttySC3		SC26xx serial port 3
 		 208 = /dev/ttySC3		SC26xx serial port 3
+		 209 = /dev/ttyMAX0		MAX3100 serial port 0
+		 210 = /dev/ttyMAX1		MAX3100 serial port 1
+		 211 = /dev/ttyMAX2		MAX3100 serial port 2
+		 212 = /dev/ttyMAX3		MAX3100 serial port 3
 
 
 205 char	Low-density serial ports (alternate device)
 205 char	Low-density serial ports (alternate device)
 		  0 = /dev/culu0		Callout device for ttyLU0
 		  0 = /dev/culu0		Callout device for ttyLU0

+ 4 - 3
Documentation/fb/uvesafb.txt

@@ -59,7 +59,8 @@ Accepted options:
 ypan    Enable display panning using the VESA protected mode
 ypan    Enable display panning using the VESA protected mode
         interface.  The visible screen is just a window of the
         interface.  The visible screen is just a window of the
         video memory, console scrolling is done by changing the
         video memory, console scrolling is done by changing the
-        start of the window.  Available on x86 only.
+        start of the window.  This option is available on x86
+        only and is the default option on that architecture.
 
 
 ywrap   Same as ypan, but assumes your gfx board can wrap-around
 ywrap   Same as ypan, but assumes your gfx board can wrap-around
         the video memory (i.e. starts reading from top if it
         the video memory (i.e. starts reading from top if it
@@ -67,7 +68,7 @@ ywrap   Same as ypan, but assumes your gfx board can wrap-around
         Available on x86 only.
         Available on x86 only.
 
 
 redraw  Scroll by redrawing the affected part of the screen, this
 redraw  Scroll by redrawing the affected part of the screen, this
-        is the safe (and slow) default.
+        is the default on non-x86.
 
 
 (If you're using uvesafb as a module, the above three options are
 (If you're using uvesafb as a module, the above three options are
  used a parameter of the scroll option, e.g. scroll=ypan.)
  used a parameter of the scroll option, e.g. scroll=ypan.)
@@ -182,7 +183,7 @@ from the Video BIOS if you set pixclock to 0 in fb_var_screeninfo.
 
 
 --
 --
  Michal Januszewski <spock@gentoo.org>
  Michal Januszewski <spock@gentoo.org>
- Last updated: 2007-06-16
+ Last updated: 2009-03-30
 
 
  Documentation of the uvesafb options is loosely based on vesafb.txt.
  Documentation of the uvesafb options is loosely based on vesafb.txt.
 
 

+ 11 - 1
Documentation/feature-removal-schedule.txt

@@ -354,7 +354,8 @@ Who:  Krzysztof Piotr Oledzki <ole@ans.pl>
 
 
 ---------------------------
 ---------------------------
 
 
-What:	i2c_attach_client(), i2c_detach_client(), i2c_driver->detach_client()
+What:	i2c_attach_client(), i2c_detach_client(), i2c_driver->detach_client(),
+	i2c_adapter->client_register(), i2c_adapter->client_unregister
 When:	2.6.30
 When:	2.6.30
 Check:	i2c_attach_client i2c_detach_client
 Check:	i2c_attach_client i2c_detach_client
 Why:	Deprecated by the new (standard) device driver binding model. Use
 Why:	Deprecated by the new (standard) device driver binding model. Use
@@ -427,3 +428,12 @@ Why:	In 2.6.27, the semantics of /sys/bus/pci/slots was redefined to
 	After a reasonable transition period, we will remove the legacy
 	After a reasonable transition period, we will remove the legacy
 	fakephp interface.
 	fakephp interface.
 Who:	Alex Chiang <achiang@hp.com>
 Who:	Alex Chiang <achiang@hp.com>
+
+---------------------------
+
+What:	i2c-voodoo3 driver
+When:	October 2009
+Why:	Superseded by tdfxfb. I2C/DDC support used to live in a separate
+	driver but this caused driver conflicts.
+Who:	Jean Delvare <khali@linux-fr.org>
+	Krzysztof Helt <krzysztof.h1@wp.pl>

+ 2 - 0
Documentation/filesystems/00-INDEX

@@ -68,6 +68,8 @@ ncpfs.txt
 	- info on Novell Netware(tm) filesystem using NCP protocol.
 	- info on Novell Netware(tm) filesystem using NCP protocol.
 nfsroot.txt
 nfsroot.txt
 	- short guide on setting up a diskless box with NFS root filesystem.
 	- short guide on setting up a diskless box with NFS root filesystem.
+nilfs2.txt
+	- info and mount options for the NILFS2 filesystem.
 ntfs.txt
 ntfs.txt
 	- info and mount options for the NTFS filesystem (Windows NT).
 	- info and mount options for the NTFS filesystem (Windows NT).
 ocfs2.txt
 ocfs2.txt

+ 159 - 0
Documentation/filesystems/knfsd-stats.txt

@@ -0,0 +1,159 @@
+
+Kernel NFS Server Statistics
+============================
+
+This document describes the format and semantics of the statistics
+which the kernel NFS server makes available to userspace.  These
+statistics are available in several text form pseudo files, each of
+which is described separately below.
+
+In most cases you don't need to know these formats, as the nfsstat(8)
+program from the nfs-utils distribution provides a helpful command-line
+interface for extracting and printing them.
+
+All the files described here are formatted as a sequence of text lines,
+separated by newline '\n' characters.  Lines beginning with a hash
+'#' character are comments intended for humans and should be ignored
+by parsing routines.  All other lines contain a sequence of fields
+separated by whitespace.
+
+/proc/fs/nfsd/pool_stats
+------------------------
+
+This file is available in kernels from 2.6.30 onwards, if the
+/proc/fs/nfsd filesystem is mounted (it almost always should be).
+
+The first line is a comment which describes the fields present in
+all the other lines.  The other lines present the following data as
+a sequence of unsigned decimal numeric fields.  One line is shown
+for each NFS thread pool.
+
+All counters are 64 bits wide and wrap naturally.  There is no way
+to zero these counters, instead applications should do their own
+rate conversion.
+
+pool
+	The id number of the NFS thread pool to which this line applies.
+	This number does not change.
+
+	Thread pool ids are a contiguous set of small integers starting
+	at zero.  The maximum value depends on the thread pool mode, but
+	currently cannot be larger than the number of CPUs in the system.
+	Note that in the default case there will be a single thread pool
+	which contains all the nfsd threads and all the CPUs in the system,
+	and thus this file will have a single line with a pool id of "0".
+
+packets-arrived
+	Counts how many NFS packets have arrived.  More precisely, this
+	is the number of times that the network stack has notified the
+	sunrpc server layer that new data may be available on a transport
+	(e.g. an NFS or UDP socket or an NFS/RDMA endpoint).
+
+	Depending on the NFS workload patterns and various network stack
+	effects (such as Large Receive Offload) which can combine packets
+	on the wire, this may be either more or less than the number
+	of NFS calls received (which statistic is available elsewhere).
+	However this is a more accurate and less workload-dependent measure
+	of how much CPU load is being placed on the sunrpc server layer
+	due to NFS network traffic.
+
+sockets-enqueued
+	Counts how many times an NFS transport is enqueued to wait for
+	an nfsd thread to service it, i.e. no nfsd thread was considered
+	available.
+
+	The circumstance this statistic tracks indicates that there was NFS
+	network-facing work to be done but it couldn't be done immediately,
+	thus introducing a small delay in servicing NFS calls.  The ideal
+	rate of change for this counter is zero; significantly non-zero
+	values may indicate a performance limitation.
+
+	This can happen either because there are too few nfsd threads in the
+	thread pool for the NFS workload (the workload is thread-limited),
+	or because the NFS workload needs more CPU time than is available in
+	the thread pool (the workload is CPU-limited).  In the former case,
+	configuring more nfsd threads will probably improve the performance
+	of the NFS workload.  In the latter case, the sunrpc server layer is
+	already choosing not to wake idle nfsd threads because there are too
+	many nfsd threads which want to run but cannot, so configuring more
+	nfsd threads will make no difference whatsoever.  The overloads-avoided
+	statistic (see below) can be used to distinguish these cases.
+
+threads-woken
+	Counts how many times an idle nfsd thread is woken to try to
+	receive some data from an NFS transport.
+
+	This statistic tracks the circumstance where incoming
+	network-facing NFS work is being handled quickly, which is a good
+	thing.  The ideal rate of change for this counter will be close
+	to but less than the rate of change of the packets-arrived counter.
+
+overloads-avoided
+	Counts how many times the sunrpc server layer chose not to wake an
+	nfsd thread, despite the presence of idle nfsd threads, because
+	too many nfsd threads had been recently woken but could not get
+	enough CPU time to actually run.
+
+	This statistic counts a circumstance where the sunrpc layer
+	heuristically avoids overloading the CPU scheduler with too many
+	runnable nfsd threads.  The ideal rate of change for this counter
+	is zero.  Significant non-zero values indicate that the workload
+	is CPU limited.  Usually this is associated with heavy CPU usage
+	on all the CPUs in the nfsd thread pool.
+
+	If a sustained large overloads-avoided rate is detected on a pool,
+	the top(1) utility should be used to check for the following
+	pattern of CPU usage on all the CPUs associated with the given
+	nfsd thread pool.
+
+	 - %us ~= 0 (as you're *NOT* running applications on your NFS server)
+
+	 - %wa ~= 0
+
+	 - %id ~= 0
+
+	 - %sy + %hi + %si ~= 100
+
+	If this pattern is seen, configuring more nfsd threads will *not*
+	improve the performance of the workload.  If this patten is not
+	seen, then something more subtle is wrong.
+
+threads-timedout
+	Counts how many times an nfsd thread triggered an idle timeout,
+	i.e. was not woken to handle any incoming network packets for
+	some time.
+
+	This statistic counts a circumstance where there are more nfsd
+	threads configured than can be used by the NFS workload.  This is
+	a clue that the number of nfsd threads can be reduced without
+	affecting performance.  Unfortunately, it's only a clue and not
+	a strong indication, for a couple of reasons:
+
+	 - Currently the rate at which the counter is incremented is quite
+	   slow; the idle timeout is 60 minutes.  Unless the NFS workload
+	   remains constant for hours at a time, this counter is unlikely
+	   to be providing information that is still useful.
+
+	 - It is usually a wise policy to provide some slack,
+	   i.e. configure a few more nfsds than are currently needed,
+	   to allow for future spikes in load.
+
+
+Note that incoming packets on NFS transports will be dealt with in
+one of three ways.  An nfsd thread can be woken (threads-woken counts
+this case), or the transport can be enqueued for later attention
+(sockets-enqueued counts this case), or the packet can be temporarily
+deferred because the transport is currently being used by an nfsd
+thread.  This last case is not very interesting and is not explicitly
+counted, but can be inferred from the other counters thus:
+
+packets-deferred = packets-arrived - ( sockets-enqueued + threads-woken )
+
+
+More
+----
+Descriptions of the other statistics file should go here.
+
+
+Greg Banks <gnb@sgi.com>
+26 Mar 2009

+ 161 - 0
Documentation/filesystems/nfs41-server.txt

@@ -0,0 +1,161 @@
+NFSv4.1 Server Implementation
+
+Server support for minorversion 1 can be controlled using the
+/proc/fs/nfsd/versions control file.  The string output returned
+by reading this file will contain either "+4.1" or "-4.1"
+correspondingly.
+
+Currently, server support for minorversion 1 is disabled by default.
+It can be enabled at run time by writing the string "+4.1" to
+the /proc/fs/nfsd/versions control file.  Note that to write this
+control file, the nfsd service must be taken down.  Use your user-mode
+nfs-utils to set this up; see rpc.nfsd(8)
+
+The NFSv4 minorversion 1 (NFSv4.1) implementation in nfsd is based
+on the latest NFSv4.1 Internet Draft:
+http://tools.ietf.org/html/draft-ietf-nfsv4-minorversion1-29
+
+From the many new features in NFSv4.1 the current implementation
+focuses on the mandatory-to-implement NFSv4.1 Sessions, providing
+"exactly once" semantics and better control and throttling of the
+resources allocated for each client.
+
+Other NFSv4.1 features, Parallel NFS operations in particular,
+are still under development out of tree.
+See http://wiki.linux-nfs.org/wiki/index.php/PNFS_prototype_design
+for more information.
+
+The table below, taken from the NFSv4.1 document, lists
+the operations that are mandatory to implement (REQ), optional
+(OPT), and NFSv4.0 operations that are required not to implement (MNI)
+in minor version 1.  The first column indicates the operations that
+are not supported yet by the linux server implementation.
+
+The OPTIONAL features identified and their abbreviations are as follows:
+	pNFS	Parallel NFS
+	FDELG	File Delegations
+	DDELG	Directory Delegations
+
+The following abbreviations indicate the linux server implementation status.
+	I	Implemented NFSv4.1 operations.
+	NS	Not Supported.
+	NS*	unimplemented optional feature.
+	P	pNFS features implemented out of tree.
+	PNS	pNFS features that are not supported yet (out of tree).
+
+Operations
+
+   +----------------------+------------+--------------+----------------+
+   | Operation            | REQ, REC,  | Feature      | Definition     |
+   |                      | OPT, or    | (REQ, REC,   |                |
+   |                      | MNI        | or OPT)      |                |
+   +----------------------+------------+--------------+----------------+
+   | ACCESS               | REQ        |              | Section 18.1   |
+NS | BACKCHANNEL_CTL      | REQ        |              | Section 18.33  |
+NS | BIND_CONN_TO_SESSION | REQ        |              | Section 18.34  |
+   | CLOSE                | REQ        |              | Section 18.2   |
+   | COMMIT               | REQ        |              | Section 18.3   |
+   | CREATE               | REQ        |              | Section 18.4   |
+I  | CREATE_SESSION       | REQ        |              | Section 18.36  |
+NS*| DELEGPURGE           | OPT        | FDELG (REQ)  | Section 18.5   |
+   | DELEGRETURN          | OPT        | FDELG,       | Section 18.6   |
+   |                      |            | DDELG, pNFS  |                |
+   |                      |            | (REQ)        |                |
+NS | DESTROY_CLIENTID     | REQ        |              | Section 18.50  |
+I  | DESTROY_SESSION      | REQ        |              | Section 18.37  |
+I  | EXCHANGE_ID          | REQ        |              | Section 18.35  |
+NS | FREE_STATEID         | REQ        |              | Section 18.38  |
+   | GETATTR              | REQ        |              | Section 18.7   |
+P  | GETDEVICEINFO        | OPT        | pNFS (REQ)   | Section 18.40  |
+P  | GETDEVICELIST        | OPT        | pNFS (OPT)   | Section 18.41  |
+   | GETFH                | REQ        |              | Section 18.8   |
+NS*| GET_DIR_DELEGATION   | OPT        | DDELG (REQ)  | Section 18.39  |
+P  | LAYOUTCOMMIT         | OPT        | pNFS (REQ)   | Section 18.42  |
+P  | LAYOUTGET            | OPT        | pNFS (REQ)   | Section 18.43  |
+P  | LAYOUTRETURN         | OPT        | pNFS (REQ)   | Section 18.44  |
+   | LINK                 | OPT        |              | Section 18.9   |
+   | LOCK                 | REQ        |              | Section 18.10  |
+   | LOCKT                | REQ        |              | Section 18.11  |
+   | LOCKU                | REQ        |              | Section 18.12  |
+   | LOOKUP               | REQ        |              | Section 18.13  |
+   | LOOKUPP              | REQ        |              | Section 18.14  |
+   | NVERIFY              | REQ        |              | Section 18.15  |
+   | OPEN                 | REQ        |              | Section 18.16  |
+NS*| OPENATTR             | OPT        |              | Section 18.17  |
+   | OPEN_CONFIRM         | MNI        |              | N/A            |
+   | OPEN_DOWNGRADE       | REQ        |              | Section 18.18  |
+   | PUTFH                | REQ        |              | Section 18.19  |
+   | PUTPUBFH             | REQ        |              | Section 18.20  |
+   | PUTROOTFH            | REQ        |              | Section 18.21  |
+   | READ                 | REQ        |              | Section 18.22  |
+   | READDIR              | REQ        |              | Section 18.23  |
+   | READLINK             | OPT        |              | Section 18.24  |
+NS | RECLAIM_COMPLETE     | REQ        |              | Section 18.51  |
+   | RELEASE_LOCKOWNER    | MNI        |              | N/A            |
+   | REMOVE               | REQ        |              | Section 18.25  |
+   | RENAME               | REQ        |              | Section 18.26  |
+   | RENEW                | MNI        |              | N/A            |
+   | RESTOREFH            | REQ        |              | Section 18.27  |
+   | SAVEFH               | REQ        |              | Section 18.28  |
+   | SECINFO              | REQ        |              | Section 18.29  |
+NS | SECINFO_NO_NAME      | REC        | pNFS files   | Section 18.45, |
+   |                      |            | layout (REQ) | Section 13.12  |
+I  | SEQUENCE             | REQ        |              | Section 18.46  |
+   | SETATTR              | REQ        |              | Section 18.30  |
+   | SETCLIENTID          | MNI        |              | N/A            |
+   | SETCLIENTID_CONFIRM  | MNI        |              | N/A            |
+NS | SET_SSV              | REQ        |              | Section 18.47  |
+NS | TEST_STATEID         | REQ        |              | Section 18.48  |
+   | VERIFY               | REQ        |              | Section 18.31  |
+NS*| WANT_DELEGATION      | OPT        | FDELG (OPT)  | Section 18.49  |
+   | WRITE                | REQ        |              | Section 18.32  |
+
+Callback Operations
+
+   +-------------------------+-----------+-------------+---------------+
+   | Operation               | REQ, REC, | Feature     | Definition    |
+   |                         | OPT, or   | (REQ, REC,  |               |
+   |                         | MNI       | or OPT)     |               |
+   +-------------------------+-----------+-------------+---------------+
+   | CB_GETATTR              | OPT       | FDELG (REQ) | Section 20.1  |
+P  | CB_LAYOUTRECALL         | OPT       | pNFS (REQ)  | Section 20.3  |
+NS*| CB_NOTIFY               | OPT       | DDELG (REQ) | Section 20.4  |
+P  | CB_NOTIFY_DEVICEID      | OPT       | pNFS (OPT)  | Section 20.12 |
+NS*| CB_NOTIFY_LOCK          | OPT       |             | Section 20.11 |
+NS*| CB_PUSH_DELEG           | OPT       | FDELG (OPT) | Section 20.5  |
+   | CB_RECALL               | OPT       | FDELG,      | Section 20.2  |
+   |                         |           | DDELG, pNFS |               |
+   |                         |           | (REQ)       |               |
+NS*| CB_RECALL_ANY           | OPT       | FDELG,      | Section 20.6  |
+   |                         |           | DDELG, pNFS |               |
+   |                         |           | (REQ)       |               |
+NS | CB_RECALL_SLOT          | REQ       |             | Section 20.8  |
+NS*| CB_RECALLABLE_OBJ_AVAIL | OPT       | DDELG, pNFS | Section 20.7  |
+   |                         |           | (REQ)       |               |
+I  | CB_SEQUENCE             | OPT       | FDELG,      | Section 20.9  |
+   |                         |           | DDELG, pNFS |               |
+   |                         |           | (REQ)       |               |
+NS*| CB_WANTS_CANCELLED      | OPT       | FDELG,      | Section 20.10 |
+   |                         |           | DDELG, pNFS |               |
+   |                         |           | (REQ)       |               |
+   +-------------------------+-----------+-------------+---------------+
+
+Implementation notes:
+
+EXCHANGE_ID:
+* only SP4_NONE state protection supported
+* implementation ids are ignored
+
+CREATE_SESSION:
+* backchannel attributes are ignored
+* backchannel security parameters are ignored
+
+SEQUENCE:
+* no support for dynamic slot table renegotiation (optional)
+
+nfsv4.1 COMPOUND rules:
+The following cases aren't supported yet:
+* Enforcing of NFS4ERR_NOT_ONLY_OP for: BIND_CONN_TO_SESSION, CREATE_SESSION,
+  DESTROY_CLIENTID, DESTROY_SESSION, EXCHANGE_ID.
+* DESTROY_SESSION MUST be the final operation in the COMPOUND request.
+

+ 200 - 0
Documentation/filesystems/nilfs2.txt

@@ -0,0 +1,200 @@
+NILFS2
+------
+
+NILFS2 is a log-structured file system (LFS) supporting continuous
+snapshotting.  In addition to versioning capability of the entire file
+system, users can even restore files mistakenly overwritten or
+destroyed just a few seconds ago.  Since NILFS2 can keep consistency
+like conventional LFS, it achieves quick recovery after system
+crashes.
+
+NILFS2 creates a number of checkpoints every few seconds or per
+synchronous write basis (unless there is no change).  Users can select
+significant versions among continuously created checkpoints, and can
+change them into snapshots which will be preserved until they are
+changed back to checkpoints.
+
+There is no limit on the number of snapshots until the volume gets
+full.  Each snapshot is mountable as a read-only file system
+concurrently with its writable mount, and this feature is convenient
+for online backup.
+
+The userland tools are included in nilfs-utils package, which is
+available from the following download page.  At least "mkfs.nilfs2",
+"mount.nilfs2", "umount.nilfs2", and "nilfs_cleanerd" (so called
+cleaner or garbage collector) are required.  Details on the tools are
+described in the man pages included in the package.
+
+Project web page:    http://www.nilfs.org/en/
+Download page:       http://www.nilfs.org/en/download.html
+Git tree web page:   http://www.nilfs.org/git/
+NILFS mailing lists: http://www.nilfs.org/mailman/listinfo/users
+
+Caveats
+=======
+
+Features which NILFS2 does not support yet:
+
+	- atime
+	- extended attributes
+	- POSIX ACLs
+	- quotas
+	- writable snapshots
+	- remote backup (CDP)
+	- data integrity
+	- defragmentation
+
+Mount options
+=============
+
+NILFS2 supports the following mount options:
+(*) == default
+
+barrier=on(*)		This enables/disables barriers. barrier=off disables
+			it, barrier=on enables it.
+errors=continue(*)	Keep going on a filesystem error.
+errors=remount-ro	Remount the filesystem read-only on an error.
+errors=panic		Panic and halt the machine if an error occurs.
+cp=n			Specify the checkpoint-number of the snapshot to be
+			mounted.  Checkpoints and snapshots are listed by lscp
+			user command.  Only the checkpoints marked as snapshot
+			are mountable with this option.  Snapshot is read-only,
+			so a read-only mount option must be specified together.
+order=relaxed(*)	Apply relaxed order semantics that allows modified data
+			blocks to be written to disk without making a
+			checkpoint if no metadata update is going.  This mode
+			is equivalent to the ordered data mode of the ext3
+			filesystem except for the updates on data blocks still
+			conserve atomicity.  This will improve synchronous
+			write performance for overwriting.
+order=strict		Apply strict in-order semantics that preserves sequence
+			of all file operations including overwriting of data
+			blocks.  That means, it is guaranteed that no
+			overtaking of events occurs in the recovered file
+			system after a crash.
+
+NILFS2 usage
+============
+
+To use nilfs2 as a local file system, simply:
+
+ # mkfs -t nilfs2 /dev/block_device
+ # mount -t nilfs2 /dev/block_device /dir
+
+This will also invoke the cleaner through the mount helper program
+(mount.nilfs2).
+
+Checkpoints and snapshots are managed by the following commands.
+Their manpages are included in the nilfs-utils package above.
+
+  lscp     list checkpoints or snapshots.
+  mkcp     make a checkpoint or a snapshot.
+  chcp     change an existing checkpoint to a snapshot or vice versa.
+  rmcp     invalidate specified checkpoint(s).
+
+To mount a snapshot,
+
+ # mount -t nilfs2 -r -o cp=<cno> /dev/block_device /snap_dir
+
+where <cno> is the checkpoint number of the snapshot.
+
+To unmount the NILFS2 mount point or snapshot, simply:
+
+ # umount /dir
+
+Then, the cleaner daemon is automatically shut down by the umount
+helper program (umount.nilfs2).
+
+Disk format
+===========
+
+A nilfs2 volume is equally divided into a number of segments except
+for the super block (SB) and segment #0.  A segment is the container
+of logs.  Each log is composed of summary information blocks, payload
+blocks, and an optional super root block (SR):
+
+   ______________________________________________________
+  | |SB| | Segment | Segment | Segment | ... | Segment | |
+  |_|__|_|____0____|____1____|____2____|_____|____N____|_|
+  0 +1K +4K       +8M       +16M      +24M  +(8MB x N)
+       .             .            (Typical offsets for 4KB-block)
+    .                  .
+  .______________________.
+  | log | log |... | log |
+  |__1__|__2__|____|__m__|
+        .       .
+      .               .
+    .                       .
+  .______________________________.
+  | Summary | Payload blocks  |SR|
+  |_blocks__|_________________|__|
+
+The payload blocks are organized per file, and each file consists of
+data blocks and B-tree node blocks:
+
+    |<---       File-A        --->|<---       File-B        --->|
+   _______________________________________________________________
+    | Data blocks | B-tree blocks | Data blocks | B-tree blocks | ...
+   _|_____________|_______________|_____________|_______________|_
+
+
+Since only the modified blocks are written in the log, it may have
+files without data blocks or B-tree node blocks.
+
+The organization of the blocks is recorded in the summary information
+blocks, which contains a header structure (nilfs_segment_summary), per
+file structures (nilfs_finfo), and per block structures (nilfs_binfo):
+
+  _________________________________________________________________________
+ | Summary | finfo | binfo | ... | binfo | finfo | binfo | ... | binfo |...
+ |_blocks__|___A___|_(A,1)_|_____|(A,Na)_|___B___|_(B,1)_|_____|(B,Nb)_|___
+
+
+The logs include regular files, directory files, symbolic link files
+and several meta data files.  The mata data files are the files used
+to maintain file system meta data.  The current version of NILFS2 uses
+the following meta data files:
+
+ 1) Inode file (ifile)             -- Stores on-disk inodes
+ 2) Checkpoint file (cpfile)       -- Stores checkpoints
+ 3) Segment usage file (sufile)    -- Stores allocation state of segments
+ 4) Data address translation file  -- Maps virtual block numbers to usual
+    (DAT)                             block numbers.  This file serves to
+                                      make on-disk blocks relocatable.
+
+The following figure shows a typical organization of the logs:
+
+  _________________________________________________________________________
+ | Summary | regular file | file  | ... | ifile | cpfile | sufile | DAT |SR|
+ |_blocks__|_or_directory_|_______|_____|_______|________|________|_____|__|
+
+
+To stride over segment boundaries, this sequence of files may be split
+into multiple logs.  The sequence of logs that should be treated as
+logically one log, is delimited with flags marked in the segment
+summary.  The recovery code of nilfs2 looks this boundary information
+to ensure atomicity of updates.
+
+The super root block is inserted for every checkpoints.  It includes
+three special inodes, inodes for the DAT, cpfile, and sufile.  Inodes
+of regular files, directories, symlinks and other special files, are
+included in the ifile.  The inode of ifile itself is included in the
+corresponding checkpoint entry in the cpfile.  Thus, the hierarchy
+among NILFS2 files can be depicted as follows:
+
+  Super block (SB)
+       |
+       v
+  Super root block (the latest cno=xx)
+       |-- DAT
+       |-- sufile
+       `-- cpfile
+              |-- ifile (cno=c1)
+              |-- ifile (cno=c2) ---- file (ino=i1)
+              :        :          |-- file (ino=i2)
+              `-- ifile (cno=xx)  |-- file (ino=i3)
+                                  :        :
+                                  `-- file (ino=yy)
+                                    ( regular file, directory, or symlink )
+
+For detail on the format of each file, please see include/linux/nilfs2_fs.h.

+ 36 - 0
Documentation/hwmon/g760a

@@ -0,0 +1,36 @@
+Kernel driver g760a
+===================
+
+Supported chips:
+  * Global Mixed-mode Technology Inc. G760A
+    Prefix: 'g760a'
+    Datasheet: Publicly available at the GMT website
+      http://www.gmt.com.tw/datasheet/g760a.pdf
+
+Author: Herbert Valerio Riedel <hvr@gnu.org>
+
+Description
+-----------
+
+The GMT G760A Fan Speed PWM Controller is connected directly to a fan
+and performs closed-loop control of the fan speed.
+
+The fan speed is programmed by setting the period via 'pwm1' of two
+consecutive speed pulses. The period is defined in terms of clock
+cycle counts of an assumed 32kHz clock source.
+
+Setting a period of 0 stops the fan; setting the period to 255 sets
+fan to maximum speed.
+
+The measured fan rotation speed returned via 'fan1_input' is derived
+from the measured speed pulse period by assuming again a 32kHz clock
+source and a 2 pulse-per-revolution fan.
+
+The 'alarms' file provides access to the two alarm bits provided by
+the G760A chip's status register: Bit 0 is set when the actual fan
+speed differs more than 20% with respect to the programmed fan speed;
+bit 1 is set when fan speed is below 1920 RPM.
+
+The g760a driver will not update its values more frequently than every
+other second; reading them more often will do no harm, but will return
+'old' values.

+ 45 - 0
Documentation/infiniband/ipoib.txt

@@ -24,6 +24,49 @@ Partitions and P_Keys
   The P_Key for any interface is given by the "pkey" file, and the
   The P_Key for any interface is given by the "pkey" file, and the
   main interface for a subinterface is in "parent."
   main interface for a subinterface is in "parent."
 
 
+Datagram vs Connected modes
+
+  The IPoIB driver supports two modes of operation: datagram and
+  connected.  The mode is set and read through an interface's
+  /sys/class/net/<intf name>/mode file.
+
+  In datagram mode, the IB UD (Unreliable Datagram) transport is used
+  and so the interface MTU has is equal to the IB L2 MTU minus the
+  IPoIB encapsulation header (4 bytes).  For example, in a typical IB
+  fabric with a 2K MTU, the IPoIB MTU will be 2048 - 4 = 2044 bytes.
+
+  In connected mode, the IB RC (Reliable Connected) transport is used.
+  Connected mode is to takes advantage of the connected nature of the
+  IB transport and allows an MTU up to the maximal IP packet size of
+  64K, which reduces the number of IP packets needed for handling
+  large UDP datagrams, TCP segments, etc and increases the performance
+  for large messages.
+
+  In connected mode, the interface's UD QP is still used for multicast
+  and communication with peers that don't support connected mode. In
+  this case, RX emulation of ICMP PMTU packets is used to cause the
+  networking stack to use the smaller UD MTU for these neighbours.
+
+Stateless offloads
+
+  If the IB HW supports IPoIB stateless offloads, IPoIB advertises
+  TCP/IP checksum and/or Large Send (LSO) offloading capability to the
+  network stack.
+
+  Large Receive (LRO) offloading is also implemented and may be turned
+  on/off using ethtool calls.  Currently LRO is supported only for
+  checksum offload capable devices.
+
+  Stateless offloads are supported only in datagram mode.  
+
+Interrupt moderation
+
+  If the underlying IB device supports CQ event moderation, one can
+  use ethtool to set interrupt mitigation parameters and thus reduce
+  the overhead incurred by handling interrupts.  The main code path of
+  IPoIB doesn't use events for TX completion signaling so only RX
+  moderation is supported.
+
 Debugging Information
 Debugging Information
 
 
   By compiling the IPoIB driver with CONFIG_INFINIBAND_IPOIB_DEBUG set
   By compiling the IPoIB driver with CONFIG_INFINIBAND_IPOIB_DEBUG set
@@ -55,3 +98,5 @@ References
     http://ietf.org/rfc/rfc4391.txt 
     http://ietf.org/rfc/rfc4391.txt 
   IP over InfiniBand (IPoIB) Architecture (RFC 4392)
   IP over InfiniBand (IPoIB) Architecture (RFC 4392)
     http://ietf.org/rfc/rfc4392.txt 
     http://ietf.org/rfc/rfc4392.txt 
+  IP over InfiniBand: Connected Mode (RFC 4755)
+    http://ietf.org/rfc/rfc4755.txt

+ 101 - 0
Documentation/input/rotary-encoder.txt

@@ -0,0 +1,101 @@
+rotary-encoder - a generic driver for GPIO connected devices
+Daniel Mack <daniel@caiaq.de>, Feb 2009
+
+0. Function
+-----------
+
+Rotary encoders are devices which are connected to the CPU or other
+peripherals with two wires. The outputs are phase-shifted by 90 degrees
+and by triggering on falling and rising edges, the turn direction can
+be determined.
+
+The phase diagram of these two outputs look like this:
+
+                  _____       _____       _____
+                 |     |     |     |     |     |
+  Channel A  ____|     |_____|     |_____|     |____
+
+                 :  :  :  :  :  :  :  :  :  :  :  :
+            __       _____       _____       _____
+              |     |     |     |     |     |     |
+  Channel B   |_____|     |_____|     |_____|     |__
+
+                 :  :  :  :  :  :  :  :  :  :  :  :
+  Event          a  b  c  d  a  b  c  d  a  b  c  d
+
+                |<-------->|
+	          one step
+
+
+For more information, please see
+	http://en.wikipedia.org/wiki/Rotary_encoder
+
+
+1. Events / state machine
+-------------------------
+
+a) Rising edge on channel A, channel B in low state
+	This state is used to recognize a clockwise turn
+
+b) Rising edge on channel B, channel A in high state
+	When entering this state, the encoder is put into 'armed' state,
+	meaning that there it has seen half the way of a one-step transition.
+
+c) Falling edge on channel A, channel B in high state
+	This state is used to recognize a counter-clockwise turn
+
+d) Falling edge on channel B, channel A in low state
+	Parking position. If the encoder enters this state, a full transition
+	should have happend, unless it flipped back on half the way. The
+	'armed' state tells us about that.
+
+2. Platform requirements
+------------------------
+
+As there is no hardware dependent call in this driver, the platform it is
+used with must support gpiolib. Another requirement is that IRQs must be
+able to fire on both edges.
+
+
+3. Board integration
+--------------------
+
+To use this driver in your system, register a platform_device with the
+name 'rotary-encoder' and associate the IRQs and some specific platform
+data with it.
+
+struct rotary_encoder_platform_data is declared in
+include/linux/rotary-encoder.h and needs to be filled with the number of
+steps the encoder has and can carry information about externally inverted
+signals (because of used invertig buffer or other reasons).
+
+Because GPIO to IRQ mapping is platform specific, this information must
+be given in seperately to the driver. See the example below.
+
+---------<snip>---------
+
+/* board support file example */
+
+#include <linux/input.h>
+#include <linux/rotary_encoder.h>
+
+#define GPIO_ROTARY_A 1
+#define GPIO_ROTARY_B 2
+
+static struct rotary_encoder_platform_data my_rotary_encoder_info = {
+	.steps		= 24,
+	.axis		= ABS_X,
+	.gpio_a		= GPIO_ROTARY_A,
+	.gpio_b		= GPIO_ROTARY_B,
+	.inverted_a	= 0,
+	.inverted_b	= 0,
+};
+
+static struct platform_device rotary_encoder_device = {
+	.name		= "rotary-encoder",
+	.id		= 0,
+	.dev		= {
+		.platform_data = &my_rotary_encoder_info,
+	}
+};
+

+ 32 - 20
Documentation/isdn/README.gigaset

@@ -61,24 +61,28 @@ GigaSet 307x Device Driver
      ---------------------
      ---------------------
 2.1. Modules
 2.1. Modules
      -------
      -------
-     To get the device working, you have to load the proper kernel module. You
-     can do this using
-         modprobe modulename
-     where modulename is ser_gigaset (M101), usb_gigaset (M105), or
-     bas_gigaset (direct USB connection to the base).
+     For the devices to work, the proper kernel modules have to be loaded.
+     This normally happens automatically when the system detects the USB
+     device (base, M105) or when the line discipline is attached (M101). It
+     can also be triggered manually using the modprobe(8) command, for example
+     for troubleshooting or to pass module parameters.
 
 
      The module ser_gigaset provides a serial line discipline N_GIGASET_M101
      The module ser_gigaset provides a serial line discipline N_GIGASET_M101
-     which drives the device through the regular serial line driver. To use it,
-     run the Gigaset M101 daemon "gigasetm101d" (also available from
-     http://sourceforge.net/projects/gigaset307x/) with the device file of the
-     RS232 port to the M101 as an argument, for example:
-	 gigasetm101d /dev/ttyS1
-     This will open the device file, set its line discipline to N_GIGASET_M101,
-     and then sleep in the background, keeping the device open so that the
-     line discipline remains active. To deactivate it, kill the daemon, for
-     example with
-	 killall gigasetm101d
-     before disconnecting the device.
+     which drives the device through the regular serial line driver. It must
+     be attached to the serial line to which the M101 is connected with the
+     ldattach(8) command (requires util-linux-ng release 2.14 or later), for
+     example:
+	 ldattach GIGASET_M101 /dev/ttyS1
+     This will open the device file, attach the line discipline to it, and
+     then sleep in the background, keeping the device open so that the line
+     discipline remains active. To deactivate it, kill the daemon, for example
+     with
+	 killall ldattach
+     before disconnecting the device. To have this happen automatically at
+     system startup/shutdown on an LSB compatible system, create and activate
+     an appropriate LSB startup script /etc/init.d/gigaset. (The init name
+     'gigaset' is officially assigned to this project by LANANA.)
+     Alternatively, just add the 'ldattach' command line to /etc/rc.local.
 
 
 2.2. Device nodes for user space programs
 2.2. Device nodes for user space programs
      ------------------------------------
      ------------------------------------
@@ -194,10 +198,11 @@ GigaSet 307x Device Driver
      operation (for wireless access to the base), but are needed for access
      operation (for wireless access to the base), but are needed for access
      to the M105's own configuration mode (registration to the base, baudrate
      to the M105's own configuration mode (registration to the base, baudrate
      and line format settings, device status queries) via the gigacontr
      and line format settings, device status queries) via the gigacontr
-     utility. Their use is disabled in the driver by default for safety
-     reasons but can be enabled by setting the kernel configuration option
-     "Support for undocumented USB requests" (GIGASET_UNDOCREQ) to "Y" and
-     recompiling.
+     utility. Their use is controlled by the kernel configuration option
+     "Support for undocumented USB requests" (CONFIG_GIGASET_UNDOCREQ). If you
+     encounter error code -ENOTTY when trying to use some features of the
+     M105, try setting that option to "y" via 'make {x,menu}config' and
+     recompiling the driver.
 
 
 
 
 3.   Troubleshooting
 3.   Troubleshooting
@@ -228,6 +233,13 @@ GigaSet 307x Device Driver
      Solution:
      Solution:
         Select Unimodem mode for all DECT data adapters. (see section 2.4.)
         Select Unimodem mode for all DECT data adapters. (see section 2.4.)
 
 
+     Problem:
+        You want to configure your USB DECT data adapter (M105) but gigacontr
+        reports an error: "/dev/ttyGU0: Inappropriate ioctl for device".
+     Solution:
+        Recompile the usb_gigaset driver with the kernel configuration option
+        CONFIG_GIGASET_UNDOCREQ set to 'y'. (see section 2.6.)
+
 3.2. Telling the driver to provide more information
 3.2. Telling the driver to provide more information
      ----------------------------------------------
      ----------------------------------------------
      Building the driver with the "Gigaset debugging" kernel configuration
      Building the driver with the "Gigaset debugging" kernel configuration

+ 75 - 8
Documentation/kbuild/makefiles.txt

@@ -40,10 +40,16 @@ This document describes the Linux kernel Makefiles.
 	   --- 6.7 Custom kbuild commands
 	   --- 6.7 Custom kbuild commands
 	   --- 6.8 Preprocessing linker scripts
 	   --- 6.8 Preprocessing linker scripts
 
 
-	=== 7 Kbuild Variables
-	=== 8 Makefile language
-	=== 9 Credits
-	=== 10 TODO
+	=== 7 Kbuild syntax for exported headers
+		--- 7.1 header-y
+		--- 7.2 objhdr-y
+		--- 7.3 destination-y
+		--- 7.4 unifdef-y (deprecated)
+
+	=== 8 Kbuild Variables
+	=== 9 Makefile language
+	=== 10 Credits
+	=== 11 TODO
 
 
 === 1 Overview
 === 1 Overview
 
 
@@ -1143,8 +1149,69 @@ When kbuild executes, the following steps are followed (roughly):
 	The kbuild infrastructure for *lds file are used in several
 	The kbuild infrastructure for *lds file are used in several
 	architecture-specific files.
 	architecture-specific files.
 
 
+=== 7 Kbuild syntax for exported headers
+
+The kernel include a set of headers that is exported to userspace.
+Many headers can be exported as-is but other headers requires  a
+minimal pre-processing before they are ready for user-space.
+The pre-processing does:
+- drop kernel specific annotations
+- drop include of compiler.h
+- drop all sections that is kernel internat (guarded by ifdef __KERNEL__)
+
+Each relevant directory contain a file name "Kbuild" which specify the
+headers to be exported.
+See subsequent chapter for the syntax of the Kbuild file.
+
+	--- 7.1 header-y
+
+	header-y specify header files to be exported.
+
+		Example:
+			#include/linux/Kbuild
+			header-y += usb/
+			header-y += aio_abi.h
+
+	The convention is to list one file per line and
+	preferably in alphabetic order.
+
+	header-y also specify which subdirectories to visit.
+	A subdirectory is identified by a trailing '/' which
+	can be seen in the example above for the usb subdirectory.
+
+	Subdirectories are visited before their parent directories.
+
+	--- 7.2 objhdr-y
+
+	objhdr-y specifies generated files to be exported.
+	Generated files are special as they need to be looked
+	up in another directory when doing 'make O=...' builds.
+
+		Example:
+			#include/linux/Kbuild
+			objhdr-y += version.h
+
+	--- 7.3 destination-y
+
+	When an architecture have a set of exported headers that needs to be
+	exported to a different directory destination-y is used.
+	destination-y specify the destination directory for all exported
+	headers in the file where it is present.
+
+		Example:
+			#arch/xtensa/platforms/s6105/include/platform/Kbuild
+			destination-y := include/linux
+
+	In the example above all exported headers in the Kbuild file
+	will be located in the directory "include/linux" when exported.
+
+
+	--- 7.4 unifdef-y (deprecated)
+
+	unifdef-y is deprecated. A direct replacement is header-y.
+
 
 
-=== 7 Kbuild Variables
+=== 8 Kbuild Variables
 
 
 The top Makefile exports the following variables:
 The top Makefile exports the following variables:
 
 
@@ -1206,7 +1273,7 @@ The top Makefile exports the following variables:
 	INSTALL_MOD_STRIP will used as the option(s) to the strip command.
 	INSTALL_MOD_STRIP will used as the option(s) to the strip command.
 
 
 
 
-=== 8 Makefile language
+=== 9 Makefile language
 
 
 The kernel Makefiles are designed to be run with GNU Make.  The Makefiles
 The kernel Makefiles are designed to be run with GNU Make.  The Makefiles
 use only the documented features of GNU Make, but they do use many
 use only the documented features of GNU Make, but they do use many
@@ -1225,14 +1292,14 @@ time the left-hand side is used.
 There are some cases where "=" is appropriate.  Usually, though, ":="
 There are some cases where "=" is appropriate.  Usually, though, ":="
 is the right choice.
 is the right choice.
 
 
-=== 9 Credits
+=== 10 Credits
 
 
 Original version made by Michael Elizabeth Chastain, <mailto:mec@shout.net>
 Original version made by Michael Elizabeth Chastain, <mailto:mec@shout.net>
 Updates by Kai Germaschewski <kai@tp1.ruhr-uni-bochum.de>
 Updates by Kai Germaschewski <kai@tp1.ruhr-uni-bochum.de>
 Updates by Sam Ravnborg <sam@ravnborg.org>
 Updates by Sam Ravnborg <sam@ravnborg.org>
 Language QA by Jan Engelhardt <jengelh@gmx.de>
 Language QA by Jan Engelhardt <jengelh@gmx.de>
 
 
-=== 10 TODO
+=== 11 TODO
 
 
 - Describe how kbuild supports shipped files with _shipped.
 - Describe how kbuild supports shipped files with _shipped.
 - Generating offset header files.
 - Generating offset header files.

+ 226 - 255
Documentation/kernel-parameters.txt

@@ -153,60 +153,6 @@ and is between 256 and 4096 characters. It is defined in the file
 			1,0: use 1st APIC table
 			1,0: use 1st APIC table
 			default: 0
 			default: 0
 
 
-	acpi_sleep=	[HW,ACPI] Sleep options
-			Format: { s3_bios, s3_mode, s3_beep, s4_nohwsig,
-				  old_ordering, s4_nonvs }
-			See Documentation/power/video.txt for information on
-			s3_bios and s3_mode.
-			s3_beep is for debugging; it makes the PC's speaker beep
-			as soon as the kernel's real-mode entry point is called.
-			s4_nohwsig prevents ACPI hardware signature from being
-			used during resume from hibernation.
-			old_ordering causes the ACPI 1.0 ordering of the _PTS
-			control method, with respect to putting devices into
-			low power states, to be enforced (the ACPI 2.0 ordering
-			of _PTS is used by default).
-			s4_nonvs prevents the kernel from saving/restoring the
-			ACPI NVS memory during hibernation.
-
-	acpi_sci=	[HW,ACPI] ACPI System Control Interrupt trigger mode
-			Format: { level | edge | high | low }
-
-	acpi_irq_balance [HW,ACPI]
-			ACPI will balance active IRQs
-			default in APIC mode
-
-	acpi_irq_nobalance [HW,ACPI]
-			ACPI will not move active IRQs (default)
-			default in PIC mode
-
-	acpi_irq_pci=	[HW,ACPI] If irq_balance, clear listed IRQs for
-			use by PCI
-			Format: <irq>,<irq>...
-
-	acpi_irq_isa=	[HW,ACPI] If irq_balance, mark listed IRQs used by ISA
-			Format: <irq>,<irq>...
-
-	acpi_no_auto_ssdt	[HW,ACPI] Disable automatic loading of SSDT
-
-	acpi_os_name=	[HW,ACPI] Tell ACPI BIOS the name of the OS
-			Format: To spoof as Windows 98: ="Microsoft Windows"
-
-	acpi_osi=	[HW,ACPI] Modify list of supported OS interface strings
-			acpi_osi="string1"	# add string1 -- only one string
-			acpi_osi="!string2"	# remove built-in string2
-			acpi_osi=		# disable all strings
-
-	acpi_serialize	[HW,ACPI] force serialization of AML methods
-
-	acpi_skip_timer_override [HW,ACPI]
-			Recognize and ignore IRQ0/pin2 Interrupt Override.
-			For broken nForce2 BIOS resulting in XT-PIC timer.
-	acpi_use_timer_override [HW,ACPI]
-			Use timer override. For some broken Nvidia NF5 boards
-			that require a timer override, but don't have
-			HPET
-
 	acpi_backlight=	[HW,ACPI]
 	acpi_backlight=	[HW,ACPI]
 			acpi_backlight=vendor
 			acpi_backlight=vendor
 			acpi_backlight=video
 			acpi_backlight=video
@@ -214,11 +160,6 @@ and is between 256 and 4096 characters. It is defined in the file
 			(e.g. thinkpad_acpi, sony_acpi, etc.) instead
 			(e.g. thinkpad_acpi, sony_acpi, etc.) instead
 			of the ACPI video.ko driver.
 			of the ACPI video.ko driver.
 
 
-	acpi_display_output=	[HW,ACPI]
-			acpi_display_output=vendor
-			acpi_display_output=video
-			See above.
-
 	acpi.debug_layer=	[HW,ACPI,ACPI_DEBUG]
 	acpi.debug_layer=	[HW,ACPI,ACPI_DEBUG]
 	acpi.debug_level=	[HW,ACPI,ACPI_DEBUG]
 	acpi.debug_level=	[HW,ACPI,ACPI_DEBUG]
 			Format: <int>
 			Format: <int>
@@ -247,6 +188,41 @@ and is between 256 and 4096 characters. It is defined in the file
 			unusable.  The "log_buf_len" parameter may be useful
 			unusable.  The "log_buf_len" parameter may be useful
 			if you need to capture more output.
 			if you need to capture more output.
 
 
+	acpi_display_output=	[HW,ACPI]
+			acpi_display_output=vendor
+			acpi_display_output=video
+			See above.
+
+	acpi_irq_balance [HW,ACPI]
+			ACPI will balance active IRQs
+			default in APIC mode
+
+	acpi_irq_nobalance [HW,ACPI]
+			ACPI will not move active IRQs (default)
+			default in PIC mode
+
+	acpi_irq_isa=	[HW,ACPI] If irq_balance, mark listed IRQs used by ISA
+			Format: <irq>,<irq>...
+
+	acpi_irq_pci=	[HW,ACPI] If irq_balance, clear listed IRQs for
+			use by PCI
+			Format: <irq>,<irq>...
+
+	acpi_no_auto_ssdt	[HW,ACPI] Disable automatic loading of SSDT
+
+	acpi_os_name=	[HW,ACPI] Tell ACPI BIOS the name of the OS
+			Format: To spoof as Windows 98: ="Microsoft Windows"
+
+	acpi_osi=	[HW,ACPI] Modify list of supported OS interface strings
+			acpi_osi="string1"	# add string1 -- only one string
+			acpi_osi="!string2"	# remove built-in string2
+			acpi_osi=		# disable all strings
+
+	acpi_pm_good	[X86-32,X86-64]
+			Override the pmtimer bug detection: force the kernel
+			to assume that this machine's pmtimer latches its value
+			and always returns good values.
+
  	acpi.power_nocheck=	[HW,ACPI]
  	acpi.power_nocheck=	[HW,ACPI]
  			Format: 1/0 enable/disable the check of power state.
  			Format: 1/0 enable/disable the check of power state.
  			On some bogus BIOS the _PSC object/_STA object of
  			On some bogus BIOS the _PSC object/_STA object of
@@ -255,11 +231,6 @@ and is between 256 and 4096 characters. It is defined in the file
  			power state again in power transition.
  			power state again in power transition.
  			1 : disable the power state check
  			1 : disable the power state check
 
 
-	acpi_pm_good	[X86-32,X86-64]
-			Override the pmtimer bug detection: force the kernel
-			to assume that this machine's pmtimer latches its value
-			and always returns good values.
-
 	acpi_enforce_resources=	[ACPI]
 	acpi_enforce_resources=	[ACPI]
 			{ strict | lax | no }
 			{ strict | lax | no }
 			Check for resource conflicts between native drivers
 			Check for resource conflicts between native drivers
@@ -276,22 +247,6 @@ and is between 256 and 4096 characters. It is defined in the file
 			no: ACPI OperationRegions are not marked as reserved,
 			no: ACPI OperationRegions are not marked as reserved,
 			no further checks are performed.
 			no further checks are performed.
 
 
-	agp=		[AGP]
-			{ off | try_unsupported }
-			off: disable AGP support
-			try_unsupported: try to drive unsupported chipsets
-				(may crash computer or cause data corruption)
-
-	enable_timer_pin_1 [i386,x86-64]
-			Enable PIN 1 of APIC timer
-			Can be useful to work around chipset bugs
-			(in particular on some ATI chipsets).
-			The kernel tries to set a reasonable default.
-
-	disable_timer_pin_1 [i386,x86-64]
-			Disable PIN 1 of APIC timer
-			Can be useful to work around chipset bugs.
-
 	ad1848=		[HW,OSS]
 	ad1848=		[HW,OSS]
 			Format: <io>,<irq>,<dma>,<dma2>,<type>
 			Format: <io>,<irq>,<dma>,<dma2>,<type>
 
 
@@ -305,6 +260,12 @@ and is between 256 and 4096 characters. It is defined in the file
 			Format: <io>,<irq>,<dma>,<mss_io>,<mpu_io>,<mpu_irq>
 			Format: <io>,<irq>,<dma>,<mss_io>,<mpu_io>,<mpu_irq>
 			See also header of sound/oss/aedsp16.c.
 			See also header of sound/oss/aedsp16.c.
 
 
+	agp=		[AGP]
+			{ off | try_unsupported }
+			off: disable AGP support
+			try_unsupported: try to drive unsupported chipsets
+				(may crash computer or cause data corruption)
+
 	aha152x=	[HW,SCSI]
 	aha152x=	[HW,SCSI]
 			See Documentation/scsi/aha152x.txt.
 			See Documentation/scsi/aha152x.txt.
 
 
@@ -432,12 +393,6 @@ and is between 256 and 4096 characters. It is defined in the file
 			possible to determine what the correct size should be.
 			possible to determine what the correct size should be.
 			This option provides an override for these situations.
 			This option provides an override for these situations.
 
 
-	security=	[SECURITY] Choose a security module to enable at boot.
-			If this boot parameter is not specified, only the first
-			security module asking for security registration will be
-			loaded. An invalid security module name will be treated
-			as if no module has been chosen.
-
 	capability.disable=
 	capability.disable=
 			[SECURITY] Disable capabilities.  This would normally
 			[SECURITY] Disable capabilities.  This would normally
 			be used only if an alternative security model is to be
 			be used only if an alternative security model is to be
@@ -509,24 +464,6 @@ and is between 256 and 4096 characters. It is defined in the file
 			Range: 0 - 8192
 			Range: 0 - 8192
 			Default: 64
 			Default: 64
 
 
-	dma_debug=off	If the kernel is compiled with DMA_API_DEBUG support
-			this option disables the debugging code at boot.
-
-	dma_debug_entries=<number>
-			This option allows to tune the number of preallocated
-			entries for DMA-API debugging code. One entry is
-			required per DMA-API allocation. Use this if the
-			DMA-API debugging code disables itself because the
-			architectural default is too low.
-
-	hpet=		[X86-32,HPET] option to control HPET usage
-			Format: { enable (default) | disable | force |
-				verbose }
-			disable: disable HPET and use PIT instead
-			force: allow force enabled of undocumented chips (ICH4,
-			VIA, nVidia)
-			verbose: show contents of HPET registers during setup
-
 	com20020=	[HW,NET] ARCnet - COM20020 chipset
 	com20020=	[HW,NET] ARCnet - COM20020 chipset
 			Format:
 			Format:
 			<io>[,<irq>[,<nodeID>[,<backplane>[,<ckp>[,<timeout>]]]]]
 			<io>[,<irq>[,<nodeID>[,<backplane>[,<ckp>[,<timeout>]]]]]
@@ -570,23 +507,6 @@ and is between 256 and 4096 characters. It is defined in the file
 			console=brl,ttyS0
 			console=brl,ttyS0
 		For now, only VisioBraille is supported.
 		For now, only VisioBraille is supported.
 
 
-	earlycon=	[KNL] Output early console device and options.
-		uart[8250],io,<addr>[,options]
-		uart[8250],mmio,<addr>[,options]
-			Start an early, polled-mode console on the 8250/16550
-			UART at the specified I/O port or MMIO address.
-			The options are the same as for ttyS, above.
-
-	no_console_suspend
-			[HW] Never suspend the console
-			Disable suspending of consoles during suspend and
-			hibernate operations.  Once disabled, debugging
-			messages can reach various consoles while the rest
-			of the system is being put to sleep (ie, while
-			debugging driver suspend/resume hooks).  This may
-			not work reliably with all consoles, but is known
-			to work with serial and VGA consoles.
-
 	coredump_filter=
 	coredump_filter=
 			[KNL] Change the default value for
 			[KNL] Change the default value for
 			/proc/<pid>/coredump_filter.
 			/proc/<pid>/coredump_filter.
@@ -643,30 +563,13 @@ and is between 256 and 4096 characters. It is defined in the file
 			Format: <area>[,<node>]
 			Format: <area>[,<node>]
 			See also Documentation/networking/decnet.txt.
 			See also Documentation/networking/decnet.txt.
 
 
-	vt.default_blu=	[VT]
-			Format: <blue0>,<blue1>,<blue2>,...,<blue15>
-			Change the default blue palette of the console.
-			This is a 16-member array composed of values
-			ranging from 0-255.
-
-	vt.default_grn=	[VT]
-			Format: <green0>,<green1>,<green2>,...,<green15>
-			Change the default green palette of the console.
-			This is a 16-member array composed of values
-			ranging from 0-255.
-
-	vt.default_red=	[VT]
-			Format: <red0>,<red1>,<red2>,...,<red15>
-			Change the default red palette of the console.
-			This is a 16-member array composed of values
-			ranging from 0-255.
-
-	vt.default_utf8=
-			[VT]
-			Format=<0|1>
-			Set system-wide default UTF-8 mode for all tty's.
-			Default is 1, i.e. UTF-8 mode is enabled for all
-			newly opened terminals.
+	default_hugepagesz=
+			[same as hugepagesz=] The size of the default
+			HugeTLB page size. This is the size represented by
+			the legacy /proc/ hugepages APIs, used for SHM, and
+			default size when mounting hugetlbfs filesystems.
+			Defaults to the default architecture's huge page size
+			if not specified.
 
 
 	dhash_entries=	[KNL]
 	dhash_entries=	[KNL]
 			Set number of hash buckets for dentry cache.
 			Set number of hash buckets for dentry cache.
@@ -679,27 +582,9 @@ and is between 256 and 4096 characters. It is defined in the file
 			Documentation/serial/digiepca.txt.
 			Documentation/serial/digiepca.txt.
 
 
 	disable_mtrr_cleanup [X86]
 	disable_mtrr_cleanup [X86]
-	enable_mtrr_cleanup [X86]
 			The kernel tries to adjust MTRR layout from continuous
 			The kernel tries to adjust MTRR layout from continuous
 			to discrete, to make X server driver able to add WB
 			to discrete, to make X server driver able to add WB
-			entry later. This parameter enables/disables that.
-
-	mtrr_chunk_size=nn[KMG] [X86]
-			used for mtrr cleanup. It is largest continous chunk
-			that could hold holes aka. UC entries.
-
-	mtrr_gran_size=nn[KMG] [X86]
-			Used for mtrr cleanup. It is granularity of mtrr block.
-			Default is 1.
-			Large value could prevent small alignment from
-			using up MTRRs.
-
-	mtrr_spare_reg_nr=n [X86]
-			Format: <integer>
-			Range: 0,7 : spare reg number
-			Default : 1
-			Used for mtrr cleanup. It is spare mtrr entries number.
-			Set to 2 or more if your graphical card needs more.
+			entry later. This parameter disables that.
 
 
 	disable_mtrr_trim [X86, Intel and AMD only]
 	disable_mtrr_trim [X86, Intel and AMD only]
 			By default the kernel will trim any uncacheable
 			By default the kernel will trim any uncacheable
@@ -707,12 +592,38 @@ and is between 256 and 4096 characters. It is defined in the file
 			MTRR settings.  This parameter disables that behavior,
 			MTRR settings.  This parameter disables that behavior,
 			possibly causing your machine to run very slowly.
 			possibly causing your machine to run very slowly.
 
 
+	disable_timer_pin_1 [i386,x86-64]
+			Disable PIN 1 of APIC timer
+			Can be useful to work around chipset bugs.
+
 	dmasound=	[HW,OSS] Sound subsystem buffers
 	dmasound=	[HW,OSS] Sound subsystem buffers
 
 
+	dma_debug=off	If the kernel is compiled with DMA_API_DEBUG support,
+			this option disables the debugging code at boot.
+
+	dma_debug_entries=<number>
+			This option allows to tune the number of preallocated
+			entries for DMA-API debugging code. One entry is
+			required per DMA-API allocation. Use this if the
+			DMA-API debugging code disables itself because the
+			architectural default is too low.
+
 	dscc4.setup=	[NET]
 	dscc4.setup=	[NET]
 
 
 	dtc3181e=	[HW,SCSI]
 	dtc3181e=	[HW,SCSI]
 
 
+	dynamic_printk	Enables pr_debug()/dev_dbg() calls if
+			CONFIG_DYNAMIC_PRINTK_DEBUG has been enabled.
+			These can also be switched on/off via
+			<debugfs>/dynamic_printk/modules
+
+	earlycon=	[KNL] Output early console device and options.
+		uart[8250],io,<addr>[,options]
+		uart[8250],mmio,<addr>[,options]
+			Start an early, polled-mode console on the 8250/16550
+			UART at the specified I/O port or MMIO address.
+			The options are the same as for ttyS, above.
+
 	earlyprintk=	[X86-32,X86-64,SH,BLACKFIN]
 	earlyprintk=	[X86-32,X86-64,SH,BLACKFIN]
 			earlyprintk=vga
 			earlyprintk=vga
 			earlyprintk=serial[,ttySn[,baudrate]]
 			earlyprintk=serial[,ttySn[,baudrate]]
@@ -754,6 +665,17 @@ and is between 256 and 4096 characters. It is defined in the file
 			pass this option to capture kernel.
 			pass this option to capture kernel.
 			See Documentation/kdump/kdump.txt for details.
 			See Documentation/kdump/kdump.txt for details.
 
 
+	enable_mtrr_cleanup [X86]
+			The kernel tries to adjust MTRR layout from continuous
+			to discrete, to make X server driver able to add WB
+			entry later. This parameter enables that.
+
+	enable_timer_pin_1 [i386,x86-64]
+			Enable PIN 1 of APIC timer
+			Can be useful to work around chipset bugs
+			(in particular on some ATI chipsets).
+			The kernel tries to set a reasonable default.
+
 	enforcing	[SELINUX] Set initial enforcing status.
 	enforcing	[SELINUX] Set initial enforcing status.
 			Format: {"0" | "1"}
 			Format: {"0" | "1"}
 			See security/selinux/Kconfig help text.
 			See security/selinux/Kconfig help text.
@@ -841,6 +763,16 @@ and is between 256 and 4096 characters. It is defined in the file
 	hisax=		[HW,ISDN]
 	hisax=		[HW,ISDN]
 			See Documentation/isdn/README.HiSax.
 			See Documentation/isdn/README.HiSax.
 
 
+	hlt		[BUGS=ARM,SH]
+
+	hpet=		[X86-32,HPET] option to control HPET usage
+			Format: { enable (default) | disable | force |
+				verbose }
+			disable: disable HPET and use PIT instead
+			force: allow force enabled of undocumented chips (ICH4,
+				VIA, nVidia)
+			verbose: show contents of HPET registers during setup
+
 	hugepages=	[HW,X86-32,IA-64] HugeTLB pages to allocate at boot.
 	hugepages=	[HW,X86-32,IA-64] HugeTLB pages to allocate at boot.
 	hugepagesz=	[HW,IA-64,PPC,X86-64] The size of the HugeTLB pages.
 	hugepagesz=	[HW,IA-64,PPC,X86-64] The size of the HugeTLB pages.
 			On x86-64 and powerpc, this option can be specified
 			On x86-64 and powerpc, this option can be specified
@@ -850,15 +782,6 @@ and is between 256 and 4096 characters. It is defined in the file
 			(when the CPU supports the "pdpe1gb" cpuinfo flag)
 			(when the CPU supports the "pdpe1gb" cpuinfo flag)
 			Note that 1GB pages can only be allocated at boot time
 			Note that 1GB pages can only be allocated at boot time
 			using hugepages= and not freed afterwards.
 			using hugepages= and not freed afterwards.
-	default_hugepagesz=
-			[same as hugepagesz=] The size of the default
-			HugeTLB page size. This is the size represented by
-			the legacy /proc/ hugepages APIs, used for SHM, and
-			default size when mounting hugetlbfs filesystems.
-			Defaults to the default architecture's huge page size
-			if not specified.
-
-	hlt		[BUGS=ARM,SH]
 
 
 	hvc_iucv=	[S390] Number of z/VM IUCV hypervisor console (HVC)
 	hvc_iucv=	[S390] Number of z/VM IUCV hypervisor console (HVC)
 			       terminal devices. Valid values: 0..8
 			       terminal devices. Valid values: 0..8
@@ -919,6 +842,9 @@ and is between 256 and 4096 characters. It is defined in the file
 	idebus=		[HW] (E)IDE subsystem - VLB/PCI bus speed
 	idebus=		[HW] (E)IDE subsystem - VLB/PCI bus speed
 			See Documentation/ide/ide.txt.
 			See Documentation/ide/ide.txt.
 
 
+	ide-pci-generic.all-generic-ide [HW] (E)IDE subsystem
+			Claim all unknown PCI IDE storage controllers.
+
 	idle=		[X86]
 	idle=		[X86]
 			Format: idle=poll, idle=mwait, idle=halt, idle=nomwait
 			Format: idle=poll, idle=mwait, idle=halt, idle=nomwait
 			Poll forces a polling idle loop that can slightly
 			Poll forces a polling idle loop that can slightly
@@ -934,9 +860,6 @@ and is between 256 and 4096 characters. It is defined in the file
 			In such case C2/C3 won't be used again.
 			In such case C2/C3 won't be used again.
 			idle=nomwait: Disable mwait for CPU C-states
 			idle=nomwait: Disable mwait for CPU C-states
 
 
-	ide-pci-generic.all-generic-ide [HW] (E)IDE subsystem
-			Claim all unknown PCI IDE storage controllers.
-
 	ignore_loglevel	[KNL]
 	ignore_loglevel	[KNL]
 			Ignore loglevel setting - this will print /all/
 			Ignore loglevel setting - this will print /all/
 			kernel messages to the console. Useful for debugging.
 			kernel messages to the console. Useful for debugging.
@@ -970,25 +893,6 @@ and is between 256 and 4096 characters. It is defined in the file
 	inport.irq=	[HW] Inport (ATI XL and Microsoft) busmouse driver
 	inport.irq=	[HW] Inport (ATI XL and Microsoft) busmouse driver
 			Format: <irq>
 			Format: <irq>
 
 
-	inttest=	[IA64]
-
-	iomem=		Disable strict checking of access to MMIO memory
-		strict	regions from userspace.
-		relaxed
-
-	iommu=		[x86]
-		off
-		force
-		noforce
-		biomerge
-		panic
-		nopanic
-		merge
-		nomerge
-		forcesac
-		soft
-
-
 	intel_iommu=	[DMAR] Intel IOMMU driver (DMAR) option
 	intel_iommu=	[DMAR] Intel IOMMU driver (DMAR) option
 		on
 		on
 			Enable intel iommu driver.
 			Enable intel iommu driver.
@@ -1012,6 +916,28 @@ and is between 256 and 4096 characters. It is defined in the file
 			result in a hardware IOTLB flush operation as opposed
 			result in a hardware IOTLB flush operation as opposed
 			to batching them for performance.
 			to batching them for performance.
 
 
+	inttest=	[IA64]
+
+	iomem=		Disable strict checking of access to MMIO memory
+		strict	regions from userspace.
+		relaxed
+
+	iommu=		[x86]
+		off
+		force
+		noforce
+		biomerge
+		panic
+		nopanic
+		merge
+		nomerge
+		forcesac
+		soft
+
+	io7=		[HW] IO7 for Marvel based alpha systems
+			See comment before marvel_specify_io7 in
+			arch/alpha/kernel/core_marvel.c.
+
 	io_delay=	[X86-32,X86-64] I/O delay method
 	io_delay=	[X86-32,X86-64] I/O delay method
 		0x80
 		0x80
 			Standard port 0x80 based delay
 			Standard port 0x80 based delay
@@ -1022,10 +948,6 @@ and is between 256 and 4096 characters. It is defined in the file
 		none
 		none
 			No delay
 			No delay
 
 
-	io7=		[HW] IO7 for Marvel based alpha systems
-			See comment before marvel_specify_io7 in
-			arch/alpha/kernel/core_marvel.c.
-
 	ip=		[IP_PNP]
 	ip=		[IP_PNP]
 			See Documentation/filesystems/nfsroot.txt.
 			See Documentation/filesystems/nfsroot.txt.
 
 
@@ -1036,12 +958,6 @@ and is between 256 and 4096 characters. It is defined in the file
 	ips=		[HW,SCSI] Adaptec / IBM ServeRAID controller
 	ips=		[HW,SCSI] Adaptec / IBM ServeRAID controller
 			See header of drivers/scsi/ips.c.
 			See header of drivers/scsi/ips.c.
 
 
-	ports=		[IP_VS_FTP] IPVS ftp helper module
-			Default is 21.
-			Up to 8 (IP_VS_APP_MAX_PORTS) ports
-			may be specified.
-			Format: <port>,<port>....
-
 	irqfixup	[HW]
 	irqfixup	[HW]
 			When an interrupt is not handled search all handlers
 			When an interrupt is not handled search all handlers
 			for it. Intended to get systems with badly broken
 			for it. Intended to get systems with badly broken
@@ -1082,6 +998,8 @@ and is between 256 and 4096 characters. It is defined in the file
 	js=		[HW,JOY] Analog joystick
 	js=		[HW,JOY] Analog joystick
 			See Documentation/input/joystick.txt.
 			See Documentation/input/joystick.txt.
 
 
+	keepinitrd	[HW,ARM]
+
 	kernelcore=nn[KMG]	[KNL,X86-32,IA-64,PPC,X86-64] This parameter
 	kernelcore=nn[KMG]	[KNL,X86-32,IA-64,PPC,X86-64] This parameter
 			specifies the amount of memory usable by the kernel
 			specifies the amount of memory usable by the kernel
 			for non-movable allocations.  The requested amount is
 			for non-movable allocations.  The requested amount is
@@ -1107,21 +1025,6 @@ and is between 256 and 4096 characters. It is defined in the file
 			higher than default (KMEMTRACE_N_SUBBUFS in code) if
 			higher than default (KMEMTRACE_N_SUBBUFS in code) if
 			you experience buffer overruns.
 			you experience buffer overruns.
 
 
-	movablecore=nn[KMG]	[KNL,X86-32,IA-64,PPC,X86-64] This parameter
-			is similar to kernelcore except it specifies the
-			amount of memory used for migratable allocations.
-			If both kernelcore and movablecore is specified,
-			then kernelcore will be at *least* the specified
-			value but may be more. If movablecore on its own
-			is specified, the administrator must be careful
-			that the amount of memory usable for all allocations
-			is not too small.
-
-	keepinitrd	[HW,ARM]
-
-	kstack=N	[X86-32,X86-64] Print N words from the kernel stack
-			in oops dumps.
-
 	kgdboc=		[HW] kgdb over consoles.
 	kgdboc=		[HW] kgdb over consoles.
 			Requires a tty driver that supports console polling.
 			Requires a tty driver that supports console polling.
 			(only serial suported for now)
 			(only serial suported for now)
@@ -1131,6 +1034,9 @@ and is between 256 and 4096 characters. It is defined in the file
 			Configure the RouterBoard 532 series on-chip
 			Configure the RouterBoard 532 series on-chip
 			Ethernet adapter MAC address.
 			Ethernet adapter MAC address.
 
 
+	kstack=N	[X86-32,X86-64] Print N words from the kernel stack
+			in oops dumps.
+
 	l2cr=		[PPC]
 	l2cr=		[PPC]
 
 
 	l3cr=		[PPC]
 	l3cr=		[PPC]
@@ -1276,9 +1182,8 @@ and is between 256 and 4096 characters. It is defined in the file
 			(machvec) in a generic kernel.
 			(machvec) in a generic kernel.
 			Example: machvec=hpzx1_swiotlb
 			Example: machvec=hpzx1_swiotlb
 
 
-	max_loop=	[LOOP] Maximum number of loopback devices that can
-			be mounted
-			Format: <1-256>
+	max_addr=nn[KMG]	[KNL,BOOT,ia64] All physical memory greater
+			than or equal to this physical address is ignored.
 
 
 	maxcpus=	[SMP] Maximum number of processors that	an SMP kernel
 	maxcpus=	[SMP] Maximum number of processors that	an SMP kernel
 			should make use of.  maxcpus=n : n >= 0 limits the
 			should make use of.  maxcpus=n : n >= 0 limits the
@@ -1286,8 +1191,9 @@ and is between 256 and 4096 characters. It is defined in the file
 			it is equivalent to "nosmp", which also disables
 			it is equivalent to "nosmp", which also disables
 			the IO APIC.
 			the IO APIC.
 
 
-	max_addr=nn[KMG]	[KNL,BOOT,ia64] All physical memory greater than
-			or equal to this physical address is ignored.
+	max_loop=	[LOOP] Maximum number of loopback devices that can
+			be mounted
+			Format: <1-256>
 
 
 	max_luns=	[SCSI] Maximum number of LUNs to probe.
 	max_luns=	[SCSI] Maximum number of LUNs to probe.
 			Should be between 1 and 2^32-1.
 			Should be between 1 and 2^32-1.
@@ -1414,6 +1320,16 @@ and is between 256 and 4096 characters. It is defined in the file
 	mousedev.yres=	[MOUSE] Vertical screen resolution, used for devices
 	mousedev.yres=	[MOUSE] Vertical screen resolution, used for devices
 			reporting absolute coordinates, such as tablets
 			reporting absolute coordinates, such as tablets
 
 
+	movablecore=nn[KMG]	[KNL,X86-32,IA-64,PPC,X86-64] This parameter
+			is similar to kernelcore except it specifies the
+			amount of memory used for migratable allocations.
+			If both kernelcore and movablecore is specified,
+			then kernelcore will be at *least* the specified
+			value but may be more. If movablecore on its own
+			is specified, the administrator must be careful
+			that the amount of memory usable for all allocations
+			is not too small.
+
 	mpu401=		[HW,OSS]
 	mpu401=		[HW,OSS]
 			Format: <io>,<irq>
 			Format: <io>,<irq>
 
 
@@ -1435,6 +1351,23 @@ and is between 256 and 4096 characters. It is defined in the file
 			[HW] Make the MicroTouch USB driver use raw coordinates
 			[HW] Make the MicroTouch USB driver use raw coordinates
 			('y', default) or cooked coordinates ('n')
 			('y', default) or cooked coordinates ('n')
 
 
+	mtrr_chunk_size=nn[KMG] [X86]
+			used for mtrr cleanup. It is largest continous chunk
+			that could hold holes aka. UC entries.
+
+	mtrr_gran_size=nn[KMG] [X86]
+			Used for mtrr cleanup. It is granularity of mtrr block.
+			Default is 1.
+			Large value could prevent small alignment from
+			using up MTRRs.
+
+	mtrr_spare_reg_nr=n [X86]
+			Format: <integer>
+			Range: 0,7 : spare reg number
+			Default : 1
+			Used for mtrr cleanup. It is spare mtrr entries number.
+			Set to 2 or more if your graphical card needs more.
+
 	n2=		[NET] SDL Inc. RISCom/N2 synchronous serial card
 	n2=		[NET] SDL Inc. RISCom/N2 synchronous serial card
 
 
 	NCR_D700=	[HW,SCSI]
 	NCR_D700=	[HW,SCSI]
@@ -1495,11 +1428,13 @@ and is between 256 and 4096 characters. It is defined in the file
 			0 - turn nmi_watchdog off
 			0 - turn nmi_watchdog off
 			1 - use the IO-APIC timer for the NMI watchdog
 			1 - use the IO-APIC timer for the NMI watchdog
 			2 - use the local APIC for the NMI watchdog using
 			2 - use the local APIC for the NMI watchdog using
-			a performance counter. Note: This will use one performance
-			counter and the local APIC's performance vector.
-			When panic is specified panic when an NMI watchdog timeout occurs.
-			This is useful when you use a panic=... timeout and need the box
-			quickly up again.
+			a performance counter. Note: This will use one
+			performance counter and the local APIC's performance
+			vector.
+			When panic is specified, panic when an NMI watchdog
+			timeout occurs.
+			This is useful when you use a panic=... timeout and
+			need the box quickly up again.
 			Instead of 1 and 2 it is possible to use the following
 			Instead of 1 and 2 it is possible to use the following
 			symbolic names: lapic and ioapic
 			symbolic names: lapic and ioapic
 			Example: nmi_watchdog=2 or nmi_watchdog=panic,lapic
 			Example: nmi_watchdog=2 or nmi_watchdog=panic,lapic
@@ -1508,6 +1443,16 @@ and is between 256 and 4096 characters. It is defined in the file
 			emulation library even if a 387 maths coprocessor
 			emulation library even if a 387 maths coprocessor
 			is present.
 			is present.
 
 
+	no_console_suspend
+			[HW] Never suspend the console
+			Disable suspending of consoles during suspend and
+			hibernate operations.  Once disabled, debugging
+			messages can reach various consoles while the rest
+			of the system is being put to sleep (ie, while
+			debugging driver suspend/resume hooks).  This may
+			not work reliably with all consoles, but is known
+			to work with serial and VGA consoles.
+
 	noaliencache	[MM, NUMA, SLAB] Disables the allocation of alien
 	noaliencache	[MM, NUMA, SLAB] Disables the allocation of alien
 			caches in the slab allocator.  Saves per-node memory,
 			caches in the slab allocator.  Saves per-node memory,
 			but will impact performance.
 			but will impact performance.
@@ -1522,6 +1467,8 @@ and is between 256 and 4096 characters. It is defined in the file
 
 
 	nocache		[ARM]
 	nocache		[ARM]
 
 
+	noclflush	[BUGS=X86] Don't use the CLFLUSH instruction
+
 	nodelayacct	[KNL] Disable per-task delay accounting
 	nodelayacct	[KNL] Disable per-task delay accounting
 
 
 	nodisconnect	[HW,SCSI,M68K] Disables SCSI disconnects.
 	nodisconnect	[HW,SCSI,M68K] Disables SCSI disconnects.
@@ -1550,8 +1497,6 @@ and is between 256 and 4096 characters. It is defined in the file
 			register save and restore. The kernel will only save
 			register save and restore. The kernel will only save
 			legacy floating-point registers on task switch.
 			legacy floating-point registers on task switch.
 
 
-	noclflush	[BUGS=X86] Don't use the CLFLUSH instruction
-
 	nohlt		[BUGS=ARM,SH] Tells the kernel that the sleep(SH) or
 	nohlt		[BUGS=ARM,SH] Tells the kernel that the sleep(SH) or
 			wfi(ARM) instruction doesn't work correctly and not to
 			wfi(ARM) instruction doesn't work correctly and not to
 			use it. This is also useful when using JTAG debugger.
 			use it. This is also useful when using JTAG debugger.
@@ -1596,12 +1541,6 @@ and is between 256 and 4096 characters. It is defined in the file
 
 
 	nolapic_timer	[X86-32,APIC] Do not use the local APIC timer.
 	nolapic_timer	[X86-32,APIC] Do not use the local APIC timer.
 
 
-	nox2apic	[X86-64,APIC] Do not enable x2APIC mode.
-
-	x2apic_phys	[X86-64,APIC] Use x2apic physical mode instead of
-			default x2apic cluster mode on platforms
-			supporting x2apic.
-
 	noltlbs		[PPC] Do not use large page/tlb entries for kernel
 	noltlbs		[PPC] Do not use large page/tlb entries for kernel
 			lowmem mapping on PPC40x.
 			lowmem mapping on PPC40x.
 
 
@@ -1612,6 +1551,9 @@ and is between 256 and 4096 characters. It is defined in the file
 	nomfgpt		[X86-32] Disable Multi-Function General Purpose
 	nomfgpt		[X86-32] Disable Multi-Function General Purpose
 			Timer usage (for AMD Geode machines).
 			Timer usage (for AMD Geode machines).
 
 
+	norandmaps	Don't use address space randomization.  Equivalent to
+			echo 0 > /proc/sys/kernel/randomize_va_space
+
 	noreplace-paravirt	[X86-32,PV_OPS] Don't patch paravirt_ops
 	noreplace-paravirt	[X86-32,PV_OPS] Don't patch paravirt_ops
 
 
 	noreplace-smp	[X86-32,SMP] Don't replace SMP instructions
 	noreplace-smp	[X86-32,SMP] Don't replace SMP instructions
@@ -1650,13 +1592,13 @@ and is between 256 and 4096 characters. It is defined in the file
 			purges which is reported from either PAL_VM_SUMMARY or
 			purges which is reported from either PAL_VM_SUMMARY or
 			SAL PALO.
 			SAL PALO.
 
 
+	nr_uarts=	[SERIAL] maximum number of UARTs to be registered.
+
 	numa_zonelist_order= [KNL, BOOT] Select zonelist order for NUMA.
 	numa_zonelist_order= [KNL, BOOT] Select zonelist order for NUMA.
 			one of ['zone', 'node', 'default'] can be specified
 			one of ['zone', 'node', 'default'] can be specified
 			This can be set from sysctl after boot.
 			This can be set from sysctl after boot.
 			See Documentation/sysctl/vm.txt for details.
 			See Documentation/sysctl/vm.txt for details.
 
 
-	nr_uarts=	[SERIAL] maximum number of UARTs to be registered.
-
 	ohci1394_dma=early	[HW] enable debugging via the ohci1394 driver.
 	ohci1394_dma=early	[HW] enable debugging via the ohci1394 driver.
 			See Documentation/debugging-via-ohci1394.txt for more
 			See Documentation/debugging-via-ohci1394.txt for more
 			info.
 			info.
@@ -1905,6 +1847,14 @@ and is between 256 and 4096 characters. It is defined in the file
 	printk.time=	Show timing data prefixed to each printk message line
 	printk.time=	Show timing data prefixed to each printk message line
 			Format: <bool>  (1/Y/y=enable, 0/N/n=disable)
 			Format: <bool>  (1/Y/y=enable, 0/N/n=disable)
 
 
+	processor.max_cstate=	[HW,ACPI]
+			Limit processor to maximum C-state
+			max_cstate=9 overrides any DMI blacklist limit.
+
+	processor.nocst	[HW,ACPI]
+			Ignore the _CST method to determine C-states,
+			instead using the legacy FADT method
+
 	profile=	[KNL] Enable kernel profiling via /proc/profile
 	profile=	[KNL] Enable kernel profiling via /proc/profile
 			Format: [schedule,]<number>
 			Format: [schedule,]<number>
 			Param: "schedule" - profile schedule points.
 			Param: "schedule" - profile schedule points.
@@ -1914,14 +1864,6 @@ and is between 256 and 4096 characters. It is defined in the file
 				Requires CONFIG_SCHEDSTATS
 				Requires CONFIG_SCHEDSTATS
 			Param: "kvm" - profile VM exits.
 			Param: "kvm" - profile VM exits.
 
 
-	processor.max_cstate=	[HW,ACPI]
-			Limit processor to maximum C-state
-			max_cstate=9 overrides any DMI blacklist limit.
-
-	processor.nocst	[HW,ACPI]
-			Ignore the _CST method to determine C-states,
-			instead using the legacy FADT method
-
 	prompt_ramdisk=	[RAM] List of RAM disks to prompt for floppy disk
 	prompt_ramdisk=	[RAM] List of RAM disks to prompt for floppy disk
 			before loading.
 			before loading.
 			See Documentation/blockdev/ramdisk.txt.
 			See Documentation/blockdev/ramdisk.txt.
@@ -2075,7 +2017,13 @@ and is between 256 and 4096 characters. It is defined in the file
 			allowing boot to proceed.  none ignores them, expecting
 			allowing boot to proceed.  none ignores them, expecting
 			user space to do the scan.
 			user space to do the scan.
 
 
-	selinux		[SELINUX] Disable or enable SELinux at boot time.
+	security=	[SECURITY] Choose a security module to enable at boot.
+			If this boot parameter is not specified, only the first
+			security module asking for security registration will be
+			loaded. An invalid security module name will be treated
+			as if no module has been chosen.
+
+	selinux=	[SELINUX] Disable or enable SELinux at boot time.
 			Format: { "0" | "1" }
 			Format: { "0" | "1" }
 			See security/selinux/Kconfig help text.
 			See security/selinux/Kconfig help text.
 			0 -- disable.
 			0 -- disable.
@@ -2499,9 +2447,6 @@ and is between 256 and 4096 characters. It is defined in the file
 					medium is write-protected).
 					medium is write-protected).
 			Example: quirks=0419:aaf5:rl,0421:0433:rc
 			Example: quirks=0419:aaf5:rl,0421:0433:rc
 
 
-	add_efi_memmap	[EFI; x86-32,X86-64] Include EFI memory map in
-			kernel's map of available physical RAM.
-
 	vdso=		[X86-32,SH,x86-64]
 	vdso=		[X86-32,SH,x86-64]
 			vdso=2: enable compat VDSO (default with COMPAT_VDSO)
 			vdso=2: enable compat VDSO (default with COMPAT_VDSO)
 			vdso=1: enable VDSO (default)
 			vdso=1: enable VDSO (default)
@@ -2540,6 +2485,31 @@ and is between 256 and 4096 characters. It is defined in the file
 	vmpoff=		[KNL,S390] Perform z/VM CP command after power off.
 	vmpoff=		[KNL,S390] Perform z/VM CP command after power off.
 			Format: <command>
 			Format: <command>
 
 
+	vt.default_blu=	[VT]
+			Format: <blue0>,<blue1>,<blue2>,...,<blue15>
+			Change the default blue palette of the console.
+			This is a 16-member array composed of values
+			ranging from 0-255.
+
+	vt.default_grn=	[VT]
+			Format: <green0>,<green1>,<green2>,...,<green15>
+			Change the default green palette of the console.
+			This is a 16-member array composed of values
+			ranging from 0-255.
+
+	vt.default_red=	[VT]
+			Format: <red0>,<red1>,<red2>,...,<red15>
+			Change the default red palette of the console.
+			This is a 16-member array composed of values
+			ranging from 0-255.
+
+	vt.default_utf8=
+			[VT]
+			Format=<0|1>
+			Set system-wide default UTF-8 mode for all tty's.
+			Default is 1, i.e. UTF-8 mode is enabled for all
+			newly opened terminals.
+
 	waveartist=	[HW,OSS]
 	waveartist=	[HW,OSS]
 			Format: <io>,<irq>,<dma>,<dma2>
 			Format: <io>,<irq>,<dma>,<dma2>
 
 
@@ -2552,6 +2522,10 @@ and is between 256 and 4096 characters. It is defined in the file
 	wdt=		[WDT] Watchdog
 	wdt=		[WDT] Watchdog
 			See Documentation/watchdog/wdt.txt.
 			See Documentation/watchdog/wdt.txt.
 
 
+	x2apic_phys	[X86-64,APIC] Use x2apic physical mode instead of
+			default x2apic cluster mode on platforms
+			supporting x2apic.
+
 	xd=		[HW,XT] Original XT pre-IDE (RLL encoded) disks.
 	xd=		[HW,XT] Original XT pre-IDE (RLL encoded) disks.
 	xd_geo=		See header of drivers/block/xd.c.
 	xd_geo=		See header of drivers/block/xd.c.
 
 
@@ -2559,9 +2533,6 @@ and is between 256 and 4096 characters. It is defined in the file
 			Format:
 			Format:
 			<irq>,<irq_mask>,<io>,<full_duplex>,<do_sound>,<lockup_hack>[,<irq2>[,<irq3>[,<irq4>]]]
 			<irq>,<irq_mask>,<io>,<full_duplex>,<do_sound>,<lockup_hack>[,<irq2>[,<irq3>[,<irq4>]]]
 
 
-	norandmaps	Don't use address space randomization.  Equivalent to
-			echo 0 > /proc/sys/kernel/randomize_va_space
-
 ______________________________________________________________________
 ______________________________________________________________________
 
 
 TODO:
 TODO:

+ 32 - 6
Documentation/kprobes.txt

@@ -212,7 +212,9 @@ hit, Kprobes calls kp->pre_handler.  After the probed instruction
 is single-stepped, Kprobe calls kp->post_handler.  If a fault
 is single-stepped, Kprobe calls kp->post_handler.  If a fault
 occurs during execution of kp->pre_handler or kp->post_handler,
 occurs during execution of kp->pre_handler or kp->post_handler,
 or during single-stepping of the probed instruction, Kprobes calls
 or during single-stepping of the probed instruction, Kprobes calls
-kp->fault_handler.  Any or all handlers can be NULL.
+kp->fault_handler.  Any or all handlers can be NULL. If kp->flags
+is set KPROBE_FLAG_DISABLED, that kp will be registered but disabled,
+so, it's handlers aren't hit until calling enable_kprobe(kp).
 
 
 NOTE:
 NOTE:
 1. With the introduction of the "symbol_name" field to struct kprobe,
 1. With the introduction of the "symbol_name" field to struct kprobe,
@@ -363,6 +365,26 @@ probes) in the specified array, they clear the addr field of those
 incorrect probes. However, other probes in the array are
 incorrect probes. However, other probes in the array are
 unregistered correctly.
 unregistered correctly.
 
 
+4.7 disable_*probe
+
+#include <linux/kprobes.h>
+int disable_kprobe(struct kprobe *kp);
+int disable_kretprobe(struct kretprobe *rp);
+int disable_jprobe(struct jprobe *jp);
+
+Temporarily disables the specified *probe. You can enable it again by using
+enable_*probe(). You must specify the probe which has been registered.
+
+4.8 enable_*probe
+
+#include <linux/kprobes.h>
+int enable_kprobe(struct kprobe *kp);
+int enable_kretprobe(struct kretprobe *rp);
+int enable_jprobe(struct jprobe *jp);
+
+Enables *probe which has been disabled by disable_*probe(). You must specify
+the probe which has been registered.
+
 5. Kprobes Features and Limitations
 5. Kprobes Features and Limitations
 
 
 Kprobes allows multiple probes at the same address.  Currently,
 Kprobes allows multiple probes at the same address.  Currently,
@@ -500,10 +522,14 @@ the probe. If the probed function belongs to a module, the module name
 is also specified. Following columns show probe status. If the probe is on
 is also specified. Following columns show probe status. If the probe is on
 a virtual address that is no longer valid (module init sections, module
 a virtual address that is no longer valid (module init sections, module
 virtual addresses that correspond to modules that've been unloaded),
 virtual addresses that correspond to modules that've been unloaded),
-such probes are marked with [GONE].
+such probes are marked with [GONE]. If the probe is temporarily disabled,
+such probes are marked with [DISABLED].
 
 
-/debug/kprobes/enabled: Turn kprobes ON/OFF
+/debug/kprobes/enabled: Turn kprobes ON/OFF forcibly.
 
 
-Provides a knob to globally turn registered kprobes ON or OFF. By default,
-all kprobes are enabled. By echoing "0" to this file, all registered probes
-will be disarmed, till such time a "1" is echoed to this file.
+Provides a knob to globally and forcibly turn registered kprobes ON or OFF.
+By default, all kprobes are enabled. By echoing "0" to this file, all
+registered probes will be disarmed, till such time a "1" is echoed to this
+file. Note that this knob just disarms and arms all kprobes and doesn't
+change each probe's disabling state. This means that disabled kprobes (marked
+[DISABLED]) will be not enabled if you turn ON all kprobes by this knob.

+ 37 - 2
Documentation/powerpc/dts-bindings/fsl/upm-nand.txt

@@ -5,9 +5,21 @@ Required properties:
 - reg : should specify localbus chip select and size used for the chip.
 - reg : should specify localbus chip select and size used for the chip.
 - fsl,upm-addr-offset : UPM pattern offset for the address latch.
 - fsl,upm-addr-offset : UPM pattern offset for the address latch.
 - fsl,upm-cmd-offset : UPM pattern offset for the command latch.
 - fsl,upm-cmd-offset : UPM pattern offset for the command latch.
-- gpios : may specify optional GPIO connected to the Ready-Not-Busy pin.
 
 
-Example:
+Optional properties:
+- fsl,upm-wait-flags : add chip-dependent short delays after running the
+	UPM pattern (0x1), after writing a data byte (0x2) or after
+	writing out a buffer (0x4).
+- fsl,upm-addr-line-cs-offsets : address offsets for multi-chip support.
+	The corresponding address lines are used to select the chip.
+- gpios : may specify optional GPIOs connected to the Ready-Not-Busy pins
+	(R/B#). For multi-chip devices, "n" GPIO definitions are required
+	according to the number of chips.
+- chip-delay : chip dependent delay for transfering data from array to
+	read registers (tR). Required if property "gpios" is not used
+	(R/B# pins not connected).
+
+Examples:
 
 
 upm@1,0 {
 upm@1,0 {
 	compatible = "fsl,upm-nand";
 	compatible = "fsl,upm-nand";
@@ -26,3 +38,26 @@ upm@1,0 {
 		};
 		};
 	};
 	};
 };
 };
+
+upm@3,0 {
+	#address-cells = <0>;
+	#size-cells = <0>;
+	compatible = "tqc,tqm8548-upm-nand", "fsl,upm-nand";
+	reg = <3 0x0 0x800>;
+	fsl,upm-addr-offset = <0x10>;
+	fsl,upm-cmd-offset = <0x08>;
+	/* Multi-chip NAND device */
+	fsl,upm-addr-line-cs-offsets = <0x0 0x200>;
+	fsl,upm-wait-flags = <0x5>;
+	chip-delay = <25>; // in micro-seconds
+
+	nand@0 {
+		#address-cells = <1>;
+		#size-cells = <1>;
+
+		partition@0 {
+			    label = "fs";
+			    reg = <0x00000000 0x10000000>;
+		};
+	};
+};

+ 37 - 9
Documentation/powerpc/dts-bindings/gpio/led.txt

@@ -1,15 +1,43 @@
-LED connected to GPIO
+LEDs connected to GPIO lines
 
 
 Required properties:
 Required properties:
-- compatible : should be "gpio-led".
-- label : (optional) the label for this LED. If omitted, the label is
+- compatible : should be "gpio-leds".
+
+Each LED is represented as a sub-node of the gpio-leds device.  Each
+node's name represents the name of the corresponding LED.
+
+LED sub-node properties:
+- gpios :  Should specify the LED's GPIO, see "Specifying GPIO information
+  for devices" in Documentation/powerpc/booting-without-of.txt.  Active
+  low LEDs should be indicated using flags in the GPIO specifier.
+- label :  (optional) The label for this LED.  If omitted, the label is
   taken from the node name (excluding the unit address).
   taken from the node name (excluding the unit address).
-- gpios : should specify LED GPIO.
+- linux,default-trigger :  (optional) This parameter, if present, is a
+  string defining the trigger assigned to the LED.  Current triggers are:
+    "backlight" - LED will act as a back-light, controlled by the framebuffer
+		  system
+    "default-on" - LED will turn on
+    "heartbeat" - LED "double" flashes at a load average based rate
+    "ide-disk" - LED indicates disk activity
+    "timer" - LED flashes at a fixed, configurable rate
 
 
-Example:
+Examples:
 
 
-led@0 {
-	compatible = "gpio-led";
-	label = "hdd";
-	gpios = <&mcu_pio 0 1>;
+leds {
+	compatible = "gpio-leds";
+	hdd {
+		label = "IDE Activity";
+		gpios = <&mcu_pio 0 1>; /* Active low */
+		linux,default-trigger = "ide-disk";
+	};
 };
 };
+
+run-control {
+	compatible = "gpio-leds";
+	red {
+		gpios = <&mpc8572 6 0>;
+	};
+	green {
+		gpios = <&mpc8572 7 0>;
+	};
+}

+ 4 - 11
Documentation/scsi/aacraid.txt

@@ -60,17 +60,9 @@ Supported Cards/Chipsets
 	9005:0285:9005:02d5	Adaptec	ASR-2405 (Voodoo40 Lite)
 	9005:0285:9005:02d5	Adaptec	ASR-2405 (Voodoo40 Lite)
 	9005:0285:9005:02d6	Adaptec	ASR-2445 (Voodoo44 Lite)
 	9005:0285:9005:02d6	Adaptec	ASR-2445 (Voodoo44 Lite)
 	9005:0285:9005:02d7	Adaptec	ASR-2805 (Voodoo80 Lite)
 	9005:0285:9005:02d7	Adaptec	ASR-2805 (Voodoo80 Lite)
-	9005:0285:9005:02d8	Adaptec	5405G (Voodoo40 PM)
-	9005:0285:9005:02d9	Adaptec	5445G (Voodoo44 PM)
-	9005:0285:9005:02da	Adaptec	5805G (Voodoo80 PM)
-	9005:0285:9005:02db	Adaptec	5085G (Voodoo08 PM)
-	9005:0285:9005:02dc	Adaptec	51245G (Voodoo124 PM)
-	9005:0285:9005:02dd	Adaptec	51645G (Voodoo164 PM)
-	9005:0285:9005:02de	Adaptec	52445G (Voodoo244 PM)
-	9005:0285:9005:02df	Adaptec	ASR-2045G (Voodoo04 Lite PM)
-	9005:0285:9005:02e0	Adaptec	ASR-2405G (Voodoo40 Lite PM)
-	9005:0285:9005:02e1	Adaptec	ASR-2445G (Voodoo44 Lite PM)
-	9005:0285:9005:02e2	Adaptec	ASR-2805G (Voodoo80 Lite PM)
+	9005:0285:9005:02d8	Adaptec	5405Z (Voodoo40 BLBU)
+	9005:0285:9005:02d9	Adaptec	5445Z (Voodoo44 BLBU)
+	9005:0285:9005:02da	Adaptec	5805Z (Voodoo80 BLBU)
 	1011:0046:9005:0364	Adaptec	5400S (Mustang)
 	1011:0046:9005:0364	Adaptec	5400S (Mustang)
 	1011:0046:9005:0365	Adaptec	5400S (Mustang)
 	1011:0046:9005:0365	Adaptec	5400S (Mustang)
 	9005:0287:9005:0800	Adaptec	Themisto (Jupiter)
 	9005:0287:9005:0800	Adaptec	Themisto (Jupiter)
@@ -140,6 +132,7 @@ Deanna Bonds                            (non-DASD support, PAE fibs and 64 bit,
 					 where fibs that go to the hardware are consistently called hw_fibs and
 					 where fibs that go to the hardware are consistently called hw_fibs and
 					 not just fibs like the name of the driver tracking structure)
 					 not just fibs like the name of the driver tracking structure)
 Mark Salyzyn <Mark_Salyzyn@adaptec.com> Fixed panic issues and added some new product ids for upcoming hbas. Performance tuning, card failover and bug mitigations.
 Mark Salyzyn <Mark_Salyzyn@adaptec.com> Fixed panic issues and added some new product ids for upcoming hbas. Performance tuning, card failover and bug mitigations.
+Achim Leubner <Achim_Leubner@adaptec.com>
 
 
 Original Driver
 Original Driver
 -------------------------
 -------------------------

+ 71 - 0
Documentation/sound/alsa/soc/jack.txt

@@ -0,0 +1,71 @@
+ASoC jack detection
+===================
+
+ALSA has a standard API for representing physical jacks to user space,
+the kernel side of which can be seen in include/sound/jack.h.  ASoC
+provides a version of this API adding two additional features:
+
+ - It allows more than one jack detection method to work together on one
+   user visible jack.  In embedded systems it is common for multiple
+   to be present on a single jack but handled by separate bits of
+   hardware.
+
+ - Integration with DAPM, allowing DAPM endpoints to be updated
+   automatically based on the detected jack status (eg, turning off the
+   headphone outputs if no headphones are present).
+
+This is done by splitting the jacks up into three things working
+together: the jack itself represented by a struct snd_soc_jack, sets of
+snd_soc_jack_pins representing DAPM endpoints to update and blocks of
+code providing jack reporting mechanisms.
+
+For example, a system may have a stereo headset jack with two reporting
+mechanisms, one for the headphone and one for the microphone.  Some
+systems won't be able to use their speaker output while a headphone is
+connected and so will want to make sure to update both speaker and
+headphone when the headphone jack status changes.
+
+The jack - struct snd_soc_jack
+==============================
+
+This represents a physical jack on the system and is what is visible to
+user space.  The jack itself is completely passive, it is set up by the
+machine driver and updated by jack detection methods.
+
+Jacks are created by the machine driver calling snd_soc_jack_new().
+
+snd_soc_jack_pin
+================
+
+These represent a DAPM pin to update depending on some of the status
+bits supported by the jack.  Each snd_soc_jack has zero or more of these
+which are updated automatically.  They are created by the machine driver
+and associated with the jack using snd_soc_jack_add_pins().  The status
+of the endpoint may configured to be the opposite of the jack status if
+required (eg, enabling a built in microphone if a microphone is not
+connected via a jack).
+
+Jack detection methods
+======================
+
+Actual jack detection is done by code which is able to monitor some
+input to the system and update a jack by calling snd_soc_jack_report(),
+specifying a subset of bits to update.  The jack detection code should
+be set up by the machine driver, taking configuration for the jack to
+update and the set of things to report when the jack is connected.
+
+Often this is done based on the status of a GPIO - a handler for this is
+provided by the snd_soc_jack_add_gpio() function.  Other methods are
+also available, for example integrated into CODECs.  One example of
+CODEC integrated jack detection can be see in the WM8350 driver.
+
+Each jack may have multiple reporting mechanisms, though it will need at
+least one to be useful.
+
+Machine drivers
+===============
+
+These are all hooked together by the machine driver depending on the
+system hardware.  The machine driver will set up the snd_soc_jack and
+the list of pins to update then set up one or more jack detection
+mechanisms to update that jack based on their current status.

+ 8 - 0
Documentation/sparse.txt

@@ -42,6 +42,14 @@ sure that bitwise types don't get mixed up (little-endian vs big-endian
 vs cpu-endian vs whatever), and there the constant "0" really _is_
 vs cpu-endian vs whatever), and there the constant "0" really _is_
 special.
 special.
 
 
+__bitwise__ - to be used for relatively compact stuff (gfp_t, etc.) that
+is mostly warning-free and is supposed to stay that way.  Warnings will
+be generated without __CHECK_ENDIAN__.
+
+__bitwise - noisy stuff; in particular, __le*/__be* are that.  We really
+don't want to drown in noise unless we'd explicitly asked for it.
+
+
 Getting sparse
 Getting sparse
 ~~~~~~~~~~~~~~
 ~~~~~~~~~~~~~~
 
 

+ 28 - 0
Documentation/sysctl/vm.txt

@@ -39,6 +39,8 @@ Currently, these files are in /proc/sys/vm:
 - nr_hugepages
 - nr_hugepages
 - nr_overcommit_hugepages
 - nr_overcommit_hugepages
 - nr_pdflush_threads
 - nr_pdflush_threads
+- nr_pdflush_threads_min
+- nr_pdflush_threads_max
 - nr_trim_pages         (only if CONFIG_MMU=n)
 - nr_trim_pages         (only if CONFIG_MMU=n)
 - numa_zonelist_order
 - numa_zonelist_order
 - oom_dump_tasks
 - oom_dump_tasks
@@ -463,6 +465,32 @@ The default value is 0.
 
 
 ==============================================================
 ==============================================================
 
 
+nr_pdflush_threads_min
+
+This value controls the minimum number of pdflush threads.
+
+At boot time, the kernel will create and maintain 'nr_pdflush_threads_min'
+threads for the kernel's lifetime.
+
+The default value is 2.  The minimum value you can specify is 1, and
+the maximum value is the current setting of 'nr_pdflush_threads_max'.
+
+See 'nr_pdflush_threads_max' below for more information.
+
+==============================================================
+
+nr_pdflush_threads_max
+
+This value controls the maximum number of pdflush threads that can be
+created.  The pdflush algorithm will create a new pdflush thread (up to
+this maximum) if no pdflush threads have been available for >= 1 second.
+
+The default value is 8.  The minimum value you can specify is the
+current value of 'nr_pdflush_threads_min' and the
+maximum is 1000.
+
+==============================================================
+
 overcommit_memory:
 overcommit_memory:
 
 
 This value contains a flag that enables memory overcommitment.
 This value contains a flag that enables memory overcommitment.

+ 0 - 0
Documentation/ftrace.txt → Documentation/trace/ftrace.txt


+ 0 - 0
Documentation/vm/kmemtrace.txt → Documentation/trace/kmemtrace.txt


+ 0 - 0
Documentation/tracers/mmiotrace.txt → Documentation/trace/mmiotrace.txt


+ 0 - 0
Documentation/tracepoints.txt → Documentation/trace/tracepoints.txt


+ 125 - 0
Documentation/video4linux/pxa_camera.txt

@@ -0,0 +1,125 @@
+                              PXA-Camera Host Driver
+                              ======================
+
+Constraints
+-----------
+  a) Image size for YUV422P format
+     All YUV422P images are enforced to have width x height % 16 = 0.
+     This is due to DMA constraints, which transfers only planes of 8 byte
+     multiples.
+
+
+Global video workflow
+---------------------
+  a) QCI stopped
+     Initialy, the QCI interface is stopped.
+     When a buffer is queued (pxa_videobuf_ops->buf_queue), the QCI starts.
+
+  b) QCI started
+     More buffers can be queued while the QCI is started without halting the
+     capture.  The new buffers are "appended" at the tail of the DMA chain, and
+     smoothly captured one frame after the other.
+
+     Once a buffer is filled in the QCI interface, it is marked as "DONE" and
+     removed from the active buffers list. It can be then requeud or dequeued by
+     userland application.
+
+     Once the last buffer is filled in, the QCI interface stops.
+
+
+DMA usage
+---------
+  a) DMA flow
+     - first buffer queued for capture
+       Once a first buffer is queued for capture, the QCI is started, but data
+       transfer is not started. On "End Of Frame" interrupt, the irq handler
+       starts the DMA chain.
+     - capture of one videobuffer
+       The DMA chain starts transfering data into videobuffer RAM pages.
+       When all pages are transfered, the DMA irq is raised on "ENDINTR" status
+     - finishing one videobuffer
+       The DMA irq handler marks the videobuffer as "done", and removes it from
+       the active running queue
+       Meanwhile, the next videobuffer (if there is one), is transfered by DMA
+     - finishing the last videobuffer
+       On the DMA irq of the last videobuffer, the QCI is stopped.
+
+  b) DMA prepared buffer will have this structure
+
+     +------------+-----+---------------+-----------------+
+     | desc-sg[0] | ... | desc-sg[last] | finisher/linker |
+     +------------+-----+---------------+-----------------+
+
+     This structure is pointed by dma->sg_cpu.
+     The descriptors are used as follows :
+      - desc-sg[i]: i-th descriptor, transfering the i-th sg
+        element to the video buffer scatter gather
+      - finisher: has ddadr=DADDR_STOP, dcmd=ENDIRQEN
+      - linker: has ddadr= desc-sg[0] of next video buffer, dcmd=0
+
+     For the next schema, let's assume d0=desc-sg[0] .. dN=desc-sg[N],
+     "f" stands for finisher and "l" for linker.
+     A typical running chain is :
+
+         Videobuffer 1         Videobuffer 2
+     +---------+----+---+  +----+----+----+---+
+     | d0 | .. | dN | l |  | d0 | .. | dN | f |
+     +---------+----+-|-+  ^----+----+----+---+
+                      |    |
+                      +----+
+
+     After the chaining is finished, the chain looks like :
+
+         Videobuffer 1         Videobuffer 2         Videobuffer 3
+     +---------+----+---+  +----+----+----+---+  +----+----+----+---+
+     | d0 | .. | dN | l |  | d0 | .. | dN | l |  | d0 | .. | dN | f |
+     +---------+----+-|-+  ^----+----+----+-|-+  ^----+----+----+---+
+                      |    |                |    |
+                      +----+                +----+
+                                           new_link
+
+  c) DMA hot chaining timeslice issue
+
+     As DMA chaining is done while DMA _is_ running, the linking may be done
+     while the DMA jumps from one Videobuffer to another. On the schema, that
+     would be a problem if the following sequence is encountered :
+
+      - DMA chain is Videobuffer1 + Videobuffer2
+      - pxa_videobuf_queue() is called to queue Videobuffer3
+      - DMA controller finishes Videobuffer2, and DMA stops
+      =>
+         Videobuffer 1         Videobuffer 2
+     +---------+----+---+  +----+----+----+---+
+     | d0 | .. | dN | l |  | d0 | .. | dN | f |
+     +---------+----+-|-+  ^----+----+----+-^-+
+                      |    |                |
+                      +----+                +-- DMA DDADR loads DDADR_STOP
+
+      - pxa_dma_add_tail_buf() is called, the Videobuffer2 "finisher" is
+        replaced by a "linker" to Videobuffer3 (creation of new_link)
+      - pxa_videobuf_queue() finishes
+      - the DMA irq handler is called, which terminates Videobuffer2
+      - Videobuffer3 capture is not scheduled on DMA chain (as it stopped !!!)
+
+         Videobuffer 1         Videobuffer 2         Videobuffer 3
+     +---------+----+---+  +----+----+----+---+  +----+----+----+---+
+     | d0 | .. | dN | l |  | d0 | .. | dN | l |  | d0 | .. | dN | f |
+     +---------+----+-|-+  ^----+----+----+-|-+  ^----+----+----+---+
+                      |    |                |    |
+                      +----+                +----+
+                                           new_link
+                                          DMA DDADR still is DDADR_STOP
+
+      - pxa_camera_check_link_miss() is called
+        This checks if the DMA is finished and a buffer is still on the
+        pcdev->capture list. If that's the case, the capture will be restarted,
+        and Videobuffer3 is scheduled on DMA chain.
+      - the DMA irq handler finishes
+
+     Note: if DMA stops just after pxa_camera_check_link_miss() reads DDADR()
+     value, we have the guarantee that the DMA irq handler will be called back
+     when the DMA will finish the buffer, and pxa_camera_check_link_miss() will
+     be called again, to reschedule Videobuffer3.
+
+--
+Author: Robert Jarzmik <robert.jarzmik@free.fr>

+ 4 - 17
Documentation/video4linux/v4l2-framework.txt

@@ -90,7 +90,7 @@ up before calling v4l2_device_register then it will be untouched. If dev is
 NULL, then you *must* setup v4l2_dev->name before calling v4l2_device_register.
 NULL, then you *must* setup v4l2_dev->name before calling v4l2_device_register.
 
 
 The first 'dev' argument is normally the struct device pointer of a pci_dev,
 The first 'dev' argument is normally the struct device pointer of a pci_dev,
-usb_device or platform_device. It is rare for dev to be NULL, but it happens
+usb_interface or platform_device. It is rare for dev to be NULL, but it happens
 with ISA devices or when one device creates multiple PCI devices, thus making
 with ISA devices or when one device creates multiple PCI devices, thus making
 it impossible to associate v4l2_dev with a particular parent.
 it impossible to associate v4l2_dev with a particular parent.
 
 
@@ -351,17 +351,6 @@ And this to go from an i2c_client to a v4l2_subdev struct:
 
 
 	struct v4l2_subdev *sd = i2c_get_clientdata(client);
 	struct v4l2_subdev *sd = i2c_get_clientdata(client);
 
 
-Finally you need to make a command function to make driver->command()
-call the right subdev_ops functions:
-
-static int subdev_command(struct i2c_client *client, unsigned cmd, void *arg)
-{
-	return v4l2_subdev_command(i2c_get_clientdata(client), cmd, arg);
-}
-
-If driver->command is never used then you can leave this out. Eventually the
-driver->command usage should be removed from v4l.
-
 Make sure to call v4l2_device_unregister_subdev(sd) when the remove() callback
 Make sure to call v4l2_device_unregister_subdev(sd) when the remove() callback
 is called. This will unregister the sub-device from the bridge driver. It is
 is called. This will unregister the sub-device from the bridge driver. It is
 safe to call this even if the sub-device was never registered.
 safe to call this even if the sub-device was never registered.
@@ -375,14 +364,12 @@ from the remove() callback ensures that this is always done correctly.
 
 
 The bridge driver also has some helper functions it can use:
 The bridge driver also has some helper functions it can use:
 
 
-struct v4l2_subdev *sd = v4l2_i2c_new_subdev(adapter, "module_foo", "chipid", 0x36);
+struct v4l2_subdev *sd = v4l2_i2c_new_subdev(v4l2_dev, adapter,
+	       "module_foo", "chipid", 0x36);
 
 
 This loads the given module (can be NULL if no module needs to be loaded) and
 This loads the given module (can be NULL if no module needs to be loaded) and
 calls i2c_new_device() with the given i2c_adapter and chip/address arguments.
 calls i2c_new_device() with the given i2c_adapter and chip/address arguments.
-If all goes well, then it registers the subdev with the v4l2_device. It gets
-the v4l2_device by calling i2c_get_adapdata(adapter), so you should make sure
-to call i2c_set_adapdata(adapter, v4l2_device) when you setup the i2c_adapter
-in your driver.
+If all goes well, then it registers the subdev with the v4l2_device.
 
 
 You can also use v4l2_i2c_new_probed_subdev() which is very similar to
 You can also use v4l2_i2c_new_probed_subdev() which is very similar to
 v4l2_i2c_new_subdev(), except that it has an array of possible I2C addresses
 v4l2_i2c_new_subdev(), except that it has an array of possible I2C addresses

+ 1402 - 194
MAINTAINERS

@@ -72,7 +72,6 @@ M: Mail patches to
 L: Mailing list that is relevant to this area
 L: Mailing list that is relevant to this area
 W: Web-page with status/info
 W: Web-page with status/info
 T: SCM tree type and location.  Type is one of: git, hg, quilt.
 T: SCM tree type and location.  Type is one of: git, hg, quilt.
-F: Applicable files and/or directories
 S: Status, one of the following:
 S: Status, one of the following:
 
 
 	Supported:	Someone is actually paid to look after this.
 	Supported:	Someone is actually paid to look after this.
@@ -85,23 +84,40 @@ S: Status, one of the following:
 			it has been replaced by a better system and you
 			it has been replaced by a better system and you
 			should be using that.
 			should be using that.
 
 
+F: Files and directories with wildcard patterns.
+   A trailing slash includes all files and subdirectory files.
+	F:	drivers/net/	all files in and below drivers/net
+	F:	drivers/net/*	all files in drivers/net, but not below
+	F:	*/net/*		all files in "any top level directory"/net
+   One pattern per line.  Multiple F: lines acceptable.
+X: Files and directories that are NOT maintained, same rules as F:
+   Files exclusions are tested before file matches.
+   Can be useful for excluding a specific subdirectory, for instance:
+	F:	net/
+	X:	net/ipv6/
+   matches all files in and below net excluding net/ipv6/
+
 3C505 NETWORK DRIVER
 3C505 NETWORK DRIVER
 P:	Philip Blundell
 P:	Philip Blundell
 M:	philb@gnu.org
 M:	philb@gnu.org
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/3c505*
 
 
 3C59X NETWORK DRIVER
 3C59X NETWORK DRIVER
 P:	Steffen Klassert
 P:	Steffen Klassert
 M:	klassert@mathematik.tu-chemnitz.de
 M:	klassert@mathematik.tu-chemnitz.de
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/networking/vortex.txt
+F:	drivers/net/3c59x.c
 
 
 3CR990 NETWORK DRIVER
 3CR990 NETWORK DRIVER
 P:	David Dillow
 P:	David Dillow
 M:	dave@thedillows.org
 M:	dave@thedillows.org
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/typhoon*
 
 
 3W-9XXX SATA-RAID CONTROLLER DRIVER
 3W-9XXX SATA-RAID CONTROLLER DRIVER
 P:	Adam Radford
 P:	Adam Radford
@@ -109,6 +125,7 @@ M:	linuxraid@amcc.com
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 W:	http://www.amcc.com
 W:	http://www.amcc.com
 S:	Supported
 S:	Supported
+F:	drivers/scsi/3w-9xxx*
 
 
 3W-XXXX ATA-RAID CONTROLLER DRIVER
 3W-XXXX ATA-RAID CONTROLLER DRIVER
 P:	Adam Radford
 P:	Adam Radford
@@ -116,35 +133,43 @@ M:	linuxraid@amcc.com
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 W:	http://www.amcc.com
 W:	http://www.amcc.com
 S:	Supported
 S:	Supported
+F:	drivers/scsi/3w-xxxx*
 
 
 53C700 AND 53C700-66 SCSI DRIVER
 53C700 AND 53C700-66 SCSI DRIVER
 P:	James E.J. Bottomley
 P:	James E.J. Bottomley
 M:	James.Bottomley@HansenPartnership.com
 M:	James.Bottomley@HansenPartnership.com
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/scsi/53c700*
 
 
 6PACK NETWORK DRIVER FOR AX.25
 6PACK NETWORK DRIVER FOR AX.25
 P:	Andreas Koensgen
 P:	Andreas Koensgen
 M:	ajk@iehk.rwth-aachen.de
 M:	ajk@iehk.rwth-aachen.de
 L:	linux-hams@vger.kernel.org
 L:	linux-hams@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/hamradio/6pack.c
 
 
 8169 10/100/1000 GIGABIT ETHERNET DRIVER
 8169 10/100/1000 GIGABIT ETHERNET DRIVER
 P:	Francois Romieu
 P:	Francois Romieu
 M:	romieu@fr.zoreil.com
 M:	romieu@fr.zoreil.com
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/r8169.c
 
 
 8250/16?50 (AND CLONE UARTS) SERIAL DRIVER
 8250/16?50 (AND CLONE UARTS) SERIAL DRIVER
 L:	linux-serial@vger.kernel.org
 L:	linux-serial@vger.kernel.org
 W:	http://serial.sourceforge.net
 W:	http://serial.sourceforge.net
 S:	Orphan
 S:	Orphan
+F:	drivers/serial/8250*
+F:	include/linux/serial_8250.h
 
 
 8390 NETWORK DRIVERS [WD80x3/SMC-ELITE, SMC-ULTRA, NE2000, 3C503, etc.]
 8390 NETWORK DRIVERS [WD80x3/SMC-ELITE, SMC-ULTRA, NE2000, 3C503, etc.]
 P:	Paul Gortmaker
 P:	Paul Gortmaker
 M:	p_gortmaker@yahoo.com
 M:	p_gortmaker@yahoo.com
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/*8390*
+F:	drivers/net/ax88796.c
 
 
 9P FILE SYSTEM
 9P FILE SYSTEM
 P:	Eric Van Hensbergen
 P:	Eric Van Hensbergen
@@ -155,14 +180,17 @@ P:	Latchesar Ionkov
 M:	lucho@ionkov.net
 M:	lucho@ionkov.net
 L:	v9fs-developer@lists.sourceforge.net
 L:	v9fs-developer@lists.sourceforge.net
 W:	http://swik.net/v9fs
 W:	http://swik.net/v9fs
-T:	git kernel.org:/pub/scm/linux/kernel/ericvh/v9fs.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/ericvh/v9fs.git
 S:	Maintained
 S:	Maintained
+F:	Documentation/filesystems/9p.txt
+F:	fs/9p/
 
 
 A2232 SERIAL BOARD DRIVER
 A2232 SERIAL BOARD DRIVER
 P:	Enver Haase
 P:	Enver Haase
 M:	A2232@gmx.net
 M:	A2232@gmx.net
 L:	linux-m68k@lists.linux-m68k.org
 L:	linux-m68k@lists.linux-m68k.org
 S:	Maintained
 S:	Maintained
+F:	drivers/char/ser_a2232*
 
 
 AACRAID SCSI RAID DRIVER
 AACRAID SCSI RAID DRIVER
 P:	Adaptec OEM Raid Solutions
 P:	Adaptec OEM Raid Solutions
@@ -170,24 +198,29 @@ M:	aacraid@adaptec.com
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 W:	http://www.adaptec.com/
 W:	http://www.adaptec.com/
 S:	Supported
 S:	Supported
+F:	Documentation/scsi/aacraid.txt
+F:	drivers/scsi/aacraid/
 
 
 ABIT UGURU 1,2 HARDWARE MONITOR DRIVER
 ABIT UGURU 1,2 HARDWARE MONITOR DRIVER
 P:	Hans de Goede
 P:	Hans de Goede
 M:	j.w.r.degoede@hhs.nl
 M:	j.w.r.degoede@hhs.nl
 L:	lm-sensors@lm-sensors.org
 L:	lm-sensors@lm-sensors.org
 S:	Maintained
 S:	Maintained
+F:	drivers/hwmon/abituguru.c
 
 
 ABIT UGURU 3 HARDWARE MONITOR DRIVER
 ABIT UGURU 3 HARDWARE MONITOR DRIVER
 P:	Alistair John Strachan
 P:	Alistair John Strachan
 M:	alistair@devzero.co.uk
 M:	alistair@devzero.co.uk
 L:	lm-sensors@lm-sensors.org
 L:	lm-sensors@lm-sensors.org
 S:	Maintained
 S:	Maintained
+F:	drivers/hwmon/abituguru3.c
 
 
 ACENIC DRIVER
 ACENIC DRIVER
 P:	Jes Sorensen
 P:	Jes Sorensen
 M:	jes@trained-monkey.org
 M:	jes@trained-monkey.org
 L:	linux-acenic@sunsite.dk
 L:	linux-acenic@sunsite.dk
 S:	Maintained
 S:	Maintained
+F:	drivers/net/acenic*
 
 
 ACER WMI LAPTOP EXTRAS
 ACER WMI LAPTOP EXTRAS
 P:	Carlos Corbacho
 P:	Carlos Corbacho
@@ -195,14 +228,18 @@ M:	carlos@strangeworlds.co.uk
 L:	aceracpi@googlegroups.com (subscribers-only)
 L:	aceracpi@googlegroups.com (subscribers-only)
 W:	http://code.google.com/p/aceracpi
 W:	http://code.google.com/p/aceracpi
 S:	Maintained
 S:	Maintained
+F:	drivers/platform/x86/acer-wmi.c
 
 
 ACPI
 ACPI
 P:	Len Brown
 P:	Len Brown
 M:	lenb@kernel.org
 M:	lenb@kernel.org
 L:	linux-acpi@vger.kernel.org
 L:	linux-acpi@vger.kernel.org
 W:	http://www.lesswatts.org/projects/acpi/
 W:	http://www.lesswatts.org/projects/acpi/
-T:	git kernel.org:/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6.git
 S:	Supported
 S:	Supported
+F:	drivers/acpi/
+F:	drivers/pnp/pnpacpi/
+F:	include/linux/acpi.h
 
 
 ACPI BATTERY DRIVERS
 ACPI BATTERY DRIVERS
 P:	Alexey Starikovskiy
 P:	Alexey Starikovskiy
@@ -210,6 +247,8 @@ M:	astarikovskiy@suse.de
 L:	linux-acpi@vger.kernel.org
 L:	linux-acpi@vger.kernel.org
 W:	http://www.lesswatts.org/projects/acpi/
 W:	http://www.lesswatts.org/projects/acpi/
 S:	Supported
 S:	Supported
+F:	drivers/acpi/battery.c
+F:	drivers/acpi/*sbs*
 
 
 ACPI EC DRIVER
 ACPI EC DRIVER
 P:	Alexey Starikovskiy
 P:	Alexey Starikovskiy
@@ -217,6 +256,7 @@ M:	astarikovskiy@suse.de
 L:	linux-acpi@vger.kernel.org
 L:	linux-acpi@vger.kernel.org
 W:	http://www.lesswatts.org/projects/acpi/
 W:	http://www.lesswatts.org/projects/acpi/
 S:	Supported
 S:	Supported
+F:	drivers/acpi/ec.c
 
 
 ACPI FAN DRIVER
 ACPI FAN DRIVER
 P:	Zhang Rui
 P:	Zhang Rui
@@ -224,12 +264,14 @@ M:	rui.zhang@intel.com
 L:	linux-acpi@vger.kernel.org
 L:	linux-acpi@vger.kernel.org
 W:	http://www.lesswatts.org/projects/acpi/
 W:	http://www.lesswatts.org/projects/acpi/
 S:	Supported
 S:	Supported
+F:	drivers/acpi/fan.c
 
 
 ACPI PCI HOTPLUG DRIVER
 ACPI PCI HOTPLUG DRIVER
 P:	Kristen Carlson Accardi
 P:	Kristen Carlson Accardi
 M:	kristen.c.accardi@intel.com
 M:	kristen.c.accardi@intel.com
 L:	linux-pci@vger.kernel.org
 L:	linux-pci@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/pci/hotplug/acpi*
 
 
 ACPI THERMAL DRIVER
 ACPI THERMAL DRIVER
 P:	Zhang Rui
 P:	Zhang Rui
@@ -237,6 +279,7 @@ M:	rui.zhang@intel.com
 L:	linux-acpi@vger.kernel.org
 L:	linux-acpi@vger.kernel.org
 W:	http://www.lesswatts.org/projects/acpi/
 W:	http://www.lesswatts.org/projects/acpi/
 S:	Supported
 S:	Supported
+F:	drivers/acpi/*thermal*
 
 
 ACPI VIDEO DRIVER
 ACPI VIDEO DRIVER
 P:	Zhang Rui
 P:	Zhang Rui
@@ -244,6 +287,7 @@ M:	rui.zhang@intel.com
 L:	linux-acpi@vger.kernel.org
 L:	linux-acpi@vger.kernel.org
 W:	http://www.lesswatts.org/projects/acpi/
 W:	http://www.lesswatts.org/projects/acpi/
 S:	Supported
 S:	Supported
+F:	drivers/acpi/video.c
 
 
 ACPI WMI DRIVER
 ACPI WMI DRIVER
 P:	Carlos Corbacho
 P:	Carlos Corbacho
@@ -251,6 +295,7 @@ M:	carlos@strangeworlds.co.uk
 L:	linux-acpi@vger.kernel.org
 L:	linux-acpi@vger.kernel.org
 W:	http://www.lesswatts.org/projects/acpi/
 W:	http://www.lesswatts.org/projects/acpi/
 S:	Maintained
 S:	Maintained
+F:	drivers/platform/x86/wmi.c
 
 
 AD1889 ALSA SOUND DRIVER
 AD1889 ALSA SOUND DRIVER
 P:	Kyle McMartin
 P:	Kyle McMartin
@@ -260,77 +305,99 @@ M:	T-Bone@parisc-linux.org
 W:	http://wiki.parisc-linux.org/AD1889
 W:	http://wiki.parisc-linux.org/AD1889
 L:	linux-parisc@vger.kernel.org
 L:	linux-parisc@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	sound/pci/ad1889.*
 
 
 ADM1025 HARDWARE MONITOR DRIVER
 ADM1025 HARDWARE MONITOR DRIVER
 P:	Jean Delvare
 P:	Jean Delvare
 M:	khali@linux-fr.org
 M:	khali@linux-fr.org
 L:	lm-sensors@lm-sensors.org
 L:	lm-sensors@lm-sensors.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/hwmon/adm1025
+F:	drivers/hwmon/adm1025.c
 
 
 ADM1029 HARDWARE MONITOR DRIVER
 ADM1029 HARDWARE MONITOR DRIVER
 P:	Corentin Labbe
 P:	Corentin Labbe
 M:	corentin.labbe@geomatys.fr
 M:	corentin.labbe@geomatys.fr
 L:	lm-sensors@lm-sensors.org
 L:	lm-sensors@lm-sensors.org
 S:	Maintained
 S:	Maintained
+F:	drivers/hwmon/adm1029.c
 
 
 ADM8211 WIRELESS DRIVER
 ADM8211 WIRELESS DRIVER
 P:	Michael Wu
 P:	Michael Wu
 M:	flamingice@sourmilk.net
 M:	flamingice@sourmilk.net
 L:	linux-wireless@vger.kernel.org
 L:	linux-wireless@vger.kernel.org
 W:	http://linuxwireless.org/
 W:	http://linuxwireless.org/
-T:	git kernel.org:/pub/scm/linux/kernel/git/mwu/mac80211-drivers.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mwu/mac80211-drivers.git
 S:	Maintained
 S:	Maintained
+F:	drivers/net/wireless/adm8211.*
 
 
 ADT746X FAN DRIVER
 ADT746X FAN DRIVER
 P:	Colin Leroy
 P:	Colin Leroy
 M:	colin@colino.net
 M:	colin@colino.net
 S:	Maintained
 S:	Maintained
+F:	drivers/macintosh/therm_adt746x.c
 
 
 ADVANSYS SCSI DRIVER
 ADVANSYS SCSI DRIVER
 P:	Matthew Wilcox
 P:	Matthew Wilcox
 M:	matthew@wil.cx
 M:	matthew@wil.cx
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/scsi/advansys.txt
+F:	drivers/scsi/advansys.c
 
 
 AEDSP16 DRIVER
 AEDSP16 DRIVER
 P:	Riccardo Facchetti
 P:	Riccardo Facchetti
 M:	fizban@tin.it
 M:	fizban@tin.it
 S:	Maintained
 S:	Maintained
+F:	sound/oss/aedsp16.c
 
 
 AFFS FILE SYSTEM
 AFFS FILE SYSTEM
 P:	Roman Zippel
 P:	Roman Zippel
 M:	zippel@linux-m68k.org
 M:	zippel@linux-m68k.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/filesystems/affs.txt
+F:	fs/affs/
 
 
 AFS FILESYSTEM & AF_RXRPC SOCKET DOMAIN
 AFS FILESYSTEM & AF_RXRPC SOCKET DOMAIN
 P:	David Howells
 P:	David Howells
 M:	dhowells@redhat.com
 M:	dhowells@redhat.com
 L:	linux-afs@lists.infradead.org
 L:	linux-afs@lists.infradead.org
 S:	Supported
 S:	Supported
+F:	fs/afs/
+F:	include/net/af_rxrpc.h
+F:	net/rxrpc/af_rxrpc.c
 
 
 AGPGART DRIVER
 AGPGART DRIVER
 P:	David Airlie
 P:	David Airlie
 M:	airlied@linux.ie
 M:	airlied@linux.ie
-T:	git kernel.org:/pub/scm/linux/kernel/git/airlied/drm-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6.git
 S:	Maintained
 S:	Maintained
+F:	drivers/char/agp/
+F:	include/linux/agp*
 
 
 AHA152X SCSI DRIVER
 AHA152X SCSI DRIVER
 P:	Juergen E. Fischer
 P:	Juergen E. Fischer
-M:	Juergen Fischer <fischer@norbit.de>
+M:	fischer@norbit.de
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/scsi/aha152x*
+F:	drivers/scsi/pcmcia/aha152x*
 
 
 AIC7XXX / AIC79XX SCSI DRIVER
 AIC7XXX / AIC79XX SCSI DRIVER
 P:	Hannes Reinecke
 P:	Hannes Reinecke
 M:	hare@suse.de
 M:	hare@suse.de
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/scsi/aic7xxx/
+F:	drivers/scsi/aic7xxx_old/
 
 
 AIO
 AIO
 P:	Benjamin LaHaise
 P:	Benjamin LaHaise
 M:	bcrl@kvack.org
 M:	bcrl@kvack.org
 L:	linux-aio@kvack.org
 L:	linux-aio@kvack.org
 S:	Supported
 S:	Supported
+F:	fs/aio.c
+F:	include/linux/*aio*.h
 
 
 ALCATEL SPEEDTOUCH USB DRIVER
 ALCATEL SPEEDTOUCH USB DRIVER
 P:	Duncan Sands
 P:	Duncan Sands
@@ -338,17 +405,22 @@ M:	duncan.sands@free.fr
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 W:	http://www.linux-usb.org/SpeedTouch/
 W:	http://www.linux-usb.org/SpeedTouch/
 S:	Maintained
 S:	Maintained
+F:	drivers/usb/atm/speedtch.c
+F:	drivers/usb/atm/usbatm.c
 
 
 ALCHEMY AU1XX0 MMC DRIVER
 ALCHEMY AU1XX0 MMC DRIVER
 P:	Manuel Lauss
 P:	Manuel Lauss
 M:	manuel.lauss@gmail.com
 M:	manuel.lauss@gmail.com
 S:	Maintained
 S:	Maintained
+F:	drivers/mmc/host/au1xmmc.c
 
 
 ALI1563 I2C DRIVER
 ALI1563 I2C DRIVER
 P:	Rudolf Marek
 P:	Rudolf Marek
 M:	r.marek@assembler.cz
 M:	r.marek@assembler.cz
 L:	linux-i2c@vger.kernel.org
 L:	linux-i2c@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/i2c/busses/i2c-ali1563
+F:	drivers/i2c/busses/i2c-ali1563.c
 
 
 ALPHA PORT
 ALPHA PORT
 P:	Richard Henderson
 P:	Richard Henderson
@@ -358,31 +430,41 @@ P:	Ivan Kokshaysky
 M:	ink@jurassic.park.msu.ru
 M:	ink@jurassic.park.msu.ru
 S:	Maintained for 2.4; PCI support for 2.6.
 S:	Maintained for 2.4; PCI support for 2.6.
 L:	linux-alpha@vger.kernel.org
 L:	linux-alpha@vger.kernel.org
+F:	arch/alpha/
 
 
 AMD GEODE CS5536 USB DEVICE CONTROLLER DRIVER
 AMD GEODE CS5536 USB DEVICE CONTROLLER DRIVER
 P:	Thomas Dahlmann
 P:	Thomas Dahlmann
 M:	thomas.dahlmann@amd.com
 M:	thomas.dahlmann@amd.com
 L:	linux-geode@lists.infradead.org (moderated for non-subscribers)
 L:	linux-geode@lists.infradead.org (moderated for non-subscribers)
 S:	Supported
 S:	Supported
+F:	drivers/usb/gadget/amd5536udc.*
 
 
 AMD GEODE PROCESSOR/CHIPSET SUPPORT
 AMD GEODE PROCESSOR/CHIPSET SUPPORT
 P:	Jordan Crouse
 P:	Jordan Crouse
 L:	linux-geode@lists.infradead.org (moderated for non-subscribers)
 L:	linux-geode@lists.infradead.org (moderated for non-subscribers)
 W:	http://www.amd.com/us-en/ConnectivitySolutions/TechnicalResources/0,,50_2334_2452_11363,00.html
 W:	http://www.amd.com/us-en/ConnectivitySolutions/TechnicalResources/0,,50_2334_2452_11363,00.html
 S:	Supported
 S:	Supported
+F:	arch/x86/kernel/geode_32.c
+F:	drivers/char/hw_random/geode-rng.c
+F:	drivers/crypto/geode*
+F:	drivers/video/geode/
+F:	arch/x86/include/asm/geode.h
 
 
 AMD IOMMU (AMD-VI)
 AMD IOMMU (AMD-VI)
 P:	Joerg Roedel
 P:	Joerg Roedel
 M:	joerg.roedel@amd.com
 M:	joerg.roedel@amd.com
 L:	iommu@lists.linux-foundation.org
 L:	iommu@lists.linux-foundation.org
-T:	git://git.kernel.org/pub/scm/linux/kernel/git/joro/linux-2.6-iommu.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/joro/linux-2.6-iommu.git
 S:	Supported
 S:	Supported
+F:	arch/x86/kernel/amd_iommu*.c
+F:	arch/x86/include/asm/amd_iommu*.h
 
 
 AMD MICROCODE UPDATE SUPPORT
 AMD MICROCODE UPDATE SUPPORT
-P:      Andreas Herrmann
-M:      andeas.herrmann3@amd.com
-L:      amd64-microcode@amd64.org
-S:      Supported
+P:	Andreas Herrmann
+M:	andeas.herrmann3@amd.com
+L:	amd64-microcode@amd64.org
+S:	Supported
+F:	arch/x86/kernel/microcode_amd.c
 
 
 AMS (Apple Motion Sensor) DRIVER
 AMS (Apple Motion Sensor) DRIVER
 P:	Stelian Pop
 P:	Stelian Pop
@@ -390,6 +472,7 @@ M:	stelian@popies.net
 P:	Michael Hanselmann
 P:	Michael Hanselmann
 M:	linux-kernel@hansmi.ch
 M:	linux-kernel@hansmi.ch
 S:	Supported
 S:	Supported
+F:	drivers/hwmon/ams/
 
 
 AMSO1100 RNIC DRIVER
 AMSO1100 RNIC DRIVER
 P:	Tom Tucker
 P:	Tom Tucker
@@ -398,6 +481,7 @@ P:	Steve Wise
 M:	swise@opengridcomputing.com
 M:	swise@opengridcomputing.com
 L:	general@lists.openfabrics.org
 L:	general@lists.openfabrics.org
 S:	Maintained
 S:	Maintained
+F:	drivers/infiniband/hw/amso1100/
 
 
 AOA (Apple Onboard Audio) ALSA DRIVER
 AOA (Apple Onboard Audio) ALSA DRIVER
 P:	Johannes Berg
 P:	Johannes Berg
@@ -405,6 +489,7 @@ M:	johannes@sipsolutions.net
 L:	linuxppc-dev@ozlabs.org
 L:	linuxppc-dev@ozlabs.org
 L:	alsa-devel@alsa-project.org (subscribers-only)
 L:	alsa-devel@alsa-project.org (subscribers-only)
 S:	Maintained
 S:	Maintained
+F:	sound/aoa/
 
 
 APM DRIVER
 APM DRIVER
 P:	Stephen Rothwell
 P:	Stephen Rothwell
@@ -412,48 +497,63 @@ M:	sfr@canb.auug.org.au
 L:	linux-laptop@vger.kernel.org
 L:	linux-laptop@vger.kernel.org
 W:	http://www.canb.auug.org.au/~sfr/
 W:	http://www.canb.auug.org.au/~sfr/
 S:	Supported
 S:	Supported
+F:	arch/x86/kernel/apm_32.c
+F:	include/linux/apm_bios.h
 
 
 APPLE BCM5974 MULTITOUCH DRIVER
 APPLE BCM5974 MULTITOUCH DRIVER
 P:	Henrik Rydberg
 P:	Henrik Rydberg
 M:	rydberg@euromail.se
 M:	rydberg@euromail.se
 L:	linux-input@vger.kernel.org
 L:	linux-input@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/input/mouse/bcm5974.c
 
 
 APPLE SMC DRIVER
 APPLE SMC DRIVER
 P:	Nicolas Boichat
 P:	Nicolas Boichat
 M:	nicolas@boichat.ch
 M:	nicolas@boichat.ch
 L:	mactel-linux-devel@lists.sourceforge.net
 L:	mactel-linux-devel@lists.sourceforge.net
 S:	Maintained
 S:	Maintained
+F:	drivers/hwmon/applesmc.c
 
 
 APPLETALK NETWORK LAYER
 APPLETALK NETWORK LAYER
 P:	Arnaldo Carvalho de Melo
 P:	Arnaldo Carvalho de Melo
 M:	acme@ghostprotocols.net
 M:	acme@ghostprotocols.net
 S:	Maintained
 S:	Maintained
+F:	drivers/net/appletalk/
+F:	net/appletalk/
 
 
 APPLETOUCH TOUCHPAD DRIVER
 APPLETOUCH TOUCHPAD DRIVER
 P:	Johannes Berg
 P:	Johannes Berg
 M:	johannes@sipsolutions.net
 M:	johannes@sipsolutions.net
 L:	linux-input@vger.kernel.org
 L:	linux-input@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/input/appletouch.txt
+F:	drivers/input/mouse/appletouch.c
 
 
 ARC FRAMEBUFFER DRIVER
 ARC FRAMEBUFFER DRIVER
 P:	Jaya Kumar
 P:	Jaya Kumar
 M:	jayalk@intworks.biz
 M:	jayalk@intworks.biz
 S:	Maintained
 S:	Maintained
+F:	drivers/video/arcfb.c
+F:	drivers/video/fb_defio.c
 
 
 ARM MFM AND FLOPPY DRIVERS
 ARM MFM AND FLOPPY DRIVERS
 P:	Ian Molton
 P:	Ian Molton
 M:	spyro@f2s.com
 M:	spyro@f2s.com
 S:	Maintained
 S:	Maintained
+F:	arch/arm/lib/floppydma.S
+F:	arch/arm/include/asm/floppy.h
 
 
 ARM PRIMECELL MMCI PL180/1 DRIVER
 ARM PRIMECELL MMCI PL180/1 DRIVER
 S:	Orphan
 S:	Orphan
+F:	drivers/mmc/host/mmci.*
 
 
 ARM/ADI ROADRUNNER MACHINE SUPPORT
 ARM/ADI ROADRUNNER MACHINE SUPPORT
 P:	Lennert Buytenhek
 P:	Lennert Buytenhek
 M:	kernel@wantstofly.org
 M:	kernel@wantstofly.org
 L:	linux-arm-kernel@lists.arm.linux.org.uk (subscribers-only)
 L:	linux-arm-kernel@lists.arm.linux.org.uk (subscribers-only)
 S:	Maintained
 S:	Maintained
+F:	arch/arm/mach-ixp23xx/
+F:	arch/arm/mach-ixp23xx/include/mach/
 
 
 ARM/ADS SPHERE MACHINE SUPPORT
 ARM/ADS SPHERE MACHINE SUPPORT
 P:	Lennert Buytenhek
 P:	Lennert Buytenhek
@@ -507,7 +607,7 @@ ARM/CORTINA SYSTEMS GEMINI ARM ARCHITECTURE
 P:	Paulius Zaleckas
 P:	Paulius Zaleckas
 M:	paulius.zaleckas@teltonika.lt
 M:	paulius.zaleckas@teltonika.lt
 L:	linux-arm-kernel@lists.arm.linux.org.uk (subscribers-only)
 L:	linux-arm-kernel@lists.arm.linux.org.uk (subscribers-only)
-T:	git gitorious.org/linux-gemini/mainline.git
+T:	git git://gitorious.org/linux-gemini/mainline.git
 S:	Maintained
 S:	Maintained
 
 
 ARM/EZX SMARTPHONES (A780, A910, A1200, E680, ROKR E2 and ROKR E6)
 ARM/EZX SMARTPHONES (A780, A910, A1200, E680, ROKR E2 and ROKR E6)
@@ -636,17 +736,17 @@ P:	Dirk Opfer
 M:	dirk@opfer-online.de
 M:	dirk@opfer-online.de
 S:	Maintained
 S:	Maintained
 
 
-ARM/PALMTX,PALMT5,PALMLD SUPPORT
+ARM/PALMTX,PALMT5,PALMLD,PALMTE2 SUPPORT
 P:	Marek Vasut
 P:	Marek Vasut
 M:	marek.vasut@gmail.com
 M:	marek.vasut@gmail.com
 W:	http://hackndev.com
 W:	http://hackndev.com
 S:	Maintained
 S:	Maintained
 
 
 ARM/PALMZ72 SUPPORT
 ARM/PALMZ72 SUPPORT
-P:     Sergey Lapin
-M:     slapin@ossfans.org
-W:     http://hackndev.com
-S:     Maintained
+P:	Sergey Lapin
+M:	slapin@ossfans.org
+W:	http://hackndev.com
+S:	Maintained
 
 
 ARM/PLEB SUPPORT
 ARM/PLEB SUPPORT
 P:	Peter Chubb
 P:	Peter Chubb
@@ -707,16 +807,17 @@ L:	linux-arm-kernel@lists.arm.linux.org.uk (subscribers-only)
 S:	Maintained
 S:	Maintained
 
 
 ARM/NUVOTON W90X900 ARM ARCHITECTURE
 ARM/NUVOTON W90X900 ARM ARCHITECTURE
-P:      Wan ZongShun
-M:      mcuos.com@gmail.com
-L:      linux-arm-kernel@lists.arm.linux.org.uk (subscribers-only)
-W:      http://www.mcuos.com
-S:      Maintained
+P:	Wan ZongShun
+M:	mcuos.com@gmail.com
+L:	linux-arm-kernel@lists.arm.linux.org.uk (subscribers-only)
+W:	http://www.mcuos.com
+S:	Maintained
 
 
 ARPD SUPPORT
 ARPD SUPPORT
 P:	Jonathan Layes
 P:	Jonathan Layes
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	net/ipv4/arp.c
 
 
 ASUS ACPI EXTRAS DRIVER
 ASUS ACPI EXTRAS DRIVER
 P:	Corentin Chary
 P:	Corentin Chary
@@ -727,12 +828,15 @@ L:	acpi4asus-user@lists.sourceforge.net
 W:	http://sourceforge.net/projects/acpi4asus
 W:	http://sourceforge.net/projects/acpi4asus
 W:	http://xf.iksaif.net/acpi4asus
 W:	http://xf.iksaif.net/acpi4asus
 S:	Maintained
 S:	Maintained
+F:	arch/x86/kernel/acpi/boot.c
+F:	drivers/platform/x86/asus_acpi.c
 
 
 ASUS ASB100 HARDWARE MONITOR DRIVER
 ASUS ASB100 HARDWARE MONITOR DRIVER
 P:	Mark M. Hoffman
 P:	Mark M. Hoffman
 M:	mhoffman@lightlink.com
 M:	mhoffman@lightlink.com
 L:	lm-sensors@lm-sensors.org
 L:	lm-sensors@lm-sensors.org
 S:	Maintained
 S:	Maintained
+F:	drivers/hwmon/asb100.c
 
 
 ASUS LAPTOP EXTRAS DRIVER
 ASUS LAPTOP EXTRAS DRIVER
 P:	Corentin Chary
 P:	Corentin Chary
@@ -741,6 +845,7 @@ L:	acpi4asus-user@lists.sourceforge.net
 W:	http://sourceforge.net/projects/acpi4asus
 W:	http://sourceforge.net/projects/acpi4asus
 W:	http://xf.iksaif.net/acpi4asus
 W:	http://xf.iksaif.net/acpi4asus
 S:	Maintained
 S:	Maintained
+F:	drivers/platform/x86/asus-laptop.c
 
 
 ASYNCHRONOUS TRANSFERS/TRANSFORMS (IOAT) API
 ASYNCHRONOUS TRANSFERS/TRANSFORMS (IOAT) API
 P:	Dan Williams
 P:	Dan Williams
@@ -750,12 +855,19 @@ M:	maciej.sosnowski@intel.com
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 W:	http://sourceforge.net/projects/xscaleiop
 W:	http://sourceforge.net/projects/xscaleiop
 S:	Supported
 S:	Supported
+F:	Documentation/crypto/async-tx-api.txt
+F:	crypto/async_tx/
+F:	drivers/dma/
+F:	include/linux/dmaengine.h
+F:	include/linux/async_tx.h
 
 
 ATA OVER ETHERNET (AOE) DRIVER
 ATA OVER ETHERNET (AOE) DRIVER
 P:	Ed L. Cashin
 P:	Ed L. Cashin
 M:	ecashin@coraid.com
 M:	ecashin@coraid.com
 W:	http://www.coraid.com/support/linux
 W:	http://www.coraid.com/support/linux
 S:	Supported
 S:	Supported
+F:	Documentation/aoe/
+F:	drivers/block/aoe/
 
 
 ATHEROS ATH5K WIRELESS DRIVER
 ATHEROS ATH5K WIRELESS DRIVER
 P:	Jiri Slaby
 P:	Jiri Slaby
@@ -769,6 +881,7 @@ M:	me@bobcopeland.com
 L:	linux-wireless@vger.kernel.org
 L:	linux-wireless@vger.kernel.org
 L:	ath5k-devel@lists.ath5k.org
 L:	ath5k-devel@lists.ath5k.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/wireless/ath5k/
 
 
 ATHEROS ATH9K WIRELESS DRIVER
 ATHEROS ATH9K WIRELESS DRIVER
 P:	Luis R. Rodriguez
 P:	Luis R. Rodriguez
@@ -778,6 +891,7 @@ M:	jmalinen@atheros.com
 L:	linux-wireless@vger.kernel.org
 L:	linux-wireless@vger.kernel.org
 L:	ath9k-devel@lists.ath9k.org
 L:	ath9k-devel@lists.ath9k.org
 S:	Supported
 S:	Supported
+F:	drivers/net/wireless/ath9k/
 
 
 ATHEROS AR9170 WIRELESS DRIVER
 ATHEROS AR9170 WIRELESS DRIVER
 P:	Christian Lamparter
 P:	Christian Lamparter
@@ -791,6 +905,7 @@ ATI_REMOTE2 DRIVER
 P:	Ville Syrjala
 P:	Ville Syrjala
 M:	syrjala@sci.fi
 M:	syrjala@sci.fi
 S:	Maintained
 S:	Maintained
+F:	drivers/input/misc/ati_remote2.c
 
 
 ATLX ETHERNET DRIVERS
 ATLX ETHERNET DRIVERS
 P:	Jay Cliburn
 P:	Jay Cliburn
@@ -803,6 +918,7 @@ L:	atl1-devel@lists.sourceforge.net
 W:	http://sourceforge.net/projects/atl1
 W:	http://sourceforge.net/projects/atl1
 W:	http://atl1.sourceforge.net
 W:	http://atl1.sourceforge.net
 S:	Maintained
 S:	Maintained
+F:	drivers/net/atlx/
 
 
 ATM
 ATM
 P:	Chas Williams
 P:	Chas Williams
@@ -811,6 +927,8 @@ L:	linux-atm-general@lists.sourceforge.net (subscribers-only)
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 W:	http://linux-atm.sourceforge.net
 W:	http://linux-atm.sourceforge.net
 S:	Maintained
 S:	Maintained
+F:	drivers/atm/
+F:	include/linux/atm*
 
 
 ATMEL AT91 MCI DRIVER
 ATMEL AT91 MCI DRIVER
 P:	Nicolas Ferre
 P:	Nicolas Ferre
@@ -819,28 +937,34 @@ L:	linux-arm-kernel@lists.arm.linux.org.uk (subscribers-only)
 W:	http://www.atmel.com/products/AT91/
 W:	http://www.atmel.com/products/AT91/
 W:	http://www.at91.com/
 W:	http://www.at91.com/
 S:	Maintained
 S:	Maintained
+F:	drivers/mmc/host/at91_mci.c
 
 
 ATMEL AT91 / AT32 SERIAL DRIVER
 ATMEL AT91 / AT32 SERIAL DRIVER
 P:	Haavard Skinnemoen
 P:	Haavard Skinnemoen
 M:	hskinnemoen@atmel.com
 M:	hskinnemoen@atmel.com
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/serial/atmel_serial.c
 
 
 ATMEL LCDFB DRIVER
 ATMEL LCDFB DRIVER
 P:	Nicolas Ferre
 P:	Nicolas Ferre
 M:	nicolas.ferre@atmel.com
 M:	nicolas.ferre@atmel.com
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 S:	Maintained
 S:	Maintained
+F:	drivers/video/atmel_lcdfb.c
+F:	include/video/atmel_lcdc.h
 
 
 ATMEL MACB ETHERNET DRIVER
 ATMEL MACB ETHERNET DRIVER
 P:	Haavard Skinnemoen
 P:	Haavard Skinnemoen
 M:	hskinnemoen@atmel.com
 M:	hskinnemoen@atmel.com
 S:	Supported
 S:	Supported
+F:	drivers/net/macb.*
 
 
 ATMEL SPI DRIVER
 ATMEL SPI DRIVER
 P:	Haavard Skinnemoen
 P:	Haavard Skinnemoen
 M:	hskinnemoen@atmel.com
 M:	hskinnemoen@atmel.com
 S:	Supported
 S:	Supported
+F:	drivers/spi/atmel_spi.*
 
 
 ATMEL USBA UDC DRIVER
 ATMEL USBA UDC DRIVER
 P:	Haavard Skinnemoen
 P:	Haavard Skinnemoen
@@ -848,6 +972,7 @@ M:	hskinnemoen@atmel.com
 L:	kernel@avr32linux.org
 L:	kernel@avr32linux.org
 W:	http://avr32linux.org/twiki/bin/view/Main/AtmelUsbDeviceDriver
 W:	http://avr32linux.org/twiki/bin/view/Main/AtmelUsbDeviceDriver
 S:	Supported
 S:	Supported
+F:	drivers/usb/gadget/atmel_usba_udc.*
 
 
 ATMEL WIRELESS DRIVER
 ATMEL WIRELESS DRIVER
 P:	Simon Kelley
 P:	Simon Kelley
@@ -856,6 +981,7 @@ L:	linux-wireless@vger.kernel.org
 W:	http://www.thekelleys.org.uk/atmel
 W:	http://www.thekelleys.org.uk/atmel
 W:	http://atmelwlandriver.sourceforge.net/
 W:	http://atmelwlandriver.sourceforge.net/
 S:	Maintained
 S:	Maintained
+F:	drivers/net/wireless/atmel*
 
 
 AUDIT SUBSYSTEM
 AUDIT SUBSYSTEM
 P:	Al Viro
 P:	Al Viro
@@ -864,8 +990,10 @@ P:	Eric Paris
 M:	eparis@redhat.com
 M:	eparis@redhat.com
 L:	linux-audit@redhat.com (subscribers-only)
 L:	linux-audit@redhat.com (subscribers-only)
 W:	http://people.redhat.com/sgrubb/audit/
 W:	http://people.redhat.com/sgrubb/audit/
-T:	git git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current.git
 S:	Maintained
 S:	Maintained
+F:	include/linux/audit.h
+F:	kernel/audit*
 
 
 AUXILIARY DISPLAY DRIVERS
 AUXILIARY DISPLAY DRIVERS
 P:	Miguel Ojeda Sandonis
 P:	Miguel Ojeda Sandonis
@@ -874,6 +1002,8 @@ L:	linux-kernel@vger.kernel.org
 W:	http://miguelojeda.es/auxdisplay.htm
 W:	http://miguelojeda.es/auxdisplay.htm
 W:	http://jair.lab.fi.uva.es/~migojed/auxdisplay.htm
 W:	http://jair.lab.fi.uva.es/~migojed/auxdisplay.htm
 S:	Maintained
 S:	Maintained
+F:	drivers/auxdisplay/
+F:	include/linux/cfag12864b.h
 
 
 AVR32 ARCHITECTURE
 AVR32 ARCHITECTURE
 P:	Haavard Skinnemoen
 P:	Haavard Skinnemoen
@@ -882,11 +1012,13 @@ W:	http://www.atmel.com/products/AVR32/
 W:	http://avr32linux.org/
 W:	http://avr32linux.org/
 W:	http://avrfreaks.net/
 W:	http://avrfreaks.net/
 S:	Supported
 S:	Supported
+F:	arch/avr32/
 
 
 AVR32/AT32AP MACHINE SUPPORT
 AVR32/AT32AP MACHINE SUPPORT
 P:	Haavard Skinnemoen
 P:	Haavard Skinnemoen
 M:	hskinnemoen@atmel.com
 M:	hskinnemoen@atmel.com
 S:	Supported
 S:	Supported
+F:	arch/avr32/mach-at32ap/
 
 
 AX.25 NETWORK LAYER
 AX.25 NETWORK LAYER
 P:	Ralf Baechle
 P:	Ralf Baechle
@@ -894,6 +1026,9 @@ M:	ralf@linux-mips.org
 L:	linux-hams@vger.kernel.org
 L:	linux-hams@vger.kernel.org
 W:	http://www.linux-ax25.org/
 W:	http://www.linux-ax25.org/
 S:	Maintained
 S:	Maintained
+F:	include/linux/ax25.h
+F:	include/net/ax25.h
+F:	net/ax25/
 
 
 B43 WIRELESS DRIVER
 B43 WIRELESS DRIVER
 P:	Michael Buesch
 P:	Michael Buesch
@@ -903,6 +1038,7 @@ M:	stefano.brivio@polimi.it
 L:	linux-wireless@vger.kernel.org
 L:	linux-wireless@vger.kernel.org
 W:	http://linuxwireless.org/en/users/Drivers/b43
 W:	http://linuxwireless.org/en/users/Drivers/b43
 S:	Maintained
 S:	Maintained
+F:	drivers/net/wireless/b43/
 
 
 B43LEGACY WIRELESS DRIVER
 B43LEGACY WIRELESS DRIVER
 P:	Larry Finger
 P:	Larry Finger
@@ -912,11 +1048,14 @@ M:	stefano.brivio@polimi.it
 L:	linux-wireless@vger.kernel.org
 L:	linux-wireless@vger.kernel.org
 W:	http://linuxwireless.org/en/users/Drivers/b43
 W:	http://linuxwireless.org/en/users/Drivers/b43
 S:	Maintained
 S:	Maintained
+F:	drivers/net/wireless/b43legacy/
 
 
 BACKLIGHT CLASS/SUBSYSTEM
 BACKLIGHT CLASS/SUBSYSTEM
 P:	Richard Purdie
 P:	Richard Purdie
 M:	rpurdie@rpsys.net
 M:	rpurdie@rpsys.net
 S:	Maintained
 S:	Maintained
+F:	drivers/video/backlight/
+F:	include/linux/backlight.h
 
 
 BAYCOM/HDLCDRV DRIVERS FOR AX.25
 BAYCOM/HDLCDRV DRIVERS FOR AX.25
 P:	Thomas Sailer
 P:	Thomas Sailer
@@ -924,18 +1063,24 @@ M:	t.sailer@alumni.ethz.ch
 L:	linux-hams@vger.kernel.org
 L:	linux-hams@vger.kernel.org
 W:	http://www.baycom.org/~tom/ham/ham.html
 W:	http://www.baycom.org/~tom/ham/ham.html
 S:	Maintained
 S:	Maintained
+F:	drivers/net/hamradio/baycom*
 
 
 BEFS FILE SYSTEM
 BEFS FILE SYSTEM
 P:	Sergey S. Kostyliov
 P:	Sergey S. Kostyliov
 M:	rathamahata@php4.ru
 M:	rathamahata@php4.ru
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/filesystems/befs.txt
+F:	fs/befs/
 
 
 BFS FILE SYSTEM
 BFS FILE SYSTEM
 P:	Tigran A. Aivazian
 P:	Tigran A. Aivazian
 M:	tigran@aivazian.fsnet.co.uk
 M:	tigran@aivazian.fsnet.co.uk
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/filesystems/bfs.txt
+F:	fs/bfs/
+F:	include/linux/bfs_fs.h
 
 
 BLACKFIN ARCHITECTURE
 BLACKFIN ARCHITECTURE
 P:	Bryan Wu
 P:	Bryan Wu
@@ -943,6 +1088,7 @@ M:	cooloney@kernel.org
 L:	uclinux-dist-devel@blackfin.uclinux.org
 L:	uclinux-dist-devel@blackfin.uclinux.org
 W:	http://blackfin.uclinux.org
 W:	http://blackfin.uclinux.org
 S:	Supported
 S:	Supported
+F:	arch/blackfin/
 
 
 BLACKFIN EMAC DRIVER
 BLACKFIN EMAC DRIVER
 P:	Bryan Wu
 P:	Bryan Wu
@@ -950,6 +1096,7 @@ M:	cooloney@kernel.org
 L:	uclinux-dist-devel@blackfin.uclinux.org (subscribers-only)
 L:	uclinux-dist-devel@blackfin.uclinux.org (subscribers-only)
 W:	http://blackfin.uclinux.org
 W:	http://blackfin.uclinux.org
 S:	Supported
 S:	Supported
+F:	drivers/net/bfin_mac.*
 
 
 BLACKFIN RTC DRIVER
 BLACKFIN RTC DRIVER
 P:	Mike Frysinger
 P:	Mike Frysinger
@@ -957,6 +1104,7 @@ M:	vapier.adi@gmail.com
 L:	uclinux-dist-devel@blackfin.uclinux.org (subscribers-only)
 L:	uclinux-dist-devel@blackfin.uclinux.org (subscribers-only)
 W:	http://blackfin.uclinux.org
 W:	http://blackfin.uclinux.org
 S:	Supported
 S:	Supported
+F:	drivers/rtc/rtc-bfin.c
 
 
 BLACKFIN SERIAL DRIVER
 BLACKFIN SERIAL DRIVER
 P:	Sonic Zhang
 P:	Sonic Zhang
@@ -964,6 +1112,7 @@ M:	sonic.zhang@analog.com
 L:	uclinux-dist-devel@blackfin.uclinux.org (subscribers-only)
 L:	uclinux-dist-devel@blackfin.uclinux.org (subscribers-only)
 W:	http://blackfin.uclinux.org
 W:	http://blackfin.uclinux.org
 S:	Supported
 S:	Supported
+F:	drivers/serial/bfin_5xx.c
 
 
 BLACKFIN WATCHDOG DRIVER
 BLACKFIN WATCHDOG DRIVER
 P:	Mike Frysinger
 P:	Mike Frysinger
@@ -971,6 +1120,7 @@ M:	vapier.adi@gmail.com
 L:	uclinux-dist-devel@blackfin.uclinux.org (subscribers-only)
 L:	uclinux-dist-devel@blackfin.uclinux.org (subscribers-only)
 W:	http://blackfin.uclinux.org
 W:	http://blackfin.uclinux.org
 S:	Supported
 S:	Supported
+F:	drivers/watchdog/bfin_wdt.c
 
 
 BLACKFIN I2C TWI DRIVER
 BLACKFIN I2C TWI DRIVER
 P:	Sonic Zhang
 P:	Sonic Zhang
@@ -978,19 +1128,22 @@ M:	sonic.zhang@analog.com
 L:	uclinux-dist-devel@blackfin.uclinux.org (subscribers-only)
 L:	uclinux-dist-devel@blackfin.uclinux.org (subscribers-only)
 W:	http://blackfin.uclinux.org/
 W:	http://blackfin.uclinux.org/
 S:	Supported
 S:	Supported
+F:	drivers/i2c/busses/i2c-bfin-twi.c
 
 
 BLOCK LAYER
 BLOCK LAYER
 P:	Jens Axboe
 P:	Jens Axboe
 M:	axboe@kernel.dk
 M:	axboe@kernel.dk
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/axboe/linux-2.6-block.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-2.6-block.git
 S:	Maintained
 S:	Maintained
+F:	block/
 
 
 BLOCK2MTD DRIVER
 BLOCK2MTD DRIVER
 P:	Joern Engel
 P:	Joern Engel
 M:	joern@lazybastard.org
 M:	joern@lazybastard.org
 L:	linux-mtd@lists.infradead.org
 L:	linux-mtd@lists.infradead.org
 S:	Maintained
 S:	Maintained
+F:	drivers/mtd/devices/block2mtd.c
 
 
 BLUETOOTH DRIVERS
 BLUETOOTH DRIVERS
 P:	Marcel Holtmann
 P:	Marcel Holtmann
@@ -998,14 +1151,17 @@ M:	marcel@holtmann.org
 L:	linux-bluetooth@vger.kernel.org
 L:	linux-bluetooth@vger.kernel.org
 W:	http://www.bluez.org/
 W:	http://www.bluez.org/
 S:	Maintained
 S:	Maintained
+F:	drivers/bluetooth/
 
 
 BLUETOOTH SUBSYSTEM
 BLUETOOTH SUBSYSTEM
 P:	Marcel Holtmann
 P:	Marcel Holtmann
 M:	marcel@holtmann.org
 M:	marcel@holtmann.org
 L:	linux-bluetooth@vger.kernel.org
 L:	linux-bluetooth@vger.kernel.org
 W:	http://www.bluez.org/
 W:	http://www.bluez.org/
-T:	git kernel.org:/pub/scm/linux/kernel/git/holtmann/bluetooth-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/holtmann/bluetooth-2.6.git
 S:	Maintained
 S:	Maintained
+F:	net/bluetooth/
+F:	include/net/bluetooth/
 
 
 BONDING DRIVER
 BONDING DRIVER
 P:	Jay Vosburgh
 P:	Jay Vosburgh
@@ -1013,24 +1169,30 @@ M:	fubar@us.ibm.com
 L:	bonding-devel@lists.sourceforge.net
 L:	bonding-devel@lists.sourceforge.net
 W:	http://sourceforge.net/projects/bonding/
 W:	http://sourceforge.net/projects/bonding/
 S:	Supported
 S:	Supported
+F:	drivers/net/bonding/
+F:	include/linux/if_bonding.h
 
 
 BROADCOM B44 10/100 ETHERNET DRIVER
 BROADCOM B44 10/100 ETHERNET DRIVER
 P:	Gary Zambrano
 P:	Gary Zambrano
 M:	zambrano@broadcom.com
 M:	zambrano@broadcom.com
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/net/b44.*
 
 
 BROADCOM BNX2 GIGABIT ETHERNET DRIVER
 BROADCOM BNX2 GIGABIT ETHERNET DRIVER
 P:	Michael Chan
 P:	Michael Chan
 M:	mchan@broadcom.com
 M:	mchan@broadcom.com
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/net/bnx2.*
+F:	drivers/net/bnx2_*
 
 
 BROADCOM BNX2X 10 GIGABIT ETHERNET DRIVER
 BROADCOM BNX2X 10 GIGABIT ETHERNET DRIVER
 P:	Eilon Greenstein
 P:	Eilon Greenstein
 M:	eilong@broadcom.com
 M:	eilong@broadcom.com
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/net/bnx2x*
 
 
 BROADCOM TG3 GIGABIT ETHERNET DRIVER
 BROADCOM TG3 GIGABIT ETHERNET DRIVER
 P:	Matt Carlson
 P:	Matt Carlson
@@ -1039,41 +1201,51 @@ P:	Michael Chan
 M:	mchan@broadcom.com
 M:	mchan@broadcom.com
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/net/tg3.*
 
 
 BSG (block layer generic sg v4 driver)
 BSG (block layer generic sg v4 driver)
 P:	FUJITA Tomonori
 P:	FUJITA Tomonori
 M:	fujita.tomonori@lab.ntt.co.jp
 M:	fujita.tomonori@lab.ntt.co.jp
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	block/bsg.c
+F:	include/linux/bsg.h
 
 
 BT8XXGPIO DRIVER
 BT8XXGPIO DRIVER
 P:	Michael Buesch
 P:	Michael Buesch
 M:	mb@bu3sch.de
 M:	mb@bu3sch.de
 W:	http://bu3sch.de/btgpio.php
 W:	http://bu3sch.de/btgpio.php
 S:	Maintained
 S:	Maintained
+F:	drivers/gpio/bt8xxgpio.c
 
 
 BTRFS FILE SYSTEM
 BTRFS FILE SYSTEM
 P:	Chris Mason
 P:	Chris Mason
 M:	chris.mason@oracle.com
 M:	chris.mason@oracle.com
 L:	linux-btrfs@vger.kernel.org
 L:	linux-btrfs@vger.kernel.org
 W:	http://btrfs.wiki.kernel.org/
 W:	http://btrfs.wiki.kernel.org/
-T:	git kernel.org:/pub/scm/linux/kernel/git/mason/btrfs-unstable.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable.git
 S:	Maintained
 S:	Maintained
+F:	Documentation/filesystems/btrfs.txt
+F:	fs/btrfs/
 
 
 BTTV VIDEO4LINUX DRIVER
 BTTV VIDEO4LINUX DRIVER
 P:	Mauro Carvalho Chehab
 P:	Mauro Carvalho Chehab
 M:	mchehab@infradead.org
 M:	mchehab@infradead.org
 L:	linux-media@vger.kernel.org
 L:	linux-media@vger.kernel.org
 W:	http://linuxtv.org
 W:	http://linuxtv.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
 S:	Maintained
 S:	Maintained
+F:	Documentation/video4linux/bttv/
+F:	drivers/media/video/bt8xx/bttv*
 
 
 CAFE CMOS INTEGRATED CAMERA CONTROLLER DRIVER
 CAFE CMOS INTEGRATED CAMERA CONTROLLER DRIVER
 P:	Jonathan Corbet
 P:	Jonathan Corbet
 M:	corbet@lwn.net
 M:	corbet@lwn.net
 L:	linux-media@vger.kernel.org
 L:	linux-media@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
 S:	Maintained
 S:	Maintained
+F:	Documentation/video4linux/cafe_ccic
+F:	drivers/media/video/cafe_ccic*
 
 
 CALGARY x86-64 IOMMU
 CALGARY x86-64 IOMMU
 P:	Muli Ben-Yehuda
 P:	Muli Ben-Yehuda
@@ -1083,6 +1255,10 @@ M:	jdmason@kudzu.us
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 L:	discuss@x86-64.org
 L:	discuss@x86-64.org
 S:	Maintained
 S:	Maintained
+F:	arch/x86/kernel/pci-calgary_64.c
+F:	arch/x86/kernel/tce_64.c
+F:	arch/x86/include/asm/calgary.h
+F:	arch/x86/include/asm/tce.h
 
 
 CAN NETWORK LAYER
 CAN NETWORK LAYER
 P:	Urs Thuermann
 P:	Urs Thuermann
@@ -1092,6 +1268,9 @@ M:	oliver.hartkopp@volkswagen.de
 L:	socketcan-core@lists.berlios.de (subscribers-only)
 L:	socketcan-core@lists.berlios.de (subscribers-only)
 W:	http://developer.berlios.de/projects/socketcan/
 W:	http://developer.berlios.de/projects/socketcan/
 S:	Maintained
 S:	Maintained
+F:	drivers/net/can/
+F:	include/linux/can/
+F:	include/linux/can.h
 
 
 CELL BROADBAND ENGINE ARCHITECTURE
 CELL BROADBAND ENGINE ARCHITECTURE
 P:	Arnd Bergmann
 P:	Arnd Bergmann
@@ -1100,12 +1279,23 @@ L:	linuxppc-dev@ozlabs.org
 L:	cbe-oss-dev@ozlabs.org
 L:	cbe-oss-dev@ozlabs.org
 W:	http://www.ibm.com/developerworks/power/cell/
 W:	http://www.ibm.com/developerworks/power/cell/
 S:	Supported
 S:	Supported
+F:	arch/powerpc/include/asm/cell*.h
+F:	arch/powerpc/include/asm/lv1call.h
+F:	arch/powerpc/include/asm/ps3*.h
+F:	arch/powerpc/include/asm/spu*.h
+F:	arch/powerpc/oprofile/*cell*
+F:	arch/powerpc/platforms/cell/
+F:	arch/powerpc/platforms/ps3/
 
 
 CERTIFIED WIRELESS USB (WUSB) SUBSYSTEM:
 CERTIFIED WIRELESS USB (WUSB) SUBSYSTEM:
 P:	David Vrabel
 P:	David Vrabel
 M:	david.vrabel@csr.com
 M:	david.vrabel@csr.com
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	Documentation/usb/WUSB-Design-overview.txt
+F:	Documentation/usb/wusb-cbaf
+F:	drivers/usb/wusbcore/
+F:	include/linux/usb/wusb*
 
 
 CFAG12864B LCD DRIVER
 CFAG12864B LCD DRIVER
 P:	Miguel Ojeda Sandonis
 P:	Miguel Ojeda Sandonis
@@ -1114,6 +1304,8 @@ L:	linux-kernel@vger.kernel.org
 W:	http://miguelojeda.es/auxdisplay.htm
 W:	http://miguelojeda.es/auxdisplay.htm
 W:	http://jair.lab.fi.uva.es/~migojed/auxdisplay.htm
 W:	http://jair.lab.fi.uva.es/~migojed/auxdisplay.htm
 S:	Maintained
 S:	Maintained
+F:	drivers/auxdisplay/cfag12864b.c
+F:	include/linux/cfag12864b.h
 
 
 CFAG12864BFB LCD FRAMEBUFFER DRIVER
 CFAG12864BFB LCD FRAMEBUFFER DRIVER
 P:	Miguel Ojeda Sandonis
 P:	Miguel Ojeda Sandonis
@@ -1122,18 +1314,25 @@ L:	linux-kernel@vger.kernel.org
 W:	http://miguelojeda.es/auxdisplay.htm
 W:	http://miguelojeda.es/auxdisplay.htm
 W:	http://jair.lab.fi.uva.es/~migojed/auxdisplay.htm
 W:	http://jair.lab.fi.uva.es/~migojed/auxdisplay.htm
 S:	Maintained
 S:	Maintained
+F:	drivers/auxdisplay/cfag12864bfb.c
+F:	include/linux/cfag12864b.h
 
 
 CFG80211 and NL80211
 CFG80211 and NL80211
 P:	Johannes Berg
 P:	Johannes Berg
 M:	johannes@sipsolutions.net
 M:	johannes@sipsolutions.net
 L:	linux-wireless@vger.kernel.org
 L:	linux-wireless@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	include/linux/nl80211.h
+F:	include/net/cfg80211.h
+F:	net/wireless/*
+X:	net/wireless/wext*
 
 
 CHECKPATCH
 CHECKPATCH
 P:	Andy Whitcroft
 P:	Andy Whitcroft
 M:	apw@canonical.com
 M:	apw@canonical.com
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	scripts/checkpatch.pl
 
 
 CISCO 10G ETHERNET DRIVER
 CISCO 10G ETHERNET DRIVER
 P:	Scott Feldman
 P:	Scott Feldman
@@ -1141,24 +1340,28 @@ M:	scofeldm@cisco.com
 P:	Joe Eykholt
 P:	Joe Eykholt
 M:	jeykholt@cisco.com
 M:	jeykholt@cisco.com
 S:	Supported
 S:	Supported
+F:	drivers/net/enic/
 
 
 CIRRUS LOGIC EP93XX ETHERNET DRIVER
 CIRRUS LOGIC EP93XX ETHERNET DRIVER
 P:	Lennert Buytenhek
 P:	Lennert Buytenhek
 M:	kernel@wantstofly.org
 M:	kernel@wantstofly.org
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/arm/ep93xx_eth.c
 
 
 CIRRUS LOGIC EP93XX OHCI USB HOST DRIVER
 CIRRUS LOGIC EP93XX OHCI USB HOST DRIVER
 P:	Lennert Buytenhek
 P:	Lennert Buytenhek
 M:	kernel@wantstofly.org
 M:	kernel@wantstofly.org
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/usb/host/ohci-ep93xx.c
 
 
 CIRRUS LOGIC CS4270 SOUND DRIVER
 CIRRUS LOGIC CS4270 SOUND DRIVER
 P:	Timur Tabi
 P:	Timur Tabi
 M:	timur@freescale.com
 M:	timur@freescale.com
 L:	alsa-devel@alsa-project.org
 L:	alsa-devel@alsa-project.org
 S:	Supported
 S:	Supported
+F:	sound/soc/codecs/cs4270*
 
 
 CIRRUS LOGIC CS4280/CS461x SOUNDDRIVER
 CIRRUS LOGIC CS4280/CS461x SOUNDDRIVER
 P:	Cirrus Logic Corporation (kernel 2.2 driver)
 P:	Cirrus Logic Corporation (kernel 2.2 driver)
@@ -1166,6 +1369,8 @@ M:	Cirrus Logic Corporation, Thomas Woller <twoller@crystal.cirrus.com>
 P:	Nils Faerber (port to kernel 2.4)
 P:	Nils Faerber (port to kernel 2.4)
 M:	Nils Faerber <nils@kernelconcepts.de>
 M:	Nils Faerber <nils@kernelconcepts.de>
 S:	Maintained
 S:	Maintained
+F:	Documentation/input/cs461x.txt
+F:	sound/pci/cs46xx/
 
 
 CODA FILE SYSTEM
 CODA FILE SYSTEM
 P:	Jan Harkes
 P:	Jan Harkes
@@ -1174,6 +1379,9 @@ M:	coda@cs.cmu.edu
 L:	codalist@coda.cs.cmu.edu
 L:	codalist@coda.cs.cmu.edu
 W:	http://www.coda.cs.cmu.edu/
 W:	http://www.coda.cs.cmu.edu/
 S:	Maintained
 S:	Maintained
+F:	Documentation/filesystems/coda.txt
+F:	fs/coda/
+F:	include/linux/coda*.h
 
 
 COMMON INTERNET FILE SYSTEM (CIFS)
 COMMON INTERNET FILE SYSTEM (CIFS)
 P:	Steve French
 P:	Steve French
@@ -1181,8 +1389,10 @@ M:	sfrench@samba.org
 L:	linux-cifs-client@lists.samba.org
 L:	linux-cifs-client@lists.samba.org
 L:	samba-technical@lists.samba.org
 L:	samba-technical@lists.samba.org
 W:	http://linux-cifs.samba.org/
 W:	http://linux-cifs.samba.org/
-T:	git kernel.org:/pub/scm/linux/kernel/git/sfrench/cifs-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6.git
 S:	Supported
 S:	Supported
+F:	Documentation/filesystems/cifs.txt
+F:	fs/cifs/
 
 
 COMPACTPCI HOTPLUG CORE
 COMPACTPCI HOTPLUG CORE
 P:	Scott Murray
 P:	Scott Murray
@@ -1190,6 +1400,7 @@ M:	scottm@somanetworks.com
 M:	scott@spiteful.org
 M:	scott@spiteful.org
 L:	linux-pci@vger.kernel.org
 L:	linux-pci@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/pci/hotplug/cpci_hotplug*
 
 
 COMPACTPCI HOTPLUG ZIATECH ZT5550 DRIVER
 COMPACTPCI HOTPLUG ZIATECH ZT5550 DRIVER
 P:	Scott Murray
 P:	Scott Murray
@@ -1197,6 +1408,7 @@ M:	scottm@somanetworks.com
 M:	scott@spiteful.org
 M:	scott@spiteful.org
 L:	linux-pci@vger.kernel.org
 L:	linux-pci@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/pci/hotplug/cpcihp_zt5550.*
 
 
 COMPACTPCI HOTPLUG GENERIC DRIVER
 COMPACTPCI HOTPLUG GENERIC DRIVER
 P:	Scott Murray
 P:	Scott Murray
@@ -1204,17 +1416,21 @@ M:	scottm@somanetworks.com
 M:	scott@spiteful.org
 M:	scott@spiteful.org
 L:	linux-pci@vger.kernel.org
 L:	linux-pci@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/pci/hotplug/cpcihp_generic.c
 
 
 COMPAL LAPTOP SUPPORT
 COMPAL LAPTOP SUPPORT
 P:	Cezary Jackiewicz
 P:	Cezary Jackiewicz
 M:	cezary.jackiewicz@gmail.com
 M:	cezary.jackiewicz@gmail.com
 S:	Maintained
 S:	Maintained
+F:	drivers/platform/x86/compal-laptop.c
 
 
 COMPUTONE INTELLIPORT MULTIPORT CARD
 COMPUTONE INTELLIPORT MULTIPORT CARD
 P:	Michael H. Warfield
 P:	Michael H. Warfield
 M:	mhw@wittsend.com
 M:	mhw@wittsend.com
 W:	http://www.wittsend.com/computone.html
 W:	http://www.wittsend.com/computone.html
 S:	Maintained
 S:	Maintained
+F:	Documentation/serial/computone.txt
+F:	drivers/char/ip2/
 
 
 CONEXANT ACCESSRUNNER USB DRIVER
 CONEXANT ACCESSRUNNER USB DRIVER
 P:	Simon Arlott
 P:	Simon Arlott
@@ -1222,12 +1438,15 @@ M:	cxacru@fire.lp0.eu
 L:	accessrunner-general@lists.sourceforge.net
 L:	accessrunner-general@lists.sourceforge.net
 W:	http://accessrunner.sourceforge.net/
 W:	http://accessrunner.sourceforge.net/
 S:	Maintained
 S:	Maintained
+F:	drivers/usb/atm/cxacru.c
 
 
 CONFIGFS
 CONFIGFS
 P:	Joel Becker
 P:	Joel Becker
 M:	joel.becker@oracle.com
 M:	joel.becker@oracle.com
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	fs/configfs/
+F:	include/linux/configfs.h
 
 
 CONTROL GROUPS (CGROUPS)
 CONTROL GROUPS (CGROUPS)
 P:	Paul Menage
 P:	Paul Menage
@@ -1236,31 +1455,41 @@ P:	Li Zefan
 M:	lizf@cn.fujitsu.com
 M:	lizf@cn.fujitsu.com
 L:	containers@lists.linux-foundation.org
 L:	containers@lists.linux-foundation.org
 S:	Maintained
 S:	Maintained
+F:	include/linux/cgroup*
+F:	kernel/cgroup*
 
 
 CORETEMP HARDWARE MONITORING DRIVER
 CORETEMP HARDWARE MONITORING DRIVER
 P:	Rudolf Marek
 P:	Rudolf Marek
 M:	r.marek@assembler.cz
 M:	r.marek@assembler.cz
 L:	lm-sensors@lm-sensors.org
 L:	lm-sensors@lm-sensors.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/hwmon/coretemp
+F:	drivers/hwmon/coretemp.c
 
 
 COSA/SRP SYNC SERIAL DRIVER
 COSA/SRP SYNC SERIAL DRIVER
 P:	Jan "Yenya" Kasprzak
 P:	Jan "Yenya" Kasprzak
 M:	kas@fi.muni.cz
 M:	kas@fi.muni.cz
 W:	http://www.fi.muni.cz/~kas/cosa/
 W:	http://www.fi.muni.cz/~kas/cosa/
 S:	Maintained
 S:	Maintained
+F:	drivers/net/wan/cosa*
 
 
 CPU FREQUENCY DRIVERS
 CPU FREQUENCY DRIVERS
 P:	Dave Jones
 P:	Dave Jones
 M:	davej@redhat.com
 M:	davej@redhat.com
 L:	cpufreq@vger.kernel.org
 L:	cpufreq@vger.kernel.org
 W:	http://www.codemonkey.org.uk/projects/cpufreq/
 W:	http://www.codemonkey.org.uk/projects/cpufreq/
-T:	git kernel.org/pub/scm/linux/kernel/git/davej/cpufreq.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq.git
 S:	Maintained
 S:	Maintained
+F:	arch/x86/kernel/cpu/cpufreq/
+F:	drivers/cpufreq/
+F:	include/linux/cpufreq.h
 
 
 CPUID/MSR DRIVER
 CPUID/MSR DRIVER
 P:	H. Peter Anvin
 P:	H. Peter Anvin
 M:	hpa@zytor.com
 M:	hpa@zytor.com
 S:	Maintained
 S:	Maintained
+F:	arch/x86/kernel/cpuid.c
+F:	arch/x86/kernel/msr.c
 
 
 CPUSETS
 CPUSETS
 P:	Paul Menage
 P:	Paul Menage
@@ -1269,10 +1498,15 @@ L:	linux-kernel@vger.kernel.org
 W:	http://www.bullopensource.org/cpuset/
 W:	http://www.bullopensource.org/cpuset/
 W:	http://oss.sgi.com/projects/cpusets/
 W:	http://oss.sgi.com/projects/cpusets/
 S:	Supported
 S:	Supported
+F:	Documentation/cgroups/cpusets.txt
+F:	include/linux/cpuset.h
+F:	kernel/cpuset.c
 
 
 CRAMFS FILESYSTEM
 CRAMFS FILESYSTEM
 W:	http://sourceforge.net/projects/cramfs/
 W:	http://sourceforge.net/projects/cramfs/
 S:	Orphan
 S:	Orphan
+F:	Documentation/filesystems/cramfs.txt
+F:	fs/cramfs/
 
 
 CRIS PORT
 CRIS PORT
 P:	Mikael Starvik
 P:	Mikael Starvik
@@ -1282,6 +1516,7 @@ M:	jesper.nilsson@axis.com
 L:	dev-etrax@axis.com
 L:	dev-etrax@axis.com
 W:	http://developer.axis.com
 W:	http://developer.axis.com
 S:	Maintained
 S:	Maintained
+F:	arch/cris/
 
 
 CRYPTO API
 CRYPTO API
 P:	Herbert Xu
 P:	Herbert Xu
@@ -1289,8 +1524,13 @@ M:	herbert@gondor.apana.org.au
 P:	David S. Miller
 P:	David S. Miller
 M:	davem@davemloft.net
 M:	davem@davemloft.net
 L:	linux-crypto@vger.kernel.org
 L:	linux-crypto@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/herbert/crypto-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git
 S:	Maintained
 S:	Maintained
+F:	Documentation/crypto/
+F:	arch/*/crypto/
+F:	crypto/
+F:	drivers/crypto/
+F:	include/crypto/
 
 
 CRYPTOGRAPHIC RANDOM NUMBER GENERATOR
 CRYPTOGRAPHIC RANDOM NUMBER GENERATOR
 P:	Neil Horman
 P:	Neil Horman
@@ -1302,16 +1542,21 @@ CS5535 Audio ALSA driver
 P:	Jaya Kumar
 P:	Jaya Kumar
 M:	jayakumar.alsa@gmail.com
 M:	jayakumar.alsa@gmail.com
 S:	Maintained
 S:	Maintained
+F:	sound/pci/cs5535audio/
 
 
 CX18 VIDEO4LINUX DRIVER
 CX18 VIDEO4LINUX DRIVER
-P:	Hans Verkuil, Andy Walls
-M:	hverkuil@xs4all.nl, awalls@radix.net
+P:	Hans Verkuil
+M:	hverkuil@xs4all.nl
+P:	Andy Walls
+M:	awalls@radix.net
 L:	ivtv-devel@ivtvdriver.org
 L:	ivtv-devel@ivtvdriver.org
 L:	ivtv-users@ivtvdriver.org
 L:	ivtv-users@ivtvdriver.org
 L:	linux-media@vger.kernel.org
 L:	linux-media@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
 W:	http://linuxtv.org
 W:	http://linuxtv.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/video4linux/cx18.txt
+F:	drivers/media/video/cx18/
 
 
 CXGB3 ETHERNET DRIVER (CXGB3)
 CXGB3 ETHERNET DRIVER (CXGB3)
 P:	Divy Le Ray
 P:	Divy Le Ray
@@ -1319,6 +1564,7 @@ M:	divy@chelsio.com
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 W:	http://www.chelsio.com
 W:	http://www.chelsio.com
 S:	Supported
 S:	Supported
+F:	drivers/net/cxgb3/
 
 
 CXGB3 IWARP RNIC DRIVER (IW_CXGB3)
 CXGB3 IWARP RNIC DRIVER (IW_CXGB3)
 P:	Steve Wise
 P:	Steve Wise
@@ -1326,32 +1572,32 @@ M:	swise@chelsio.com
 L:	general@lists.openfabrics.org
 L:	general@lists.openfabrics.org
 W:	http://www.openfabrics.org
 W:	http://www.openfabrics.org
 S:	Supported
 S:	Supported
+F:	drivers/infiniband/hw/cxgb3/
 
 
 CYBERPRO FB DRIVER
 CYBERPRO FB DRIVER
 P:	Russell King
 P:	Russell King
 M:	rmk@arm.linux.org.uk
 M:	rmk@arm.linux.org.uk
 W:	http://www.arm.linux.org.uk/
 W:	http://www.arm.linux.org.uk/
 S:	Maintained
 S:	Maintained
-
-CYBLAFB FRAMEBUFFER DRIVER
-P:	Knut Petersen
-M:	Knut_Petersen@t-online.de
-L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
-S:	Maintained
+F:	drivers/video/cyber2000fb.*
 
 
 CYCLADES 2X SYNC CARD DRIVER
 CYCLADES 2X SYNC CARD DRIVER
 P:	Arnaldo Carvalho de Melo
 P:	Arnaldo Carvalho de Melo
 M:	acme@ghostprotocols.net
 M:	acme@ghostprotocols.net
 W:	http://oops.ghostprotocols.net:81/blog
 W:	http://oops.ghostprotocols.net:81/blog
 S:	Maintained
 S:	Maintained
+F:	drivers/net/wan/cycx*
 
 
 CYCLADES ASYNC MUX DRIVER
 CYCLADES ASYNC MUX DRIVER
 W:	http://www.cyclades.com/
 W:	http://www.cyclades.com/
 S:	Orphan
 S:	Orphan
+F:	drivers/char/cyclades.c
+F:	include/linux/cyclades.h
 
 
 CYCLADES PC300 DRIVER
 CYCLADES PC300 DRIVER
 W:	http://www.cyclades.com/
 W:	http://www.cyclades.com/
 S:	Orphan
 S:	Orphan
+F:	drivers/net/wan/pc300*
 
 
 DAMA SLAVE for AX.25
 DAMA SLAVE for AX.25
 P:	Joerg Reuter
 P:	Joerg Reuter
@@ -1360,12 +1606,21 @@ W:	http://yaina.de/jreuter/
 W:	http://www.qsl.net/dl1bke/
 W:	http://www.qsl.net/dl1bke/
 L:	linux-hams@vger.kernel.org
 L:	linux-hams@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	net/ax25/af_ax25.c
+F:	net/ax25/ax25_dev.c
+F:	net/ax25/ax25_ds_*
+F:	net/ax25/ax25_in.c
+F:	net/ax25/ax25_out.c
+F:	net/ax25/ax25_timer.c
+F:	net/ax25/sysctl_net_ax25.c
 
 
 DAVICOM FAST ETHERNET (DMFE) NETWORK DRIVER
 DAVICOM FAST ETHERNET (DMFE) NETWORK DRIVER
 P:	Tobias Ringstrom
 P:	Tobias Ringstrom
 M:	tori@unhappy.mine.nu
 M:	tori@unhappy.mine.nu
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/networking/dmfe.txt
+F:	drivers/net/tulip/dmfe.c
 
 
 DC390/AM53C974 SCSI driver
 DC390/AM53C974 SCSI driver
 P:	Kurt Garloff
 P:	Kurt Garloff
@@ -1374,6 +1629,7 @@ W:	http://www.garloff.de/kurt/linux/dc390/
 P:	Guennadi Liakhovetski
 P:	Guennadi Liakhovetski
 M:	g.liakhovetski@gmx.de
 M:	g.liakhovetski@gmx.de
 S:	Maintained
 S:	Maintained
+F:	drivers/scsi/tmscsim.*
 
 
 DC395x SCSI driver
 DC395x SCSI driver
 P:	Oliver Neukum
 P:	Oliver Neukum
@@ -1386,6 +1642,8 @@ W:	http://twibble.org/dist/dc395x/
 L:	dc395x@twibble.org
 L:	dc395x@twibble.org
 L:	http://lists.twibble.org/mailman/listinfo/dc395x/
 L:	http://lists.twibble.org/mailman/listinfo/dc395x/
 S:	Maintained
 S:	Maintained
+F:	Documentation/scsi/dc395x.txt
+F:	drivers/scsi/dc395x.*
 
 
 DCCP PROTOCOL
 DCCP PROTOCOL
 P:	Arnaldo Carvalho de Melo
 P:	Arnaldo Carvalho de Melo
@@ -1393,6 +1651,9 @@ M:	acme@ghostprotocols.net
 L:	dccp@vger.kernel.org
 L:	dccp@vger.kernel.org
 W:	http://linux-net.osdl.org/index.php/DCCP
 W:	http://linux-net.osdl.org/index.php/DCCP
 S:	Maintained
 S:	Maintained
+F:	include/linux/dccp.h
+F:	include/linux/tfrc.h
+F:	net/dccp/
 
 
 DECnet NETWORK LAYER
 DECnet NETWORK LAYER
 P:	Christine Caulfield
 P:	Christine Caulfield
@@ -1400,27 +1661,35 @@ M:	christine.caulfield@googlemail.com
 W:	http://linux-decnet.sourceforge.net
 W:	http://linux-decnet.sourceforge.net
 L:	linux-decnet-user@lists.sourceforge.net
 L:	linux-decnet-user@lists.sourceforge.net
 S:	Maintained
 S:	Maintained
+F:	Documentation/networking/decnet.txt
+F:	net/decnet/
 
 
 DEFXX FDDI NETWORK DRIVER
 DEFXX FDDI NETWORK DRIVER
 P:	Maciej W. Rozycki
 P:	Maciej W. Rozycki
 M:	macro@linux-mips.org
 M:	macro@linux-mips.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/defxx.*
 
 
 DELL LAPTOP DRIVER
 DELL LAPTOP DRIVER
 P:	Matthew Garrett
 P:	Matthew Garrett
 M:	mjg59@srcf.ucam.org
 M:	mjg59@srcf.ucam.org
 S:	Maintained
 S:	Maintained
+F:	drivers/platform/x86/dell-laptop.c
 
 
 DELL LAPTOP SMM DRIVER
 DELL LAPTOP SMM DRIVER
 P:	Massimo Dal Zotto
 P:	Massimo Dal Zotto
 M:	dz@debian.org
 M:	dz@debian.org
 W:	http://www.debian.org/~dz/i8k/
 W:	http://www.debian.org/~dz/i8k/
 S:	Maintained
 S:	Maintained
+F:	drivers/char/i8k.c
+F:	include/linux/i8k.h
 
 
 DELL SYSTEMS MANAGEMENT BASE DRIVER (dcdbas)
 DELL SYSTEMS MANAGEMENT BASE DRIVER (dcdbas)
 P:	Doug Warzecha
 P:	Doug Warzecha
 M:	Douglas_Warzecha@dell.com
 M:	Douglas_Warzecha@dell.com
 S:	Maintained
 S:	Maintained
+F:	Documentation/dcdbas.txt
+F:	drivers/firmware/dcdbas.*
 
 
 DELL WMI EXTRAS DRIVER
 DELL WMI EXTRAS DRIVER
 P:	Matthew Garrett
 P:	Matthew Garrett
@@ -1439,6 +1708,10 @@ P:	Alasdair Kergon
 L:	dm-devel@redhat.com
 L:	dm-devel@redhat.com
 W:	http://sources.redhat.com/dm
 W:	http://sources.redhat.com/dm
 S:	Maintained
 S:	Maintained
+F:	Documentation/device-mapper/
+F:	drivers/md/dm*
+F:	include/linux/device-mapper.h
+F:	include/linux/dm-*.h
 
 
 DIGI INTL. EPCA DRIVER
 DIGI INTL. EPCA DRIVER
 P:	Digi International, Inc
 P:	Digi International, Inc
@@ -1446,12 +1719,18 @@ M:	Eng.Linux@digi.com
 L:	Eng.Linux@digi.com
 L:	Eng.Linux@digi.com
 W:	http://www.digi.com
 W:	http://www.digi.com
 S:	Orphan
 S:	Orphan
+F:	Documentation/serial/digiepca.txt
+F:	drivers/char/epca*
+F:	drivers/char/digi*
 
 
 DIRECTORY NOTIFICATION (DNOTIFY)
 DIRECTORY NOTIFICATION (DNOTIFY)
 P:	Stephen Rothwell
 P:	Stephen Rothwell
 M:	sfr@canb.auug.org.au
 M:	sfr@canb.auug.org.au
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	Documentation/filesystems/dnotify.txt
+F:	fs/notify/dnotify/
+F:	include/linux/dnotify.h
 
 
 DISK GEOMETRY AND PARTITION HANDLING
 DISK GEOMETRY AND PARTITION HANDLING
 P:	Andries Brouwer
 P:	Andries Brouwer
@@ -1466,6 +1745,9 @@ P:	Jan Kara
 M:	jack@suse.cz
 M:	jack@suse.cz
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/filesystems/quota.txt
+F:	fs/quota/
+F:	include/linux/quota*.h
 
 
 DISTRIBUTED LOCK MANAGER (DLM)
 DISTRIBUTED LOCK MANAGER (DLM)
 P:	Christine Caulfield
 P:	Christine Caulfield
@@ -1474,8 +1756,9 @@ P:	David Teigland
 M:	teigland@redhat.com
 M:	teigland@redhat.com
 L:	cluster-devel@redhat.com
 L:	cluster-devel@redhat.com
 W:	http://sources.redhat.com/cluster/
 W:	http://sources.redhat.com/cluster/
-T:	git kernel.org:/pub/scm/linux/kernel/git/teigland/dlm.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm.git
 S:	Supported
 S:	Supported
+F:	fs/dlm/
 
 
 DMA GENERIC OFFLOAD ENGINE SUBSYSTEM
 DMA GENERIC OFFLOAD ENGINE SUBSYSTEM
 P:	Maciej Sosnowski
 P:	Maciej Sosnowski
@@ -1484,12 +1767,16 @@ P:	Dan Williams
 M:	dan.j.williams@intel.com
 M:	dan.j.williams@intel.com
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/dma/
+F:	include/linux/dma*
 
 
 DME1737 HARDWARE MONITOR DRIVER
 DME1737 HARDWARE MONITOR DRIVER
 P:	Juerg Haefliger
 P:	Juerg Haefliger
 M:	juergh@gmail.com
 M:	juergh@gmail.com
 L:	lm-sensors@lm-sensors.org
 L:	lm-sensors@lm-sensors.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/hwmon/dme1737
+F:	drivers/hwmon/dme1737.c
 
 
 DOCBOOK FOR DOCUMENTATION
 DOCBOOK FOR DOCUMENTATION
 P:	Randy Dunlap
 P:	Randy Dunlap
@@ -1501,18 +1788,22 @@ P:	Shaohua Li
 M:	shaohua.li@intel.com
 M:	shaohua.li@intel.com
 L:	linux-acpi@vger.kernel.org
 L:	linux-acpi@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/acpi/dock.c
 
 
-DOCUMENTATION (/Documentation directory)
+DOCUMENTATION
 P:	Randy Dunlap
 P:	Randy Dunlap
 M:	rdunlap@xenotime.net
 M:	rdunlap@xenotime.net
 L:	linux-doc@vger.kernel.org
 L:	linux-doc@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/
 
 
 DOUBLETALK DRIVER
 DOUBLETALK DRIVER
 P:	James R. Van Zandt
 P:	James R. Van Zandt
 M:	jrv@vanzandt.mv.com
 M:	jrv@vanzandt.mv.com
 L:	blinux-list@redhat.com
 L:	blinux-list@redhat.com
 S:	Maintained
 S:	Maintained
+F:	drivers/char/dtlk.c
+F:	include/linux/dtlk.h
 
 
 DPT_I2O SCSI RAID DRIVER
 DPT_I2O SCSI RAID DRIVER
 P:	Adaptec OEM Raid Solutions
 P:	Adaptec OEM Raid Solutions
@@ -1520,6 +1811,8 @@ M:	aacraid@adaptec.com
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 W:	http://www.adaptec.com/
 W:	http://www.adaptec.com/
 S:	Maintained
 S:	Maintained
+F:	drivers/scsi/dpt*
+F:	drivers/scsi/dpt/
 
 
 DRIVER CORE, KOBJECTS, AND SYSFS
 DRIVER CORE, KOBJECTS, AND SYSFS
 P:	Greg Kroah-Hartman
 P:	Greg Kroah-Hartman
@@ -1527,49 +1820,55 @@ M:	gregkh@suse.de
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 T:	quilt kernel.org/pub/linux/kernel/people/gregkh/gregkh-2.6/
 T:	quilt kernel.org/pub/linux/kernel/people/gregkh/gregkh-2.6/
 S:	Supported
 S:	Supported
+F:	Documentation/kobject.txt
+F:	drivers/base/
+F:	fs/sysfs/
+F:	include/linux/kobj*
+F:	lib/kobj*
 
 
 DRM DRIVERS
 DRM DRIVERS
 P:	David Airlie
 P:	David Airlie
 M:	airlied@linux.ie
 M:	airlied@linux.ie
 L:	dri-devel@lists.sourceforge.net
 L:	dri-devel@lists.sourceforge.net
-T:	git kernel.org:/pub/scm/linux/kernel/git/airlied/drm-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6.git
 S:	Maintained
 S:	Maintained
+F:	drivers/gpu/drm/
 
 
 DSCC4 DRIVER
 DSCC4 DRIVER
 P:	Francois Romieu
 P:	Francois Romieu
 M:	romieu@fr.zoreil.com
 M:	romieu@fr.zoreil.com
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
-
-DVB SUBSYSTEM AND DRIVERS
-P:	LinuxTV.org Project
-M:	linux-media@vger.kernel.org
-L:	linux-dvb@linuxtv.org (subscription required)
-W:	http://linuxtv.org/
-T:	git kernel.org:/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
-S:	Maintained
+F:	drivers/net/wan/dscc4.c
 
 
 DZ DECSTATION DZ11 SERIAL DRIVER
 DZ DECSTATION DZ11 SERIAL DRIVER
 P:	Maciej W. Rozycki
 P:	Maciej W. Rozycki
 M:	macro@linux-mips.org
 M:	macro@linux-mips.org
 S:	Maintained
 S:	Maintained
+F:	drivers/serial/dz.*
 
 
 EATA-DMA SCSI DRIVER
 EATA-DMA SCSI DRIVER
 P:	Michael Neuffer
 P:	Michael Neuffer
-L:	linux-eata@i-connect.net, linux-scsi@vger.kernel.org
+M:	mike@i-Connect.Net
+L:	linux-eata@i-connect.net
+L:	linux-scsi@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/scsi/eata*
 
 
 EATA ISA/EISA/PCI SCSI DRIVER
 EATA ISA/EISA/PCI SCSI DRIVER
 P:	Dario Ballabio
 P:	Dario Ballabio
 M:	ballabio_dario@emc.com
 M:	ballabio_dario@emc.com
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/scsi/eata.c
 
 
 EATA-PIO SCSI DRIVER
 EATA-PIO SCSI DRIVER
 P:	Michael Neuffer
 P:	Michael Neuffer
 M:	mike@i-Connect.Net
 M:	mike@i-Connect.Net
-L:	linux-eata@i-connect.net, linux-scsi@vger.kernel.org
+L:	linux-eata@i-connect.net
+L:	linux-scsi@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/scsi/eata_pio.*
 
 
 EBTABLES
 EBTABLES
 P:	Bart De Schuymer
 P:	Bart De Schuymer
@@ -1578,13 +1877,19 @@ L:	ebtables-user@lists.sourceforge.net
 L:	ebtables-devel@lists.sourceforge.net
 L:	ebtables-devel@lists.sourceforge.net
 W:	http://ebtables.sourceforge.net/
 W:	http://ebtables.sourceforge.net/
 S:	Maintained
 S:	Maintained
+F:	include/linux/netfilter_bridge/ebt_*.h
+F:	net/bridge/netfilter/ebt*.c
 
 
 ECRYPT FILE SYSTEM
 ECRYPT FILE SYSTEM
-P:	Tyler Hicks, Dustin Kirkland
-M:	tyhicks@linux.vnet.ibm.com, kirkland@canonical.com
+P:	Tyler Hicks
+M:	tyhicks@linux.vnet.ibm.com
+M:	Dustin Kirkland
+P:	kirkland@canonical.com
 L:	ecryptfs-devel@lists.launchpad.net
 L:	ecryptfs-devel@lists.launchpad.net
 W:	https://launchpad.net/ecryptfs
 W:	https://launchpad.net/ecryptfs
 S:	Supported
 S:	Supported
+F:	Documentation/filesystems/ecryptfs.txt
+F:	fs/ecryptfs/
 
 
 EDAC-CORE
 EDAC-CORE
 P:	Doug Thompson
 P:	Doug Thompson
@@ -1592,6 +1897,9 @@ M:	dougthompson@xmission.com
 L:	bluesmoke-devel@lists.sourceforge.net
 L:	bluesmoke-devel@lists.sourceforge.net
 W:	bluesmoke.sourceforge.net
 W:	bluesmoke.sourceforge.net
 S:	Supported
 S:	Supported
+F:	Documentation/edac.txt
+F:	drivers/edac/edac_*
+F:	include/linux/edac.h
 
 
 EDAC-E752X
 EDAC-E752X
 P:	Mark Gross
 P:	Mark Gross
@@ -1601,6 +1909,7 @@ M:	dougthompson@xmission.com
 L:	bluesmoke-devel@lists.sourceforge.net
 L:	bluesmoke-devel@lists.sourceforge.net
 W:	bluesmoke.sourceforge.net
 W:	bluesmoke.sourceforge.net
 S:	Maintained
 S:	Maintained
+F:	drivers/edac/e752x_edac.c
 
 
 EDAC-E7XXX
 EDAC-E7XXX
 P:	Doug Thompson
 P:	Doug Thompson
@@ -1608,6 +1917,7 @@ M:	dougthompson@xmission.com
 L:	bluesmoke-devel@lists.sourceforge.net
 L:	bluesmoke-devel@lists.sourceforge.net
 W:	bluesmoke.sourceforge.net
 W:	bluesmoke.sourceforge.net
 S:	Maintained
 S:	Maintained
+F:	drivers/edac/e7xxx_edac.c
 
 
 EDAC-I82443BXGX
 EDAC-I82443BXGX
 P:	Tim Small
 P:	Tim Small
@@ -1615,6 +1925,7 @@ M:	tim@buttersideup.com
 L:	bluesmoke-devel@lists.sourceforge.net
 L:	bluesmoke-devel@lists.sourceforge.net
 W:	bluesmoke.sourceforge.net
 W:	bluesmoke.sourceforge.net
 S:	Maintained
 S:	Maintained
+F:	drivers/edac/i82443bxgx_edac.c
 
 
 EDAC-I3000
 EDAC-I3000
 P:	Jason Uhlenkott
 P:	Jason Uhlenkott
@@ -1622,6 +1933,7 @@ M:	juhlenko@akamai.com
 L:	bluesmoke-devel@lists.sourceforge.net
 L:	bluesmoke-devel@lists.sourceforge.net
 W:	bluesmoke.sourceforge.net
 W:	bluesmoke.sourceforge.net
 S:	Maintained
 S:	Maintained
+F:	drivers/edac/i3000_edac.c
 
 
 EDAC-I5000
 EDAC-I5000
 P:	Doug Thompson
 P:	Doug Thompson
@@ -1629,6 +1941,7 @@ M:	dougthompson@xmission.com
 L:	bluesmoke-devel@lists.sourceforge.net
 L:	bluesmoke-devel@lists.sourceforge.net
 W:	bluesmoke.sourceforge.net
 W:	bluesmoke.sourceforge.net
 S:	Maintained
 S:	Maintained
+F:	drivers/edac/i5000_edac.c
 
 
 EDAC-I5400
 EDAC-I5400
 P:	Mauro Carvalho Chehab
 P:	Mauro Carvalho Chehab
@@ -1636,6 +1949,7 @@ M:	mchehab@redhat.com
 L:	bluesmoke-devel@lists.sourceforge.net
 L:	bluesmoke-devel@lists.sourceforge.net
 W:	bluesmoke.sourceforge.net
 W:	bluesmoke.sourceforge.net
 S:	Maintained
 S:	Maintained
+F:	drivers/edac/i5400_edac.c
 
 
 EDAC-I82975X
 EDAC-I82975X
 P:	Ranganathan Desikan
 P:	Ranganathan Desikan
@@ -1645,6 +1959,7 @@ M:	arvind@acarlab.com
 L:	bluesmoke-devel@lists.sourceforge.net
 L:	bluesmoke-devel@lists.sourceforge.net
 W:	bluesmoke.sourceforge.net
 W:	bluesmoke.sourceforge.net
 S:	Maintained
 S:	Maintained
+F:	drivers/edac/i82975x_edac.c
 
 
 EDAC-PASEMI
 EDAC-PASEMI
 P:	Egor Martovetsky
 P:	Egor Martovetsky
@@ -1652,6 +1967,7 @@ M:	egor@pasemi.com
 L:	bluesmoke-devel@lists.sourceforge.net
 L:	bluesmoke-devel@lists.sourceforge.net
 W:	bluesmoke.sourceforge.net
 W:	bluesmoke.sourceforge.net
 S:	Maintained
 S:	Maintained
+F:	drivers/edac/pasemi_edac.c
 
 
 EDAC-R82600
 EDAC-R82600
 P:	Tim Small
 P:	Tim Small
@@ -1659,6 +1975,7 @@ M:	tim@buttersideup.com
 L:	bluesmoke-devel@lists.sourceforge.net
 L:	bluesmoke-devel@lists.sourceforge.net
 W:	bluesmoke.sourceforge.net
 W:	bluesmoke.sourceforge.net
 S:	Maintained
 S:	Maintained
+F:	drivers/edac/r82600_edac.c
 
 
 EEEPC LAPTOP EXTRAS DRIVER
 EEEPC LAPTOP EXTRAS DRIVER
 P:	Corentin Chary
 P:	Corentin Chary
@@ -1666,10 +1983,12 @@ M:	corentincj@iksaif.net
 L:	acpi4asus-user@lists.sourceforge.net
 L:	acpi4asus-user@lists.sourceforge.net
 W:	http://sourceforge.net/projects/acpi4asus
 W:	http://sourceforge.net/projects/acpi4asus
 S:	Maintained
 S:	Maintained
+F:	drivers/platform/x86/eeepc-laptop.c
 
 
 EFS FILESYSTEM
 EFS FILESYSTEM
 W:	http://aeschi.ch.eu.org/efs/
 W:	http://aeschi.ch.eu.org/efs/
 S:	Orphan
 S:	Orphan
+F:	fs/efs/
 
 
 EHCA (IBM GX bus InfiniBand adapter) DRIVER
 EHCA (IBM GX bus InfiniBand adapter) DRIVER
 P:	Hoang-Nam Nguyen
 P:	Hoang-Nam Nguyen
@@ -1678,6 +1997,7 @@ P:	Christoph Raisch
 M:	raisch@de.ibm.com
 M:	raisch@de.ibm.com
 L:	general@lists.openfabrics.org
 L:	general@lists.openfabrics.org
 S:	Supported
 S:	Supported
+F:	drivers/infiniband/hw/ehca/
 
 
 EMBEDDED LINUX
 EMBEDDED LINUX
 P:	Paul Gortmaker
 P:	Paul Gortmaker
@@ -1693,22 +2013,29 @@ M:	james.smart@emulex.com
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 W:	http://sourceforge.net/projects/lpfcxxxx
 W:	http://sourceforge.net/projects/lpfcxxxx
 S:	Supported
 S:	Supported
+F:	drivers/scsi/lpfc/
 
 
 EPSON 1355 FRAMEBUFFER DRIVER
 EPSON 1355 FRAMEBUFFER DRIVER
 P:	Christopher Hoover
 P:	Christopher Hoover
-M:	ch@murgatroid.com, ch@hpl.hp.com
+M:	ch@murgatroid.com
+P:	Christopher Hoover
+M:	ch@hpl.hp.com
 S:	Maintained
 S:	Maintained
+F:	drivers/video/epson1355fb.c
 
 
 EPSON S1D13XXX FRAMEBUFFER DRIVER
 EPSON S1D13XXX FRAMEBUFFER DRIVER
 P:	Kristoffer Ericson
 P:	Kristoffer Ericson
 M:	kristoffer.ericson@gmail.com
 M:	kristoffer.ericson@gmail.com
 S:	Maintained
 S:	Maintained
+F:	drivers/video/s1d13xxxfb.c
+F:	include/video/s1d13xxxfb.h
 
 
 ETHEREXPRESS-16 NETWORK DRIVER
 ETHEREXPRESS-16 NETWORK DRIVER
 P:	Philip Blundell
 P:	Philip Blundell
 M:	philb@gnu.org
 M:	philb@gnu.org
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/eexpress.*
 
 
 ETHERNET BRIDGE
 ETHERNET BRIDGE
 P:	Stephen Hemminger
 P:	Stephen Hemminger
@@ -1716,87 +2043,126 @@ M:	shemminger@linux-foundation.org
 L:	bridge@lists.linux-foundation.org
 L:	bridge@lists.linux-foundation.org
 W:	http://www.linux-foundation.org/en/Net:Bridge
 W:	http://www.linux-foundation.org/en/Net:Bridge
 S:	Maintained
 S:	Maintained
+F:	include/linux/netfilter_bridge/
+F:	net/bridge/
 
 
 ETHERTEAM 16I DRIVER
 ETHERTEAM 16I DRIVER
 P:	Mika Kuoppala
 P:	Mika Kuoppala
 M:	miku@iki.fi
 M:	miku@iki.fi
 S:	Maintained
 S:	Maintained
+F:	drivers/net/eth16i.c
 
 
 EXT2 FILE SYSTEM
 EXT2 FILE SYSTEM
 L:	linux-ext4@vger.kernel.org
 L:	linux-ext4@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/filesystems/ext2.txt
+F:	fs/ext2/
+F:	include/linux/ext2*
 
 
 EXT3 FILE SYSTEM
 EXT3 FILE SYSTEM
-P:	Stephen Tweedie, Andrew Morton
-M:	sct@redhat.com, akpm@linux-foundation.org, adilger@sun.com
+P:	Stephen Tweedie
+M:	sct@redhat.com
+P:	Andrew Morton
+M:	akpm@linux-foundation.org
+P:	Andreas Dilger
+M:	adilger@sun.com
 L:	linux-ext4@vger.kernel.org
 L:	linux-ext4@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/filesystems/ext3.txt
+F:	fs/ext3/
+F:	include/linux/ext3*
 
 
 EXT4 FILE SYSTEM
 EXT4 FILE SYSTEM
 P:	Theodore Ts'o
 P:	Theodore Ts'o
-M:	tytso@mit.edu, adilger@sun.com
+M:	tytso@mit.edu
+P:	Andreas Dilger
+M:	adilger@sun.com
 L:	linux-ext4@vger.kernel.org
 L:	linux-ext4@vger.kernel.org
 W:	http://ext4.wiki.kernel.org
 W:	http://ext4.wiki.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/filesystems/ext4.txt
+F:	fs/ext4/
 
 
 F71805F HARDWARE MONITORING DRIVER
 F71805F HARDWARE MONITORING DRIVER
 P:	Jean Delvare
 P:	Jean Delvare
 M:	khali@linux-fr.org
 M:	khali@linux-fr.org
 L:	lm-sensors@lm-sensors.org
 L:	lm-sensors@lm-sensors.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/hwmon/f71805f
+F:	drivers/hwmon/f71805f.c
 
 
 FARSYNC SYNCHRONOUS DRIVER
 FARSYNC SYNCHRONOUS DRIVER
 P:	Kevin Curtis
 P:	Kevin Curtis
 M:	kevin.curtis@farsite.co.uk
 M:	kevin.curtis@farsite.co.uk
 W:	http://www.farsite.co.uk/
 W:	http://www.farsite.co.uk/
 S:	Supported
 S:	Supported
+F:	drivers/net/wan/farsync.*
 
 
 FAULT INJECTION SUPPORT
 FAULT INJECTION SUPPORT
 P:	Akinobu Mita
 P:	Akinobu Mita
 M:	akinobu.mita@gmail.com
 M:	akinobu.mita@gmail.com
 S:	Supported
 S:	Supported
+F:	Documentation/fault-injection/
+F:	lib/fault-inject.c
 
 
 FILE LOCKING (flock() and fcntl()/lockf())
 FILE LOCKING (flock() and fcntl()/lockf())
 P:	Matthew Wilcox
 P:	Matthew Wilcox
 M:	matthew@wil.cx
 M:	matthew@wil.cx
 L:	linux-fsdevel@vger.kernel.org
 L:	linux-fsdevel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	include/linux/fcntl.h
+F:	include/linux/fs.h
+F:	fs/fcntl.c
+F:	fs/locks.c
 
 
 FILESYSTEMS (VFS and infrastructure)
 FILESYSTEMS (VFS and infrastructure)
 P:	Alexander Viro
 P:	Alexander Viro
 M:	viro@zeniv.linux.org.uk
 M:	viro@zeniv.linux.org.uk
 L:	linux-fsdevel@vger.kernel.org
 L:	linux-fsdevel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	fs/*
 
 
 FINTEK F75375S HARDWARE MONITOR AND FAN CONTROLLER DRIVER
 FINTEK F75375S HARDWARE MONITOR AND FAN CONTROLLER DRIVER
 P:	Riku Voipio
 P:	Riku Voipio
 M:	riku.vipio@iki.fi
 M:	riku.vipio@iki.fi
 L:	lm-sensors@lm-sensors.org
 L:	lm-sensors@lm-sensors.org
 S:	Maintained
 S:	Maintained
+F:	drivers/hwmon/f75375s.c
+F:	include/linux/f75375s.h
 
 
-FIREWIRE SUBSYSTEM (drivers/firewire, <linux/firewire*.h>)
-P:	Kristian Hoegsberg, Stefan Richter
-M:	krh@redhat.com, stefanr@s5r6.in-berlin.de
+FIREWIRE SUBSYSTEM
+P:	Kristian Hoegsberg
+M:	krh@redhat.com
+P:	Stefan Richter
+M:	stefanr@s5r6.in-berlin.de
 L:	linux1394-devel@lists.sourceforge.net
 L:	linux1394-devel@lists.sourceforge.net
 W:	http://www.linux1394.org/
 W:	http://www.linux1394.org/
-T:	git kernel.org:/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6.git
 S:	Maintained
 S:	Maintained
+F:	drivers/firewire/
+F:	include/linux/firewire*.h
 
 
 FIRMWARE LOADER (request_firmware)
 FIRMWARE LOADER (request_firmware)
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Orphan
 S:	Orphan
+F:	Documentation/firmware_class/
+F:	drivers/base/firmware*.c
+F:	include/linux/firmware.h
 
 
 FPU EMULATOR
 FPU EMULATOR
 P:	Bill Metzenthen
 P:	Bill Metzenthen
-M:	billm@suburbia.net
-W:	http://suburbia.net/~billm/floating-point/emulator/
+M:	billm@melbpc.org.au
+W:	http://floatingpoint.sourceforge.net/emulator/index.html
 S:	Maintained
 S:	Maintained
+F:	arch/x86/math-emu/
 
 
 FRAME RELAY DLCI/FRAD (Sangoma drivers too)
 FRAME RELAY DLCI/FRAD (Sangoma drivers too)
 P:	Mike McLagan
 P:	Mike McLagan
 M:	mike.mclagan@linux.org
 M:	mike.mclagan@linux.org
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/wan/dlci.c
+F:	drivers/net/wan/sdla.c
 
 
 FRAMEBUFFER LAYER
 FRAMEBUFFER LAYER
 P:	Antonino Daplas
 P:	Antonino Daplas
@@ -1804,6 +2170,9 @@ M:	adaplas@gmail.com
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 W:	http://linux-fbdev.sourceforge.net/
 W:	http://linux-fbdev.sourceforge.net/
 S:	Maintained
 S:	Maintained
+F:	Documentation/fb/
+F:	drivers/video/fb*
+F:	include/linux/fb.h
 
 
 FREESCALE DMA DRIVER
 FREESCALE DMA DRIVER
 P:	Li Yang
 P:	Li Yang
@@ -1813,6 +2182,7 @@ M:	zw@zh-kernel.org
 L:	linuxppc-embedded@ozlabs.org
 L:	linuxppc-embedded@ozlabs.org
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/dma/fsldma.*
 
 
 FREESCALE I2C CPM DRIVER
 FREESCALE I2C CPM DRIVER
 P:	Jochen Friedrich
 P:	Jochen Friedrich
@@ -1820,6 +2190,7 @@ M:	jochen@scram.de
 L:	linuxppc-dev@ozlabs.org
 L:	linuxppc-dev@ozlabs.org
 L:	linux-i2c@vger.kernel.org
 L:	linux-i2c@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/i2c/busses/i2c-cpm.c
 
 
 FREESCALE IMX / MXC FRAMEBUFFER DRIVER
 FREESCALE IMX / MXC FRAMEBUFFER DRIVER
 P:	Sascha Hauer
 P:	Sascha Hauer
@@ -1827,6 +2198,8 @@ M:	kernel@pengutronix.de
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 L:	linux-arm-kernel@lists.arm.linux.org.uk (subscribers-only)
 L:	linux-arm-kernel@lists.arm.linux.org.uk (subscribers-only)
 S:	Maintained
 S:	Maintained
+F:	arch/arm/plat-mxc/include/mach/imxfb.h
+F:	drivers/video/imxfb.c
 
 
 FREESCALE SOC FS_ENET DRIVER
 FREESCALE SOC FS_ENET DRIVER
 P:	Pantelis Antoniou
 P:	Pantelis Antoniou
@@ -1836,12 +2209,16 @@ M:	vbordug@ru.mvista.com
 L:	linuxppc-dev@ozlabs.org
 L:	linuxppc-dev@ozlabs.org
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/fs_enet/
+F:	include/linux/fs_enet_pd.h
 
 
 FREESCALE QUICC ENGINE LIBRARY
 FREESCALE QUICC ENGINE LIBRARY
 P:	Timur Tabi
 P:	Timur Tabi
 M:	timur@freescale.com
 M:	timur@freescale.com
 L:	linuxppc-dev@ozlabs.org
 L:	linuxppc-dev@ozlabs.org
 S:	Supported
 S:	Supported
+F:	arch/powerpc/sysdev/qe_lib/
+F:	arch/powerpc/include/asm/*qe.h
 
 
 FREESCALE HIGHSPEED USB DEVICE DRIVER
 FREESCALE HIGHSPEED USB DEVICE DRIVER
 P:	Li Yang
 P:	Li Yang
@@ -1849,6 +2226,7 @@ M:	leoli@freescale.com
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 L:	linuxppc-dev@ozlabs.org
 L:	linuxppc-dev@ozlabs.org
 S:	Maintained
 S:	Maintained
+F:	drivers/usb/gadget/fsl_usb2_udc.c
 
 
 FREESCALE QUICC ENGINE UCC ETHERNET DRIVER
 FREESCALE QUICC ENGINE UCC ETHERNET DRIVER
 P:	Li Yang
 P:	Li Yang
@@ -1856,12 +2234,14 @@ M:	leoli@freescale.com
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 L:	linuxppc-dev@ozlabs.org
 L:	linuxppc-dev@ozlabs.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/ucc_geth*
 
 
 FREESCALE QUICC ENGINE UCC UART DRIVER
 FREESCALE QUICC ENGINE UCC UART DRIVER
 P:	Timur Tabi
 P:	Timur Tabi
 M:	timur@freescale.com
 M:	timur@freescale.com
 L:	linuxppc-dev@ozlabs.org
 L:	linuxppc-dev@ozlabs.org
 S:	Supported
 S:	Supported
+F:	drivers/serial/ucc_uart.c
 
 
 FREESCALE SOC SOUND DRIVERS
 FREESCALE SOC SOUND DRIVERS
 P:	Timur Tabi
 P:	Timur Tabi
@@ -1869,12 +2249,15 @@ M:	timur@freescale.com
 L:	alsa-devel@alsa-project.org
 L:	alsa-devel@alsa-project.org
 L:	linuxppc-dev@ozlabs.org
 L:	linuxppc-dev@ozlabs.org
 S:	Supported
 S:	Supported
+F:	sound/soc/fsl/fsl*
+F:	sound/soc/fsl/mpc8610_hpcd.c
 
 
 FREEVXFS FILESYSTEM
 FREEVXFS FILESYSTEM
 P:	Christoph Hellwig
 P:	Christoph Hellwig
 M:	hch@infradead.org
 M:	hch@infradead.org
 W:	ftp://ftp.openlinux.org/pub/people/hch/vxfs
 W:	ftp://ftp.openlinux.org/pub/people/hch/vxfs
 S:	Maintained
 S:	Maintained
+F:	fs/freevxfs/
 
 
 FREEZER
 FREEZER
 P:	Pavel Machek
 P:	Pavel Machek
@@ -1883,22 +2266,32 @@ P:	Rafael J. Wysocki
 M:	rjw@sisk.pl
 M:	rjw@sisk.pl
 L:	linux-pm@lists.linux-foundation.org
 L:	linux-pm@lists.linux-foundation.org
 S:	Supported
 S:	Supported
+F:	Documentation/power/freezing-of-tasks.txt
+F:	include/linux/freezer.h
+F:	kernel/freezer.c
 
 
 FTRACE
 FTRACE
 P:	Steven Rostedt
 P:	Steven Rostedt
 M:	rostedt@goodmis.org
 M:	rostedt@goodmis.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/ftrace.txt
+F:	arch/*/*/*/ftrace.h
+F:	arch/*/kernel/ftrace.c
+F:	include/*/ftrace.h
+F:	kernel/trace/
 
 
 FUJITSU FR-V (FRV) PORT
 FUJITSU FR-V (FRV) PORT
 P:	David Howells
 P:	David Howells
 M:	dhowells@redhat.com
 M:	dhowells@redhat.com
 S:	Maintained
 S:	Maintained
+F:	arch/frv/
 
 
 FUJITSU LAPTOP EXTRAS
 FUJITSU LAPTOP EXTRAS
 P:	Jonathan Woithe
 P:	Jonathan Woithe
 M:	jwoithe@physics.adelaide.edu.au
 M:	jwoithe@physics.adelaide.edu.au
 L:	linux-acpi@vger.kernel.org
 L:	linux-acpi@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/platform/x86/fujitsu-laptop.c
 
 
 FUSE: FILESYSTEM IN USERSPACE
 FUSE: FILESYSTEM IN USERSPACE
 P:	Miklos Szeredi
 P:	Miklos Szeredi
@@ -1906,12 +2299,15 @@ M:	miklos@szeredi.hu
 L:	fuse-devel@lists.sourceforge.net
 L:	fuse-devel@lists.sourceforge.net
 W:	http://fuse.sourceforge.net/
 W:	http://fuse.sourceforge.net/
 S:	Maintained
 S:	Maintained
+F:	fs/fuse/
+F:	include/linux/fuse.h
 
 
 FUTURE DOMAIN TMC-16x0 SCSI DRIVER (16-bit)
 FUTURE DOMAIN TMC-16x0 SCSI DRIVER (16-bit)
 P:	Rik Faith
 P:	Rik Faith
 M:	faith@cs.unc.edu
 M:	faith@cs.unc.edu
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 S:	Odd Fixes (e.g., new signatures)
 S:	Odd Fixes (e.g., new signatures)
+F:	drivers/scsi/fdomain.*
 
 
 GDT SCSI DISK ARRAY CONTROLLER DRIVER
 GDT SCSI DISK ARRAY CONTROLLER DRIVER
 P:	Achim Leubner
 P:	Achim Leubner
@@ -1919,26 +2315,39 @@ M:	achim_leubner@adaptec.com
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 W:	http://www.icp-vortex.com/
 W:	http://www.icp-vortex.com/
 S:	Supported
 S:	Supported
+F:	drivers/scsi/gdt*
 
 
 GENERIC GPIO I2C DRIVER
 GENERIC GPIO I2C DRIVER
 P:	Haavard Skinnemoen
 P:	Haavard Skinnemoen
 M:	hskinnemoen@atmel.com
 M:	hskinnemoen@atmel.com
 S:	Supported
 S:	Supported
+F:	drivers/i2c/busses/i2c-gpio.c
+F:	include/linux/i2c-gpio.h
 
 
 GENERIC HDLC (WAN) DRIVERS
 GENERIC HDLC (WAN) DRIVERS
 P:	Krzysztof Halasa
 P:	Krzysztof Halasa
 M:	khc@pm.waw.pl
 M:	khc@pm.waw.pl
 W:	http://www.kernel.org/pub/linux/utils/net/hdlc/
 W:	http://www.kernel.org/pub/linux/utils/net/hdlc/
 S:	Maintained
 S:	Maintained
+F:	drivers/net/wan/c101.c
+F:	drivers/net/wan/hd6457*
+F:	drivers/net/wan/hdlc*
+F:	drivers/net/wan/n2.c
+F:	drivers/net/wan/pc300too.c
+F:	drivers/net/wan/pci200syn.c
+F:	drivers/net/wan/wanxl*
 
 
 GFS2 FILE SYSTEM
 GFS2 FILE SYSTEM
 P:	Steven Whitehouse
 P:	Steven Whitehouse
 M:	swhiteho@redhat.com
 M:	swhiteho@redhat.com
 L:	cluster-devel@redhat.com
 L:	cluster-devel@redhat.com
 W:	http://sources.redhat.com/cluster/
 W:	http://sources.redhat.com/cluster/
-T:	git kernel.org:/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes.git
-T:	git kernel.org:/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw.git
 S:	Supported
 S:	Supported
+F:	Documentation/filesystems/gfs2*.txt
+F:	fs/gfs2/
+F:	include/linux/gfs2_ondisk.h
 
 
 GIGASET ISDN DRIVERS
 GIGASET ISDN DRIVERS
 P:	Hansjoerg Lipp
 P:	Hansjoerg Lipp
@@ -1948,6 +2357,9 @@ M:	tilman@imap.cc
 L:	gigaset307x-common@lists.sourceforge.net
 L:	gigaset307x-common@lists.sourceforge.net
 W:	http://gigaset307x.sourceforge.net/
 W:	http://gigaset307x.sourceforge.net/
 S:	Maintained
 S:	Maintained
+F:	Documentation/isdn/README.gigaset
+F:	drivers/isdn/gigaset/
+F:	include/linux/gigaset_dev.h
 
 
 HARD DRIVE ACTIVE PROTECTION SYSTEM (HDAPS) DRIVER
 HARD DRIVE ACTIVE PROTECTION SYSTEM (HDAPS) DRIVER
 P:	Frank Seidel
 P:	Frank Seidel
@@ -1955,6 +2367,7 @@ M:	frank@f-seidel.de
 L:	lm-sensors@lm-sensors.org
 L:	lm-sensors@lm-sensors.org
 W:	http://www.kernel.org/pub/linux/kernel/people/fseidel/hdaps/
 W:	http://www.kernel.org/pub/linux/kernel/people/fseidel/hdaps/
 S:	Maintained
 S:	Maintained
+F:	drivers/hwmon/hdaps.c
 
 
 HYPERVISOR VIRTUAL CONSOLE DRIVER
 HYPERVISOR VIRTUAL CONSOLE DRIVER
 L:	linuxppc-dev@ozlabs.org
 L:	linuxppc-dev@ozlabs.org
@@ -1966,51 +2379,61 @@ GSPCA FINEPIX SUBDRIVER
 P:	Frank Zago
 P:	Frank Zago
 M:	frank@zago.net
 M:	frank@zago.net
 L:	linux-media@vger.kernel.org
 L:	linux-media@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
 S:	Maintained
 S:	Maintained
+F:	drivers/media/video/gspca/finepix.c
 
 
 GSPCA M5602 SUBDRIVER
 GSPCA M5602 SUBDRIVER
 P:	Erik Andren
 P:	Erik Andren
 M:	erik.andren@gmail.com
 M:	erik.andren@gmail.com
 L:	linux-media@vger.kernel.org
 L:	linux-media@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
 S:	Maintained
 S:	Maintained
+F:	drivers/media/video/gspca/m5602/
 
 
 GSPCA PAC207 SONIXB SUBDRIVER
 GSPCA PAC207 SONIXB SUBDRIVER
 P:	Hans de Goede
 P:	Hans de Goede
 M:	hdegoede@redhat.com
 M:	hdegoede@redhat.com
 L:	linux-media@vger.kernel.org
 L:	linux-media@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
 S:	Maintained
 S:	Maintained
+F:	drivers/media/video/gspca/pac207.c
 
 
 GSPCA T613 SUBDRIVER
 GSPCA T613 SUBDRIVER
 P:	Leandro Costantino
 P:	Leandro Costantino
 M:	lcostantino@gmail.com
 M:	lcostantino@gmail.com
 L:	linux-media@vger.kernel.org
 L:	linux-media@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
 S:	Maintained
 S:	Maintained
+F:	drivers/media/video/gspca/t613.c
 
 
 GSPCA USB WEBCAM DRIVER
 GSPCA USB WEBCAM DRIVER
 P:	Jean-Francois Moine
 P:	Jean-Francois Moine
 M:	moinejf@free.fr
 M:	moinejf@free.fr
 W:	http://moinejf.free.fr
 W:	http://moinejf.free.fr
 L:	linux-media@vger.kernel.org
 L:	linux-media@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
 S:	Maintained
 S:	Maintained
+F:	drivers/media/video/gspca/
 
 
 HARDWARE MONITORING
 HARDWARE MONITORING
 L:	lm-sensors@lm-sensors.org
 L:	lm-sensors@lm-sensors.org
 W:	http://www.lm-sensors.org/
 W:	http://www.lm-sensors.org/
 S:	Orphan
 S:	Orphan
+F:	drivers/hwmon/
 
 
 HARDWARE RANDOM NUMBER GENERATOR CORE
 HARDWARE RANDOM NUMBER GENERATOR CORE
 S:	Orphan
 S:	Orphan
+F:	Documentation/hw_random.txt
+F:	drivers/char/hw_random/
+F:	include/linux/hw_random.h
 
 
 HARMONY SOUND DRIVER
 HARMONY SOUND DRIVER
 P:	Kyle McMartin
 P:	Kyle McMartin
 M:	kyle@mcmartin.ca
 M:	kyle@mcmartin.ca
 L:	linux-parisc@vger.kernel.org
 L:	linux-parisc@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	sound/parisc/harmony.*
 
 
 HAYES ESP SERIAL DRIVER
 HAYES ESP SERIAL DRIVER
 P:	Andrew J. Robinson
 P:	Andrew J. Robinson
@@ -2018,30 +2441,33 @@ M:	arobinso@nyx.net
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 W:	http://www.nyx.net/~arobinso
 W:	http://www.nyx.net/~arobinso
 S:	Maintained
 S:	Maintained
-
-HEWLETT-PACKARD FIBRE CHANNEL 64-bit/66MHz PCI non-intelligent HBA
-P:	Chirag Kantharia
-M:	chirag.kantharia@hp.com
-L:	iss_storagedev@hp.com
-S:	Maintained
+F:	Documentation/serial/hayes-esp.txt
+F:	drivers/char/esp.c
 
 
 HEWLETT-PACKARD SMART2 RAID DRIVER
 HEWLETT-PACKARD SMART2 RAID DRIVER
 P:	Chirag Kantharia
 P:	Chirag Kantharia
 M:	chirag.kantharia@hp.com
 M:	chirag.kantharia@hp.com
 L:	iss_storagedev@hp.com
 L:	iss_storagedev@hp.com
 S:	Maintained
 S:	Maintained
+F:	Documentation/blockdev/cpqarray.txt
+F:	drivers/block/cpqarray.*
 
 
 HEWLETT-PACKARD SMART CISS RAID DRIVER (cciss)
 HEWLETT-PACKARD SMART CISS RAID DRIVER (cciss)
 P:	Mike Miller
 P:	Mike Miller
 M:	mike.miller@hp.com
 M:	mike.miller@hp.com
 L:	iss_storagedev@hp.com
 L:	iss_storagedev@hp.com
 S:	Supported
 S:	Supported
+F:	Documentation/blockdev/cciss.txt
+F:	drivers/block/cciss*
+F:	include/linux/cciss_ioctl.h
 
 
 HFS FILESYSTEM
 HFS FILESYSTEM
 P:	Roman Zippel
 P:	Roman Zippel
 M:	zippel@linux-m68k.org
 M:	zippel@linux-m68k.org
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/filesystems/hfs.txt
+F:	fs/hfs/
 
 
 HGA FRAMEBUFFER DRIVER
 HGA FRAMEBUFFER DRIVER
 P:	Ferenc Bakonyi
 P:	Ferenc Bakonyi
@@ -2049,6 +2475,7 @@ M:	fero@drama.obuda.kando.hu
 L:	linux-nvidia@lists.surfsouth.com
 L:	linux-nvidia@lists.surfsouth.com
 W:	http://drama.obuda.kando.hu/~fero/cgi-bin/hgafb.shtml
 W:	http://drama.obuda.kando.hu/~fero/cgi-bin/hgafb.shtml
 S:	Maintained
 S:	Maintained
+F:	drivers/video/hgafb.c
 
 
 HIBERNATION (aka Software Suspend, aka swsusp)
 HIBERNATION (aka Software Suspend, aka swsusp)
 P:	Pavel Machek
 P:	Pavel Machek
@@ -2057,19 +2484,32 @@ P:	Rafael J. Wysocki
 M:	rjw@sisk.pl
 M:	rjw@sisk.pl
 L:	linux-pm@lists.linux-foundation.org
 L:	linux-pm@lists.linux-foundation.org
 S:	Supported
 S:	Supported
+F:	arch/x86/power/
+F:	drivers/base/power/
+F:	kernel/power/
+F:	include/linux/suspend.h
+F:	include/linux/freezer.h
+F:	include/linux/pm.h
+F:	include/asm-*/suspend*.h
+F:	arch/*/include/asm/suspend*.h
 
 
 HID CORE LAYER
 HID CORE LAYER
 P:	Jiri Kosina
 P:	Jiri Kosina
 M:	jkosina@suse.cz
 M:	jkosina@suse.cz
 L:	linux-input@vger.kernel.org
 L:	linux-input@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/jikos/hid.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid.git
 S:	Maintained
 S:	Maintained
+F:	drivers/hid/
+F:	include/linux/hid*
 
 
 HIGH-RESOLUTION TIMERS, CLOCKEVENTS, DYNTICKS
 HIGH-RESOLUTION TIMERS, CLOCKEVENTS, DYNTICKS
 P:	Thomas Gleixner
 P:	Thomas Gleixner
 M:	tglx@linutronix.de
 M:	tglx@linutronix.de
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/timers/
+F:	kernel/hrtimer.c
+F:	include/linux/hrtimer.h
 
 
 HIGH-SPEED SCC DRIVER FOR AX.25
 HIGH-SPEED SCC DRIVER FOR AX.25
 P:	Klaus Kudielka
 P:	Klaus Kudielka
@@ -2077,18 +2517,25 @@ M:	klaus.kudielka@ieee.org
 L:	linux-hams@vger.kernel.org
 L:	linux-hams@vger.kernel.org
 W:	http://www.nt.tuwien.ac.at/~kkudielk/Linux/
 W:	http://www.nt.tuwien.ac.at/~kkudielk/Linux/
 S:	Maintained
 S:	Maintained
+F:	drivers/net/hamradio/dmascc.c
+F:	drivers/net/hamradio/scc.c
 
 
 HIGHPOINT ROCKETRAID 3xxx RAID DRIVER
 HIGHPOINT ROCKETRAID 3xxx RAID DRIVER
 P:	HighPoint Linux Team
 P:	HighPoint Linux Team
 M:	linux@highpoint-tech.com
 M:	linux@highpoint-tech.com
 W:	http://www.highpoint-tech.com
 W:	http://www.highpoint-tech.com
 S:	Supported
 S:	Supported
+F:	Documentation/scsi/hptiop.txt
+F:	drivers/scsi/hptiop.c
 
 
 HIPPI
 HIPPI
 P:	Jes Sorensen
 P:	Jes Sorensen
 M:	jes@trained-monkey.org
 M:	jes@trained-monkey.org
 L:	linux-hippi@sunsite.dk
 L:	linux-hippi@sunsite.dk
 S:	Maintained
 S:	Maintained
+F:	include/linux/hippidevice.h
+F:	include/linux/if_hippi.h
+F:	net/802/hippi.c
 
 
 HOST AP DRIVER
 HOST AP DRIVER
 P:	Jouni Malinen
 P:	Jouni Malinen
@@ -2097,65 +2544,79 @@ L:	hostap@shmoo.com (subscribers-only)
 L:	linux-wireless@vger.kernel.org
 L:	linux-wireless@vger.kernel.org
 W:	http://hostap.epitest.fi/
 W:	http://hostap.epitest.fi/
 S:	Maintained
 S:	Maintained
+F:	drivers/net/wireless/hostap/
 
 
 HP COMPAQ TC1100 TABLET WMI EXTRAS DRIVER
 HP COMPAQ TC1100 TABLET WMI EXTRAS DRIVER
 P:	Carlos Corbacho
 P:	Carlos Corbacho
 M:	carlos@strangeworlds.co.uk
 M:	carlos@strangeworlds.co.uk
 S:	Odd Fixes
 S:	Odd Fixes
+F:	drivers/platform/x86/tc1100-wmi.c
 
 
 HP100:	Driver for HP 10/100 Mbit/s Voice Grade Network Adapter Series
 HP100:	Driver for HP 10/100 Mbit/s Voice Grade Network Adapter Series
 P:	Jaroslav Kysela
 P:	Jaroslav Kysela
 M:	perex@perex.cz
 M:	perex@perex.cz
 S:	Maintained
 S:	Maintained
+F:	drivers/net/hp100.*
 
 
-HPET:	High Precision Event Timers driver (drivers/char/hpet.c)
+HPET:	High Precision Event Timers driver
 P:	Clemens Ladisch
 P:	Clemens Ladisch
 M:	clemens@ladisch.de
 M:	clemens@ladisch.de
 S:	Maintained
 S:	Maintained
+F:	Documentation/timers/hpet.txt
+F:	drivers/char/hpet.c
+F:	include/linux/hpet.h
 
 
 HPET:	i386
 HPET:	i386
 P:	Venkatesh Pallipadi (Venki)
 P:	Venkatesh Pallipadi (Venki)
 M:	venkatesh.pallipadi@intel.com
 M:	venkatesh.pallipadi@intel.com
 S:	Maintained
 S:	Maintained
+F:	arch/x86/kernel/hpet.c
+F:	arch/x86/include/asm/hpet.h
 
 
 HPET:	x86_64
 HPET:	x86_64
 P:	Vojtech Pavlik
 P:	Vojtech Pavlik
 M:	vojtech@suse.cz
 M:	vojtech@suse.cz
 S:	Maintained
 S:	Maintained
 
 
-HPET:	ACPI hpet.c
+HPET:	ACPI
 P:	Bob Picco
 P:	Bob Picco
 M:	bob.picco@hp.com
 M:	bob.picco@hp.com
 S:	Maintained
 S:	Maintained
+F:	drivers/char/hpet.c
 
 
 HPFS FILESYSTEM
 HPFS FILESYSTEM
 P:	Mikulas Patocka
 P:	Mikulas Patocka
 M:	mikulas@artax.karlin.mff.cuni.cz
 M:	mikulas@artax.karlin.mff.cuni.cz
 W:	http://artax.karlin.mff.cuni.cz/~mikulas/vyplody/hpfs/index-e.cgi
 W:	http://artax.karlin.mff.cuni.cz/~mikulas/vyplody/hpfs/index-e.cgi
 S:	Maintained
 S:	Maintained
+F:	fs/hpfs/
 
 
-HSO	3G Modem Driver (hso.c)
+HSO 3G MODEM DRIVER
 P:	Denis Joseph Barrow
 P:	Denis Joseph Barrow
 M:	d.barow@option.com
 M:	d.barow@option.com
 W:	http://www.pharscape.org
 W:	http://www.pharscape.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/usb/hso.c
 
 
 HTCPEN TOUCHSCREEN DRIVER
 HTCPEN TOUCHSCREEN DRIVER
 P:	Pau Oliva Fora
 P:	Pau Oliva Fora
 M:	pof@eslack.org
 M:	pof@eslack.org
 L:	linux-input@vger.kernel.org
 L:	linux-input@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/input/touchscreen/htcpen.c
 
 
 HUGETLB FILESYSTEM
 HUGETLB FILESYSTEM
 P:	William Irwin
 P:	William Irwin
 M:	wli@holomorphy.com
 M:	wli@holomorphy.com
 S:	Maintained
 S:	Maintained
+F:	fs/hugetlbfs/
 
 
 I2C/SMBUS STUB DRIVER
 I2C/SMBUS STUB DRIVER
 P:	Mark M. Hoffman
 P:	Mark M. Hoffman
 M:	mhoffman@lightlink.com
 M:	mhoffman@lightlink.com
 L:	linux-i2c@vger.kernel.org
 L:	linux-i2c@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/i2c/busses/i2c-stub.c
 
 
 I2C SUBSYSTEM
 I2C SUBSYSTEM
 P:	Jean Delvare (PC drivers, core)
 P:	Jean Delvare (PC drivers, core)
@@ -2166,24 +2627,31 @@ L:	linux-i2c@vger.kernel.org
 W:	http://i2c.wiki.kernel.org/
 W:	http://i2c.wiki.kernel.org/
 T:	quilt kernel.org/pub/linux/kernel/people/jdelvare/linux-2.6/jdelvare-i2c/
 T:	quilt kernel.org/pub/linux/kernel/people/jdelvare/linux-2.6/jdelvare-i2c/
 S:	Maintained
 S:	Maintained
+F:	Documentation/i2c/
+F:	drivers/i2c/
+F:	include/linux/i2c.h
+F:	include/linux/i2c-dev.h
+F:	include/linux/i2c-id.h
 
 
 I2C-TINY-USB DRIVER
 I2C-TINY-USB DRIVER
 P:	Till Harbaum
 P:	Till Harbaum
 M:	till@harbaum.org
 M:	till@harbaum.org
 L:	linux-i2c@vger.kernel.org
 L:	linux-i2c@vger.kernel.org
-T:	http://www.harbaum.org/till/i2c_tiny_usb
+W:	http://www.harbaum.org/till/i2c_tiny_usb
 S:	Maintained
 S:	Maintained
+F:	drivers/i2c/busses/i2c-tiny-usb.c
 
 
 i386 BOOT CODE
 i386 BOOT CODE
 P:	H. Peter Anvin
 P:	H. Peter Anvin
 M:	hpa@zytor.com
 M:	hpa@zytor.com
 L:	Linux-Kernel@vger.kernel.org
 L:	Linux-Kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	arch/x86/boot/
 
 
 i386 SETUP CODE / CPU ERRATA WORKAROUNDS
 i386 SETUP CODE / CPU ERRATA WORKAROUNDS
 P:	H. Peter Anvin
 P:	H. Peter Anvin
 M:	hpa@zytor.com
 M:	hpa@zytor.com
-T:	git.kernel.org:/pub/scm/linux/kernel/git/hpa/linux-2.6-x86setup.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/hpa/linux-2.6-x86setup.git
 S:	Maintained
 S:	Maintained
 
 
 IA64 (Itanium) PLATFORM
 IA64 (Itanium) PLATFORM
@@ -2191,19 +2659,22 @@ P:	Tony Luck
 M:	tony.luck@intel.com
 M:	tony.luck@intel.com
 L:	linux-ia64@vger.kernel.org
 L:	linux-ia64@vger.kernel.org
 W:	http://www.ia64-linux.org/
 W:	http://www.ia64-linux.org/
-T:	git kernel.org:/pub/scm/linux/kernel/git/aegl/linux-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6.git
 S:	Maintained
 S:	Maintained
+F:	arch/ia64/
 
 
 IBM MCA SCSI SUBSYSTEM DRIVER
 IBM MCA SCSI SUBSYSTEM DRIVER
 P:	Michael Lang
 P:	Michael Lang
 M:	langa2@kph.uni-mainz.de
 M:	langa2@kph.uni-mainz.de
 W:	http://www.uni-mainz.de/~langm000/linux.html
 W:	http://www.uni-mainz.de/~langm000/linux.html
 S:	Maintained
 S:	Maintained
+F:	drivers/scsi/ibmmca.c
 
 
 IBM Power Linux RAID adapter
 IBM Power Linux RAID adapter
 P:	Brian King
 P:	Brian King
 M:	brking@us.ibm.com
 M:	brking@us.ibm.com
 S:	Supported
 S:	Supported
+F:	drivers/scsi/ipr.*
 
 
 IBM ServeRAID RAID DRIVER
 IBM ServeRAID RAID DRIVER
 P:	Jack Hammer
 P:	Jack Hammer
@@ -2211,6 +2682,7 @@ P:	Dave Jeffery
 M:	ipslinux@adaptec.com
 M:	ipslinux@adaptec.com
 W:	http://www.developer.ibm.com/welcome/netfinity/serveraid.html
 W:	http://www.developer.ibm.com/welcome/netfinity/serveraid.html
 S:	Supported
 S:	Supported
+F:	drivers/scsi/ips.*
 
 
 IDE SUBSYSTEM
 IDE SUBSYSTEM
 P:	Bartlomiej Zolnierkiewicz
 P:	Bartlomiej Zolnierkiewicz
@@ -2218,45 +2690,55 @@ M:	bzolnier@gmail.com
 L:	linux-ide@vger.kernel.org
 L:	linux-ide@vger.kernel.org
 T:	quilt kernel.org/pub/linux/kernel/people/bart/pata-2.6/
 T:	quilt kernel.org/pub/linux/kernel/people/bart/pata-2.6/
 S:	Maintained
 S:	Maintained
+F:	Documentation/ide/
+F:	drivers/ide/
+F:	include/linux/ide.h
 
 
 IDE/ATAPI DRIVERS
 IDE/ATAPI DRIVERS
 P:	Borislav Petkov
 P:	Borislav Petkov
 M:	petkovbb@gmail.com
 M:	petkovbb@gmail.com
 L:	linux-ide@vger.kernel.org
 L:	linux-ide@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/cdrom/ide-cd
+F:	drivers/ide/ide-cd*
 
 
 IDLE-I7300
 IDLE-I7300
 P:	Andy Henroid
 P:	Andy Henroid
 M:	andrew.d.henroid@intel.com
 M:	andrew.d.henroid@intel.com
 L:	linux-pm@lists.linux-foundation.org
 L:	linux-pm@lists.linux-foundation.org
 S:	Supported
 S:	Supported
+F:	drivers/idle/i7300_idle.c
 
 
-IEEE 1394 SUBSYSTEM (drivers/ieee1394)
+IEEE 1394 SUBSYSTEM
 P:	Ben Collins
 P:	Ben Collins
 M:	ben.collins@ubuntu.com
 M:	ben.collins@ubuntu.com
 P:	Stefan Richter
 P:	Stefan Richter
 M:	stefanr@s5r6.in-berlin.de
 M:	stefanr@s5r6.in-berlin.de
 L:	linux1394-devel@lists.sourceforge.net
 L:	linux1394-devel@lists.sourceforge.net
 W:	http://www.linux1394.org/
 W:	http://www.linux1394.org/
-T:	git kernel.org:/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6.git
 S:	Maintained
 S:	Maintained
+F:	drivers/ieee1394/
 
 
-IEEE 1394 RAW I/O DRIVER (raw1394)
+IEEE 1394 RAW I/O DRIVER
 P:	Dan Dennedy
 P:	Dan Dennedy
 M:	dan@dennedy.org
 M:	dan@dennedy.org
 P:	Stefan Richter
 P:	Stefan Richter
 M:	stefanr@s5r6.in-berlin.de
 M:	stefanr@s5r6.in-berlin.de
 L:	linux1394-devel@lists.sourceforge.net
 L:	linux1394-devel@lists.sourceforge.net
 S:	Maintained
 S:	Maintained
+F:	drivers/ieee1394/raw1394*
 
 
 INTEGRITY MEASUREMENT ARCHITECTURE (IMA)
 INTEGRITY MEASUREMENT ARCHITECTURE (IMA)
 P:	Mimi Zohar
 P:	Mimi Zohar
 M:	zohar@us.ibm.com
 M:	zohar@us.ibm.com
 S:	Supported
 S:	Supported
+F:	security/integrity/ima/
 
 
 IMS TWINTURBO FRAMEBUFFER DRIVER
 IMS TWINTURBO FRAMEBUFFER DRIVER
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 S:	Orphan
 S:	Orphan
+F:	drivers/video/imsttfb.c
 
 
 INFINIBAND SUBSYSTEM
 INFINIBAND SUBSYSTEM
 P:	Roland Dreier
 P:	Roland Dreier
@@ -2267,8 +2749,11 @@ P:	Hal Rosenstock
 M:	hal.rosenstock@gmail.com
 M:	hal.rosenstock@gmail.com
 L:	general@lists.openfabrics.org (moderated for non-subscribers)
 L:	general@lists.openfabrics.org (moderated for non-subscribers)
 W:	http://www.openib.org/
 W:	http://www.openib.org/
-T:	git kernel.org:/pub/scm/linux/kernel/git/roland/infiniband.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband.git
 S:	Supported
 S:	Supported
+F:	Documentation/infiniband/
+F:	drivers/infiniband/
+F:	include/linux/if_infiniband.h
 
 
 INOTIFY
 INOTIFY
 P:	John McCutchan
 P:	John McCutchan
@@ -2277,26 +2762,33 @@ P:	Robert Love
 M:	rlove@rlove.org
 M:	rlove@rlove.org
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/filesystems/inotify.txt
+F:	fs/notify/inotify/
+F:	include/linux/inotify.h
 
 
 INPUT (KEYBOARD, MOUSE, JOYSTICK, TOUCHSCREEN) DRIVERS
 INPUT (KEYBOARD, MOUSE, JOYSTICK, TOUCHSCREEN) DRIVERS
 P:	Dmitry Torokhov
 P:	Dmitry Torokhov
 M:	dmitry.torokhov@gmail.com
 M:	dmitry.torokhov@gmail.com
 M:	dtor@mail.ru
 M:	dtor@mail.ru
 L:	linux-input@vger.kernel.org
 L:	linux-input@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/dtor/input.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input.git
 S:	Maintained
 S:	Maintained
+F:	drivers/input/
 
 
 INTEL FRAMEBUFFER DRIVER (excluding 810 and 815)
 INTEL FRAMEBUFFER DRIVER (excluding 810 and 815)
 P:	Sylvain Meyer
 P:	Sylvain Meyer
 M:	sylvain.meyer@worldonline.fr
 M:	sylvain.meyer@worldonline.fr
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 S:	Maintained
 S:	Maintained
+F:	Documentation/fb/intelfb.txt
+F:	drivers/video/intelfb/
 
 
 INTEL 810/815 FRAMEBUFFER DRIVER
 INTEL 810/815 FRAMEBUFFER DRIVER
 P:	Antonino Daplas
 P:	Antonino Daplas
 M:	adaplas@gmail.com
 M:	adaplas@gmail.com
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 S:	Maintained
 S:	Maintained
+F:	drivers/video/i810/
 
 
 INTEL MENLOW THERMAL DRIVER
 INTEL MENLOW THERMAL DRIVER
 P:	Sujith Thomas
 P:	Sujith Thomas
@@ -2304,46 +2796,61 @@ M:	sujith.thomas@intel.com
 L:	linux-acpi@vger.kernel.org
 L:	linux-acpi@vger.kernel.org
 W:	http://www.lesswatts.org/projects/acpi/
 W:	http://www.lesswatts.org/projects/acpi/
 S:	Supported
 S:	Supported
+F:	drivers/platform/x86/intel_menlow.c
 
 
 INTEL IA32 MICROCODE UPDATE SUPPORT
 INTEL IA32 MICROCODE UPDATE SUPPORT
 P:	Tigran Aivazian
 P:	Tigran Aivazian
 M:	tigran@aivazian.fsnet.co.uk
 M:	tigran@aivazian.fsnet.co.uk
 S:	Maintained
 S:	Maintained
+F:	arch/x86/kernel/microcode_core.c
+F:	arch/x86/kernel/microcode_intel.c
 
 
 INTEL I/OAT DMA DRIVER
 INTEL I/OAT DMA DRIVER
 P:	Maciej Sosnowski
 P:	Maciej Sosnowski
 M:	maciej.sosnowski@intel.com
 M:	maciej.sosnowski@intel.com
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/dma/ioat*
 
 
 INTEL IOMMU (VT-d)
 INTEL IOMMU (VT-d)
 P:	David Woodhouse
 P:	David Woodhouse
 M:	dwmw2@infradead.org
 M:	dwmw2@infradead.org
 L:	iommu@lists.linux-foundation.org
 L:	iommu@lists.linux-foundation.org
-T:	git://git.infradead.org/iommu-2.6.git
+T:	git git://git.infradead.org/iommu-2.6.git
 S:	Supported
 S:	Supported
+F:	drivers/pci/intel-iommu.c
+F:	include/linux/intel-iommu.h
 
 
 INTEL IOP-ADMA DMA DRIVER
 INTEL IOP-ADMA DMA DRIVER
 P:	Dan Williams
 P:	Dan Williams
 M:	dan.j.williams@intel.com
 M:	dan.j.williams@intel.com
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/dma/iop-adma.c
 
 
 INTEL IXP4XX QMGR, NPE, ETHERNET and HSS SUPPORT
 INTEL IXP4XX QMGR, NPE, ETHERNET and HSS SUPPORT
 P:	Krzysztof Halasa
 P:	Krzysztof Halasa
 M:	khc@pm.waw.pl
 M:	khc@pm.waw.pl
 S:	Maintained
 S:	Maintained
+F:	arch/arm/mach-ixp4xx/include/mach/qmgr.h
+F:	arch/arm/mach-ixp4xx/include/mach/npe.h
+F:	arch/arm/mach-ixp4xx/ixp4xx_qmgr.c
+F:	arch/arm/mach-ixp4xx/ixp4xx_npe.c
+F:	drivers/net/arm/ixp4xx_eth.c
+F:	drivers/net/wan/ixp4xx_hss.c
 
 
 INTEL IXP4XX RANDOM NUMBER GENERATOR SUPPORT
 INTEL IXP4XX RANDOM NUMBER GENERATOR SUPPORT
 P:	Deepak Saxena
 P:	Deepak Saxena
 M:	dsaxena@plexity.net
 M:	dsaxena@plexity.net
 S:	Maintained
 S:	Maintained
+F:	drivers/char/hw_random/ixp4xx-rng.c
 
 
 INTEL IXP2000 ETHERNET DRIVER
 INTEL IXP2000 ETHERNET DRIVER
 P:	Lennert Buytenhek
 P:	Lennert Buytenhek
 M:	kernel@wantstofly.org
 M:	kernel@wantstofly.org
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/ixp2000/
 
 
 INTEL ETHERNET DRIVERS (e100/e1000/e1000e/igb/ixgb/ixgbe)
 INTEL ETHERNET DRIVERS (e100/e1000/e1000e/igb/ixgb/ixgbe)
 P:	Jeff Kirsher
 P:	Jeff Kirsher
@@ -2359,6 +2866,12 @@ M:	john.ronciak@intel.com
 L:	e1000-devel@lists.sourceforge.net
 L:	e1000-devel@lists.sourceforge.net
 W:	http://e1000.sourceforge.net/
 W:	http://e1000.sourceforge.net/
 S:	Supported
 S:	Supported
+F:	drivers/net/e100.c
+F:	drivers/net/e1000/
+F:	drivers/net/e1000e/
+F:	drivers/net/igb/
+F:	drivers/net/ixgb/
+F:	drivers/net/ixgbe/
 
 
 INTEL PRO/WIRELESS 2100 NETWORK CONNECTION SUPPORT
 INTEL PRO/WIRELESS 2100 NETWORK CONNECTION SUPPORT
 P:	Zhu Yi
 P:	Zhu Yi
@@ -2372,6 +2885,8 @@ L:	ipw2100-devel@lists.sourceforge.net
 W:	http://lists.sourceforge.net/mailman/listinfo/ipw2100-devel
 W:	http://lists.sourceforge.net/mailman/listinfo/ipw2100-devel
 W:	http://ipw2100.sourceforge.net
 W:	http://ipw2100.sourceforge.net
 S:	Supported
 S:	Supported
+F:	Documentation/networking/README.ipw2100
+F:	drivers/net/wireless/ipw2x00/ipw2100.*
 
 
 INTEL PRO/WIRELESS 2915ABG NETWORK CONNECTION SUPPORT
 INTEL PRO/WIRELESS 2915ABG NETWORK CONNECTION SUPPORT
 P:	Zhu Yi
 P:	Zhu Yi
@@ -2385,6 +2900,8 @@ L:	ipw2100-devel@lists.sourceforge.net
 W:	http://lists.sourceforge.net/mailman/listinfo/ipw2100-devel
 W:	http://lists.sourceforge.net/mailman/listinfo/ipw2100-devel
 W:	http://ipw2200.sourceforge.net
 W:	http://ipw2200.sourceforge.net
 S:	Supported
 S:	Supported
+F:	Documentation/networking/README.ipw2200
+F:	drivers/net/wireless/ipw2x00/ipw2200.*
 
 
 INTEL WIRELESS WIMAX CONNECTION 2400
 INTEL WIRELESS WIMAX CONNECTION 2400
 P:	Inaky Perez-Gonzalez
 P:	Inaky Perez-Gonzalez
@@ -2393,6 +2910,9 @@ M:	linux-wimax@intel.com
 L:	wimax@linuxwimax.org
 L:	wimax@linuxwimax.org
 S:	Supported
 S:	Supported
 W:	http://linuxwimax.org
 W:	http://linuxwimax.org
+F:	Documentation/wimax/README.i2400m
+F:	drivers/net/wimax/i2400m/
+F:	include/linux/wimax/i2400m.h
 
 
 INTEL WIRELESS WIFI LINK (iwlwifi)
 INTEL WIRELESS WIFI LINK (iwlwifi)
 P:	Zhu Yi
 P:	Zhu Yi
@@ -2402,25 +2922,29 @@ M:	reinette.chatre@intel.com
 L:	linux-wireless@vger.kernel.org
 L:	linux-wireless@vger.kernel.org
 L:	ipw3945-devel@lists.sourceforge.net
 L:	ipw3945-devel@lists.sourceforge.net
 W:	http://intellinuxwireless.org
 W:	http://intellinuxwireless.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-2.6.git
 S:	Supported
 S:	Supported
+F:	drivers/net/wireless/iwlwifi/
 
 
 IOC3 ETHERNET DRIVER
 IOC3 ETHERNET DRIVER
 P:	Ralf Baechle
 P:	Ralf Baechle
 M:	ralf@linux-mips.org
 M:	ralf@linux-mips.org
 L:	linux-mips@linux-mips.org
 L:	linux-mips@linux-mips.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/ioc3-eth.c
 
 
 IOC3 SERIAL DRIVER
 IOC3 SERIAL DRIVER
 P:	Pat Gefre
 P:	Pat Gefre
 M:	pfg@sgi.com
 M:	pfg@sgi.com
 L:	linux-mips@linux-mips.org
 L:	linux-mips@linux-mips.org
 S:	Maintained
 S:	Maintained
+F:	drivers/serial/ioc3_serial.c
 
 
 IP MASQUERADING
 IP MASQUERADING
 P:	Juanjo Ciarlante
 P:	Juanjo Ciarlante
 M:	jjciarla@raiz.uncu.edu.ar
 M:	jjciarla@raiz.uncu.edu.ar
 S:	Maintained
 S:	Maintained
+F:	net/ipv4/netfilter/ipt_MASQUERADE.c
 
 
 IP1000A 10/100/1000 GIGABIT ETHERNET DRIVER
 IP1000A 10/100/1000 GIGABIT ETHERNET DRIVER
 P:	Francois Romieu
 P:	Francois Romieu
@@ -2431,6 +2955,7 @@ P:	Jesse Huang
 M:	jesse@icplus.com.tw
 M:	jesse@icplus.com.tw
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/ipg.c
 
 
 IPATH DRIVER
 IPATH DRIVER
 P:	Ralph Campbell
 P:	Ralph Campbell
@@ -2438,6 +2963,7 @@ M:	infinipath@qlogic.com
 L:	general@lists.openfabrics.org
 L:	general@lists.openfabrics.org
 T:	git git://git.qlogic.com/ipath-linux-2.6
 T:	git git://git.qlogic.com/ipath-linux-2.6
 S:	Supported
 S:	Supported
+F:	drivers/infiniband/hw/ipath/
 
 
 IPMI SUBSYSTEM
 IPMI SUBSYSTEM
 P:	Corey Minyard
 P:	Corey Minyard
@@ -2445,6 +2971,9 @@ M:	minyard@acm.org
 L:	openipmi-developer@lists.sourceforge.net
 L:	openipmi-developer@lists.sourceforge.net
 W:	http://openipmi.sourceforge.net/
 W:	http://openipmi.sourceforge.net/
 S:	Supported
 S:	Supported
+F:	Documentation/IPMI.txt
+F:	drivers/char/ipmi/
+F:	include/linux/ipmi*
 
 
 IPS SCSI RAID DRIVER
 IPS SCSI RAID DRIVER
 P:	Adaptec OEM Raid Solutions
 P:	Adaptec OEM Raid Solutions
@@ -2452,6 +2981,7 @@ M:	aacraid@adaptec.com
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 W:	http://www.adaptec.com/
 W:	http://www.adaptec.com/
 S:	Maintained
 S:	Maintained
+F:	drivers/scsi/ips*
 
 
 IPVS
 IPVS
 P:	Wensong Zhang
 P:	Wensong Zhang
@@ -2463,6 +2993,8 @@ M:	ja@ssi.bg
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 L:	lvs-devel@vger.kernel.org
 L:	lvs-devel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/networking/ipvs-sysctl.txt
+F:	net/netfilter/ipvs/
 
 
 IPWIRELESS DRIVER
 IPWIRELESS DRIVER
 P:	Jiri Kosina
 P:	Jiri Kosina
@@ -2470,13 +3002,17 @@ M:	jkosina@suse.cz
 P:	David Sterba
 P:	David Sterba
 M:	dsterba@suse.cz
 M:	dsterba@suse.cz
 S:	Maintained
 S:	Maintained
-T:	git://git.kernel.org/pub/scm/linux/kernel/git/jikos/ipwireless_cs.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/jikos/ipwireless_cs.git
+F:	drivers/char/pcmcia/ipwireless/
 
 
 IPX NETWORK LAYER
 IPX NETWORK LAYER
 P:	Arnaldo Carvalho de Melo
 P:	Arnaldo Carvalho de Melo
 M:	acme@ghostprotocols.net
 M:	acme@ghostprotocols.net
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	include/linux/ipx.h
+F:	include/net/ipx.h
+F:	net/ipx/
 
 
 IRDA SUBSYSTEM
 IRDA SUBSYSTEM
 P:	Samuel Ortiz
 P:	Samuel Ortiz
@@ -2484,27 +3020,40 @@ M:	samuel@sortiz.org
 L:	irda-users@lists.sourceforge.net (subscribers-only)
 L:	irda-users@lists.sourceforge.net (subscribers-only)
 W:	http://irda.sourceforge.net/
 W:	http://irda.sourceforge.net/
 S:	Maintained
 S:	Maintained
+F:	Documentation/networking/irda.txt
+F:	drivers/net/irda/
+F:	include/net/irda/
+F:	net/irda/
 
 
 ISAPNP
 ISAPNP
 P:	Jaroslav Kysela
 P:	Jaroslav Kysela
 M:	perex@perex.cz
 M:	perex@perex.cz
 S:	Maintained
 S:	Maintained
+F:	Documentation/isapnp.txt
+F:	drivers/pnp/isapnp/
+F:	include/linux/isapnp.h
 
 
 ISCSI
 ISCSI
 P:	Mike Christie
 P:	Mike Christie
 M:	michaelc@cs.wisc.edu
 M:	michaelc@cs.wisc.edu
 L:	open-iscsi@googlegroups.com
 L:	open-iscsi@googlegroups.com
 W:	www.open-iscsi.org
 W:	www.open-iscsi.org
-T:	git kernel.org:/pub/scm/linux/kernel/mnc/linux-2.6-iscsi.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mnc/linux-2.6-iscsi.git
 S:	Maintained
 S:	Maintained
+F:	drivers/scsi/*iscsi*
+F:	include/scsi/*iscsi*
 
 
 ISDN SUBSYSTEM
 ISDN SUBSYSTEM
 P:	Karsten Keil
 P:	Karsten Keil
 M:	isdn@linux-pingi.de
 M:	isdn@linux-pingi.de
 L:	isdn4linux@listserv.isdn4linux.de (subscribers-only)
 L:	isdn4linux@listserv.isdn4linux.de (subscribers-only)
 W:	http://www.isdn4linux.de
 W:	http://www.isdn4linux.de
-T:	git kernel.org:/pub/scm/linux/kernel/kkeil/isdn-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/kkeil/isdn-2.6.git
 S:	Maintained
 S:	Maintained
+F:	Documentation/isdn/
+F:	drivers/isdn/
+F:	include/linux/isdn.h
+F:	include/linux/isdn/
 
 
 ISDN SUBSYSTEM (Eicon active card driver)
 ISDN SUBSYSTEM (Eicon active card driver)
 P:	Armin Schindler
 P:	Armin Schindler
@@ -2512,6 +3061,7 @@ M:	mac@melware.de
 L:	isdn4linux@listserv.isdn4linux.de (subscribers-only)
 L:	isdn4linux@listserv.isdn4linux.de (subscribers-only)
 W:	http://www.melware.de
 W:	http://www.melware.de
 S:	Maintained
 S:	Maintained
+F:	drivers/isdn/hardware/eicon/
 
 
 IVTV VIDEO4LINUX DRIVER
 IVTV VIDEO4LINUX DRIVER
 P:	Hans Verkuil
 P:	Hans Verkuil
@@ -2519,23 +3069,29 @@ M:	hverkuil@xs4all.nl
 L:	ivtv-devel@ivtvdriver.org
 L:	ivtv-devel@ivtvdriver.org
 L:	ivtv-users@ivtvdriver.org
 L:	ivtv-users@ivtvdriver.org
 L:	linux-media@vger.kernel.org
 L:	linux-media@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
 W:	http://www.ivtvdriver.org
 W:	http://www.ivtvdriver.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/video4linux/*.ivtv
+F:	drivers/media/video/ivtv/
+F:	include/linux/ivtv*
 
 
 JFS FILESYSTEM
 JFS FILESYSTEM
 P:	Dave Kleikamp
 P:	Dave Kleikamp
 M:	shaggy@austin.ibm.com
 M:	shaggy@austin.ibm.com
 L:	jfs-discussion@lists.sourceforge.net
 L:	jfs-discussion@lists.sourceforge.net
 W:	http://jfs.sourceforge.net/
 W:	http://jfs.sourceforge.net/
-T:	git kernel.org:/pub/scm/linux/kernel/git/shaggy/jfs-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/shaggy/jfs-2.6.git
 S:	Supported
 S:	Supported
+F:	Documentation/filesystems/jfs.txt
+F:	fs/jfs/
 
 
 JME NETWORK DRIVER
 JME NETWORK DRIVER
 P:	Guo-Fu Tseng
 P:	Guo-Fu Tseng
 M:	cooldavid@cooldavid.org
 M:	cooldavid@cooldavid.org
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/jme.*
 
 
 JOURNALLING FLASH FILE SYSTEM V2 (JFFS2)
 JOURNALLING FLASH FILE SYSTEM V2 (JFFS2)
 P:	David Woodhouse
 P:	David Woodhouse
@@ -2543,24 +3099,36 @@ M:	dwmw2@infradead.org
 L:	linux-mtd@lists.infradead.org
 L:	linux-mtd@lists.infradead.org
 W:	http://www.linux-mtd.infradead.org/doc/jffs2.html
 W:	http://www.linux-mtd.infradead.org/doc/jffs2.html
 S:	Maintained
 S:	Maintained
+F:	fs/jffs2/
+F:	include/linux/jffs2.h
+F:	include/mtd/jffs2-user.h
 
 
 JOURNALLING LAYER FOR BLOCK DEVICES (JBD)
 JOURNALLING LAYER FOR BLOCK DEVICES (JBD)
-P:	Stephen Tweedie, Andrew Morton
-M:	sct@redhat.com, akpm@linux-foundation.org
+P:	Stephen Tweedie
+M:	sct@redhat.com
+P:	Andrew Morton
+M:	akpm@linux-foundation.org
 L:	linux-ext4@vger.kernel.org
 L:	linux-ext4@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	fs/jbd*/
+F:	include/linux/ext*jbd*.h
+F:	include/linux/jbd*.h
 
 
 K8TEMP HARDWARE MONITORING DRIVER
 K8TEMP HARDWARE MONITORING DRIVER
 P:	Rudolf Marek
 P:	Rudolf Marek
 M:	r.marek@assembler.cz
 M:	r.marek@assembler.cz
 L:	lm-sensors@lm-sensors.org
 L:	lm-sensors@lm-sensors.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/hwmon/k8temp
+F:	drivers/hwmon/k8temp.c
 
 
 KCONFIG
 KCONFIG
 P:	Roman Zippel
 P:	Roman Zippel
 M:	zippel@linux-m68k.org
 M:	zippel@linux-m68k.org
 L:	linux-kbuild@vger.kernel.org
 L:	linux-kbuild@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/kbuild/kconfig-language.txt
+F:	scripts/kconfig/
 
 
 KDUMP
 KDUMP
 P:	Vivek Goyal
 P:	Vivek Goyal
@@ -2571,26 +3139,32 @@ L:	kexec@lists.infradead.org
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 W:	http://lse.sourceforge.net/kdump/
 W:	http://lse.sourceforge.net/kdump/
 S:	Maintained
 S:	Maintained
+F:	Documentation/kdump/
 
 
 KERNEL AUTOMOUNTER (AUTOFS)
 KERNEL AUTOMOUNTER (AUTOFS)
 P:	H. Peter Anvin
 P:	H. Peter Anvin
 M:	hpa@zytor.com
 M:	hpa@zytor.com
 L:	autofs@linux.kernel.org
 L:	autofs@linux.kernel.org
 S:	Odd Fixes
 S:	Odd Fixes
+F:	fs/autofs/
 
 
 KERNEL AUTOMOUNTER v4 (AUTOFS4)
 KERNEL AUTOMOUNTER v4 (AUTOFS4)
 P:	Ian Kent
 P:	Ian Kent
 M:	raven@themaw.net
 M:	raven@themaw.net
 L:	autofs@linux.kernel.org
 L:	autofs@linux.kernel.org
 S:	Maintained
 S:	Maintained
+F:	fs/autofs4/
 
 
-KERNEL BUILD (kbuild: Makefile, scripts/Makefile.*)
+KERNEL BUILD
 P:	Sam Ravnborg
 P:	Sam Ravnborg
 M:	sam@ravnborg.org
 M:	sam@ravnborg.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/sam/kbuild-next.git
-T:	git kernel.org:/pub/scm/linux/kernel/git/sam/kbuild-fixes.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-next.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes.git
 L:	linux-kbuild@vger.kernel.org
 L:	linux-kbuild@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/kbuild/
+F:	Makefile
+F:	scripts/Makefile.*
 
 
 KERNEL JANITORS
 KERNEL JANITORS
 P:	Several
 P:	Several
@@ -2606,6 +3180,13 @@ M:	neilb@suse.de
 L:	linux-nfs@vger.kernel.org
 L:	linux-nfs@vger.kernel.org
 W:	http://nfs.sourceforge.net/
 W:	http://nfs.sourceforge.net/
 S:	Supported
 S:	Supported
+F:	fs/nfsd/
+F:	include/linux/nfsd/
+F:	fs/lockd/
+F:	fs/nfs_common/
+F:	net/sunrpc/
+F:	include/linux/lockd/
+F:	include/linux/sunrpc/
 
 
 KERNEL VIRTUAL MACHINE (KVM)
 KERNEL VIRTUAL MACHINE (KVM)
 P:	Avi Kivity
 P:	Avi Kivity
@@ -2613,6 +3194,11 @@ M:	avi@redhat.com
 L:	kvm@vger.kernel.org
 L:	kvm@vger.kernel.org
 W:	http://kvm.qumranet.com
 W:	http://kvm.qumranet.com
 S:	Supported
 S:	Supported
+F:	Documentation/*/kvm.txt
+F:	arch/*/kvm/
+F:	arch/*/include/asm/kvm*
+F:	include/linux/kvm*
+F:	virt/kvm/
 
 
 KERNEL VIRTUAL MACHINE (KVM) FOR AMD-V
 KERNEL VIRTUAL MACHINE (KVM) FOR AMD-V
 P:	Joerg Roedel
 P:	Joerg Roedel
@@ -2620,6 +3206,9 @@ M:	joerg.roedel@amd.com
 L:	kvm@vger.kernel.org
 L:	kvm@vger.kernel.org
 W:	http://kvm.qumranet.com
 W:	http://kvm.qumranet.com
 S:	Supported
 S:	Supported
+F:	arch/x86/include/asm/svm.h
+F:	arch/x86/kvm/kvm_svm.h
+F:	arch/x86/kvm/svm.c
 
 
 KERNEL VIRTUAL MACHINE (KVM) FOR POWERPC
 KERNEL VIRTUAL MACHINE (KVM) FOR POWERPC
 P:	Hollis Blanchard
 P:	Hollis Blanchard
@@ -2627,6 +3216,8 @@ M:	hollisb@us.ibm.com
 L:	kvm-ppc@vger.kernel.org
 L:	kvm-ppc@vger.kernel.org
 W:	http://kvm.qumranet.com
 W:	http://kvm.qumranet.com
 S:	Supported
 S:	Supported
+F:	arch/powerpc/include/asm/kvm*
+F:	arch/powerpc/kvm/
 
 
 KERNEL VIRTUAL MACHINE For Itanium (KVM/IA64)
 KERNEL VIRTUAL MACHINE For Itanium (KVM/IA64)
 P:	Xiantao Zhang
 P:	Xiantao Zhang
@@ -2634,6 +3225,9 @@ M:	xiantao.zhang@intel.com
 L:	kvm-ia64@vger.kernel.org
 L:	kvm-ia64@vger.kernel.org
 W:	http://kvm.qumranet.com
 W:	http://kvm.qumranet.com
 S:	Supported
 S:	Supported
+F:	Documentation/ia64/kvm.txt
+F:	arch/ia64/include/asm/kvm*
+F:	arch/ia64/kvm/
 
 
 KERNEL VIRTUAL MACHINE for s390 (KVM/s390)
 KERNEL VIRTUAL MACHINE for s390 (KVM/s390)
 P:	Carsten Otte
 P:	Carsten Otte
@@ -2644,6 +3238,9 @@ M:	linux390@de.ibm.com
 L:	linux-s390@vger.kernel.org
 L:	linux-s390@vger.kernel.org
 W:	http://www.ibm.com/developerworks/linux/linux390/
 W:	http://www.ibm.com/developerworks/linux/linux390/
 S:	Supported
 S:	Supported
+F:	Documentation/s390/kvm.txt
+F:	arch/s390/include/asm/kvm*
+F:	arch/s390/kvm/
 
 
 KEXEC
 KEXEC
 P:	Eric Biederman
 P:	Eric Biederman
@@ -2652,18 +3249,28 @@ W:	http://ftp.kernel.org/pub/linux/kernel/people/horms/kexec-tools/
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 L:	kexec@lists.infradead.org
 L:	kexec@lists.infradead.org
 S:	Maintained
 S:	Maintained
+F:	include/linux/kexec.h
+F:	kernel/kexec.c
 
 
 KGDB
 KGDB
 P:	Jason Wessel
 P:	Jason Wessel
 M:	jason.wessel@windriver.com
 M:	jason.wessel@windriver.com
 L:	kgdb-bugreport@lists.sourceforge.net
 L:	kgdb-bugreport@lists.sourceforge.net
 S:	Maintained
 S:	Maintained
+F:	Documentation/DocBook/kgdb.tmpl
+F:	drivers/misc/kgdbts.c
+F:	drivers/serial/kgdboc.c
+F:	include/linux/kgdb.h
+F:	kernel/kgdb.c
 
 
 KMEMTRACE
 KMEMTRACE
 P:	Eduard - Gabriel Munteanu
 P:	Eduard - Gabriel Munteanu
 M:	eduard.munteanu@linux360.ro
 M:	eduard.munteanu@linux360.ro
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/vm/kmemtrace.txt
+F:	include/trace/kmemtrace.h
+F:	kernel/trace/kmemtrace.c
 
 
 KPROBES
 KPROBES
 P:	Ananth N Mavinakayanahalli
 P:	Ananth N Mavinakayanahalli
@@ -2676,6 +3283,9 @@ P:	Masami Hiramatsu
 M:	mhiramat@redhat.com
 M:	mhiramat@redhat.com
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/kprobes.txt
+F:	include/linux/kprobes.h
+F:	kernel/kprobes.c
 
 
 KS0108 LCD CONTROLLER DRIVER
 KS0108 LCD CONTROLLER DRIVER
 P:	Miguel Ojeda Sandonis
 P:	Miguel Ojeda Sandonis
@@ -2684,21 +3294,31 @@ L:	linux-kernel@vger.kernel.org
 W:	http://miguelojeda.es/auxdisplay.htm
 W:	http://miguelojeda.es/auxdisplay.htm
 W:	http://jair.lab.fi.uva.es/~migojed/auxdisplay.htm
 W:	http://jair.lab.fi.uva.es/~migojed/auxdisplay.htm
 S:	Maintained
 S:	Maintained
+F:	Documentation/auxdisplay/ks0108
+F:	drivers/auxdisplay/ks0108.c
+F:	include/linux/ks0108.h
 
 
 LAPB module
 LAPB module
 L:	linux-x25@vger.kernel.org
 L:	linux-x25@vger.kernel.org
 S:	Orphan
 S:	Orphan
+F:	Documentation/networking/lapb-module.txt
+F:	include/*/lapb.h
+F:	net/lapb/
 
 
 LASI 53c700 driver for PARISC
 LASI 53c700 driver for PARISC
 P:	James E.J. Bottomley
 P:	James E.J. Bottomley
 M:	James.Bottomley@HansenPartnership.com
 M:	James.Bottomley@HansenPartnership.com
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/scsi/53c700.txt
+F:	drivers/scsi/53c700*
 
 
 LED SUBSYSTEM
 LED SUBSYSTEM
 P:	Richard Purdie
 P:	Richard Purdie
 M:	rpurdie@rpsys.net
 M:	rpurdie@rpsys.net
 S:	Maintained
 S:	Maintained
+F:	drivers/leds/
+F:	include/linux/leds.h
 
 
 LEGO USB Tower driver
 LEGO USB Tower driver
 P:	Juergen Stuber
 P:	Juergen Stuber
@@ -2706,6 +3326,7 @@ M:	starblue@users.sourceforge.net
 L:	legousb-devel@lists.sourceforge.net
 L:	legousb-devel@lists.sourceforge.net
 W:	http://legousb.sourceforge.net/
 W:	http://legousb.sourceforge.net/
 S:	Maintained
 S:	Maintained
+F:	drivers/usb/misc/legousbtower.c
 
 
 LGUEST
 LGUEST
 P:	Rusty Russell
 P:	Rusty Russell
@@ -2713,6 +3334,11 @@ M:	rusty@rustcorp.com.au
 L:	lguest@ozlabs.org
 L:	lguest@ozlabs.org
 W:	http://lguest.ozlabs.org/
 W:	http://lguest.ozlabs.org/
 S:	Maintained
 S:	Maintained
+F:	Documentation/lguest/
+F:	arch/x86/lguest/
+F:	drivers/lguest/
+F:	include/linux/lguest*.h
+F:	arch/x86/include/asm/lguest*.h
 
 
 LINUX FOR IBM pSERIES (RS/6000)
 LINUX FOR IBM pSERIES (RS/6000)
 P:	Paul Mackerras
 P:	Paul Mackerras
@@ -2720,12 +3346,6 @@ M:	paulus@au.ibm.com
 W:	http://www.ibm.com/linux/ltc/projects/ppc
 W:	http://www.ibm.com/linux/ltc/projects/ppc
 S:	Supported
 S:	Supported
 
 
-LINUX FOR NCR VOYAGER
-P:	James Bottomley
-M:	James.Bottomley@HansenPartnership.com
-W:	http://www.hansenpartnership.com/voyager
-S:	Maintained
-
 LINUX FOR POWERPC (32-BIT AND 64-BIT)
 LINUX FOR POWERPC (32-BIT AND 64-BIT)
 P:	Benjamin Herrenschmidt
 P:	Benjamin Herrenschmidt
 M:	benh@kernel.crashing.org
 M:	benh@kernel.crashing.org
@@ -2733,7 +3353,7 @@ P:	Paul Mackerras
 M:	paulus@samba.org
 M:	paulus@samba.org
 W:	http://www.penguinppc.org/
 W:	http://www.penguinppc.org/
 L:	linuxppc-dev@ozlabs.org
 L:	linuxppc-dev@ozlabs.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/benh/powerpc.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc.git
 S:	Supported
 S:	Supported
 
 
 LINUX FOR POWER MACINTOSH
 LINUX FOR POWER MACINTOSH
@@ -2758,7 +3378,7 @@ P:	Matt Porter
 M:	mporter@kernel.crashing.org
 M:	mporter@kernel.crashing.org
 W:	http://www.penguinppc.org/
 W:	http://www.penguinppc.org/
 L:	linuxppc-dev@ozlabs.org
 L:	linuxppc-dev@ozlabs.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/jwboyer/powerpc.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/jwboyer/powerpc.git
 S:	Maintained
 S:	Maintained
 
 
 LINUX FOR POWERPC EMBEDDED XILINX VIRTEX
 LINUX FOR POWERPC EMBEDDED XILINX VIRTEX
@@ -2795,30 +3415,39 @@ LINUX SECURITY MODULE (LSM) FRAMEWORK
 P:	Chris Wright
 P:	Chris Wright
 M:	chrisw@sous-sol.org
 M:	chrisw@sous-sol.org
 L:	linux-security-module@vger.kernel.org
 L:	linux-security-module@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/chrisw/lsm-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/chrisw/lsm-2.6.git
 S:	Supported
 S:	Supported
 
 
 LLC (802.2)
 LLC (802.2)
 P:	Arnaldo Carvalho de Melo
 P:	Arnaldo Carvalho de Melo
 M:	acme@ghostprotocols.net
 M:	acme@ghostprotocols.net
 S:	Maintained
 S:	Maintained
+F:	include/linux/llc.h
+F:	include/net/llc*
+F:	net/llc/
 
 
 LIS3LV02D ACCELEROMETER DRIVER
 LIS3LV02D ACCELEROMETER DRIVER
 P:	Eric Piel
 P:	Eric Piel
 M:	eric.piel@tremplin-utc.net
 M:	eric.piel@tremplin-utc.net
 S:	Maintained
 S:	Maintained
+F:	Documentation/hwmon/lis3lv02d
+F:	drivers/hwmon/lis3lv02d.*
 
 
 LM83 HARDWARE MONITOR DRIVER
 LM83 HARDWARE MONITOR DRIVER
 P:	Jean Delvare
 P:	Jean Delvare
 M:	khali@linux-fr.org
 M:	khali@linux-fr.org
 L:	lm-sensors@lm-sensors.org
 L:	lm-sensors@lm-sensors.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/hwmon/lm83
+F:	drivers/hwmon/lm83.c
 
 
 LM90 HARDWARE MONITOR DRIVER
 LM90 HARDWARE MONITOR DRIVER
 P:	Jean Delvare
 P:	Jean Delvare
 M:	khali@linux-fr.org
 M:	khali@linux-fr.org
 L:	lm-sensors@lm-sensors.org
 L:	lm-sensors@lm-sensors.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/hwmon/lm90
+F:	drivers/hwmon/lm90.c
 
 
 LOCKDEP AND LOCKSTAT
 LOCKDEP AND LOCKSTAT
 P:	Peter Zijlstra
 P:	Peter Zijlstra
@@ -2826,8 +3455,12 @@ M:	peterz@infradead.org
 P:	Ingo Molnar
 P:	Ingo Molnar
 M:	mingo@redhat.com
 M:	mingo@redhat.com
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
-T:	git://git.kernel.org/pub/scm/linux/kernel/git/peterz/linux-2.6-lockdep.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/peterz/linux-2.6-lockdep.git
 S:	Maintained
 S:	Maintained
+F:	Documentation/lockdep*.txt
+F:	Documentation/lockstat.txt
+F:	include/linux/lockdep.h
+F:	kernel/lockdep*
 
 
 LOGICAL DISK MANAGER SUPPORT (LDM, Windows 2000/XP/Vista Dynamic Disks)
 LOGICAL DISK MANAGER SUPPORT (LDM, Windows 2000/XP/Vista Dynamic Disks)
 P:	Richard Russon (FlatCap)
 P:	Richard Russon (FlatCap)
@@ -2835,6 +3468,8 @@ M:	ldm@flatcap.org
 L:	linux-ntfs-dev@lists.sourceforge.net
 L:	linux-ntfs-dev@lists.sourceforge.net
 W:	http://www.linux-ntfs.org/content/view/19/37/
 W:	http://www.linux-ntfs.org/content/view/19/37/
 S:	Maintained
 S:	Maintained
+F:	Documentation/ldm.txt
+F:	fs/partitions/ldm.*
 
 
 LSILOGIC MPT FUSION DRIVERS (FC/SAS/SPI)
 LSILOGIC MPT FUSION DRIVERS (FC/SAS/SPI)
 P:	Eric Moore
 P:	Eric Moore
@@ -2844,12 +3479,14 @@ L:	DL-MPTFusionLinux@lsi.com
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 W:	http://www.lsilogic.com/support
 W:	http://www.lsilogic.com/support
 S:	Supported
 S:	Supported
+F:	drivers/message/fusion/
 
 
 LSILOGIC/SYMBIOS/NCR 53C8XX and 53C1010 PCI-SCSI drivers
 LSILOGIC/SYMBIOS/NCR 53C8XX and 53C1010 PCI-SCSI drivers
 P:	Matthew Wilcox
 P:	Matthew Wilcox
 M:	matthew@wil.cx
 M:	matthew@wil.cx
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/scsi/sym53c8xx_2/
 
 
 LTP (Linux Test Project)
 LTP (Linux Test Project)
 P:	Subrata Modak
 P:	Subrata Modak
@@ -2858,7 +3495,7 @@ P:	Mike Frysinger
 M:	vapier@gentoo.org
 M:	vapier@gentoo.org
 L:	ltp-list@lists.sourceforge.net (subscribers-only)
 L:	ltp-list@lists.sourceforge.net (subscribers-only)
 W:	http://ltp.sourceforge.net/
 W:	http://ltp.sourceforge.net/
-T:	git kernel.org/pub/scm/linux/kernel/git/galak/ltp.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/galak/ltp.git
 S:	Maintained
 S:	Maintained
 
 
 M32R ARCHITECTURE
 M32R ARCHITECTURE
@@ -2868,6 +3505,8 @@ L:	linux-m32r@ml.linux-m32r.org
 L:	linux-m32r-ja@ml.linux-m32r.org (in Japanese)
 L:	linux-m32r-ja@ml.linux-m32r.org (in Japanese)
 W:	http://www.linux-m32r.org/
 W:	http://www.linux-m32r.org/
 S:	Maintained
 S:	Maintained
+F:	arch/m32r/
+F:	include/asm-m32r/
 
 
 M68K ARCHITECTURE
 M68K ARCHITECTURE
 P:	Geert Uytterhoeven
 P:	Geert Uytterhoeven
@@ -2876,8 +3515,10 @@ P:	Roman Zippel
 M:	zippel@linux-m68k.org
 M:	zippel@linux-m68k.org
 L:	linux-m68k@lists.linux-m68k.org
 L:	linux-m68k@lists.linux-m68k.org
 W:	http://www.linux-m68k.org/
 W:	http://www.linux-m68k.org/
-T:	git git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k.git
 S:	Maintained
 S:	Maintained
+F:	arch/m68k/
+F:	drivers/zorro/
 
 
 M68K ON APPLE MACINTOSH
 M68K ON APPLE MACINTOSH
 P:	Joshua Thompson
 P:	Joshua Thompson
@@ -2885,20 +3526,25 @@ M:	funaho@jurai.org
 W:	http://www.mac.linux-m68k.org/
 W:	http://www.mac.linux-m68k.org/
 L:	linux-m68k@lists.linux-m68k.org
 L:	linux-m68k@lists.linux-m68k.org
 S:	Maintained
 S:	Maintained
+F:	arch/m68k/mac/
 
 
 M68K ON HP9000/300
 M68K ON HP9000/300
 P:	Philip Blundell
 P:	Philip Blundell
 M:	philb@gnu.org
 M:	philb@gnu.org
 W:	http://www.tazenda.demon.co.uk/phil/linux-hp
 W:	http://www.tazenda.demon.co.uk/phil/linux-hp
 S:	Maintained
 S:	Maintained
+F:	arch/m68k/hp300/
 
 
 MAC80211
 MAC80211
 P:	Johannes Berg
 P:	Johannes Berg
 M:	johannes@sipsolutions.net
 M:	johannes@sipsolutions.net
 L:	linux-wireless@vger.kernel.org
 L:	linux-wireless@vger.kernel.org
 W:	http://linuxwireless.org/
 W:	http://linuxwireless.org/
-T:	git kernel.org:/pub/scm/linux/kernel/git/linville/wireless-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6.git
 S:	Maintained
 S:	Maintained
+F:	Documentation/networking/mac80211-injection.txt
+F:	include/net/mac80211.h
+F:	net/mac80211/
 
 
 MAC80211 PID RATE CONTROL
 MAC80211 PID RATE CONTROL
 P:	Stefano Brivio
 P:	Stefano Brivio
@@ -2907,14 +3553,17 @@ P:	Mattias Nissler
 M:	mattias.nissler@gmx.de
 M:	mattias.nissler@gmx.de
 L:	linux-wireless@vger.kernel.org
 L:	linux-wireless@vger.kernel.org
 W:	http://linuxwireless.org/en/developers/Documentation/mac80211/RateControl/PID
 W:	http://linuxwireless.org/en/developers/Documentation/mac80211/RateControl/PID
-T:	git kernel.org:/pub/scm/linux/kernel/git/linville/wireless-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6.git
 S:	Maintained
 S:	Maintained
+F:	net/mac80211/rc80211_pid*
 
 
 MACVLAN DRIVER
 MACVLAN DRIVER
 P:	Patrick McHardy
 P:	Patrick McHardy
 M:	kaber@trash.net
 M:	kaber@trash.net
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/macvlan.c
+F:	include/linux/if_macvlan.h
 
 
 MAN-PAGES: MANUAL PAGES FOR LINUX -- Sections 2, 3, 4, 5, and 7
 MAN-PAGES: MANUAL PAGES FOR LINUX -- Sections 2, 3, 4, 5, and 7
 P:	Michael Kerrisk
 P:	Michael Kerrisk
@@ -2928,12 +3577,15 @@ P:	Dan Williams
 M:	dcbw@redhat.com
 M:	dcbw@redhat.com
 L:	libertas-dev@lists.infradead.org
 L:	libertas-dev@lists.infradead.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/wireless/libertas/
 
 
 MARVELL MV643XX ETHERNET DRIVER
 MARVELL MV643XX ETHERNET DRIVER
 P:	Lennert Buytenhek
 P:	Lennert Buytenhek
 M:	buytenh@marvell.com
 M:	buytenh@marvell.com
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/net/mv643xx_eth.*
+F:	include/linux/mv643xx.h
 
 
 MARVELL SOC MMC/SD/SDIO CONTROLLER DRIVER
 MARVELL SOC MMC/SD/SDIO CONTROLLER DRIVER
 P:	Nicolas Pitre
 P:	Nicolas Pitre
@@ -2954,12 +3606,31 @@ P:	Petr Vandrovec
 M:	vandrove@vc.cvut.cz
 M:	vandrove@vc.cvut.cz
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 S:	Maintained
 S:	Maintained
+F:	drivers/video/matrox/matroxfb_*
+F:	include/linux/matroxfb.h
 
 
 MAX6650 HARDWARE MONITOR AND FAN CONTROLLER DRIVER
 MAX6650 HARDWARE MONITOR AND FAN CONTROLLER DRIVER
 P:	Hans J. Koch
 P:	Hans J. Koch
 M:	hjk@linutronix.de
 M:	hjk@linutronix.de
 L:	lm-sensors@lm-sensors.org
 L:	lm-sensors@lm-sensors.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/hwmon/max6650
+F:	drivers/hwmon/max6650.c
+
+MEDIA INPUT INFRASTRUCTURE (V4L/DVB)
+P:	Mauro Carvalho Chehab
+M:	mchehab@infradead.org
+P:	LinuxTV.org Project
+L:	linux-media@vger.kernel.org
+W:	http://linuxtv.org
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
+S:	Maintained
+F:	Documentation/dvb/
+F:	Documentation/video4linux/
+F:	drivers/media/
+F:	include/media/
+F:	include/linux/dvb/
+F:	include/linux/videodev*.h
 
 
 MEGARAID SCSI DRIVERS
 MEGARAID SCSI DRIVERS
 P:	Neela Syam Kolli
 P:	Neela Syam Kolli
@@ -2967,12 +3638,17 @@ M:	megaraidlinux@lsi.com
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 W:	http://megaraid.lsilogic.com
 W:	http://megaraid.lsilogic.com
 S:	Maintained
 S:	Maintained
+F:	Documentation/scsi/megaraid.txt
+F:	drivers/scsi/megaraid.*
+F:	drivers/scsi/megaraid/
 
 
 MEMORY MANAGEMENT
 MEMORY MANAGEMENT
 L:	linux-mm@kvack.org
 L:	linux-mm@kvack.org
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 W:	http://www.linux-mm.org
 W:	http://www.linux-mm.org
 S:	Maintained
 S:	Maintained
+F:	include/linux/mm.h
+F:	mm/
 
 
 MEMORY RESOURCE CONTROLLER
 MEMORY RESOURCE CONTROLLER
 P:	Balbir Singh
 P:	Balbir Singh
@@ -2984,6 +3660,7 @@ M:	kamezawa.hiroyu@jp.fujitsu.com
 L:	linux-mm@kvack.org
 L:	linux-mm@kvack.org
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	mm/memcontrol.c
 
 
 MEMORY TECHNOLOGY DEVICES (MTD)
 MEMORY TECHNOLOGY DEVICES (MTD)
 P:	David Woodhouse
 P:	David Woodhouse
@@ -2992,55 +3669,83 @@ W:	http://www.linux-mtd.infradead.org/
 L:	linux-mtd@lists.infradead.org
 L:	linux-mtd@lists.infradead.org
 T:	git git://git.infradead.org/mtd-2.6.git
 T:	git git://git.infradead.org/mtd-2.6.git
 S:	Maintained
 S:	Maintained
+F:	drivers/mtd/
+F:	include/linux/mtd/
+F:	include/mtd/
+
+MICROBLAZE ARCHITECTURE
+P:	Michal Simek
+M:	monstr@monstr.eu
+L:	microblaze-uclinux@itee.uq.edu.au
+W:	http://www.monstr.eu/fdt/
+T:	git git://git.monstr.eu/linux-2.6-microblaze.git
+S:	Supported
 
 
 MICROTEK X6 SCANNER
 MICROTEK X6 SCANNER
 P:	Oliver Neukum
 P:	Oliver Neukum
 M:	oliver@neukum.name
 M:	oliver@neukum.name
 S:	Maintained
 S:	Maintained
+F:	drivers/usb/image/microtek.*
 
 
 MIPS
 MIPS
 P:	Ralf Baechle
 P:	Ralf Baechle
 M:	ralf@linux-mips.org
 M:	ralf@linux-mips.org
 W:	http://www.linux-mips.org/
 W:	http://www.linux-mips.org/
 L:	linux-mips@linux-mips.org
 L:	linux-mips@linux-mips.org
-T:	git www.linux-mips.org:/pub/scm/linux.git
+T:	git git://git.linux-mips.org/pub/scm/linux.git
 S:	Supported
 S:	Supported
+F:	Documentation/mips/
+F:	arch/mips/
 
 
 MISCELLANEOUS MCA-SUPPORT
 MISCELLANEOUS MCA-SUPPORT
 P:	James Bottomley
 P:	James Bottomley
 M:	James.Bottomley@HansenPartnership.com
 M:	James.Bottomley@HansenPartnership.com
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/ia64/mca.txt
+F:	Documentation/mca.txt
+F:	drivers/mca/
+F:	include/linux/mca*
 
 
 MODULE SUPPORT
 MODULE SUPPORT
 P:	Rusty Russell
 P:	Rusty Russell
 M:	rusty@rustcorp.com.au
 M:	rusty@rustcorp.com.au
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	include/linux/module.h
+F:	kernel/module.c
 
 
 MOTION EYE VAIO PICTUREBOOK CAMERA DRIVER
 MOTION EYE VAIO PICTUREBOOK CAMERA DRIVER
 P:	Stelian Pop
 P:	Stelian Pop
 M:	stelian@popies.net
 M:	stelian@popies.net
 W:	http://popies.net/meye/
 W:	http://popies.net/meye/
 S:	Maintained
 S:	Maintained
+F:	Documentation/video4linux/meye.txt
+F:	drivers/media/video/meye.*
+F:	include/linux/meye.h
 
 
 MOTOROLA IMX MMC/SD HOST CONTROLLER INTERFACE DRIVER
 MOTOROLA IMX MMC/SD HOST CONTROLLER INTERFACE DRIVER
 P:	Pavel Pisa
 P:	Pavel Pisa
 M:	ppisa@pikron.com
 M:	ppisa@pikron.com
 L:	linux-arm-kernel@lists.arm.linux.org.uk (subscribers-only)
 L:	linux-arm-kernel@lists.arm.linux.org.uk (subscribers-only)
 S:	Maintained
 S:	Maintained
+F:	drivers/mmc/host/imxmmc.*
 
 
 MOUSE AND MISC DEVICES [GENERAL]
 MOUSE AND MISC DEVICES [GENERAL]
 P:	Alessandro Rubini
 P:	Alessandro Rubini
 M:	rubini@ipvvis.unipv.it
 M:	rubini@ipvvis.unipv.it
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/input/mouse/
+F:	include/linux/gpio_mouse.h
 
 
 MOXA SMARTIO/INDUSTIO/INTELLIO SERIAL CARD
 MOXA SMARTIO/INDUSTIO/INTELLIO SERIAL CARD
 P:	Jiri Slaby
 P:	Jiri Slaby
 M:	jirislaby@gmail.com
 M:	jirislaby@gmail.com
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/serial/moxa-smartio
+F:	drivers/char/mxser.*
 
 
 MSI LAPTOP SUPPORT
 MSI LAPTOP SUPPORT
 P:	Lennart Poettering
 P:	Lennart Poettering
@@ -3048,43 +3753,54 @@ M:	mzxreary@0pointer.de
 W:	https://tango.0pointer.de/mailman/listinfo/s270-linux
 W:	https://tango.0pointer.de/mailman/listinfo/s270-linux
 W:	http://0pointer.de/lennart/tchibo.html
 W:	http://0pointer.de/lennart/tchibo.html
 S:	Maintained
 S:	Maintained
+F:	drivers/platform/x86/msi-laptop.c
 
 
 MULTIFUNCTION DEVICES (MFD)
 MULTIFUNCTION DEVICES (MFD)
 P:	Samuel Ortiz
 P:	Samuel Ortiz
 M:	sameo@linux.intel.com
 M:	sameo@linux.intel.com
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/sameo/mfd-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6.git
 S:	Supported
 S:	Supported
+F:	drivers/mfd/
 
 
 MULTIMEDIA CARD (MMC), SECURE DIGITAL (SD) AND SDIO SUBSYSTEM
 MULTIMEDIA CARD (MMC), SECURE DIGITAL (SD) AND SDIO SUBSYSTEM
 P:	Pierre Ossman
 P:	Pierre Ossman
-M:	drzeus-mmc@drzeus.cx
+M:	pierre@ossman.eu
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/mmc/
+F:	include/linux/mmc/
 
 
 MULTIMEDIA CARD (MMC) ETC. OVER SPI
 MULTIMEDIA CARD (MMC) ETC. OVER SPI
 P:	David Brownell
 P:	David Brownell
 M:	dbrownell@users.sourceforge.net
 M:	dbrownell@users.sourceforge.net
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Odd Fixes
 S:	Odd Fixes
+F:	drivers/mmc/host/mmc_spi.c
+F:	include/linux/spi/mmc_spi.h
 
 
 MULTISOUND SOUND DRIVER
 MULTISOUND SOUND DRIVER
 P:	Andrew Veliath
 P:	Andrew Veliath
 M:	andrewtv@usa.net
 M:	andrewtv@usa.net
 S:	Maintained
 S:	Maintained
+F:	Documentation/sound/oss/MultiSound
+F:	sound/oss/msnd*
 
 
 MULTITECH MULTIPORT CARD (ISICOM)
 MULTITECH MULTIPORT CARD (ISICOM)
 P:	Jiri Slaby
 P:	Jiri Slaby
 M:	jirislaby@gmail.com
 M:	jirislaby@gmail.com
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/char/isicom.c
+F:	include/linux/isicom.h
 
 
 MUSB MULTIPOINT HIGH SPEED DUAL-ROLE CONTROLLER
 MUSB MULTIPOINT HIGH SPEED DUAL-ROLE CONTROLLER
 P:	Felipe Balbi
 P:	Felipe Balbi
 M:	felipe.balbi@nokia.com
 M:	felipe.balbi@nokia.com
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
-T:	git gitorious.org:/musb/mainline.git
+T:	git git://gitorious.org/musb/mainline.git
 S:	Maintained
 S:	Maintained
+F:	drivers/usb/musb/
 
 
 MYRICOM MYRI-10G 10GbE DRIVER (MYRI10GE)
 MYRICOM MYRI-10G 10GbE DRIVER (MYRI10GE)
 P:	Andrew Gallatin
 P:	Andrew Gallatin
@@ -3094,23 +3810,27 @@ M:	brice@myri.com
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 W:	http://www.myri.com/scs/download-Myri10GE.html
 W:	http://www.myri.com/scs/download-Myri10GE.html
 S:	Supported
 S:	Supported
+F:	drivers/net/myri10ge/
 
 
 NATSEMI ETHERNET DRIVER (DP8381x)
 NATSEMI ETHERNET DRIVER (DP8381x)
 P:	Tim Hockin
 P:	Tim Hockin
 M:	thockin@hockin.org
 M:	thockin@hockin.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/natsemi.c
 
 
 NCP FILESYSTEM
 NCP FILESYSTEM
 P:	Petr Vandrovec
 P:	Petr Vandrovec
 M:	vandrove@vc.cvut.cz
 M:	vandrove@vc.cvut.cz
 L:	linware@sh.cvut.cz
 L:	linware@sh.cvut.cz
 S:	Maintained
 S:	Maintained
+F:	fs/ncpfs/
 
 
 NCR DUAL 700 SCSI DRIVER (MICROCHANNEL)
 NCR DUAL 700 SCSI DRIVER (MICROCHANNEL)
 P:	James E.J. Bottomley
 P:	James E.J. Bottomley
 M:	James.Bottomley@HansenPartnership.com
 M:	James.Bottomley@HansenPartnership.com
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/scsi/NCR_D700.*
 
 
 NETEFFECT IWARP RNIC DRIVER (IW_NES)
 NETEFFECT IWARP RNIC DRIVER (IW_NES)
 P:	Faisal Latif
 P:	Faisal Latif
@@ -3127,6 +3847,7 @@ P:	Stephen Hemminger
 M:	shemminger@linux-foundation.org
 M:	shemminger@linux-foundation.org
 L:	netem@lists.linux-foundation.org
 L:	netem@lists.linux-foundation.org
 S:	Maintained
 S:	Maintained
+F:	net/sched/sch_netem.c
 
 
 NETERION (S2IO) 10GbE DRIVER (xframe/vxge)
 NETERION (S2IO) 10GbE DRIVER (xframe/vxge)
 P:	Ramkrishna Vepa
 P:	Ramkrishna Vepa
@@ -3143,6 +3864,8 @@ L:	netdev@vger.kernel.org
 W:	http://trac.neterion.com/cgi-bin/trac.cgi/wiki/Linux?Anonymous
 W:	http://trac.neterion.com/cgi-bin/trac.cgi/wiki/Linux?Anonymous
 W:	http://trac.neterion.com/cgi-bin/trac.cgi/wiki/X3100Linux?Anonymous
 W:	http://trac.neterion.com/cgi-bin/trac.cgi/wiki/X3100Linux?Anonymous
 S:	Supported
 S:	Supported
+F:	Documentation/networking/s2io.txt
+F:	drivers/net/s2io*
 
 
 NETFILTER/IPTABLES/IPCHAINS
 NETFILTER/IPTABLES/IPCHAINS
 P:	Rusty Russell
 P:	Rusty Russell
@@ -3158,6 +3881,12 @@ L:	coreteam@netfilter.org
 W:	http://www.netfilter.org/
 W:	http://www.netfilter.org/
 W:	http://www.iptables.org/
 W:	http://www.iptables.org/
 S:	Supported
 S:	Supported
+F:	include/linux/netfilter*
+F:	include/linux/netfilter/
+F:	include/net/netfilter/
+F:	net/*/netfilter.c
+F:	net/*/netfilter/
+F:	net/netfilter/
 
 
 NETLABEL
 NETLABEL
 P:	Paul Moore
 P:	Paul Moore
@@ -3165,6 +3894,9 @@ M:	paul.moore@hp.com
 W:	http://netlabel.sf.net
 W:	http://netlabel.sf.net
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	Documentation/netlabel/
+F:	include/net/netlabel.h
+F:	net/netlabel/
 
 
 NETROM NETWORK LAYER
 NETROM NETWORK LAYER
 P:	Ralf Baechle
 P:	Ralf Baechle
@@ -3172,18 +3904,25 @@ M:	ralf@linux-mips.org
 L:	linux-hams@vger.kernel.org
 L:	linux-hams@vger.kernel.org
 W:	http://www.linux-ax25.org/
 W:	http://www.linux-ax25.org/
 S:	Maintained
 S:	Maintained
+F:	include/linux/netrom.h
+F:	include/net/netrom.h
+F:	net/netrom/
 
 
 NETWORK BLOCK DEVICE (NBD)
 NETWORK BLOCK DEVICE (NBD)
 P:	Paul Clements
 P:	Paul Clements
 M:	Paul.Clements@steeleye.com
 M:	Paul.Clements@steeleye.com
 S:	Maintained
 S:	Maintained
+F:	Documentation/blockdev/nbd.txt
+F:	drivers/block/nbd.c
+F:	include/linux/nbd.h
 
 
 NETWORK DEVICE DRIVERS
 NETWORK DEVICE DRIVERS
 P:	Jeff Garzik
 P:	Jeff Garzik
 M:	jgarzik@pobox.com
 M:	jgarzik@pobox.com
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/netdev-2.6.git
 S:	Maintained
 S:	Maintained
+F:	drivers/net/
 
 
 NETWORKING [GENERAL]
 NETWORKING [GENERAL]
 P:	Networking Team
 P:	Networking Team
@@ -3191,6 +3930,8 @@ M:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 W:	http://linux-net.osdl.org/
 W:	http://linux-net.osdl.org/
 S:	Maintained
 S:	Maintained
+F:	net/
+F:	include/net/
 
 
 NETWORKING [IPv4/IPv6]
 NETWORKING [IPv4/IPv6]
 P:	David S. Miller
 P:	David S. Miller
@@ -3206,8 +3947,11 @@ M:	yoshfuji@linux-ipv6.org
 P:	Patrick McHardy
 P:	Patrick McHardy
 M:	kaber@trash.net
 M:	kaber@trash.net
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6.git
 S:	Maintained
 S:	Maintained
+F:	net/ipv4/
+F:	net/ipv6/
+F:	include/net/ip*
 
 
 NETWORKING [LABELED] (NetLabel, CIPSO, Labeled IPsec, SECMARK)
 NETWORKING [LABELED] (NetLabel, CIPSO, Labeled IPsec, SECMARK)
 P:	Paul Moore
 P:	Paul Moore
@@ -3219,8 +3963,11 @@ NETWORKING [WIRELESS]
 P:	John W. Linville
 P:	John W. Linville
 M:	linville@tuxdriver.com
 M:	linville@tuxdriver.com
 L:	linux-wireless@vger.kernel.org
 L:	linux-wireless@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/linville/wireless-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6.git
 S:	Maintained
 S:	Maintained
+F:	net/wireless/
+F:	include/net/ieee80211*
+F:	include/net/wireless.h
 
 
 NETXEN (1/10) GbE SUPPORT
 NETXEN (1/10) GbE SUPPORT
 P:	Dhananjay Phadke
 P:	Dhananjay Phadke
@@ -3228,6 +3975,7 @@ M:	dhananjay@netxen.com
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 W:	http://www.netxen.com
 W:	http://www.netxen.com
 S:	Supported
 S:	Supported
+F:	drivers/net/netxen/
 
 
 NFS, SUNRPC, AND LOCKD CLIENTS
 NFS, SUNRPC, AND LOCKD CLIENTS
 P:	Trond Myklebust
 P:	Trond Myklebust
@@ -3236,6 +3984,13 @@ L:	linux-nfs@vger.kernel.org
 W:	http://client.linux-nfs.org
 W:	http://client.linux-nfs.org
 T:	git git://git.linux-nfs.org/pub/linux/nfs-2.6.git
 T:	git git://git.linux-nfs.org/pub/linux/nfs-2.6.git
 S:	Maintained
 S:	Maintained
+F:	fs/lockd/
+F:	fs/nfs/
+F:	fs/nfs_common/
+F:	net/sunrpc/
+F:	include/linux/lockd/
+F:	include/linux/nfs*
+F:	include/linux/sunrpc/
 
 
 NI5010 NETWORK DRIVER
 NI5010 NETWORK DRIVER
 P:	Jan-Pascal van Best
 P:	Jan-Pascal van Best
@@ -3244,12 +3999,25 @@ P:	Andreas Mohr
 M:	andi@lisas.de
 M:	andi@lisas.de
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/ni5010.*
+
+NILFS2 FILESYSTEM
+P:	KONISHI Ryusuke
+M:	konishi.ryusuke@lab.ntt.co.jp
+L:	users@nilfs.org
+W:	http://www.nilfs.org/en/
+S:	Supported
+F:	Documentation/filesystems/nilfs2.txt
+F:	fs/nilfs2/
+F:	include/linux/nilfs2_fs.h
 
 
 NINJA SCSI-3 / NINJA SCSI-32Bi (16bit/CardBus) PCMCIA SCSI HOST ADAPTER DRIVER
 NINJA SCSI-3 / NINJA SCSI-32Bi (16bit/CardBus) PCMCIA SCSI HOST ADAPTER DRIVER
 P:	YOKOTA Hiroshi
 P:	YOKOTA Hiroshi
 M:	yokota@netlab.is.tsukuba.ac.jp
 M:	yokota@netlab.is.tsukuba.ac.jp
 W:	http://www.netlab.is.tsukuba.ac.jp/~yokota/izumi/ninja/
 W:	http://www.netlab.is.tsukuba.ac.jp/~yokota/izumi/ninja/
 S:	Maintained
 S:	Maintained
+F:	Documentation/scsi/NinjaSCSI.txt
+F:	drivers/scsi/pcmcia/nsp_*
 
 
 NINJA SCSI-32Bi/UDE PCI/CARDBUS SCSI HOST ADAPTER DRIVER
 NINJA SCSI-32Bi/UDE PCI/CARDBUS SCSI HOST ADAPTER DRIVER
 P:	GOTO Masanori
 P:	GOTO Masanori
@@ -3258,6 +4026,8 @@ P:	YOKOTA Hiroshi
 M:	yokota@netlab.is.tsukuba.ac.jp
 M:	yokota@netlab.is.tsukuba.ac.jp
 W:	http://www.netlab.is.tsukuba.ac.jp/~yokota/izumi/ninja/
 W:	http://www.netlab.is.tsukuba.ac.jp/~yokota/izumi/ninja/
 S:	Maintained
 S:	Maintained
+F:	Documentation/scsi/NinjaSCSI.txt
+F:	drivers/scsi/nsp32*
 
 
 NTFS FILESYSTEM
 NTFS FILESYSTEM
 P:	Anton Altaparmakov
 P:	Anton Altaparmakov
@@ -3265,43 +4035,55 @@ M:	aia21@cantab.net
 L:	linux-ntfs-dev@lists.sourceforge.net
 L:	linux-ntfs-dev@lists.sourceforge.net
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 W:	http://www.linux-ntfs.org/
 W:	http://www.linux-ntfs.org/
-T:	git kernel.org:/pub/scm/linux/kernel/git/aia21/ntfs-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/aia21/ntfs-2.6.git
 S:	Maintained
 S:	Maintained
+F:	Documentation/filesystems/ntfs.txt
+F:	fs/ntfs/
 
 
 NVIDIA (rivafb and nvidiafb) FRAMEBUFFER DRIVER
 NVIDIA (rivafb and nvidiafb) FRAMEBUFFER DRIVER
 P:	Antonino Daplas
 P:	Antonino Daplas
 M:	adaplas@gmail.com
 M:	adaplas@gmail.com
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 S:	Maintained
 S:	Maintained
+F:	drivers/video/riva/
+F:	drivers/video/nvidia/
 
 
 OMFS FILESYSTEM
 OMFS FILESYSTEM
 P:	Bob Copeland
 P:	Bob Copeland
 M:	me@bobcopeland.com
 M:	me@bobcopeland.com
 L:	linux-karma-devel@lists.sourceforge.net
 L:	linux-karma-devel@lists.sourceforge.net
 S:	Maintained
 S:	Maintained
+F:	Documentation/filesystems/omfs.txt
+F:	fs/omfs/
 
 
 OMNIKEY CARDMAN 4000 DRIVER
 OMNIKEY CARDMAN 4000 DRIVER
 P:	Harald Welte
 P:	Harald Welte
 M:	laforge@gnumonks.org
 M:	laforge@gnumonks.org
 S:	Maintained
 S:	Maintained
+F:	drivers/char/pcmcia/cm4000_cs.c
+F:	include/linux/cm4000_cs.h
 
 
 OMNIKEY CARDMAN 4040 DRIVER
 OMNIKEY CARDMAN 4040 DRIVER
 P:	Harald Welte
 P:	Harald Welte
 M:	laforge@gnumonks.org
 M:	laforge@gnumonks.org
 S:	Maintained
 S:	Maintained
+F:	drivers/char/pcmcia/cm4040_cs.*
 
 
 OMNIVISION OV7670 SENSOR DRIVER
 OMNIVISION OV7670 SENSOR DRIVER
 P:	Jonathan Corbet
 P:	Jonathan Corbet
 M:	corbet@lwn.net
 M:	corbet@lwn.net
 L:	linux-media@vger.kernel.org
 L:	linux-media@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
 S:	Maintained
 S:	Maintained
+F:	drivers/media/video/ov7670.c
 
 
 ONENAND FLASH DRIVER
 ONENAND FLASH DRIVER
 P:	Kyungmin Park
 P:	Kyungmin Park
 M:	kyungmin.park@samsung.com
 M:	kyungmin.park@samsung.com
 L:	linux-mtd@lists.infradead.org
 L:	linux-mtd@lists.infradead.org
 S:	Maintained
 S:	Maintained
+F:	drivers/mtd/onenand/
+F:	include/linux/mtd/onenand*.h
 
 
 ONSTREAM SCSI TAPE DRIVER
 ONSTREAM SCSI TAPE DRIVER
 P:	Willem Riede
 P:	Willem Riede
@@ -3309,18 +4091,25 @@ M:	osst@riede.org
 L:	osst-users@lists.sourceforge.net
 L:	osst-users@lists.sourceforge.net
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/scsi/osst*
+F:	drivers/scsi/st*
 
 
 OPENCORES I2C BUS DRIVER
 OPENCORES I2C BUS DRIVER
 P:	Peter Korsgaard
 P:	Peter Korsgaard
 M:	jacmet@sunsite.dk
 M:	jacmet@sunsite.dk
 L:	linux-i2c@vger.kernel.org
 L:	linux-i2c@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/i2c/busses/i2c-ocores
+F:	drivers/i2c/busses/i2c-ocores.c
 
 
 OPROFILE
 OPROFILE
 P:	Robert Richter
 P:	Robert Richter
 M:	robert.richter@amd.com
 M:	robert.richter@amd.com
 L:	oprofile-list@lists.sf.net
 L:	oprofile-list@lists.sf.net
 S:	Maintained
 S:	Maintained
+F:	arch/*/oprofile/
+F:	drivers/oprofile/
+F:	include/linux/oprofile.h
 
 
 ORACLE CLUSTER FILESYSTEM 2 (OCFS2)
 ORACLE CLUSTER FILESYSTEM 2 (OCFS2)
 P:	Mark Fasheh
 P:	Mark Fasheh
@@ -3331,6 +4120,9 @@ L:	ocfs2-devel@oss.oracle.com (moderated for non-subscribers)
 W:	http://oss.oracle.com/projects/ocfs2/
 W:	http://oss.oracle.com/projects/ocfs2/
 T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2.git
 T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2.git
 S:	Supported
 S:	Supported
+F:	Documentation/filesystems/ocfs2.txt
+F:	Documentation/filesystems/dlmfs.txt
+F:	fs/ocfs2/
 
 
 ORINOCO DRIVER
 ORINOCO DRIVER
 P:	Pavel Roskin
 P:	Pavel Roskin
@@ -3342,6 +4134,7 @@ L:	orinoco-users@lists.sourceforge.net
 L:	orinoco-devel@lists.sourceforge.net
 L:	orinoco-devel@lists.sourceforge.net
 W:	http://www.nongnu.org/orinoco/
 W:	http://www.nongnu.org/orinoco/
 S:	Maintained
 S:	Maintained
+F:	drivers/net/wireless/orinoco/
 
 
 OSD LIBRARY
 OSD LIBRARY
 P:	Boaz Harrosh
 P:	Boaz Harrosh
@@ -3350,7 +4143,7 @@ P:	Benny Halevy
 M:	bhalevy@panasas.com
 M:	bhalevy@panasas.com
 L:	osd-dev@open-osd.org
 L:	osd-dev@open-osd.org
 W:	http://open-osd.org
 W:	http://open-osd.org
-T:	git://git.open-osd.org/open-osd.git
+T:	git git://git.open-osd.org/open-osd.git
 S:	Maintained
 S:	Maintained
 
 
 P54 WIRELESS DRIVER
 P54 WIRELESS DRIVER
@@ -3358,25 +4151,29 @@ P:	Michael Wu
 M:	flamingice@sourmilk.net
 M:	flamingice@sourmilk.net
 L:	linux-wireless@vger.kernel.org
 L:	linux-wireless@vger.kernel.org
 W:	http://prism54.org
 W:	http://prism54.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/mwu/mac80211-drivers.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mwu/mac80211-drivers.git
 S:	Maintained
 S:	Maintained
+F:	drivers/net/wireless/p54/
 
 
 PA SEMI ETHERNET DRIVER
 PA SEMI ETHERNET DRIVER
 P:	Olof Johansson
 P:	Olof Johansson
 M:	olof@lixom.net
 M:	olof@lixom.net
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/pasemi_mac.*
 
 
 PA SEMI SMBUS DRIVER
 PA SEMI SMBUS DRIVER
 P:	Olof Johansson
 P:	Olof Johansson
 M:	olof@lixom.net
 M:	olof@lixom.net
 L:	linux-i2c@vger.kernel.org
 L:	linux-i2c@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/i2c/busses/i2c-pasemi.c
 
 
 PANASONIC LAPTOP ACPI EXTRAS DRIVER
 PANASONIC LAPTOP ACPI EXTRAS DRIVER
 P:	Harald Welte
 P:	Harald Welte
 M:	laforge@gnumonks.org
 M:	laforge@gnumonks.org
 S:	Maintained
 S:	Maintained
+F:	drivers/platform/x86/panasonic-laptop.c
 
 
 PANASONIC MN10300/AM33 PORT
 PANASONIC MN10300/AM33 PORT
 P:	David Howells
 P:	David Howells
@@ -3386,10 +4183,16 @@ M:	yasutake.koichi@jp.panasonic.com
 L:	linux-am33-list@redhat.com (moderated for non-subscribers)
 L:	linux-am33-list@redhat.com (moderated for non-subscribers)
 W:	ftp://ftp.redhat.com/pub/redhat/gnupro/AM33/
 W:	ftp://ftp.redhat.com/pub/redhat/gnupro/AM33/
 S:	Maintained
 S:	Maintained
+F:	Documentation/mn10300/
+F:	arch/mn10300/
 
 
 PARALLEL PORT SUPPORT
 PARALLEL PORT SUPPORT
 L:	linux-parport@lists.infradead.org (subscribers-only)
 L:	linux-parport@lists.infradead.org (subscribers-only)
 S:	Orphan
 S:	Orphan
+F:	drivers/parport/
+F:	include/linux/parport*.h
+F:	drivers/char/ppdev.c
+F:	include/linux/ppdev.h
 
 
 PARAVIRT_OPS INTERFACE
 PARAVIRT_OPS INTERFACE
 P:	Jeremy Fitzhardinge
 P:	Jeremy Fitzhardinge
@@ -3403,6 +4206,9 @@ M:	rusty@rustcorp.com.au
 L:	virtualization@lists.osdl.org
 L:	virtualization@lists.osdl.org
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	Documentation/ia64/paravirt_ops.txt
+F:	arch/*/kernel/paravirt*
+F:	arch/*/include/asm/paravirt.h
 
 
 PARIDE DRIVERS FOR PARALLEL PORT IDE DEVICES
 PARIDE DRIVERS FOR PARALLEL PORT IDE DEVICES
 P:	Tim Waugh
 P:	Tim Waugh
@@ -3410,6 +4216,8 @@ M:	tim@cyberelk.net
 L:	linux-parport@lists.infradead.org (subscribers-only)
 L:	linux-parport@lists.infradead.org (subscribers-only)
 W:	http://www.torque.net/linux-pp.html
 W:	http://www.torque.net/linux-pp.html
 S:	Maintained
 S:	Maintained
+F:	Documentation/blockdev/paride.txt
+F:	drivers/block/paride/
 
 
 PARISC ARCHITECTURE
 PARISC ARCHITECTURE
 P:	Kyle McMartin
 P:	Kyle McMartin
@@ -3418,24 +4226,31 @@ P:	Helge Deller
 M:	deller@gmx.de
 M:	deller@gmx.de
 L:	linux-parisc@vger.kernel.org
 L:	linux-parisc@vger.kernel.org
 W:	http://www.parisc-linux.org/
 W:	http://www.parisc-linux.org/
-T:	git kernel.org:/pub/scm/linux/kernel/git/kyle/parisc-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6.git
 S:	Maintained
 S:	Maintained
+F:	arch/parisc/
+F:	drivers/parisc/
 
 
 PC87360 HARDWARE MONITORING DRIVER
 PC87360 HARDWARE MONITORING DRIVER
 P:	Jim Cromie
 P:	Jim Cromie
 M:	jim.cromie@gmail.com
 M:	jim.cromie@gmail.com
 L:	lm-sensors@lm-sensors.org
 L:	lm-sensors@lm-sensors.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/hwmon/pc87360
+F:	drivers/hwmon/pc87360.c
 
 
 PC8736x GPIO DRIVER
 PC8736x GPIO DRIVER
 P:	Jim Cromie
 P:	Jim Cromie
 M:	jim.cromie@gmail.com
 M:	jim.cromie@gmail.com
 S:	Maintained
 S:	Maintained
+F:	drivers/char/pc8736x_gpio.c
 
 
 PCA9532 LED DRIVER
 PCA9532 LED DRIVER
 P:	Riku Voipio
 P:	Riku Voipio
 M:	riku.voipio@iki.fi
 M:	riku.voipio@iki.fi
 S:	Maintained
 S:	Maintained
+F:	drivers/leds/leds-pca9532.c
+F:	include/linux/leds-pca9532.h
 
 
 PCI ERROR RECOVERY
 PCI ERROR RECOVERY
 P:	Linas Vepstas
 P:	Linas Vepstas
@@ -3443,63 +4258,82 @@ M:	linas@austin.ibm.com
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 L:	linux-pci@vger.kernel.org
 L:	linux-pci@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	Documentation/PCI/pci-error-recovery.txt
+F:	Documentation/powerpc/eeh-pci-error-recovery.txt
 
 
 PCI SUBSYSTEM
 PCI SUBSYSTEM
 P:	Jesse Barnes
 P:	Jesse Barnes
 M:	jbarnes@virtuousgeek.org
 M:	jbarnes@virtuousgeek.org
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 L:	linux-pci@vger.kernel.org
 L:	linux-pci@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/jbarnes/pci-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6.git
 S:	Supported
 S:	Supported
+F:	Documentation/PCI/
+F:	drivers/pci/
+F:	include/linux/pci*
 
 
 PCIE HOTPLUG DRIVER
 PCIE HOTPLUG DRIVER
 P:	Kristen Carlson Accardi
 P:	Kristen Carlson Accardi
 M:	kristen.c.accardi@intel.com
 M:	kristen.c.accardi@intel.com
 L:	linux-pci@vger.kernel.org
 L:	linux-pci@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/pci/pcie/
 
 
 PCMCIA SUBSYSTEM
 PCMCIA SUBSYSTEM
 P:	Linux PCMCIA Team
 P:	Linux PCMCIA Team
 L:	linux-pcmcia@lists.infradead.org
 L:	linux-pcmcia@lists.infradead.org
 W:	http://lists.infradead.org/mailman/listinfo/linux-pcmcia
 W:	http://lists.infradead.org/mailman/listinfo/linux-pcmcia
-T:	git kernel.org:/pub/scm/linux/kernel/git/brodo/pcmcia-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6.git
 S:	Maintained
 S:	Maintained
+F:	Documentation/pcmcia/
+F:	drivers/pcmcia/
+F:	include/pcmcia/
 
 
 PCNET32 NETWORK DRIVER
 PCNET32 NETWORK DRIVER
 P:	Don Fry
 P:	Don Fry
 M:	pcnet32@verizon.net
 M:	pcnet32@verizon.net
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/pcnet32.c
 
 
 PER-TASK DELAY ACCOUNTING
 PER-TASK DELAY ACCOUNTING
 P:	Balbir Singh
 P:	Balbir Singh
 M:	balbir@linux.vnet.ibm.com
 M:	balbir@linux.vnet.ibm.com
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	include/linux/delayacct.h
+F:	kernel/delayacct.c
 
 
 PERSONALITY HANDLING
 PERSONALITY HANDLING
 P:	Christoph Hellwig
 P:	Christoph Hellwig
 M:	hch@infradead.org
 M:	hch@infradead.org
 L:	linux-abi-devel@lists.sourceforge.net
 L:	linux-abi-devel@lists.sourceforge.net
 S:	Maintained
 S:	Maintained
+F:	include/linux/personality.h
 
 
 PHRAM MTD DRIVER
 PHRAM MTD DRIVER
 P:	Joern Engel
 P:	Joern Engel
 M:	joern@lazybastard.org
 M:	joern@lazybastard.org
 L:	linux-mtd@lists.infradead.org
 L:	linux-mtd@lists.infradead.org
 S:	Maintained
 S:	Maintained
+F:	drivers/mtd/devices/phram.c
 
 
 PKTCDVD DRIVER
 PKTCDVD DRIVER
 P:	Peter Osterlund
 P:	Peter Osterlund
 M:	petero2@telia.com
 M:	petero2@telia.com
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/block/pktcdvd.c
+F:	include/linux/pktcdvd.h
 
 
 POSIX CLOCKS and TIMERS
 POSIX CLOCKS and TIMERS
 P:	Thomas Gleixner
 P:	Thomas Gleixner
 M:	tglx@linutronix.de
 M:	tglx@linutronix.de
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	fs/timerfd.c
+F:	include/linux/timer*
+F:	kernel/*timer*
 
 
 POWER SUPPLY CLASS/SUBSYSTEM and DRIVERS
 POWER SUPPLY CLASS/SUBSYSTEM and DRIVERS
 P:	Anton Vorontsov
 P:	Anton Vorontsov
@@ -3507,8 +4341,10 @@ M:	cbou@mail.ru
 P:	David Woodhouse
 P:	David Woodhouse
 M:	dwmw2@infradead.org
 M:	dwmw2@infradead.org
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
-T:	git git.infradead.org/battery-2.6.git
+T:	git git://git.infradead.org/battery-2.6.git
 S:	Maintained
 S:	Maintained
+F:	include/linux/power_supply.h
+F:	drivers/power/power_supply*
 
 
 PNP SUPPORT
 PNP SUPPORT
 P:	Adam Belay
 P:	Adam Belay
@@ -3516,33 +4352,42 @@ M:	abelay@mit.edu
 P:	Bjorn Helgaas
 P:	Bjorn Helgaas
 M:	bjorn.helgaas@hp.com
 M:	bjorn.helgaas@hp.com
 S:	Maintained
 S:	Maintained
+F:	drivers/pnp/
 
 
 PNXxxxx I2C DRIVER
 PNXxxxx I2C DRIVER
 P:	Vitaly Wool
 P:	Vitaly Wool
 M:	vitalywool@gmail.com
 M:	vitalywool@gmail.com
 L:	linux-i2c@vger.kernel.org
 L:	linux-i2c@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/i2c/busses/i2c-pnx.c
 
 
 PPP PROTOCOL DRIVERS AND COMPRESSORS
 PPP PROTOCOL DRIVERS AND COMPRESSORS
 P:	Paul Mackerras
 P:	Paul Mackerras
 M:	paulus@samba.org
 M:	paulus@samba.org
 L:	linux-ppp@vger.kernel.org
 L:	linux-ppp@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/ppp_*
 
 
 PPP OVER ATM (RFC 2364)
 PPP OVER ATM (RFC 2364)
 P:	Mitchell Blank Jr
 P:	Mitchell Blank Jr
 M:	mitch@sfgoth.com
 M:	mitch@sfgoth.com
 S:	Maintained
 S:	Maintained
+F:	net/atm/pppoatm.c
+F:	include/linux/atmppp.h
 
 
 PPP OVER ETHERNET
 PPP OVER ETHERNET
 P:	Michal Ostrowski
 P:	Michal Ostrowski
 M:	mostrows@earthlink.net
 M:	mostrows@earthlink.net
 S:	Maintained
 S:	Maintained
+F:	drivers/net/pppoe.c
+F:	drivers/net/pppox.c
 
 
 PPP OVER L2TP
 PPP OVER L2TP
 P:	James Chapman
 P:	James Chapman
 M:	jchapman@katalix.com
 M:	jchapman@katalix.com
 S:	Maintained
 S:	Maintained
+F:	drivers/net/pppol2tp.c
+F:	include/linux/if_pppol2tp.h
 
 
 PREEMPTIBLE KERNEL
 PREEMPTIBLE KERNEL
 P:	Robert Love
 P:	Robert Love
@@ -3551,6 +4396,8 @@ L:	linux-kernel@vger.kernel.org
 L:	kpreempt-tech@lists.sourceforge.net
 L:	kpreempt-tech@lists.sourceforge.net
 W:	ftp://ftp.kernel.org/pub/linux/kernel/people/rml/preempt-kernel
 W:	ftp://ftp.kernel.org/pub/linux/kernel/people/rml/preempt-kernel
 S:	Supported
 S:	Supported
+F:	Documentation/preempt-locking.txt
+F:	include/linux/preempt.h
 
 
 PRISM54 WIRELESS DRIVER
 PRISM54 WIRELESS DRIVER
 P:	Luis R. Rodriguez
 P:	Luis R. Rodriguez
@@ -3558,6 +4405,7 @@ M:	mcgrof@gmail.com
 L:	linux-wireless@vger.kernel.org
 L:	linux-wireless@vger.kernel.org
 W:	http://prism54.org
 W:	http://prism54.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/wireless/prism54/
 
 
 PROMISE DC4030 CACHING DISK CONTROLLER DRIVER
 PROMISE DC4030 CACHING DISK CONTROLLER DRIVER
 P:	Peter Denison
 P:	Peter Denison
@@ -3570,6 +4418,7 @@ P:	Mikael Pettersson
 M:	mikpe@it.uu.se
 M:	mikpe@it.uu.se
 L:	linux-ide@vger.kernel.org
 L:	linux-ide@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/ata/sata_promise.*
 
 
 PS3 NETWORK SUPPORT
 PS3 NETWORK SUPPORT
 P:	Masakazu Mokuno
 P:	Masakazu Mokuno
@@ -3577,6 +4426,7 @@ M:	mokuno@sm.sony.co.jp
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 L:	cbe-oss-dev@ozlabs.org
 L:	cbe-oss-dev@ozlabs.org
 S:	Supported
 S:	Supported
+F:	drivers/net/ps3_gelic_net.*
 
 
 PS3 PLATFORM SUPPORT
 PS3 PLATFORM SUPPORT
 P:	Geoff Levand
 P:	Geoff Levand
@@ -3584,6 +4434,13 @@ M:	geoffrey.levand@am.sony.com
 L:	linuxppc-dev@ozlabs.org
 L:	linuxppc-dev@ozlabs.org
 L:	cbe-oss-dev@ozlabs.org
 L:	cbe-oss-dev@ozlabs.org
 S:	Supported
 S:	Supported
+F:	arch/powerpc/boot/ps3*
+F:	arch/powerpc/include/asm/lv1call.h
+F:	arch/powerpc/include/asm/ps3*.h
+F:	arch/powerpc/platforms/ps3/
+F:	drivers/*/ps3*
+F:	drivers/ps3/
+F:	drivers/usb/host/*ps3.c
 
 
 PS3VRAM DRIVER
 PS3VRAM DRIVER
 P:	Jim Paris
 P:	Jim Paris
@@ -3597,8 +4454,10 @@ M:	isely@pobox.com
 L:	pvrusb2@isely.net	(subscribers-only)
 L:	pvrusb2@isely.net	(subscribers-only)
 L:	linux-media@vger.kernel.org
 L:	linux-media@vger.kernel.org
 W:	http://www.isely.net/pvrusb2/
 W:	http://www.isely.net/pvrusb2/
-T:	git kernel.org:/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
 S:	Maintained
 S:	Maintained
+F:	Documentation/video4linux/README.pvrusb2
+F:	drivers/media/video/pvrusb2/
 
 
 PXA2xx/PXA3xx SUPPORT
 PXA2xx/PXA3xx SUPPORT
 P:	Eric Miao
 P:	Eric Miao
@@ -3607,6 +4466,12 @@ P:	Russell King
 M:	linux@arm.linux.org.uk
 M:	linux@arm.linux.org.uk
 L:	linux-arm-kernel@lists.arm.linux.org.uk	(subscribers-only)
 L:	linux-arm-kernel@lists.arm.linux.org.uk	(subscribers-only)
 S:	Maintained
 S:	Maintained
+F:	arch/arm/mach-pxa/
+F:	drivers/pcmcia/pxa2xx*
+F:	drivers/spi/pxa2xx*
+F:	drivers/usb/gadget/pxa2*
+F:	include/sound/pxa2xx-lib.h
+F:	sound/soc/pxa/pxa2xx*
 
 
 PXA168 SUPPORT
 PXA168 SUPPORT
 P:	Eric Miao
 P:	Eric Miao
@@ -3614,14 +4479,14 @@ M:	eric.miao@marvell.com
 P:	Jason Chagas
 P:	Jason Chagas
 M:	jason.chagas@marvell.com
 M:	jason.chagas@marvell.com
 L:	linux-arm-kernel@lists.arm.linux.org.uk	(subscribers-only)
 L:	linux-arm-kernel@lists.arm.linux.org.uk	(subscribers-only)
-T:	git kernel.org:/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6.git
 S:	Supported
 S:	Supported
 
 
 PXA910 SUPPORT
 PXA910 SUPPORT
 P:	Eric Miao
 P:	Eric Miao
 M:	eric.miao@marvell.com
 M:	eric.miao@marvell.com
 L:	linux-arm-kernel@lists.arm.linux.org.uk	(subscribers-only)
 L:	linux-arm-kernel@lists.arm.linux.org.uk	(subscribers-only)
-T:	git kernel.org:/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6.git
 S:	Supported
 S:	Supported
 
 
 PXA MMCI DRIVER
 PXA MMCI DRIVER
@@ -3638,12 +4503,16 @@ P:	Andrew Vasquez
 M:	linux-driver@qlogic.com
 M:	linux-driver@qlogic.com
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	Documentation/scsi/LICENSE.qla2xxx
+F:	drivers/scsi/qla2xxx/
 
 
 QLOGIC QLA3XXX NETWORK DRIVER
 QLOGIC QLA3XXX NETWORK DRIVER
 P:	Ron Mercer
 P:	Ron Mercer
 M:	linux-driver@qlogic.com
 M:	linux-driver@qlogic.com
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	Documentation/networking/LICENSE.qla3xxx
+F:	drivers/net/qla3xxx.*
 
 
 QLOGIC QLGE 10Gb ETHERNET DRIVER
 QLOGIC QLGE 10Gb ETHERNET DRIVER
 P:	Ron Mercer
 P:	Ron Mercer
@@ -3651,6 +4520,7 @@ M:	linux-driver@qlogic.com
 M:	ron.mercer@qlogic.com
 M:	ron.mercer@qlogic.com
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/net/qlge/
 
 
 QNX4 FILESYSTEM
 QNX4 FILESYSTEM
 P:	Anders Larsen
 P:	Anders Larsen
@@ -3658,18 +4528,24 @@ M:	al@alarsen.net
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 W:	http://www.alarsen.net/linux/qnx4fs/
 W:	http://www.alarsen.net/linux/qnx4fs/
 S:	Maintained
 S:	Maintained
+F:	fs/qnx4/
+F:	include/linux/qnx4_fs.h
+F:	include/linux/qnxtypes.h
 
 
 RADEON FRAMEBUFFER DISPLAY DRIVER
 RADEON FRAMEBUFFER DISPLAY DRIVER
 P:	Benjamin Herrenschmidt
 P:	Benjamin Herrenschmidt
 M:	benh@kernel.crashing.org
 M:	benh@kernel.crashing.org
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 S:	Maintained
 S:	Maintained
+F:	drivers/video/aty/radeon*
+F:	include/linux/radeonfb.h
 
 
 RAGE128 FRAMEBUFFER DISPLAY DRIVER
 RAGE128 FRAMEBUFFER DISPLAY DRIVER
 P:	Paul Mackerras
 P:	Paul Mackerras
 M:	paulus@samba.org
 M:	paulus@samba.org
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 S:	Maintained
 S:	Maintained
+F:	drivers/video/aty/aty128fb.c
 
 
 RALINK RT2X00 WIRELESS LAN DRIVER
 RALINK RT2X00 WIRELESS LAN DRIVER
 P:	rt2x00 project
 P:	rt2x00 project
@@ -3677,36 +4553,43 @@ L:	linux-wireless@vger.kernel.org
 L:	users@rt2x00.serialmonkey.com
 L:	users@rt2x00.serialmonkey.com
 W:	http://rt2x00.serialmonkey.com/
 W:	http://rt2x00.serialmonkey.com/
 S:	Maintained
 S:	Maintained
-T:	git kernel.org:/pub/scm/linux/kernel/git/ivd/rt2x00.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/ivd/rt2x00.git
 F:	drivers/net/wireless/rt2x00/
 F:	drivers/net/wireless/rt2x00/
 
 
 RAMDISK RAM BLOCK DEVICE DRIVER
 RAMDISK RAM BLOCK DEVICE DRIVER
 P:	Nick Piggin
 P:	Nick Piggin
 M:	npiggin@suse.de
 M:	npiggin@suse.de
 S:	Maintained
 S:	Maintained
+F:	Documentation/blockdev/ramdisk.txt
+F:	drivers/block/brd.c
 
 
 RANDOM NUMBER DRIVER
 RANDOM NUMBER DRIVER
 P:	Matt Mackall
 P:	Matt Mackall
 M:	mpm@selenic.com
 M:	mpm@selenic.com
 S:	Maintained
 S:	Maintained
+F:	drivers/char/random.c
 
 
 RAPIDIO SUBSYSTEM
 RAPIDIO SUBSYSTEM
 P:	Matt Porter
 P:	Matt Porter
 M:	mporter@kernel.crashing.org
 M:	mporter@kernel.crashing.org
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/rapidio/
 
 
 RAYLINK/WEBGEAR 802.11 WIRELESS LAN DRIVER
 RAYLINK/WEBGEAR 802.11 WIRELESS LAN DRIVER
 P:	Corey Thomas
 P:	Corey Thomas
 M:	coreythomas@charter.net
 M:	coreythomas@charter.net
 L:	linux-wireless@vger.kernel.org
 L:	linux-wireless@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/wireless/ray*
 
 
 RCUTORTURE MODULE
 RCUTORTURE MODULE
 P:	Josh Triplett
 P:	Josh Triplett
 M:	josh@freedesktop.org
 M:	josh@freedesktop.org
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/RCU/torture.txt
+F:	kernel/rcutorture.c
 
 
 RDC R-321X SoC
 RDC R-321X SoC
 P:	Florian Fainelli
 P:	Florian Fainelli
@@ -3719,12 +4602,14 @@ P:	Florian Fainelli
 M:	florian.fainelli@telecomint.eu
 M:	florian.fainelli@telecomint.eu
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/r6040.c
 
 
 RDS - RELIABLE DATAGRAM SOCKETS
 RDS - RELIABLE DATAGRAM SOCKETS
 P:	Andy Grover
 P:	Andy Grover
 M:	andy.grover@oracle.com
 M:	andy.grover@oracle.com
 L:	rds-devel@oss.oracle.com
 L:	rds-devel@oss.oracle.com
 S:	Supported
 S:	Supported
+F:	net/rds/
 
 
 READ-COPY UPDATE (RCU)
 READ-COPY UPDATE (RCU)
 P:	Dipankar Sarma
 P:	Dipankar Sarma
@@ -3732,37 +4617,54 @@ M:	dipankar@in.ibm.com
 W:	http://www.rdrop.com/users/paulmck/rclock/
 W:	http://www.rdrop.com/users/paulmck/rclock/
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	Documentation/RCU/rcu.txt
+F:	Documentation/RCU/rcuref.txt
+F:	include/linux/rcupdate.h
+F:	include/linux/srcu.h
+F:	kernel/rcupdate.c
 
 
 REAL TIME CLOCK DRIVER
 REAL TIME CLOCK DRIVER
 P:	Paul Gortmaker
 P:	Paul Gortmaker
 M:	p_gortmaker@yahoo.com
 M:	p_gortmaker@yahoo.com
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/rtc.txt
+F:	drivers/rtc/
+F:	include/linux/rtc.h
 
 
 REAL TIME CLOCK (RTC) SUBSYSTEM
 REAL TIME CLOCK (RTC) SUBSYSTEM
 P:	Alessandro Zummo
 P:	Alessandro Zummo
 M:	a.zummo@towertech.it
 M:	a.zummo@towertech.it
 L:	rtc-linux@googlegroups.com
 L:	rtc-linux@googlegroups.com
 S:	Maintained
 S:	Maintained
+F:	Documentation/rtc.txt
+F:	drivers/rtc/
+F:	include/linux/rtc.h
 
 
 REISERFS FILE SYSTEM
 REISERFS FILE SYSTEM
 L:	reiserfs-devel@vger.kernel.org
 L:	reiserfs-devel@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	fs/reiserfs/
 
 
 RFKILL
 RFKILL
 P:	Ivo van Doorn
 P:	Ivo van Doorn
 M:	IvDoorn@gmail.com
 M:	IvDoorn@gmail.com
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
-F:	net/rfkill
+F	Documentation/rfkill.txt
+F:	net/rfkill/
 
 
 RISCOM8 DRIVER
 RISCOM8 DRIVER
 S:	Orphan
 S:	Orphan
+F:	Documentation/serial/riscom8.txt
+F:	drivers/char/riscom8*
 
 
 ROCKETPORT DRIVER
 ROCKETPORT DRIVER
 P:	Comtrol Corp.
 P:	Comtrol Corp.
 W:	http://www.comtrol.com
 W:	http://www.comtrol.com
 S:	Maintained
 S:	Maintained
+F:	Documentation/serial/rocket.txt
+F:	drivers/char/rocket*
 
 
 ROSE NETWORK LAYER
 ROSE NETWORK LAYER
 P:	Ralf Baechle
 P:	Ralf Baechle
@@ -3770,32 +4672,38 @@ M:	ralf@linux-mips.org
 L:	linux-hams@vger.kernel.org
 L:	linux-hams@vger.kernel.org
 W:	http://www.linux-ax25.org/
 W:	http://www.linux-ax25.org/
 S:	Maintained
 S:	Maintained
+F:	include/linux/rose.h
+F:	include/net/rose.h
+F:	net/rose/
 
 
 RTL8180 WIRELESS DRIVER
 RTL8180 WIRELESS DRIVER
 P:	John W. Linville
 P:	John W. Linville
 M:	linville@tuxdriver.com
 M:	linville@tuxdriver.com
 L:	linux-wireless@vger.kernel.org
 L:	linux-wireless@vger.kernel.org
 W:	http://linuxwireless.org/
 W:	http://linuxwireless.org/
-T:	git kernel.org:/pub/scm/linux/kernel/git/linville/wireless-testing.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-testing.git
 S:	Maintained
 S:	Maintained
+F:	drivers/net/wireless/rtl818*
 
 
 RTL8187 WIRELESS DRIVER
 RTL8187 WIRELESS DRIVER
-P:	 Herton Ronaldo Krzesinski
-M:      herton@mandriva.com.br
-P:      Hin-Tak Leung
-M       htl10@users.sourceforge.net
-P:      Larry Finger
-M:      Larry.Finger@lwfinger.net
-L:      linux-wireless@vger.kernel.org
-W:      http://linuxwireless.org/
-T:      git kernel.org:/pub/scm/linux/kernel/git/linville/wireless-testing.git
-S:      Maintained
+P:	Herton Ronaldo Krzesinski
+M:	herton@mandriva.com.br
+P:	Hin-Tak Leung
+M:	htl10@users.sourceforge.net
+P:	Larry Finger
+M:	Larry.Finger@lwfinger.net
+L:	linux-wireless@vger.kernel.org
+W:	http://linuxwireless.org/
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-testing.git
+S:	Maintained
+F:	drivers/net/wireless/rtl818x/rtl8187*
 
 
 S3 SAVAGE FRAMEBUFFER DRIVER
 S3 SAVAGE FRAMEBUFFER DRIVER
 P:	Antonino Daplas
 P:	Antonino Daplas
 M:	adaplas@gmail.com
 M:	adaplas@gmail.com
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 S:	Maintained
 S:	Maintained
+F:	drivers/video/savage/
 
 
 S390
 S390
 P:	Martin Schwidefsky
 P:	Martin Schwidefsky
@@ -3806,6 +4714,7 @@ M:	linux390@de.ibm.com
 L:	linux-s390@vger.kernel.org
 L:	linux-s390@vger.kernel.org
 W:	http://www.ibm.com/developerworks/linux/linux390/
 W:	http://www.ibm.com/developerworks/linux/linux390/
 S:	Supported
 S:	Supported
+F:	arch/s390/
 
 
 S390 NETWORK DRIVERS
 S390 NETWORK DRIVERS
 P:	Ursula Braun
 P:	Ursula Braun
@@ -3816,6 +4725,7 @@ M:	linux390@de.ibm.com
 L:	linux-s390@vger.kernel.org
 L:	linux-s390@vger.kernel.org
 W:	http://www.ibm.com/developerworks/linux/linux390/
 W:	http://www.ibm.com/developerworks/linux/linux390/
 S:	Supported
 S:	Supported
+F:	drivers/s390/net/
 
 
 S390 ZCRYPT DRIVER
 S390 ZCRYPT DRIVER
 P:	Felix Beck
 P:	Felix Beck
@@ -3825,6 +4735,7 @@ M:	ralph.wuerthner@de.ibm.com
 M:	linux390@de.ibm.com
 M:	linux390@de.ibm.com
 L:	linux-s390@vger.kernel.org
 L:	linux-s390@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/s390/crypto/
 
 
 S390 ZFCP DRIVER
 S390 ZFCP DRIVER
 P:	Christof Schmitt
 P:	Christof Schmitt
@@ -3835,6 +4746,8 @@ M:	linux390@de.ibm.com
 L:	linux-s390@vger.kernel.org
 L:	linux-s390@vger.kernel.org
 W:	http://www.ibm.com/developerworks/linux/linux390/
 W:	http://www.ibm.com/developerworks/linux/linux390/
 S:	Supported
 S:	Supported
+F:	Documentation/s390/zfcpdump.txt
+F:	drivers/s390/scsi/zfcp_*
 
 
 S390 IUCV NETWORK LAYER
 S390 IUCV NETWORK LAYER
 P:	Ursula Braun
 P:	Ursula Braun
@@ -3843,6 +4756,9 @@ M:	linux390@de.ibm.com
 L:	linux-s390@vger.kernel.org
 L:	linux-s390@vger.kernel.org
 W:	http://www.ibm.com/developerworks/linux/linux390/
 W:	http://www.ibm.com/developerworks/linux/linux390/
 S:	Supported
 S:	Supported
+F:	drivers/s390/net/*iucv*
+F:	include/net/iucv/
+F:	net/iucv/
 
 
 S3C24XX SD/MMC Driver
 S3C24XX SD/MMC Driver
 P:	Ben Dooks
 P:	Ben Dooks
@@ -3850,27 +4766,34 @@ M:	ben-linux@fluff.org
 L:	linux-arm-kernel@lists.arm.linux.org.uk (subscribers-only)
 L:	linux-arm-kernel@lists.arm.linux.org.uk (subscribers-only)
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/mmc/host/s3cmci.*
 
 
 SAA7146 VIDEO4LINUX-2 DRIVER
 SAA7146 VIDEO4LINUX-2 DRIVER
 P:	Michael Hunold
 P:	Michael Hunold
 M:	michael@mihu.de
 M:	michael@mihu.de
 L:	linux-media@vger.kernel.org
 L:	linux-media@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
 W:	http://www.mihu.de/linux/saa7146
 W:	http://www.mihu.de/linux/saa7146
 S:	Maintained
 S:	Maintained
+F:	drivers/media/common/saa7146*
+F:	drivers/media/video/*7146*
+F:	include/media/*7146*
 
 
 SC1200 WDT DRIVER
 SC1200 WDT DRIVER
 P:	Zwane Mwaikambo
 P:	Zwane Mwaikambo
 M:	zwane@arm.linux.org.uk
 M:	zwane@arm.linux.org.uk
 S:	Maintained
 S:	Maintained
+F:	drivers/watchdog/sc1200wdt.c
 
 
 SCHEDULER
 SCHEDULER
 P:	Ingo Molnar
 P:	Ingo Molnar
 M:	mingo@elte.hu
 M:	mingo@elte.hu
-P:	Robert Love    [the preemptible kernel bits]
-M:	rml@tech9.net
+P:	Peter Zijlstra
+M:	peterz@infradead.org
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	kernel/sched*
+F:	include/linux/sched.h
 
 
 SCSI CDROM DRIVER
 SCSI CDROM DRIVER
 P:	Jens Axboe
 P:	Jens Axboe
@@ -3878,6 +4801,7 @@ M:	axboe@kernel.dk
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 W:	http://www.kernel.dk
 W:	http://www.kernel.dk
 S:	Maintained
 S:	Maintained
+F:	drivers/scsi/sr*
 
 
 SCSI SG DRIVER
 SCSI SG DRIVER
 P:	Doug Gilbert
 P:	Doug Gilbert
@@ -3885,21 +4809,27 @@ M:	dgilbert@interlog.com
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 W:	http://www.torque.net/sg
 W:	http://www.torque.net/sg
 S:	Maintained
 S:	Maintained
+F:	drivers/scsi/sg.c
+F:	include/scsi/sg.h
 
 
 SCSI SUBSYSTEM
 SCSI SUBSYSTEM
 P:	James E.J. Bottomley
 P:	James E.J. Bottomley
 M:	James.Bottomley@HansenPartnership.com
 M:	James.Bottomley@HansenPartnership.com
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6.git
-T:	git kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6.git
-T:	git kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-pending-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-pending-2.6.git
 S:	Maintained
 S:	Maintained
+F:	drivers/scsi/
+F:	include/scsi/
 
 
 SCSI TAPE DRIVER
 SCSI TAPE DRIVER
 P:	Kai Mäkisara
 P:	Kai Mäkisara
 M:	Kai.Makisara@kolumbus.fi
 M:	Kai.Makisara@kolumbus.fi
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/scsi/st.txt
+F:	drivers/scsi/st*
 
 
 SCTP PROTOCOL
 SCTP PROTOCOL
 P:	Vlad Yasevich
 P:	Vlad Yasevich
@@ -3909,31 +4839,45 @@ M:	sri@us.ibm.com
 L:	linux-sctp@vger.kernel.org
 L:	linux-sctp@vger.kernel.org
 W:	http://lksctp.sourceforge.net
 W:	http://lksctp.sourceforge.net
 S:	Supported
 S:	Supported
+F:	Documentation/networking/sctp.txt
+F:	include/linux/sctp.h
+F:	include/net/sctp/
+F:	net/sctp/
 
 
 SCx200 CPU SUPPORT
 SCx200 CPU SUPPORT
 P:	Jim Cromie
 P:	Jim Cromie
 M:	jim.cromie@gmail.com
 M:	jim.cromie@gmail.com
 S:	Odd Fixes
 S:	Odd Fixes
+F:	Documentation/i2c/busses/scx200_acb
+F:	arch/x86/kernel/scx200_32.c
+F:	drivers/watchdog/scx200_wdt.c
+F:	drivers/i2c/busses/scx200*
+F:	drivers/mtd/maps/scx200_docflash.c
+F:	include/linux/scx200.h
 
 
 SCx200 GPIO DRIVER
 SCx200 GPIO DRIVER
 P:	Jim Cromie
 P:	Jim Cromie
 M:	jim.cromie@gmail.com
 M:	jim.cromie@gmail.com
 S:	Maintained
 S:	Maintained
+F:	drivers/char/scx200_gpio.c
+F:	include/linux/scx200_gpio.h
 
 
 SCx200 HRT CLOCKSOURCE DRIVER
 SCx200 HRT CLOCKSOURCE DRIVER
 P:	Jim Cromie
 P:	Jim Cromie
 M:	jim.cromie@gmail.com
 M:	jim.cromie@gmail.com
 S:	Maintained
 S:	Maintained
+F:	drivers/clocksource/scx200_hrt.c
 
 
 SDRICOH_CS MMC/SD HOST CONTROLLER INTERFACE DRIVER
 SDRICOH_CS MMC/SD HOST CONTROLLER INTERFACE DRIVER
 P:	Sascha Sommer
 P:	Sascha Sommer
 M:	saschasommer@freenet.de
 M:	saschasommer@freenet.de
 L:	sdricohcs-devel@lists.sourceforge.net (subscribers-only)
 L:	sdricohcs-devel@lists.sourceforge.net (subscribers-only)
 S:	Maintained
 S:	Maintained
+F:	drivers/mmc/host/sdricoh_cs.c
 
 
 SECURE DIGITAL HOST CONTROLLER INTERFACE (SDHCI) DRIVER
 SECURE DIGITAL HOST CONTROLLER INTERFACE (SDHCI) DRIVER
 P:	Pierre Ossman
 P:	Pierre Ossman
-M:	drzeus-sdhci@drzeus.cx
+M:	pierre@ossman.eu
 L:	sdhci-devel@lists.ossman.eu
 L:	sdhci-devel@lists.ossman.eu
 S:	Maintained
 S:	Maintained
 
 
@@ -3943,16 +4887,17 @@ M:	avorontsov@ru.mvista.com
 L:	linuxppc-dev@ozlabs.org
 L:	linuxppc-dev@ozlabs.org
 L:	sdhci-devel@lists.ossman.eu
 L:	sdhci-devel@lists.ossman.eu
 S:	Maintained
 S:	Maintained
+F:	drivers/mmc/host/sdhci.*
 
 
 SECURITY SUBSYSTEM
 SECURITY SUBSYSTEM
-F:	security/
 P:	James Morris
 P:	James Morris
 M:	jmorris@namei.org
 M:	jmorris@namei.org
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 L:	linux-security-module@vger.kernel.org (suggested Cc:)
 L:	linux-security-module@vger.kernel.org (suggested Cc:)
-T:	git kernel.org:pub/scm/linux/kernel/git/jmorris/security-testing-2.6.git
+T:	git git://www.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6.git
 W:	http://security.wiki.kernel.org/
 W:	http://security.wiki.kernel.org/
 S:	Supported
 S:	Supported
+F:	security/
 
 
 SECURITY CONTACT
 SECURITY CONTACT
 P:	Security Officers
 P:	Security Officers
@@ -3967,31 +4912,39 @@ M:	jmorris@namei.org
 P:	Eric Paris
 P:	Eric Paris
 M:	eparis@parisplace.org
 M:	eparis@parisplace.org
 L:	linux-kernel@vger.kernel.org (kernel issues)
 L:	linux-kernel@vger.kernel.org (kernel issues)
-L: 	selinux@tycho.nsa.gov (subscribers-only, general discussion)
+L:	selinux@tycho.nsa.gov (subscribers-only, general discussion)
 W:	http://selinuxproject.org
 W:	http://selinuxproject.org
-T:	git kernel.org:pub/scm/linux/kernel/git/jmorris/security-testing-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6.git
 S:	Supported
 S:	Supported
+F:	include/linux/selinux*
+F:	security/selinux/
 
 
 SENSABLE PHANTOM
 SENSABLE PHANTOM
 P:	Jiri Slaby
 P:	Jiri Slaby
 M:	jirislaby@gmail.com
 M:	jirislaby@gmail.com
 S:	Maintained
 S:	Maintained
+F:	drivers/misc/phantom.c
+F:	include/linux/phantom.h
 
 
 SERIAL ATA (SATA) SUBSYSTEM
 SERIAL ATA (SATA) SUBSYSTEM
 P:	Jeff Garzik
 P:	Jeff Garzik
 M:	jgarzik@pobox.com
 M:	jgarzik@pobox.com
 L:	linux-ide@vger.kernel.org
 L:	linux-ide@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev.git
 S:	Supported
 S:	Supported
+F:	drivers/ata/
+F:	include/linux/ata.h
+F:	include/linux/libata.h
 
 
 SERVER ENGINES 10Gbps NIC - BladeEngine 2 DRIVER
 SERVER ENGINES 10Gbps NIC - BladeEngine 2 DRIVER
 P:	Sathya Perla
 P:	Sathya Perla
 M:	sathyap@serverengines.com
 M:	sathyap@serverengines.com
-P:      Subbu Seetharaman
-M:      subbus@serverengines.com
-L:      netdev@vger.kernel.org
-W:      http://www.serverengines.com
-S:      Supported
+P:	Subbu Seetharaman
+M:	subbus@serverengines.com
+L:	netdev@vger.kernel.org
+W:	http://www.serverengines.com
+S:	Supported
+F:	drivers/net/benet/
 
 
 SFC NETWORK DRIVER
 SFC NETWORK DRIVER
 P:	Steve Hodgson
 P:	Steve Hodgson
@@ -3999,17 +4952,22 @@ P:	Ben Hutchings
 P:	Robert Stonehouse
 P:	Robert Stonehouse
 M:	linux-net-drivers@solarflare.com
 M:	linux-net-drivers@solarflare.com
 S:	Supported
 S:	Supported
+F:	drivers/net/sfc/
 
 
 SGI GRU DRIVER
 SGI GRU DRIVER
 P:	Jack Steiner
 P:	Jack Steiner
 M:	steiner@sgi.com
 M:	steiner@sgi.com
 S:	Maintained
 S:	Maintained
+F:	drivers/misc/sgi-gru/
 
 
 SGI SN-IA64 (Altix) SERIAL CONSOLE DRIVER
 SGI SN-IA64 (Altix) SERIAL CONSOLE DRIVER
 P:	Pat Gefre
 P:	Pat Gefre
 M:	pfg@sgi.com
 M:	pfg@sgi.com
 L:	linux-ia64@vger.kernel.org
 L:	linux-ia64@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	Documentation/ia64/serial.txt
+F:	drivers/serial/ioc?_serial.c
+F:	include/linux/ioc?.h
 
 
 SGI VISUAL WORKSTATION 320 AND 540
 SGI VISUAL WORKSTATION 320 AND 540
 P:	Andrey Panin
 P:	Andrey Panin
@@ -4017,11 +4975,13 @@ M:	pazke@donpac.ru
 L:	linux-visws-devel@lists.sf.net
 L:	linux-visws-devel@lists.sf.net
 W:	http://linux-visws.sf.net
 W:	http://linux-visws.sf.net
 S:	Maintained for 2.6.
 S:	Maintained for 2.6.
+F:	Documentation/sgi-visws.txt
 
 
 SGI XP/XPC/XPNET DRIVER
 SGI XP/XPC/XPNET DRIVER
 P:	Dean Nelson
 P:	Dean Nelson
 M:	dcn@sgi.com
 M:	dcn@sgi.com
 S:	Maintained
 S:	Maintained
+F:	drivers/misc/sgi-xp/
 
 
 SHARP LH SUPPORT (LH7952X & LH7A40X)
 SHARP LH SUPPORT (LH7952X & LH7A40X)
 P:	Marc Singer
 P:	Marc Singer
@@ -4029,12 +4989,18 @@ M:	elf@buici.com
 W:	http://projects.buici.com/arm
 W:	http://projects.buici.com/arm
 L:	linux-arm-kernel@lists.arm.linux.org.uk	(subscribers-only)
 L:	linux-arm-kernel@lists.arm.linux.org.uk	(subscribers-only)
 S:	Maintained
 S:	Maintained
+F:	Documentation/arm/Sharp-LH/ADC-LH7-Touchscreen
+F:	arch/arm/mach-lh7a40x/
+F:	drivers/serial/serial_lh7a40x.c
+F:	drivers/usb/gadget/lh7a40*
+F:	drivers/usb/host/ohci-lh7a40*
 
 
 SHPC HOTPLUG DRIVER
 SHPC HOTPLUG DRIVER
 P:	Kristen Carlson Accardi
 P:	Kristen Carlson Accardi
 M:	kristen.c.accardi@intel.com
 M:	kristen.c.accardi@intel.com
 L:	linux-pci@vger.kernel.org
 L:	linux-pci@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/pci/hotplug/shpchp*
 
 
 SIMTEC EB110ATX (Chalice CATS)
 SIMTEC EB110ATX (Chalice CATS)
 P:	Ben Dooks
 P:	Ben Dooks
@@ -4042,6 +5008,7 @@ P:	Vincent Sanders
 M:	support@simtec.co.uk
 M:	support@simtec.co.uk
 W:	http://www.simtec.co.uk/products/EB110ATX/
 W:	http://www.simtec.co.uk/products/EB110ATX/
 S:	Supported
 S:	Supported
+F:	arch/arm/mach-ebsa110/
 
 
 SIMTEC EB2410ITX (BAST)
 SIMTEC EB2410ITX (BAST)
 P:	Ben Dooks
 P:	Ben Dooks
@@ -4049,12 +5016,16 @@ P:	Vincent Sanders
 M:	support@simtec.co.uk
 M:	support@simtec.co.uk
 W:	http://www.simtec.co.uk/products/EB2410ITX/
 W:	http://www.simtec.co.uk/products/EB2410ITX/
 S:	Supported
 S:	Supported
+F:	arch/arm/mach-s3c2410/
+F:	drivers/*/*s3c2410*
+F:	drivers/*/*/*s3c2410*
 
 
 SIS 190 ETHERNET DRIVER
 SIS 190 ETHERNET DRIVER
 P:	Francois Romieu
 P:	Francois Romieu
 M:	romieu@fr.zoreil.com
 M:	romieu@fr.zoreil.com
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/sis190.c
 
 
 SIS 900/7016 FAST ETHERNET DRIVER
 SIS 900/7016 FAST ETHERNET DRIVER
 P:	Daniele Venzano
 P:	Daniele Venzano
@@ -4062,30 +5033,39 @@ M:	venza@brownhat.org
 W:	http://www.brownhat.org/sis900.html
 W:	http://www.brownhat.org/sis900.html
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/sis900.*
 
 
 SIS 96X I2C/SMBUS DRIVER
 SIS 96X I2C/SMBUS DRIVER
 P:	Mark M. Hoffman
 P:	Mark M. Hoffman
 M:	mhoffman@lightlink.com
 M:	mhoffman@lightlink.com
 L:	linux-i2c@vger.kernel.org
 L:	linux-i2c@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/i2c/busses/i2c-sis96x
+F:	drivers/i2c/busses/i2c-sis96x.c
 
 
 SIS FRAMEBUFFER DRIVER
 SIS FRAMEBUFFER DRIVER
 P:	Thomas Winischhofer
 P:	Thomas Winischhofer
 M:	thomas@winischhofer.net
 M:	thomas@winischhofer.net
 W:	http://www.winischhofer.net/linuxsisvga.shtml
 W:	http://www.winischhofer.net/linuxsisvga.shtml
 S:	Maintained
 S:	Maintained
+F:	Documentation/fb/sisfb.txt
+F:	drivers/video/sis/
+F:	include/video/sisfb.h
 
 
 SIS USB2VGA DRIVER
 SIS USB2VGA DRIVER
 P:	Thomas Winischhofer
 P:	Thomas Winischhofer
 M:	thomas@winischhofer.net
 M:	thomas@winischhofer.net
 W:	http://www.winischhofer.at/linuxsisusbvga.shtml
 W:	http://www.winischhofer.at/linuxsisusbvga.shtml
 S:	Maintained
 S:	Maintained
+F:	drivers/usb/misc/sisusbvga/
 
 
 SKGE, SKY2 10/100/1000 GIGABIT ETHERNET DRIVERS
 SKGE, SKY2 10/100/1000 GIGABIT ETHERNET DRIVERS
 P:	Stephen Hemminger
 P:	Stephen Hemminger
 M:	shemminger@linux-foundation.org
 M:	shemminger@linux-foundation.org
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/skge.*
+F:	drivers/net/sky2.*
 
 
 SLAB ALLOCATOR
 SLAB ALLOCATOR
 P:	Christoph Lameter
 P:	Christoph Lameter
@@ -4096,34 +5076,43 @@ P:	Matt Mackall
 M:	mpm@selenic.com
 M:	mpm@selenic.com
 L:	linux-mm@kvack.org
 L:	linux-mm@kvack.org
 S:	Maintained
 S:	Maintained
+F:	include/linux/sl?b*.h
+F:	mm/sl?b.c
 
 
 SMC91x ETHERNET DRIVER
 SMC91x ETHERNET DRIVER
 P:	Nicolas Pitre
 P:	Nicolas Pitre
 M:	nico@cam.org
 M:	nico@cam.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/smc91x.*
 
 
 SMSC47B397 HARDWARE MONITOR DRIVER
 SMSC47B397 HARDWARE MONITOR DRIVER
 P:	Mark M. Hoffman
 P:	Mark M. Hoffman
 M:	mhoffman@lightlink.com
 M:	mhoffman@lightlink.com
 L:	lm-sensors@lm-sensors.org
 L:	lm-sensors@lm-sensors.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/hwmon/smsc47b397
+F:	drivers/hwmon/smsc47b397.c
 
 
 SMSC911x ETHERNET DRIVER
 SMSC911x ETHERNET DRIVER
 P:	Steve Glendinning
 P:	Steve Glendinning
 M:	steve.glendinning@smsc.com
 M:	steve.glendinning@smsc.com
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	include/linux/smsc911x.h
+F:	drivers/net/smsc911x.*
 
 
 SMSC9420 PCI ETHERNET DRIVER
 SMSC9420 PCI ETHERNET DRIVER
 P:	Steve Glendinning
 P:	Steve Glendinning
 M:	steve.glendinning@smsc.com
 M:	steve.glendinning@smsc.com
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/net/smsc9420.*
 
 
 SMX UIO Interface
 SMX UIO Interface
 P:	Ben Nizette
 P:	Ben Nizette
 M:	bn@niasdigital.com
 M:	bn@niasdigital.com
 S:	Maintained
 S:	Maintained
+F:	drivers/uio/uio_smx.c
 
 
 SN-IA64 (Itanium) SUB-PLATFORM
 SN-IA64 (Itanium) SUB-PLATFORM
 P:	Jes Sorensen
 P:	Jes Sorensen
@@ -4132,36 +5121,45 @@ L:	linux-altix@sgi.com
 L:	linux-ia64@vger.kernel.org
 L:	linux-ia64@vger.kernel.org
 W:	http://www.sgi.com/altix
 W:	http://www.sgi.com/altix
 S:	Maintained
 S:	Maintained
+F:	arch/ia64/sn/
 
 
 SOC-CAMERA V4L2 SUBSYSTEM
 SOC-CAMERA V4L2 SUBSYSTEM
 P:	Guennadi Liakhovetski
 P:	Guennadi Liakhovetski
 M:	g.liakhovetski@gmx.de
 M:	g.liakhovetski@gmx.de
 L:	linux-media@vger.kernel.org
 L:	linux-media@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
 S:	Maintained
 S:	Maintained
+F:	include/media/v4l2*
+F:	drivers/media/video/v4l2*
 
 
 SOEKRIS NET48XX LED SUPPORT
 SOEKRIS NET48XX LED SUPPORT
 P:	Chris Boot
 P:	Chris Boot
 M:	bootc@bootc.net
 M:	bootc@bootc.net
 S:	Maintained
 S:	Maintained
+F:	drivers/leds/leds-net48xx.c
 
 
 SOFTWARE RAID (Multiple Disks) SUPPORT
 SOFTWARE RAID (Multiple Disks) SUPPORT
 P:	Neil Brown
 P:	Neil Brown
 M:	neilb@suse.de
 M:	neilb@suse.de
 L:	linux-raid@vger.kernel.org
 L:	linux-raid@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/md/
+F:	include/linux/raid/
 
 
 SONIC NETWORK DRIVER
 SONIC NETWORK DRIVER
 P:	Thomas Bogendoerfer
 P:	Thomas Bogendoerfer
 M:	tsbogend@alpha.franken.de
 M:	tsbogend@alpha.franken.de
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/sonic.*
 
 
 SONICS SILICON BACKPLANE DRIVER (SSB)
 SONICS SILICON BACKPLANE DRIVER (SSB)
 P:	Michael Buesch
 P:	Michael Buesch
 M:	mb@bu3sch.de
 M:	mb@bu3sch.de
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/ssb/
+F:	include/linux/ssb/
 
 
 SONY VAIO CONTROL DEVICE DRIVER
 SONY VAIO CONTROL DEVICE DRIVER
 P:	Mattia Dongili
 P:	Mattia Dongili
@@ -4169,6 +5167,10 @@ M:	malattia@linux.it
 L:	linux-acpi@vger.kernel.org
 L:	linux-acpi@vger.kernel.org
 W:	http://www.linux.it/~malattia/wiki/index.php/Sony_drivers
 W:	http://www.linux.it/~malattia/wiki/index.php/Sony_drivers
 S:	Maintained
 S:	Maintained
+F:	Documentation/laptops/sony-laptop.txt
+F:	drivers/char/sonypi.c
+F:	drivers/platform/x86/sony-laptop.c
+F:	include/linux/sony-laptop.h
 
 
 SONY MEMORYSTICK CARD SUPPORT
 SONY MEMORYSTICK CARD SUPPORT
 P:	Alex Dubov
 P:	Alex Dubov
@@ -4176,6 +5178,7 @@ M:	oakad@yahoo.com
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 W:	http://tifmxx.berlios.de/
 W:	http://tifmxx.berlios.de/
 S:	Maintained
 S:	Maintained
+F:	drivers/memstick/host/tifm_ms.c
 
 
 SOUND
 SOUND
 P:	Jaroslav Kysela
 P:	Jaroslav Kysela
@@ -4184,36 +5187,44 @@ P:	Takashi Iwai
 M:	tiwai@suse.de
 M:	tiwai@suse.de
 L:	alsa-devel@alsa-project.org (subscribers-only)
 L:	alsa-devel@alsa-project.org (subscribers-only)
 S:	Maintained
 S:	Maintained
+F:	sound/
 
 
 SOUND - SOC LAYER / DYNAMIC AUDIO POWER MANAGEMENT (ASoC)
 SOUND - SOC LAYER / DYNAMIC AUDIO POWER MANAGEMENT (ASoC)
 P:	Liam Girdwood
 P:	Liam Girdwood
 M:	lrg@slimlogic.co.uk
 M:	lrg@slimlogic.co.uk
 P:	Mark Brown
 P:	Mark Brown
 M:	broonie@opensource.wolfsonmicro.com
 M:	broonie@opensource.wolfsonmicro.com
-T:	git opensource.wolfsonmicro.com/linux-2.6-asoc
+T:	git git://opensource.wolfsonmicro.com/linux-2.6-asoc
 L:	alsa-devel@alsa-project.org (subscribers-only)
 L:	alsa-devel@alsa-project.org (subscribers-only)
 W:	http://alsa-project.org/main/index.php/ASoC
 W:	http://alsa-project.org/main/index.php/ASoC
 S:	Supported
 S:	Supported
+F:	sound/soc/
 
 
 SPARC + UltraSPARC (sparc/sparc64)
 SPARC + UltraSPARC (sparc/sparc64)
 P:	David S. Miller
 P:	David S. Miller
 M:	davem@davemloft.net
 M:	davem@davemloft.net
 L:	sparclinux@vger.kernel.org
 L:	sparclinux@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6.git
-T:	git kernel.org:/pub/scm/linux/kernel/git/davem/sparc-next-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next-2.6.git
 S:	Maintained
 S:	Maintained
+F:	arch/sparc/
 
 
 SPECIALIX IO8+ MULTIPORT SERIAL CARD DRIVER
 SPECIALIX IO8+ MULTIPORT SERIAL CARD DRIVER
 P:	Roger Wolff
 P:	Roger Wolff
 M:	R.E.Wolff@BitWizard.nl
 M:	R.E.Wolff@BitWizard.nl
-L:	linux-kernel@vger.kernel.org ?
+L:	linux-kernel@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	Documentation/serial/specialix.txt
+F:	drivers/char/specialix*
 
 
 SPI SUBSYSTEM
 SPI SUBSYSTEM
 P:	David Brownell
 P:	David Brownell
 M:	dbrownell@users.sourceforge.net
 M:	dbrownell@users.sourceforge.net
 L:	spi-devel-general@lists.sourceforge.net
 L:	spi-devel-general@lists.sourceforge.net
 S:	Maintained
 S:	Maintained
+F:	Documentation/spi/
+F:	drivers/spi/
+F:	include/linux/spi/
 
 
 SPIDERNET NETWORK DRIVER for CELL
 SPIDERNET NETWORK DRIVER for CELL
 P:	Ishizaki Kou
 P:	Ishizaki Kou
@@ -4222,6 +5233,8 @@ P:	Jens Osterkamp
 M:	jens@de.ibm.com
 M:	jens@de.ibm.com
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	Documentation/networking/spider_net.txt
+F:	drivers/net/spider_net*
 
 
 SPU FILE SYSTEM
 SPU FILE SYSTEM
 P:	Jeremy Kerr
 P:	Jeremy Kerr
@@ -4230,6 +5243,8 @@ L:	linuxppc-dev@ozlabs.org
 L:	cbe-oss-dev@ozlabs.org
 L:	cbe-oss-dev@ozlabs.org
 W:	http://www.ibm.com/developerworks/power/cell/
 W:	http://www.ibm.com/developerworks/power/cell/
 S:	Supported
 S:	Supported
+F:	Documentation/filesystems/spufs.txt
+F:	arch/powerpc/platforms/cell/spufs/
 
 
 SQUASHFS FILE SYSTEM
 SQUASHFS FILE SYSTEM
 P:	Phillip Lougher
 P:	Phillip Lougher
@@ -4237,12 +5252,15 @@ M:	phillip@lougher.demon.co.uk
 L:	squashfs-devel@lists.sourceforge.net (subscribers-only)
 L:	squashfs-devel@lists.sourceforge.net (subscribers-only)
 W:	http://squashfs.org.uk
 W:	http://squashfs.org.uk
 S:	Maintained
 S:	Maintained
+F:	Documentation/filesystems/squashfs.txt
+F:	fs/squashfs/
 
 
 SRM (Alpha) environment access
 SRM (Alpha) environment access
 P:	Jan-Benedict Glaw
 P:	Jan-Benedict Glaw
 M:	jbglaw@lug-owl.de
 M:	jbglaw@lug-owl.de
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	arch/alpha/kernel/srm_env.c
 
 
 STABLE BRANCH
 STABLE BRANCH
 P:	Greg Kroah-Hartman
 P:	Greg Kroah-Hartman
@@ -4258,35 +5276,44 @@ M:	gregkh@suse.de
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 T:	quilt kernel.org/pub/linux/kernel/people/gregkh/gregkh-2.6/
 T:	quilt kernel.org/pub/linux/kernel/people/gregkh/gregkh-2.6/
 S:	Maintained
 S:	Maintained
+F:	drivers/staging/
 
 
 STARFIRE/DURALAN NETWORK DRIVER
 STARFIRE/DURALAN NETWORK DRIVER
 P:	Ion Badulescu
 P:	Ion Badulescu
 M:	ionut@cs.columbia.edu
 M:	ionut@cs.columbia.edu
 S:	Maintained
 S:	Maintained
+F:	drivers/net/starfire*
 
 
 STARMODE RADIO IP (STRIP) PROTOCOL DRIVER
 STARMODE RADIO IP (STRIP) PROTOCOL DRIVER
 W:	http://mosquitonet.Stanford.EDU/strip.html
 W:	http://mosquitonet.Stanford.EDU/strip.html
 S:	Orphan
 S:	Orphan
+F:	drivers/net/wireless/strip.c
+F:	include/linux/if_strip.h
 
 
 STRADIS MPEG-2 DECODER DRIVER
 STRADIS MPEG-2 DECODER DRIVER
 P:	Nathan Laredo
 P:	Nathan Laredo
 M:	laredo@gnu.org
 M:	laredo@gnu.org
 W:	http://www.stradis.com/
 W:	http://www.stradis.com/
 S:	Maintained
 S:	Maintained
+F:	drivers/media/video/stradis.c
 
 
 SUN3/3X
 SUN3/3X
 P:	Sam Creasey
 P:	Sam Creasey
 M:	sammy@sammy.net
 M:	sammy@sammy.net
 W:	http://sammy.net/sun3/
 W:	http://sammy.net/sun3/
 S:	Maintained
 S:	Maintained
+F:	arch/m68k/kernel/*sun3*
+F:	arch/m68k/sun3*/
+F:	arch/m68k/include/asm/sun3*
 
 
 SUPERH
 SUPERH
 P:	Paul Mundt
 P:	Paul Mundt
 M:	lethal@linux-sh.org
 M:	lethal@linux-sh.org
 L:	linux-sh@vger.kernel.org
 L:	linux-sh@vger.kernel.org
 W:	http://www.linux-sh.org
 W:	http://www.linux-sh.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6.git
 S:	Supported
 S:	Supported
+F:	arch/sh/
 
 
 SUSPEND TO RAM
 SUSPEND TO RAM
 P:	Len Brown
 P:	Len Brown
@@ -4297,29 +5324,48 @@ P:	Rafael J. Wysocki
 M:	rjw@sisk.pl
 M:	rjw@sisk.pl
 L:	linux-pm@lists.linux-foundation.org
 L:	linux-pm@lists.linux-foundation.org
 S:	Supported
 S:	Supported
+F:	Documentation/power/
+F:	arch/x86/kernel/acpi/
+F:	drivers/base/power/
+F:	kernel/power/
+F:	include/linux/suspend.h
+F:	include/linux/freezer.h
+F:	include/linux/pm.h
+F:	include/asm-*/suspend.h
 
 
 SVGA HANDLING
 SVGA HANDLING
 P:	Martin Mares
 P:	Martin Mares
 M:	mj@ucw.cz
 M:	mj@ucw.cz
 L:	linux-video@atrey.karlin.mff.cuni.cz
 L:	linux-video@atrey.karlin.mff.cuni.cz
 S:	Maintained
 S:	Maintained
+F:	Documentation/svga.txt
+F:	arch/x86/boot/video*
 
 
 SYSV FILESYSTEM
 SYSV FILESYSTEM
 P:	Christoph Hellwig
 P:	Christoph Hellwig
 M:	hch@infradead.org
 M:	hch@infradead.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/filesystems/sysv-fs.txt
+F:	fs/sysv/
+F:	include/linux/sysv_fs.h
 
 
 TASKSTATS STATISTICS INTERFACE
 TASKSTATS STATISTICS INTERFACE
 P:	Balbir Singh
 P:	Balbir Singh
 M:	balbir@linux.vnet.ibm.com
 M:	balbir@linux.vnet.ibm.com
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/accounting/taskstats*
+F:	include/linux/taskstats*
+F:	kernel/taskstats.c
 
 
 TC CLASSIFIER
 TC CLASSIFIER
 P:	Jamal Hadi Salim
 P:	Jamal Hadi Salim
 M:	hadi@cyberus.ca
 M:	hadi@cyberus.ca
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	include/linux/pkt_cls.h
+F:	include/net/pkt_cls.h
+F:	net/sched/
 
 
 TCP LOW PRIORITY MODULE
 TCP LOW PRIORITY MODULE
 P:	Wong Hoi Sing, Edison
 P:	Wong Hoi Sing, Edison
@@ -4328,6 +5374,7 @@ P:	Hung Hing Lun, Mike
 M:	hlhung3i@gmail.com
 M:	hlhung3i@gmail.com
 W:	http://tcp-lp-mod.sourceforge.net/
 W:	http://tcp-lp-mod.sourceforge.net/
 S:	Maintained
 S:	Maintained
+F:	net/ipv4/tcp_lp.c
 
 
 TEHUTI ETHERNET DRIVER
 TEHUTI ETHERNET DRIVER
 P:	Alexander Indenbaum
 P:	Alexander Indenbaum
@@ -4336,16 +5383,19 @@ P:	Andy Gospodarek
 M:	andy@greyhouse.net
 M:	andy@greyhouse.net
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/net/tehuti*
 
 
 Telecom Clock Driver for MCPL0010
 Telecom Clock Driver for MCPL0010
 P:	Mark Gross
 P:	Mark Gross
 M:	mark.gross@intel.com
 M:	mark.gross@intel.com
 S:	Supported
 S:	Supported
+F:	drivers/char/tlclk.c
 
 
 TENSILICA XTENSA PORT (xtensa)
 TENSILICA XTENSA PORT (xtensa)
 P:	Chris Zankel
 P:	Chris Zankel
 M:	chris@zankel.net
 M:	chris@zankel.net
 S:	Maintained
 S:	Maintained
+F:	arch/xtensa/
 
 
 THINKPAD ACPI EXTRAS DRIVER
 THINKPAD ACPI EXTRAS DRIVER
 P:	Henrique de Moraes Holschuh
 P:	Henrique de Moraes Holschuh
@@ -4353,13 +5403,17 @@ M:	ibm-acpi@hmh.eng.br
 L:	ibm-acpi-devel@lists.sourceforge.net
 L:	ibm-acpi-devel@lists.sourceforge.net
 W:	http://ibm-acpi.sourceforge.net
 W:	http://ibm-acpi.sourceforge.net
 W:	http://thinkwiki.org/wiki/Ibm-acpi
 W:	http://thinkwiki.org/wiki/Ibm-acpi
-T:	git repo.or.cz/linux-2.6/linux-acpi-2.6/ibm-acpi-2.6.git
+T:	git git://repo.or.cz/linux-2.6/linux-acpi-2.6/ibm-acpi-2.6.git
 S:	Maintained
 S:	Maintained
+F:	drivers/platform/x86/thinkpad_acpi.c
 
 
 TI FLASH MEDIA INTERFACE DRIVER
 TI FLASH MEDIA INTERFACE DRIVER
 P:	Alex Dubov
 P:	Alex Dubov
 M:	oakad@yahoo.com
 M:	oakad@yahoo.com
 S:	Maintained
 S:	Maintained
+F:	drivers/misc/tifm*
+F:	drivers/mmc/host/tifm_sd.c
+F:	include/linux/tifm.h
 
 
 TI OMAP MMC INTERFACE DRIVER
 TI OMAP MMC INTERFACE DRIVER
 P:	Carlos Aguiar, Anderson Briglia and Syed Khasim
 P:	Carlos Aguiar, Anderson Briglia and Syed Khasim
@@ -4367,11 +5421,13 @@ M:	linux-omap@vger.kernel.org
 W:	http://linux.omap.com
 W:	http://linux.omap.com
 W:	http://www.muru.com/linux/omap/
 W:	http://www.muru.com/linux/omap/
 S:	Maintained
 S:	Maintained
+F:	drivers/mmc/host/omap.c
 
 
 TI OMAP RANDOM NUMBER GENERATOR SUPPORT
 TI OMAP RANDOM NUMBER GENERATOR SUPPORT
 P:	Deepak Saxena
 P:	Deepak Saxena
 M:	dsaxena@plexity.net
 M:	dsaxena@plexity.net
 S:	Maintained
 S:	Maintained
+F:	drivers/char/hw_random/omap-rng.c
 
 
 TIPC NETWORK LAYER
 TIPC NETWORK LAYER
 P:	Per Liden
 P:	Per Liden
@@ -4383,8 +5439,11 @@ M:	allan.stephens@windriver.com
 L:	tipc-discussion@lists.sourceforge.net
 L:	tipc-discussion@lists.sourceforge.net
 W:	http://tipc.sourceforge.net/
 W:	http://tipc.sourceforge.net/
 W:	http://tipc.cslab.ericsson.net/
 W:	http://tipc.cslab.ericsson.net/
-T:	git tipc.cslab.ericsson.net:/pub/git/tipc.git
+T:	git git://tipc.cslab.ericsson.net/pub/git/tipc.git
 S:	Maintained
 S:	Maintained
+F:	include/linux/tipc*.h
+F:	include/net/tipc/
+F:	net/tipc/
 
 
 TLAN NETWORK DRIVER
 TLAN NETWORK DRIVER
 P:	Samuel Chessman
 P:	Samuel Chessman
@@ -4392,6 +5451,8 @@ M:	chessman@tux.org
 L:	tlan-devel@lists.sourceforge.net (subscribers-only)
 L:	tlan-devel@lists.sourceforge.net (subscribers-only)
 W:	http://sourceforge.net/projects/tlan/
 W:	http://sourceforge.net/projects/tlan/
 S:	Maintained
 S:	Maintained
+F:	Documentation/networking/tlan.txt
+F:	drivers/net/tlan.*
 
 
 TOMOYO SECURITY MODULE
 TOMOYO SECURITY MODULE
 P:	Kentaro Takeda
 P:	Kentaro Takeda
@@ -4405,9 +5466,11 @@ L:	tomoyo-users@lists.sourceforge.jp (subscribers-only, for users in Japanese)
 W:	http://tomoyo.sourceforge.jp/
 W:	http://tomoyo.sourceforge.jp/
 T:	quilt http://svn.sourceforge.jp/svnroot/tomoyo/trunk/2.2.x/tomoyo-lsm/patches/
 T:	quilt http://svn.sourceforge.jp/svnroot/tomoyo/trunk/2.2.x/tomoyo-lsm/patches/
 S:	Maintained
 S:	Maintained
+F:	security/tomoyo/
 
 
 TOSHIBA ACPI EXTRAS DRIVER
 TOSHIBA ACPI EXTRAS DRIVER
 S:	Orphan
 S:	Orphan
+F:	drivers/platform/x86/toshiba_acpi.c
 
 
 TOSHIBA SMM DRIVER
 TOSHIBA SMM DRIVER
 P:	Jonathan Buzzard
 P:	Jonathan Buzzard
@@ -4415,11 +5478,14 @@ M:	jonathan@buzzard.org.uk
 L:	tlinux-users@tce.toshiba-dme.co.jp
 L:	tlinux-users@tce.toshiba-dme.co.jp
 W:	http://www.buzzard.org.uk/toshiba/
 W:	http://www.buzzard.org.uk/toshiba/
 S:	Maintained
 S:	Maintained
+F:	drivers/char/toshiba.c
+F:	include/linux/toshiba.h
 
 
 TMIO MMC DRIVER
 TMIO MMC DRIVER
 P:	Ian Molton
 P:	Ian Molton
 M:	ian@mnementh.co.uk
 M:	ian@mnementh.co.uk
 S:	Maintained
 S:	Maintained
+F:	drivers/mmc/host/tmio_mmc.*
 
 
 TPM DEVICE DRIVER
 TPM DEVICE DRIVER
 P:	Debora Velarde
 P:	Debora Velarde
@@ -4432,12 +5498,13 @@ M:	m.selhorst@sirrix.com
 W:	http://www.sirrix.com
 W:	http://www.sirrix.com
 L:	tpmdd-devel@lists.sourceforge.net (moderated for non-subscribers)
 L:	tpmdd-devel@lists.sourceforge.net (moderated for non-subscribers)
 S:	Maintained
 S:	Maintained
+F:	drivers/char/tpm/
 
 
 TRIVIAL PATCHES
 TRIVIAL PATCHES
 P:	Jiri Kosina
 P:	Jiri Kosina
 M:	trivial@kernel.org
 M:	trivial@kernel.org
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/jikos/trivial.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial.git
 S:	Maintained
 S:	Maintained
 
 
 TTY LAYER
 TTY LAYER
@@ -4453,6 +5520,7 @@ P:	Kyle McMartin
 M:	kyle@mcmartin.ca
 M:	kyle@mcmartin.ca
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/tulip/
 
 
 TUN/TAP driver
 TUN/TAP driver
 P:	Maxim Krasnyansky
 P:	Maxim Krasnyansky
@@ -4460,17 +5528,22 @@ M:	maxk@qualcomm.com
 L:	vtun@office.satix.net
 L:	vtun@office.satix.net
 W:	http://vtun.sourceforge.net/tun
 W:	http://vtun.sourceforge.net/tun
 S:	Maintained
 S:	Maintained
+F:	Documentation/networking/tuntap.txt
+F:	arch/um/os-Linux/drivers/
 
 
 TURBOCHANNEL SUBSYSTEM
 TURBOCHANNEL SUBSYSTEM
 P:	Maciej W. Rozycki
 P:	Maciej W. Rozycki
 M:	macro@linux-mips.org
 M:	macro@linux-mips.org
 S:	Maintained
 S:	Maintained
+F:	drivers/tc/
+F:	include/linux/tc.h
 
 
 U14-34F SCSI DRIVER
 U14-34F SCSI DRIVER
 P:	Dario Ballabio
 P:	Dario Ballabio
 M:	ballabio_dario@emc.com
 M:	ballabio_dario@emc.com
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/scsi/u14-34f.c
 
 
 UBI FILE SYSTEM (UBIFS)
 UBI FILE SYSTEM (UBIFS)
 P:	Artem Bityutskiy
 P:	Artem Bityutskiy
@@ -4481,6 +5554,8 @@ L:	linux-mtd@lists.infradead.org
 T:	git git://git.infradead.org/ubifs-2.6.git
 T:	git git://git.infradead.org/ubifs-2.6.git
 W:	http://www.linux-mtd.infradead.org/doc/ubifs.html
 W:	http://www.linux-mtd.infradead.org/doc/ubifs.html
 S:	Maintained
 S:	Maintained
+F:	Documentation/filesystems/ubifs.txt
+F:	fs/ubifs/
 
 
 UCLINUX (AND M68KNOMMU)
 UCLINUX (AND M68KNOMMU)
 P:	Greg Ungerer
 P:	Greg Ungerer
@@ -4488,6 +5563,7 @@ M:	gerg@uclinux.org
 W:	http://www.uclinux.org/
 W:	http://www.uclinux.org/
 L:	uclinux-dev@uclinux.org  (subscribers-only)
 L:	uclinux-dev@uclinux.org  (subscribers-only)
 S:	Maintained
 S:	Maintained
+F:	arch/m68knommu/
 
 
 UCLINUX FOR RENESAS H8/300
 UCLINUX FOR RENESAS H8/300
 P:	Yoshinori Sato
 P:	Yoshinori Sato
@@ -4500,18 +5576,25 @@ P:	Jan Kara
 M:	jack@suse.cz
 M:	jack@suse.cz
 W:	http://linux-udf.sourceforge.net
 W:	http://linux-udf.sourceforge.net
 S:	Maintained
 S:	Maintained
+F:	Documentation/filesystems/udf.txt
+F:	fs/udf/
 
 
 UFS FILESYSTEM
 UFS FILESYSTEM
 P:	Evgeniy Dushistov
 P:	Evgeniy Dushistov
 M:	dushistov@mail.ru
 M:	dushistov@mail.ru
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/filesystems/ufs.txt
+F:	fs/ufs/
 
 
 ULTRA-WIDEBAND (UWB) SUBSYSTEM:
 ULTRA-WIDEBAND (UWB) SUBSYSTEM:
 P:	David Vrabel
 P:	David Vrabel
 M:	david.vrabel@csr.com
 M:	david.vrabel@csr.com
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/uwb/*
+F:	include/linux/uwb.h
+F:	include/linux/uwb/
 
 
 UNIFORM CDROM DRIVER
 UNIFORM CDROM DRIVER
 P:	Jens Axboe
 P:	Jens Axboe
@@ -4519,6 +5602,9 @@ M:	axboe@kernel.dk
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 W:	http://www.kernel.dk
 W:	http://www.kernel.dk
 S:	Maintained
 S:	Maintained
+F:	Documentation/cdrom/
+F:	drivers/cdrom/cdrom.c
+F:	include/linux/cdrom.h
 
 
 UNSORTED BLOCK IMAGES (UBI)
 UNSORTED BLOCK IMAGES (UBI)
 P:	Artem Bityutskiy
 P:	Artem Bityutskiy
@@ -4527,12 +5613,17 @@ W:	http://www.linux-mtd.infradead.org/
 L:	linux-mtd@lists.infradead.org
 L:	linux-mtd@lists.infradead.org
 T:	git git://git.infradead.org/ubi-2.6.git
 T:	git git://git.infradead.org/ubi-2.6.git
 S:	Maintained
 S:	Maintained
+F:	drivers/mtd/ubi/
+F:	include/linux/mtd/ubi.h
+F:	include/mtd/ubi-user.h
 
 
 USB ACM DRIVER
 USB ACM DRIVER
 P:	Oliver Neukum
 P:	Oliver Neukum
 M:	oliver@neukum.name
 M:	oliver@neukum.name
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/usb/acm.txt
+F:	drivers/usb/class/cdc-acm.*
 
 
 USB BLOCK DRIVER (UB ub)
 USB BLOCK DRIVER (UB ub)
 P:	Pete Zaitcev
 P:	Pete Zaitcev
@@ -4540,6 +5631,7 @@ M:	zaitcev@redhat.com
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/block/ub.c
 
 
 USB CDC ETHERNET DRIVER
 USB CDC ETHERNET DRIVER
 P:	Greg Kroah-Hartman
 P:	Greg Kroah-Hartman
@@ -4547,12 +5639,15 @@ M:	greg@kroah.com
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 S:	Maintained
 S:	Maintained
 W:	http://www.kroah.com/linux-usb/
 W:	http://www.kroah.com/linux-usb/
+F:	drivers/net/usb/cdc_*.c
+F:	include/linux/usb/cdc.h
 
 
 USB CYPRESS C67X00 DRIVER
 USB CYPRESS C67X00 DRIVER
 P:	Peter Korsgaard
 P:	Peter Korsgaard
 M:	jacmet@sunsite.dk
 M:	jacmet@sunsite.dk
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/usb/c67x00/
 
 
 USB DAVICOM DM9601 DRIVER
 USB DAVICOM DM9601 DRIVER
 P:	Peter Korsgaard
 P:	Peter Korsgaard
@@ -4560,6 +5655,7 @@ M:	jacmet@sunsite.dk
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 W:	http://www.linux-usb.org/usbnet
 W:	http://www.linux-usb.org/usbnet
 S:	Maintained
 S:	Maintained
+F:	drivers/net/usb/dm9601.c
 
 
 USB DIAMOND RIO500 DRIVER
 USB DIAMOND RIO500 DRIVER
 P:	Cesar Miquel
 P:	Cesar Miquel
@@ -4567,21 +5663,25 @@ M:	miquel@df.uba.ar
 L:	rio500-users@lists.sourceforge.net
 L:	rio500-users@lists.sourceforge.net
 W:	http://rio500.sourceforge.net
 W:	http://rio500.sourceforge.net
 S:	Maintained
 S:	Maintained
+F:	drivers/usb/misc/rio500*
 
 
 USB EHCI DRIVER
 USB EHCI DRIVER
 P:	David Brownell
 P:	David Brownell
 M:	dbrownell@users.sourceforge.net
 M:	dbrownell@users.sourceforge.net
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 S:	Odd Fixes
 S:	Odd Fixes
+F:	Documentation/usb/ehci.txt
+F:	drivers/usb/host/ehci*
 
 
 USB ET61X[12]51 DRIVER
 USB ET61X[12]51 DRIVER
 P:	Luca Risolia
 P:	Luca Risolia
 M:	luca.risolia@studio.unibo.it
 M:	luca.risolia@studio.unibo.it
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 L:	linux-media@vger.kernel.org
 L:	linux-media@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
 W:	http://www.linux-projects.org
 W:	http://www.linux-projects.org
 S:	Maintained
 S:	Maintained
+F:	drivers/media/video/et61x251/
 
 
 USB GADGET/PERIPHERAL SUBSYSTEM
 USB GADGET/PERIPHERAL SUBSYSTEM
 P:	David Brownell
 P:	David Brownell
@@ -4589,25 +5689,32 @@ M:	dbrownell@users.sourceforge.net
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 W:	http://www.linux-usb.org/gadget
 W:	http://www.linux-usb.org/gadget
 S:	Maintained
 S:	Maintained
+F:	drivers/usb/gadget/
+F:	include/linux/usb/gadget*
 
 
 USB HID/HIDBP DRIVERS (USB KEYBOARDS, MICE, REMOTE CONTROLS, ...)
 USB HID/HIDBP DRIVERS (USB KEYBOARDS, MICE, REMOTE CONTROLS, ...)
 P:	Jiri Kosina
 P:	Jiri Kosina
 M:	jkosina@suse.cz
 M:	jkosina@suse.cz
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/jikos/hid.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid.git
 S:	Maintained
 S:	Maintained
+F:	Documentation/usb/hiddev.txt
+F:	drivers/hid/usbhid/
 
 
 USB ISP116X DRIVER
 USB ISP116X DRIVER
 P:	Olav Kongas
 P:	Olav Kongas
 M:	ok@artecdesign.ee
 M:	ok@artecdesign.ee
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/usb/host/isp116x*
+F:	include/linux/usb/isp116x.h
 
 
 USB KAWASAKI LSI DRIVER
 USB KAWASAKI LSI DRIVER
 P:	Oliver Neukum
 P:	Oliver Neukum
 M:	oliver@neukum.name
 M:	oliver@neukum.name
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/usb/serial/kl5kusb105.*
 
 
 USB MASS STORAGE DRIVER
 USB MASS STORAGE DRIVER
 P:	Matthew Dharm
 P:	Matthew Dharm
@@ -4616,18 +5723,22 @@ L:	linux-usb@vger.kernel.org
 L:	usb-storage@lists.one-eyed-alien.net
 L:	usb-storage@lists.one-eyed-alien.net
 S:	Maintained
 S:	Maintained
 W:	http://www.one-eyed-alien.net/~mdharm/linux-usb/
 W:	http://www.one-eyed-alien.net/~mdharm/linux-usb/
+F:	drivers/usb/storage/
 
 
 USB OHCI DRIVER
 USB OHCI DRIVER
 P:	David Brownell
 P:	David Brownell
 M:	dbrownell@users.sourceforge.net
 M:	dbrownell@users.sourceforge.net
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 S:	Odd Fixes
 S:	Odd Fixes
+F:	Documentation/usb/ohci.txt
+F:	drivers/usb/host/ohci*
 
 
 USB OPTION-CARD DRIVER
 USB OPTION-CARD DRIVER
 P:	Matthias Urlichs
 P:	Matthias Urlichs
 M:	smurf@smurf.noris.de
 M:	smurf@smurf.noris.de
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/usb/serial/option.c
 
 
 USB OV511 DRIVER
 USB OV511 DRIVER
 P:	Mark McClelland
 P:	Mark McClelland
@@ -4635,6 +5746,7 @@ M:	mmcclell@bigfoot.com
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 W:	http://alpha.dyndns.org/ov511/
 W:	http://alpha.dyndns.org/ov511/
 S:	Maintained
 S:	Maintained
+F:	drivers/media/video/ov511.*
 
 
 USB PEGASUS DRIVER
 USB PEGASUS DRIVER
 P:	Petko Manolov
 P:	Petko Manolov
@@ -4643,12 +5755,14 @@ L:	linux-usb@vger.kernel.org
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 W:	http://pegasus2.sourceforge.net/
 W:	http://pegasus2.sourceforge.net/
 S:	Maintained
 S:	Maintained
+F:	drivers/net/usb/pegasus.*
 
 
 USB PRINTER DRIVER (usblp)
 USB PRINTER DRIVER (usblp)
 P:	Pete Zaitcev
 P:	Pete Zaitcev
 M:	zaitcev@redhat.com
 M:	zaitcev@redhat.com
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/usb/class/usblp.c
 
 
 USB RTL8150 DRIVER
 USB RTL8150 DRIVER
 P:	Petko Manolov
 P:	Petko Manolov
@@ -4657,6 +5771,7 @@ L:	linux-usb@vger.kernel.org
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 W:	http://pegasus2.sourceforge.net/
 W:	http://pegasus2.sourceforge.net/
 S:	Maintained
 S:	Maintained
+F:	drivers/net/usb/rtl8150.c
 
 
 USB SE401 DRIVER
 USB SE401 DRIVER
 P:	Jeroen Vreeken
 P:	Jeroen Vreeken
@@ -4664,12 +5779,15 @@ M:	pe1rxq@amsat.org
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 W:	http://www.chello.nl/~j.vreeken/se401/
 W:	http://www.chello.nl/~j.vreeken/se401/
 S:	Maintained
 S:	Maintained
+F:	Documentation/video4linux/se401.txt
+F:	drivers/media/video/se401.*
 
 
 USB SERIAL BELKIN F5U103 DRIVER
 USB SERIAL BELKIN F5U103 DRIVER
 P:	William Greathouse
 P:	William Greathouse
 M:	wgreathouse@smva.com
 M:	wgreathouse@smva.com
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/usb/serial/belkin_sa.*
 
 
 USB SERIAL CYPRESS M8 DRIVER
 USB SERIAL CYPRESS M8 DRIVER
 P:	Lonnie Mendez
 P:	Lonnie Mendez
@@ -4678,12 +5796,14 @@ L:	linux-usb@vger.kernel.org
 S:	Maintained
 S:	Maintained
 W:	http://geocities.com/i0xox0i
 W:	http://geocities.com/i0xox0i
 W:	http://firstlight.net/cvs
 W:	http://firstlight.net/cvs
+F:	drivers/usb/serial/cypress_m8.*
 
 
 USB SERIAL CYBERJACK DRIVER
 USB SERIAL CYBERJACK DRIVER
 P:	Matthias Bruestle and Harald Welte
 P:	Matthias Bruestle and Harald Welte
 M:	support@reiner-sct.com
 M:	support@reiner-sct.com
 W:	http://www.reiner-sct.de/support/treiber_cyberjack.php
 W:	http://www.reiner-sct.de/support/treiber_cyberjack.php
 S:	Maintained
 S:	Maintained
+F:	drivers/usb/serial/cyberjack.c
 
 
 USB SERIAL DIGI ACCELEPORT DRIVER
 USB SERIAL DIGI ACCELEPORT DRIVER
 P:	Peter Berger and Al Borchers
 P:	Peter Berger and Al Borchers
@@ -4691,18 +5811,24 @@ M:	pberger@brimson.com
 M:	alborchers@steinerpoint.com
 M:	alborchers@steinerpoint.com
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/usb/serial/digi_acceleport.c
 
 
 USB SERIAL DRIVER
 USB SERIAL DRIVER
 P:	Greg Kroah-Hartman
 P:	Greg Kroah-Hartman
 M:	gregkh@suse.de
 M:	gregkh@suse.de
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	Documentation/usb/usb-serial.txt
+F:	drivers/usb/serial/generic.c
+F:	drivers/usb/serial/usb-serial.c
+F:	include/linux/usb/serial.h
 
 
 USB SERIAL EMPEG EMPEG-CAR MARK I/II DRIVER
 USB SERIAL EMPEG EMPEG-CAR MARK I/II DRIVER
 P:	Gary Brubaker
 P:	Gary Brubaker
 M:	xavyer@ix.netcom.com
 M:	xavyer@ix.netcom.com
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/usb/serial/empeg.c
 
 
 USB SERIAL KEYSPAN DRIVER
 USB SERIAL KEYSPAN DRIVER
 P:	Greg Kroah-Hartman
 P:	Greg Kroah-Hartman
@@ -4710,6 +5836,7 @@ M:	greg@kroah.com
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 W:	http://www.kroah.com/linux/
 W:	http://www.kroah.com/linux/
 S:	Maintained
 S:	Maintained
+F:	drivers/usb/serial/*keyspan*
 
 
 USB SERIAL WHITEHEAT DRIVER
 USB SERIAL WHITEHEAT DRIVER
 P:	Support Department
 P:	Support Department
@@ -4717,21 +5844,25 @@ M:	support@connecttech.com
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 W:	http://www.connecttech.com
 W:	http://www.connecttech.com
 S:	Supported
 S:	Supported
+F:	drivers/usb/serial/whiteheat*
 
 
 USB SMSC95XX ETHERNET DRIVER
 USB SMSC95XX ETHERNET DRIVER
 P:	Steve Glendinning
 P:	Steve Glendinning
 M:	steve.glendinning@smsc.com
 M:	steve.glendinning@smsc.com
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Supported
 S:	Supported
+F:	drivers/net/usb/smsc95xx.*
 
 
 USB SN9C1xx DRIVER
 USB SN9C1xx DRIVER
 P:	Luca Risolia
 P:	Luca Risolia
 M:	luca.risolia@studio.unibo.it
 M:	luca.risolia@studio.unibo.it
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 L:	linux-media@vger.kernel.org
 L:	linux-media@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
 W:	http://www.linux-projects.org
 W:	http://www.linux-projects.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/video4linux/sn9c102.txt
+F:	drivers/media/video/sn9c102/
 
 
 USB SUBSYSTEM
 USB SUBSYSTEM
 P:	Greg Kroah-Hartman
 P:	Greg Kroah-Hartman
@@ -4740,12 +5871,18 @@ L:	linux-usb@vger.kernel.org
 W:	http://www.linux-usb.org
 W:	http://www.linux-usb.org
 T:	quilt kernel.org/pub/linux/kernel/people/gregkh/gregkh-2.6/
 T:	quilt kernel.org/pub/linux/kernel/people/gregkh/gregkh-2.6/
 S:	Supported
 S:	Supported
+F:	Documentation/usb/
+F:	drivers/net/usb/
+F:	drivers/usb/
+F:	include/linux/usb.h
+F:	include/linux/usb/
 
 
 USB UHCI DRIVER
 USB UHCI DRIVER
 P:	Alan Stern
 P:	Alan Stern
 M:	stern@rowland.harvard.edu
 M:	stern@rowland.harvard.edu
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/usb/host/uhci*
 
 
 USB "USBNET" DRIVER FRAMEWORK
 USB "USBNET" DRIVER FRAMEWORK
 P:	David Brownell
 P:	David Brownell
@@ -4753,39 +5890,47 @@ M:	dbrownell@users.sourceforge.net
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 W:	http://www.linux-usb.org/usbnet
 W:	http://www.linux-usb.org/usbnet
 S:	Maintained
 S:	Maintained
+F:	drivers/net/usb/usbnet.c
+F:	include/linux/usb/usbnet.h
 
 
 USB VIDEO CLASS
 USB VIDEO CLASS
 P:	Laurent Pinchart
 P:	Laurent Pinchart
 M:	laurent.pinchart@skynet.be
 M:	laurent.pinchart@skynet.be
 L:	linux-uvc-devel@lists.berlios.de (subscribers-only)
 L:	linux-uvc-devel@lists.berlios.de (subscribers-only)
 L:	linux-media@vger.kernel.org
 L:	linux-media@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
 W:	http://linux-uvc.berlios.de
 W:	http://linux-uvc.berlios.de
 S:	Maintained
 S:	Maintained
+F:	drivers/media/video/uvc/
 
 
 USB W996[87]CF DRIVER
 USB W996[87]CF DRIVER
 P:	Luca Risolia
 P:	Luca Risolia
 M:	luca.risolia@studio.unibo.it
 M:	luca.risolia@studio.unibo.it
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 L:	linux-media@vger.kernel.org
 L:	linux-media@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
 W:	http://www.linux-projects.org
 W:	http://www.linux-projects.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/video4linux/w9968cf.txt
+F:	drivers/media/video/w996*
 
 
 USB WIRELESS RNDIS DRIVER (rndis_wlan)
 USB WIRELESS RNDIS DRIVER (rndis_wlan)
 P:	Jussi Kivilinna
 P:	Jussi Kivilinna
 M:	jussi.kivilinna@mbnet.fi
 M:	jussi.kivilinna@mbnet.fi
 L:	linux-wireless@vger.kernel.org
 L:	linux-wireless@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/wireless/rndis_wlan.c
 
 
 USB ZC0301 DRIVER
 USB ZC0301 DRIVER
 P:	Luca Risolia
 P:	Luca Risolia
 M:	luca.risolia@studio.unibo.it
 M:	luca.risolia@studio.unibo.it
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 L:	linux-media@vger.kernel.org
 L:	linux-media@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
 W:	http://www.linux-projects.org
 W:	http://www.linux-projects.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/video4linux/zc0301.txt
+F:	drivers/media/video/zc0301/
 
 
 USB ZD1201 DRIVER
 USB ZD1201 DRIVER
 P:	Jeroen Vreeken
 P:	Jeroen Vreeken
@@ -4793,15 +5938,18 @@ M:	pe1rxq@amsat.org
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 W:	http://linux-lc100020.sourceforge.net
 W:	http://linux-lc100020.sourceforge.net
 S:	Maintained
 S:	Maintained
+F:	drivers/net/wireless/zd1201.*
 
 
 USB ZR364XX DRIVER
 USB ZR364XX DRIVER
 P:	Antoine Jacquet
 P:	Antoine Jacquet
 M:	royale@zerezo.com
 M:	royale@zerezo.com
 L:	linux-usb@vger.kernel.org
 L:	linux-usb@vger.kernel.org
 L:	linux-media@vger.kernel.org
 L:	linux-media@vger.kernel.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
 W:	http://royale.zerezo.com/zr364xx/
 W:	http://royale.zerezo.com/zr364xx/
 S:	Maintained
 S:	Maintained
+F:	Documentation/video4linux/zr364xx.txt
+F:	drivers/media/video/zr364xx.c
 
 
 USER-MODE LINUX (UML)
 USER-MODE LINUX (UML)
 P:	Jeff Dike
 P:	Jeff Dike
@@ -4810,6 +5958,10 @@ L:	user-mode-linux-devel@lists.sourceforge.net
 L:	user-mode-linux-user@lists.sourceforge.net
 L:	user-mode-linux-user@lists.sourceforge.net
 W:	http://user-mode-linux.sourceforge.net
 W:	http://user-mode-linux.sourceforge.net
 S:	Maintained
 S:	Maintained
+F:	Documentation/uml/
+F:	arch/um/
+F:	fs/hostfs/
+F:	fs/hppfs/
 
 
 USERSPACE I/O (UIO)
 USERSPACE I/O (UIO)
 P:	Hans J. Koch
 P:	Hans J. Koch
@@ -4818,13 +5970,16 @@ P:	Greg Kroah-Hartman
 M:	gregkh@suse.de
 M:	gregkh@suse.de
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/DocBook/uio-howto.tmpl
+F:	drivers/uio/
+F:	include/linux/uio*.h
 
 
 UTIL-LINUX-NG PACKAGE
 UTIL-LINUX-NG PACKAGE
 P:	Karel Zak
 P:	Karel Zak
 M:	kzak@redhat.com
 M:	kzak@redhat.com
 L:	util-linux-ng@vger.kernel.org
 L:	util-linux-ng@vger.kernel.org
 W:	http://kernel.org/~kzak/util-linux-ng/
 W:	http://kernel.org/~kzak/util-linux-ng/
-T:	git://git.kernel.org/pub/scm/utils/util-linux-ng/util-linux-ng.git
+T:	git git://git.kernel.org/pub/scm/utils/util-linux-ng/util-linux-ng.git
 S:	Maintained
 S:	Maintained
 
 
 UVESAFB DRIVER
 UVESAFB DRIVER
@@ -4833,23 +5988,30 @@ M:	spock@gentoo.org
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 W:	http://dev.gentoo.org/~spock/projects/uvesafb/
 W:	http://dev.gentoo.org/~spock/projects/uvesafb/
 S:	Maintained
 S:	Maintained
+F:	Documentation/fb/uvesafb.txt
+F:	drivers/video/uvesafb.*
 
 
 VFAT/FAT/MSDOS FILESYSTEM
 VFAT/FAT/MSDOS FILESYSTEM
 P:	OGAWA Hirofumi
 P:	OGAWA Hirofumi
 M:	hirofumi@mail.parknet.co.jp
 M:	hirofumi@mail.parknet.co.jp
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/filesystems/vfat.txt
+F:	fs/fat/
 
 
 VIA RHINE NETWORK DRIVER
 VIA RHINE NETWORK DRIVER
 P:	Roger Luethi
 P:	Roger Luethi
 M:	rl@hellgate.ch
 M:	rl@hellgate.ch
 S:	Maintained
 S:	Maintained
+F:	drivers/net/via-rhine.c
 
 
 VIAPRO SMBUS DRIVER
 VIAPRO SMBUS DRIVER
 P:	Jean Delvare
 P:	Jean Delvare
 M:	khali@linux-fr.org
 M:	khali@linux-fr.org
 L:	linux-i2c@vger.kernel.org
 L:	linux-i2c@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/i2c/busses/i2c-viapro
+F:	drivers/i2c/busses/i2c-viapro.c
 
 
 VIA UNICHROME(PRO)/CHROME9 FRAMEBUFFER DRIVER
 VIA UNICHROME(PRO)/CHROME9 FRAMEBUFFER DRIVER
 P:	Joseph Chan
 P:	Joseph Chan
@@ -4858,26 +6020,23 @@ P:	Scott Fang
 M:	ScottFang@viatech.com.cn
 M:	ScottFang@viatech.com.cn
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 L:	linux-fbdev-devel@lists.sourceforge.net (moderated for non-subscribers)
 S:	Maintained
 S:	Maintained
+F:	drivers/video/via/
 
 
 VIA VELOCITY NETWORK DRIVER
 VIA VELOCITY NETWORK DRIVER
 P:	Francois Romieu
 P:	Francois Romieu
 M:	romieu@fr.zoreil.com
 M:	romieu@fr.zoreil.com
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
-
-VIDEO FOR LINUX (V4L)
-P:	Mauro Carvalho Chehab
-M:	mchehab@infradead.org
-L:	linux-media@vger.kernel.org
-W:	http://linuxtv.org
-T:	git kernel.org:/pub/scm/linux/kernel/git/mchehab/linux-2.6.git
-S:	Maintained
+F:	drivers/net/via-velocity.*
 
 
 VLAN (802.1Q)
 VLAN (802.1Q)
 P:	Patrick McHardy
 P:	Patrick McHardy
 M:	kaber@trash.net
 M:	kaber@trash.net
 L:	netdev@vger.kernel.org
 L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/macvlan.c
+F:	include/linux/if_*vlan.h
+F:	net/8021q/
 
 
 VOLTAGE AND CURRENT REGULATOR FRAMEWORK
 VOLTAGE AND CURRENT REGULATOR FRAMEWORK
 P:	Liam Girdwood
 P:	Liam Girdwood
@@ -4886,49 +6045,64 @@ P:	Mark Brown
 M:	broonie@opensource.wolfsonmicro.com
 M:	broonie@opensource.wolfsonmicro.com
 W:	http://opensource.wolfsonmicro.com/node/15
 W:	http://opensource.wolfsonmicro.com/node/15
 W:	http://www.slimlogic.co.uk/?p=48
 W:	http://www.slimlogic.co.uk/?p=48
-T:	git kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6.git
 S:	Supported
 S:	Supported
+F:	drivers/regulator/
+F:	include/linux/regulator/
 
 
 VT1211 HARDWARE MONITOR DRIVER
 VT1211 HARDWARE MONITOR DRIVER
 P:	Juerg Haefliger
 P:	Juerg Haefliger
 M:	juergh@gmail.com
 M:	juergh@gmail.com
 L:	lm-sensors@lm-sensors.org
 L:	lm-sensors@lm-sensors.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/hwmon/vt1211
+F:	drivers/hwmon/vt1211.c
 
 
 VT8231 HARDWARE MONITOR DRIVER
 VT8231 HARDWARE MONITOR DRIVER
 P:	Roger Lucas
 P:	Roger Lucas
 M:	vt8231@hiddenengine.co.uk
 M:	vt8231@hiddenengine.co.uk
 L:	lm-sensors@lm-sensors.org
 L:	lm-sensors@lm-sensors.org
 S:	Maintained
 S:	Maintained
+F:	drivers/hwmon/vt8231.c
 
 
 W1 DALLAS'S 1-WIRE BUS
 W1 DALLAS'S 1-WIRE BUS
 P:	Evgeniy Polyakov
 P:	Evgeniy Polyakov
 M:	johnpol@2ka.mipt.ru
 M:	johnpol@2ka.mipt.ru
 S:	Maintained
 S:	Maintained
+F:	Documentation/w1/
+F:	drivers/w1/
 
 
 W83791D HARDWARE MONITORING DRIVER
 W83791D HARDWARE MONITORING DRIVER
 P:	Marc Hulsman
 P:	Marc Hulsman
 M:	m.hulsman@tudelft.nl
 M:	m.hulsman@tudelft.nl
 L:	lm-sensors@lm-sensors.org
 L:	lm-sensors@lm-sensors.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/hwmon/w83791d
+F:	drivers/hwmon/w83791d.c
 
 
 W83793 HARDWARE MONITORING DRIVER
 W83793 HARDWARE MONITORING DRIVER
 P:	Rudolf Marek
 P:	Rudolf Marek
 M:	r.marek@assembler.cz
 M:	r.marek@assembler.cz
 L:	lm-sensors@lm-sensors.org
 L:	lm-sensors@lm-sensors.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/hwmon/w83793
+F:	drivers/hwmon/w83793.c
 
 
 W83L51xD SD/MMC CARD INTERFACE DRIVER
 W83L51xD SD/MMC CARD INTERFACE DRIVER
 P:	Pierre Ossman
 P:	Pierre Ossman
-M:	drzeus-wbsd@drzeus.cx
+M:	pierre@ossman.eu
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/mmc/host/wbsd.*
 
 
 WATCHDOG DEVICE DRIVERS
 WATCHDOG DEVICE DRIVERS
 P:	Wim Van Sebroeck
 P:	Wim Van Sebroeck
 M:	wim@iguana.be
 M:	wim@iguana.be
-T:	git kernel.org:/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog.git
 S:	Maintained
 S:	Maintained
+F:	Documentation/watchdog/
+F:	drivers/watchdog/
+F:	include/linux/watchdog.h
 
 
 WAVELAN NETWORK DRIVER & WIRELESS EXTENSIONS
 WAVELAN NETWORK DRIVER & WIRELESS EXTENSIONS
 P:	Jean Tourrilhes
 P:	Jean Tourrilhes
@@ -4936,12 +6110,15 @@ M:	jt@hpl.hp.com
 L:	linux-wireless@vger.kernel.org
 L:	linux-wireless@vger.kernel.org
 W:	http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/
 W:	http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/
 S:	Maintained
 S:	Maintained
+F:	Documentation/networking/wavelan.txt
+F:	drivers/net/wireless/wavelan*
 
 
 WD7000 SCSI DRIVER
 WD7000 SCSI DRIVER
 P:	Miroslav Zagorac
 P:	Miroslav Zagorac
 M:	zaga@fly.cc.fer.hr
 M:	zaga@fly.cc.fer.hr
 L:	linux-scsi@vger.kernel.org
 L:	linux-scsi@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/scsi/wd7000.c
 
 
 WIMAX STACK
 WIMAX STACK
 P:	Inaky Perez-Gonzalez
 P:	Inaky Perez-Gonzalez
@@ -4955,11 +6132,14 @@ WIMEDIA LLC PROTOCOL (WLP) SUBSYSTEM
 P:	David Vrabel
 P:	David Vrabel
 M:	david.vrabel@csr.com
 M:	david.vrabel@csr.com
 S:	Maintained
 S:	Maintained
+F:	include/linux/wlp.h
+F:	drivers/uwb/wlp/
 
 
 WISTRON LAPTOP BUTTON DRIVER
 WISTRON LAPTOP BUTTON DRIVER
 P:	Miloslav Trmac
 P:	Miloslav Trmac
 M:	mitr@volny.cz
 M:	mitr@volny.cz
 S:	Maintained
 S:	Maintained
+F:	drivers/input/misc/wistron_btns.c
 
 
 WL3501 WIRELESS PCMCIA CARD DRIVER
 WL3501 WIRELESS PCMCIA CARD DRIVER
 P:	Arnaldo Carvalho de Melo
 P:	Arnaldo Carvalho de Melo
@@ -4967,6 +6147,7 @@ M:	acme@ghostprotocols.net
 L:	linux-wireless@vger.kernel.org
 L:	linux-wireless@vger.kernel.org
 W:	http://oops.ghostprotocols.net:81/blog
 W:	http://oops.ghostprotocols.net:81/blog
 S:	Maintained
 S:	Maintained
+F:	drivers/net/wireless/wl3501*
 
 
 WM97XX TOUCHSCREEN DRIVERS
 WM97XX TOUCHSCREEN DRIVERS
 P:	Mark Brown
 P:	Mark Brown
@@ -4977,12 +6158,17 @@ L:	linux-input@vger.kernel.org
 T:	git git://opensource.wolfsonmicro.com/linux-2.6-touch
 T:	git git://opensource.wolfsonmicro.com/linux-2.6-touch
 W:	http://opensource.wolfsonmicro.com/node/7
 W:	http://opensource.wolfsonmicro.com/node/7
 S:	Supported
 S:	Supported
+F:	drivers/input/touchscreen/*wm97*
+F:	include/linux/wm97xx.h
 
 
 X.25 NETWORK LAYER
 X.25 NETWORK LAYER
 P:	Henner Eisen
 P:	Henner Eisen
 M:	eis@baty.hanse.de
 M:	eis@baty.hanse.de
 L:	linux-x25@vger.kernel.org
 L:	linux-x25@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/networking/x25*
+F:	include/net/x25*
+F:	net/x25/
 
 
 X86 ARCHITECTURE (32-BIT AND 64-BIT)
 X86 ARCHITECTURE (32-BIT AND 64-BIT)
 P:	Thomas Gleixner
 P:	Thomas Gleixner
@@ -4993,8 +6179,10 @@ P:	H. Peter Anvin
 M:	hpa@zytor.com
 M:	hpa@zytor.com
 M:	x86@kernel.org
 M:	x86@kernel.org
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
-T:	git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86.git
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86.git
 S:	Maintained
 S:	Maintained
+F:	Documentation/x86/
+F:	arch/x86/
 
 
 XEN HYPERVISOR INTERFACE
 XEN HYPERVISOR INTERFACE
 P:	Jeremy Fitzhardinge
 P:	Jeremy Fitzhardinge
@@ -5004,6 +6192,11 @@ M:	chrisw@sous-sol.org
 L:	virtualization@lists.osdl.org
 L:	virtualization@lists.osdl.org
 L:	xen-devel@lists.xensource.com
 L:	xen-devel@lists.xensource.com
 S:	Supported
 S:	Supported
+F:	arch/x86/xen/
+F:	drivers/*/xen-*front.c
+F:	drivers/xen/
+F:	arch/x86/include/asm/xen/
+F:	include/xen/
 
 
 XFS FILESYSTEM
 XFS FILESYSTEM
 P:	Silicon Graphics Inc
 P:	Silicon Graphics Inc
@@ -5012,8 +6205,10 @@ M:	felixb@sgi.com
 M:	xfs-masters@oss.sgi.com
 M:	xfs-masters@oss.sgi.com
 L:	xfs@oss.sgi.com
 L:	xfs@oss.sgi.com
 W:	http://oss.sgi.com/projects/xfs
 W:	http://oss.sgi.com/projects/xfs
-T:	git://oss.sgi.com/xfs/xfs.git
+T:	git git://oss.sgi.com/xfs/xfs.git
 S:	Supported
 S:	Supported
+F:	Documentation/filesystems/xfs.txt
+F:	fs/xfs/
 
 
 XILINX SYSTEMACE DRIVER
 XILINX SYSTEMACE DRIVER
 P:	Grant Likely
 P:	Grant Likely
@@ -5021,24 +6216,30 @@ M:	grant.likely@secretlab.ca
 W:	http://www.secretlab.ca/
 W:	http://www.secretlab.ca/
 L:	linux-kernel@vger.kernel.org
 L:	linux-kernel@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/block/xsysace.c
 
 
 XILINX UARTLITE SERIAL DRIVER
 XILINX UARTLITE SERIAL DRIVER
 P:	Peter Korsgaard
 P:	Peter Korsgaard
 M:	jacmet@sunsite.dk
 M:	jacmet@sunsite.dk
 L:	linux-serial@vger.kernel.org
 L:	linux-serial@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/serial/uartlite.c
 
 
 YAM DRIVER FOR AX.25
 YAM DRIVER FOR AX.25
 P:	Jean-Paul Roubelat
 P:	Jean-Paul Roubelat
 M:	jpr@f6fbb.org
 M:	jpr@f6fbb.org
 L:	linux-hams@vger.kernel.org
 L:	linux-hams@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	drivers/net/hamradio/yam*
+F:	include/linux/yam.h
 
 
 YEALINK PHONE DRIVER
 YEALINK PHONE DRIVER
 P:	Henk Vergonet
 P:	Henk Vergonet
 M:	Henk.Vergonet@gmail.com
 M:	Henk.Vergonet@gmail.com
 L:	usbb2k-api-dev@nongnu.org
 L:	usbb2k-api-dev@nongnu.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/input/yealink.txt
+F:	drivers/input/misc/yealink.*
 
 
 Z8530 DRIVER FOR AX.25
 Z8530 DRIVER FOR AX.25
 P:	Joerg Reuter
 P:	Joerg Reuter
@@ -5047,6 +6248,9 @@ W:	http://yaina.de/jreuter/
 W:	http://www.qsl.net/dl1bke/
 W:	http://www.qsl.net/dl1bke/
 L:	linux-hams@vger.kernel.org
 L:	linux-hams@vger.kernel.org
 S:	Maintained
 S:	Maintained
+F:	Documentation/networking/z8530drv.txt
+F:	drivers/net/hamradio/*scc.c
+F:	drivers/net/hamradio/z8530.h
 
 
 ZD1211RW WIRELESS DRIVER
 ZD1211RW WIRELESS DRIVER
 P:	Daniel Drake
 P:	Daniel Drake
@@ -5057,6 +6261,7 @@ W:	http://zd1211.ath.cx/wiki/DriverRewrite
 L:	linux-wireless@vger.kernel.org
 L:	linux-wireless@vger.kernel.org
 L:	zd1211-devs@lists.sourceforge.net (subscribers-only)
 L:	zd1211-devs@lists.sourceforge.net (subscribers-only)
 S:	Maintained
 S:	Maintained
+F:	drivers/net/wireless/zd1211rw/
 
 
 ZR36067 VIDEO FOR LINUX DRIVER
 ZR36067 VIDEO FOR LINUX DRIVER
 L:	mjpeg-users@lists.sourceforge.net
 L:	mjpeg-users@lists.sourceforge.net
@@ -5064,12 +6269,15 @@ L:	linux-media@vger.kernel.org
 W:	http://mjpeg.sourceforge.net/driver-zoran/
 W:	http://mjpeg.sourceforge.net/driver-zoran/
 T:	Mercurial http://linuxtv.org/hg/v4l-dvb
 T:	Mercurial http://linuxtv.org/hg/v4l-dvb
 S:	Odd Fixes
 S:	Odd Fixes
+F:	drivers/media/video/zoran/
 
 
 ZS DECSTATION Z85C30 SERIAL DRIVER
 ZS DECSTATION Z85C30 SERIAL DRIVER
 P:	Maciej W. Rozycki
 P:	Maciej W. Rozycki
 M:	macro@linux-mips.org
 M:	macro@linux-mips.org
 S:	Maintained
 S:	Maintained
+F:	drivers/serial/zs.*
 
 
 THE REST
 THE REST
 P:	Linus Torvalds
 P:	Linus Torvalds
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
 S:	Buried alive in reporters
 S:	Buried alive in reporters

+ 8 - 4
Makefile

@@ -1,7 +1,7 @@
 VERSION = 2
 VERSION = 2
 PATCHLEVEL = 6
 PATCHLEVEL = 6
-SUBLEVEL = 29
-EXTRAVERSION =
+SUBLEVEL = 30
+EXTRAVERSION = -rc1
 NAME = Temporary Tasmanian Devil
 NAME = Temporary Tasmanian Devil
 
 
 # *DOCUMENTATION*
 # *DOCUMENTATION*
@@ -572,7 +572,7 @@ KBUILD_CFLAGS += $(call cc-option,-Wdeclaration-after-statement,)
 # disable pointer signed / unsigned warnings in gcc 4.0
 # disable pointer signed / unsigned warnings in gcc 4.0
 KBUILD_CFLAGS += $(call cc-option,-Wno-pointer-sign,)
 KBUILD_CFLAGS += $(call cc-option,-Wno-pointer-sign,)
 
 
-# disable invalid "can't wrap" optimzations for signed / pointers
+# disable invalid "can't wrap" optimizations for signed / pointers
 KBUILD_CFLAGS	+= $(call cc-option,-fwrapv)
 KBUILD_CFLAGS	+= $(call cc-option,-fwrapv)
 
 
 # revert to pre-gcc-4.4 behaviour of .eh_frame
 # revert to pre-gcc-4.4 behaviour of .eh_frame
@@ -602,6 +602,10 @@ LDFLAGS_BUILD_ID = $(patsubst -Wl$(comma)%,%,\
 LDFLAGS_MODULE += $(LDFLAGS_BUILD_ID)
 LDFLAGS_MODULE += $(LDFLAGS_BUILD_ID)
 LDFLAGS_vmlinux += $(LDFLAGS_BUILD_ID)
 LDFLAGS_vmlinux += $(LDFLAGS_BUILD_ID)
 
 
+ifeq ($(CONFIG_STRIP_ASM_SYMS),y)
+LDFLAGS_vmlinux	+= -X
+endif
+
 # Default kernel image to build when no specific target is given.
 # Default kernel image to build when no specific target is given.
 # KBUILD_IMAGE may be overruled on the command line or
 # KBUILD_IMAGE may be overruled on the command line or
 # set in the environment
 # set in the environment
@@ -1592,5 +1596,5 @@ PHONY += FORCE
 FORCE:
 FORCE:
 
 
 # Declare the contents of the .PHONY variable as phony.  We keep that
 # Declare the contents of the .PHONY variable as phony.  We keep that
-# information in a variable se we can use it in if_changed and friends.
+# information in a variable so we can use it in if_changed and friends.
 .PHONY: $(PHONY)
 .PHONY: $(PHONY)

+ 3 - 0
arch/Kconfig

@@ -109,3 +109,6 @@ config HAVE_CLK
 
 
 config HAVE_DMA_API_DEBUG
 config HAVE_DMA_API_DEBUG
 	bool
 	bool
+
+config HAVE_DEFAULT_NO_SPIN_MUTEXES
+	bool

+ 5 - 1
arch/arm/configs/magician_defconfig

@@ -1183,7 +1183,11 @@ CONFIG_RTC_INTF_DEV=y
 CONFIG_RTC_DRV_SA1100=y
 CONFIG_RTC_DRV_SA1100=y
 # CONFIG_RTC_DRV_PXA is not set
 # CONFIG_RTC_DRV_PXA is not set
 # CONFIG_DMADEVICES is not set
 # CONFIG_DMADEVICES is not set
-# CONFIG_REGULATOR is not set
+CONFIG_REGULATOR=y
+# CONFIG_REGULATOR_DEBUG is not set
+# CONFIG_REGULATOR_FIXED_VOLTAGE is not set
+# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set
+CONFIG_REGULATOR_BQ24022=y
 # CONFIG_UIO is not set
 # CONFIG_UIO is not set
 # CONFIG_STAGING is not set
 # CONFIG_STAGING is not set
 
 

+ 1 - 0
arch/arm/include/asm/sizes.h

@@ -32,6 +32,7 @@
 #define SZ_4K                           0x00001000
 #define SZ_4K                           0x00001000
 #define SZ_8K                           0x00002000
 #define SZ_8K                           0x00002000
 #define SZ_16K                          0x00004000
 #define SZ_16K                          0x00004000
+#define SZ_32K                          0x00008000
 #define SZ_64K                          0x00010000
 #define SZ_64K                          0x00010000
 #define SZ_128K                         0x00020000
 #define SZ_128K                         0x00020000
 #define SZ_256K                         0x00040000
 #define SZ_256K                         0x00040000

+ 1 - 1
arch/arm/mach-at91/include/mach/board.h

@@ -87,7 +87,7 @@ extern void __init at91_add_device_eth(struct at91_eth_data *data);
  /* USB Host */
  /* USB Host */
 struct at91_usbh_data {
 struct at91_usbh_data {
 	u8		ports;		/* number of ports on root hub */
 	u8		ports;		/* number of ports on root hub */
-	u8		vbus_pin[];	/* port power-control pin */
+	u8		vbus_pin[2];	/* port power-control pin */
 };
 };
 extern void __init at91_add_device_usbh(struct at91_usbh_data *data);
 extern void __init at91_add_device_usbh(struct at91_usbh_data *data);
 
 

+ 2 - 2
arch/arm/mach-davinci/board-evm.c

@@ -118,7 +118,7 @@ static struct resource ide_resources[] = {
 	},
 	},
 };
 };
 
 
-static u64 ide_dma_mask = DMA_32BIT_MASK;
+static u64 ide_dma_mask = DMA_BIT_MASK(32);
 
 
 static struct platform_device ide_dev = {
 static struct platform_device ide_dev = {
 	.name           = "palm_bk3710",
 	.name           = "palm_bk3710",
@@ -127,7 +127,7 @@ static struct platform_device ide_dev = {
 	.num_resources  = ARRAY_SIZE(ide_resources),
 	.num_resources  = ARRAY_SIZE(ide_resources),
 	.dev = {
 	.dev = {
 		.dma_mask		= &ide_dma_mask,
 		.dma_mask		= &ide_dma_mask,
-		.coherent_dma_mask      = DMA_32BIT_MASK,
+		.coherent_dma_mask      = DMA_BIT_MASK(32),
 	},
 	},
 };
 };
 
 

+ 80 - 0
arch/arm/mach-davinci/include/mach/nand.h

@@ -0,0 +1,80 @@
+/*
+ * mach-davinci/nand.h
+ *
+ * Copyright © 2006 Texas Instruments.
+ *
+ * Ported to 2.6.23 Copyright © 2008 by
+ *   Sander Huijsen <Shuijsen@optelecom-nkf.com>
+ *   Troy Kisky <troy.kisky@boundarydevices.com>
+ *   Dirk Behme <Dirk.Behme@gmail.com>
+ *
+ * --------------------------------------------------------------------------
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+#ifndef __ARCH_ARM_DAVINCI_NAND_H
+#define __ARCH_ARM_DAVINCI_NAND_H
+
+#include <linux/mtd/nand.h>
+
+#define NRCSR_OFFSET		0x00
+#define AWCCR_OFFSET		0x04
+#define A1CR_OFFSET		0x10
+#define NANDFCR_OFFSET		0x60
+#define NANDFSR_OFFSET		0x64
+#define NANDF1ECC_OFFSET	0x70
+
+/* 4-bit ECC syndrome registers */
+#define NAND_4BIT_ECC_LOAD_OFFSET	0xbc
+#define NAND_4BIT_ECC1_OFFSET		0xc0
+#define NAND_4BIT_ECC2_OFFSET		0xc4
+#define NAND_4BIT_ECC3_OFFSET		0xc8
+#define NAND_4BIT_ECC4_OFFSET		0xcc
+#define NAND_ERR_ADD1_OFFSET		0xd0
+#define NAND_ERR_ADD2_OFFSET		0xd4
+#define NAND_ERR_ERRVAL1_OFFSET		0xd8
+#define NAND_ERR_ERRVAL2_OFFSET		0xdc
+
+/* NOTE:  boards don't need to use these address bits
+ * for ALE/CLE unless they support booting from NAND.
+ * They're used unless platform data overrides them.
+ */
+#define	MASK_ALE		0x08
+#define	MASK_CLE		0x10
+
+struct davinci_nand_pdata {		/* platform_data */
+	uint32_t		mask_ale;
+	uint32_t		mask_cle;
+
+	/* for packages using two chipselects */
+	uint32_t		mask_chipsel;
+
+	/* board's default static partition info */
+	struct mtd_partition	*parts;
+	unsigned		nr_parts;
+
+	/* none  == NAND_ECC_NONE (strongly *not* advised!!)
+	 * soft  == NAND_ECC_SOFT
+	 * 1-bit == NAND_ECC_HW
+	 * 4-bit == NAND_ECC_HW_SYNDROME (not on all chips)
+	 */
+	nand_ecc_modes_t	ecc_mode;
+
+	/* e.g. NAND_BUSWIDTH_16 or NAND_USE_FLASH_BBT */
+	unsigned		options;
+};
+
+#endif	/* __ARCH_ARM_DAVINCI_NAND_H */

+ 2 - 2
arch/arm/mach-davinci/usb.c

@@ -64,7 +64,7 @@ static struct resource usb_resources[] = {
 	},
 	},
 };
 };
 
 
-static u64 usb_dmamask = DMA_32BIT_MASK;
+static u64 usb_dmamask = DMA_BIT_MASK(32);
 
 
 static struct platform_device usb_dev = {
 static struct platform_device usb_dev = {
 	.name           = "musb_hdrc",
 	.name           = "musb_hdrc",
@@ -72,7 +72,7 @@ static struct platform_device usb_dev = {
 	.dev = {
 	.dev = {
 		.platform_data		= &usb_data,
 		.platform_data		= &usb_data,
 		.dma_mask		= &usb_dmamask,
 		.dma_mask		= &usb_dmamask,
-		.coherent_dma_mask      = DMA_32BIT_MASK,
+		.coherent_dma_mask      = DMA_BIT_MASK(32),
 	},
 	},
 	.resource       = usb_resources,
 	.resource       = usb_resources,
 	.num_resources  = ARRAY_SIZE(usb_resources),
 	.num_resources  = ARRAY_SIZE(usb_resources),

+ 4 - 4
arch/arm/mach-iop13xx/setup.c

@@ -307,7 +307,7 @@ static struct resource iop13xx_adma_2_resources[] = {
 	}
 	}
 };
 };
 
 
-static u64 iop13xx_adma_dmamask = DMA_64BIT_MASK;
+static u64 iop13xx_adma_dmamask = DMA_BIT_MASK(64);
 static struct iop_adma_platform_data iop13xx_adma_0_data = {
 static struct iop_adma_platform_data iop13xx_adma_0_data = {
 	.hw_id = 0,
 	.hw_id = 0,
 	.pool_size = PAGE_SIZE,
 	.pool_size = PAGE_SIZE,
@@ -331,7 +331,7 @@ static struct platform_device iop13xx_adma_0_channel = {
 	.resource = iop13xx_adma_0_resources,
 	.resource = iop13xx_adma_0_resources,
 	.dev = {
 	.dev = {
 		.dma_mask = &iop13xx_adma_dmamask,
 		.dma_mask = &iop13xx_adma_dmamask,
-		.coherent_dma_mask = DMA_64BIT_MASK,
+		.coherent_dma_mask = DMA_BIT_MASK(64),
 		.platform_data = (void *) &iop13xx_adma_0_data,
 		.platform_data = (void *) &iop13xx_adma_0_data,
 	},
 	},
 };
 };
@@ -343,7 +343,7 @@ static struct platform_device iop13xx_adma_1_channel = {
 	.resource = iop13xx_adma_1_resources,
 	.resource = iop13xx_adma_1_resources,
 	.dev = {
 	.dev = {
 		.dma_mask = &iop13xx_adma_dmamask,
 		.dma_mask = &iop13xx_adma_dmamask,
-		.coherent_dma_mask = DMA_64BIT_MASK,
+		.coherent_dma_mask = DMA_BIT_MASK(64),
 		.platform_data = (void *) &iop13xx_adma_1_data,
 		.platform_data = (void *) &iop13xx_adma_1_data,
 	},
 	},
 };
 };
@@ -355,7 +355,7 @@ static struct platform_device iop13xx_adma_2_channel = {
 	.resource = iop13xx_adma_2_resources,
 	.resource = iop13xx_adma_2_resources,
 	.dev = {
 	.dev = {
 		.dma_mask = &iop13xx_adma_dmamask,
 		.dma_mask = &iop13xx_adma_dmamask,
-		.coherent_dma_mask = DMA_64BIT_MASK,
+		.coherent_dma_mask = DMA_BIT_MASK(64),
 		.platform_data = (void *) &iop13xx_adma_2_data,
 		.platform_data = (void *) &iop13xx_adma_2_data,
 	},
 	},
 };
 };

+ 5 - 5
arch/arm/mach-iop13xx/tpmi.c

@@ -151,7 +151,7 @@ static struct resource iop13xx_tpmi_3_resources[] = {
 	}
 	}
 };
 };
 
 
-u64 iop13xx_tpmi_mask = DMA_64BIT_MASK;
+u64 iop13xx_tpmi_mask = DMA_BIT_MASK(64);
 static struct platform_device iop13xx_tpmi_0_device = {
 static struct platform_device iop13xx_tpmi_0_device = {
 	.name = "iop-tpmi",
 	.name = "iop-tpmi",
 	.id = 0,
 	.id = 0,
@@ -159,7 +159,7 @@ static struct platform_device iop13xx_tpmi_0_device = {
 	.resource = iop13xx_tpmi_0_resources,
 	.resource = iop13xx_tpmi_0_resources,
 	.dev = {
 	.dev = {
 		.dma_mask          = &iop13xx_tpmi_mask,
 		.dma_mask          = &iop13xx_tpmi_mask,
-		.coherent_dma_mask = DMA_64BIT_MASK,
+		.coherent_dma_mask = DMA_BIT_MASK(64),
 	},
 	},
 };
 };
 
 
@@ -170,7 +170,7 @@ static struct platform_device iop13xx_tpmi_1_device = {
 	.resource = iop13xx_tpmi_1_resources,
 	.resource = iop13xx_tpmi_1_resources,
 	.dev = {
 	.dev = {
 		.dma_mask          = &iop13xx_tpmi_mask,
 		.dma_mask          = &iop13xx_tpmi_mask,
-		.coherent_dma_mask = DMA_64BIT_MASK,
+		.coherent_dma_mask = DMA_BIT_MASK(64),
 	},
 	},
 };
 };
 
 
@@ -181,7 +181,7 @@ static struct platform_device iop13xx_tpmi_2_device = {
 	.resource = iop13xx_tpmi_2_resources,
 	.resource = iop13xx_tpmi_2_resources,
 	.dev = {
 	.dev = {
 		.dma_mask          = &iop13xx_tpmi_mask,
 		.dma_mask          = &iop13xx_tpmi_mask,
-		.coherent_dma_mask = DMA_64BIT_MASK,
+		.coherent_dma_mask = DMA_BIT_MASK(64),
 	},
 	},
 };
 };
 
 
@@ -192,7 +192,7 @@ static struct platform_device iop13xx_tpmi_3_device = {
 	.resource = iop13xx_tpmi_3_resources,
 	.resource = iop13xx_tpmi_3_resources,
 	.dev = {
 	.dev = {
 		.dma_mask          = &iop13xx_tpmi_mask,
 		.dma_mask          = &iop13xx_tpmi_mask,
-		.coherent_dma_mask = DMA_64BIT_MASK,
+		.coherent_dma_mask = DMA_BIT_MASK(64),
 	},
 	},
 };
 };
 
 

+ 5 - 5
arch/arm/mach-kirkwood/common.c

@@ -508,7 +508,7 @@ static struct mv_xor_platform_shared_data kirkwood_xor_shared_data = {
 	.dram		= &kirkwood_mbus_dram_info,
 	.dram		= &kirkwood_mbus_dram_info,
 };
 };
 
 
-static u64 kirkwood_xor_dmamask = DMA_32BIT_MASK;
+static u64 kirkwood_xor_dmamask = DMA_BIT_MASK(32);
 
 
 
 
 /*****************************************************************************
 /*****************************************************************************
@@ -559,7 +559,7 @@ static struct platform_device kirkwood_xor00_channel = {
 	.resource	= kirkwood_xor00_resources,
 	.resource	= kirkwood_xor00_resources,
 	.dev		= {
 	.dev		= {
 		.dma_mask		= &kirkwood_xor_dmamask,
 		.dma_mask		= &kirkwood_xor_dmamask,
-		.coherent_dma_mask	= DMA_64BIT_MASK,
+		.coherent_dma_mask	= DMA_BIT_MASK(64),
 		.platform_data		= (void *)&kirkwood_xor00_data,
 		.platform_data		= (void *)&kirkwood_xor00_data,
 	},
 	},
 };
 };
@@ -585,7 +585,7 @@ static struct platform_device kirkwood_xor01_channel = {
 	.resource	= kirkwood_xor01_resources,
 	.resource	= kirkwood_xor01_resources,
 	.dev		= {
 	.dev		= {
 		.dma_mask		= &kirkwood_xor_dmamask,
 		.dma_mask		= &kirkwood_xor_dmamask,
-		.coherent_dma_mask	= DMA_64BIT_MASK,
+		.coherent_dma_mask	= DMA_BIT_MASK(64),
 		.platform_data		= (void *)&kirkwood_xor01_data,
 		.platform_data		= (void *)&kirkwood_xor01_data,
 	},
 	},
 };
 };
@@ -657,7 +657,7 @@ static struct platform_device kirkwood_xor10_channel = {
 	.resource	= kirkwood_xor10_resources,
 	.resource	= kirkwood_xor10_resources,
 	.dev		= {
 	.dev		= {
 		.dma_mask		= &kirkwood_xor_dmamask,
 		.dma_mask		= &kirkwood_xor_dmamask,
-		.coherent_dma_mask	= DMA_64BIT_MASK,
+		.coherent_dma_mask	= DMA_BIT_MASK(64),
 		.platform_data		= (void *)&kirkwood_xor10_data,
 		.platform_data		= (void *)&kirkwood_xor10_data,
 	},
 	},
 };
 };
@@ -683,7 +683,7 @@ static struct platform_device kirkwood_xor11_channel = {
 	.resource	= kirkwood_xor11_resources,
 	.resource	= kirkwood_xor11_resources,
 	.dev		= {
 	.dev		= {
 		.dma_mask		= &kirkwood_xor_dmamask,
 		.dma_mask		= &kirkwood_xor_dmamask,
-		.coherent_dma_mask	= DMA_64BIT_MASK,
+		.coherent_dma_mask	= DMA_BIT_MASK(64),
 		.platform_data		= (void *)&kirkwood_xor11_data,
 		.platform_data		= (void *)&kirkwood_xor11_data,
 	},
 	},
 };
 };

+ 3 - 0
arch/arm/mach-mx1/Makefile

@@ -6,6 +6,9 @@
 
 
 obj-y			+= generic.o clock.o devices.o
 obj-y			+= generic.o clock.o devices.o
 
 
+# Support for CMOS sensor interface
+obj-$(CONFIG_MX1_VIDEO)	+= ksym_mx1.o mx1_camera_fiq.o
+
 # Specific board support
 # Specific board support
 obj-$(CONFIG_ARCH_MX1ADS) += mx1ads.o
 obj-$(CONFIG_ARCH_MX1ADS) += mx1ads.o
 obj-$(CONFIG_MACH_SCB9328) += scb9328.o
 obj-$(CONFIG_MACH_SCB9328) += scb9328.o

+ 1 - 1
arch/arm/mach-mx1/devices.c

@@ -44,7 +44,7 @@ static struct resource imx_csi_resources[] = {
 static u64 imx_csi_dmamask = 0xffffffffUL;
 static u64 imx_csi_dmamask = 0xffffffffUL;
 
 
 struct platform_device imx_csi_device = {
 struct platform_device imx_csi_device = {
-	.name           = "imx-csi",
+	.name           = "mx1-camera",
 	.id             = 0, /* This is used to put cameras on this interface */
 	.id             = 0, /* This is used to put cameras on this interface */
 	.dev		= {
 	.dev		= {
 		.dma_mask = &imx_csi_dmamask,
 		.dma_mask = &imx_csi_dmamask,

+ 18 - 0
arch/arm/mach-mx1/ksym_mx1.c

@@ -0,0 +1,18 @@
+/*
+ * Exported ksyms of ARCH_MX1
+ *
+ * Copyright (C) 2008, Darius Augulis <augulis.darius@gmail.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include <linux/platform_device.h>
+#include <linux/module.h>
+
+#include <mach/mx1_camera.h>
+
+/* IMX camera FIQ handler */
+EXPORT_SYMBOL(mx1_camera_sof_fiq_start);
+EXPORT_SYMBOL(mx1_camera_sof_fiq_end);

+ 35 - 0
arch/arm/mach-mx1/mx1_camera_fiq.S

@@ -0,0 +1,35 @@
+/*
+ *  Copyright (C) 2008 Paulius Zaleckas <paulius.zaleckas@teltonika.lt>
+ *
+ *  Based on linux/arch/arm/lib/floppydma.S
+ *      Copyright (C) 1995, 1996 Russell King
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+#include <linux/linkage.h>
+#include <asm/assembler.h>
+
+		.text
+		.global	mx1_camera_sof_fiq_end
+		.global	mx1_camera_sof_fiq_start
+mx1_camera_sof_fiq_start:
+		@ enable dma
+		ldr	r12, [r9]
+		orr	r12, r12, #0x00000001
+		str	r12, [r9]
+		@ unmask DMA interrupt
+		ldr	r12, [r8]
+		bic	r12, r12, r13
+		str	r12, [r8]
+		@ disable SOF interrupt
+		ldr	r12, [r10]
+		bic	r12, r12, #0x00010000
+		str	r12, [r10]
+		@ clear SOF flag
+		mov	r12, #0x00010000
+		str	r12, [r11]
+		@ return from FIQ
+		subs	pc, lr, #4
+mx1_camera_sof_fiq_end:

+ 1 - 1
arch/arm/mach-mx3/clock.c

@@ -533,7 +533,7 @@ static struct clk_lookup lookups[] __initdata = {
 	_REGISTER_CLOCK(NULL, "kpp", kpp_clk)
 	_REGISTER_CLOCK(NULL, "kpp", kpp_clk)
 	_REGISTER_CLOCK("fsl-usb2-udc", "usb", usb_clk1)
 	_REGISTER_CLOCK("fsl-usb2-udc", "usb", usb_clk1)
 	_REGISTER_CLOCK("fsl-usb2-udc", "usb_ahb", usb_clk2)
 	_REGISTER_CLOCK("fsl-usb2-udc", "usb_ahb", usb_clk2)
-	_REGISTER_CLOCK("mx3-camera.0", "csi", csi_clk)
+	_REGISTER_CLOCK("mx3-camera.0", NULL, csi_clk)
 	_REGISTER_CLOCK("imx-uart.0", NULL, uart1_clk)
 	_REGISTER_CLOCK("imx-uart.0", NULL, uart1_clk)
 	_REGISTER_CLOCK("imx-uart.1", NULL, uart2_clk)
 	_REGISTER_CLOCK("imx-uart.1", NULL, uart2_clk)
 	_REGISTER_CLOCK("imx-uart.2", NULL, uart3_clk)
 	_REGISTER_CLOCK("imx-uart.2", NULL, uart3_clk)

+ 11 - 10
arch/arm/mach-omap1/clock.c

@@ -590,27 +590,28 @@ static void omap1_init_ext_clk(struct clk * clk)
 static int omap1_clk_enable(struct clk *clk)
 static int omap1_clk_enable(struct clk *clk)
 {
 {
 	int ret = 0;
 	int ret = 0;
+
 	if (clk->usecount++ == 0) {
 	if (clk->usecount++ == 0) {
-		if (likely(clk->parent)) {
+		if (clk->parent) {
 			ret = omap1_clk_enable(clk->parent);
 			ret = omap1_clk_enable(clk->parent);
-
-			if (unlikely(ret != 0)) {
-				clk->usecount--;
-				return ret;
-			}
+			if (ret)
+				goto err;
 
 
 			if (clk->flags & CLOCK_NO_IDLE_PARENT)
 			if (clk->flags & CLOCK_NO_IDLE_PARENT)
 				omap1_clk_deny_idle(clk->parent);
 				omap1_clk_deny_idle(clk->parent);
 		}
 		}
 
 
 		ret = clk->ops->enable(clk);
 		ret = clk->ops->enable(clk);
-
-		if (unlikely(ret != 0) && clk->parent) {
-			omap1_clk_disable(clk->parent);
-			clk->usecount--;
+		if (ret) {
+			if (clk->parent)
+				omap1_clk_disable(clk->parent);
+			goto err;
 		}
 		}
 	}
 	}
+	return ret;
 
 
+err:
+	clk->usecount--;
 	return ret;
 	return ret;
 }
 }
 
 

+ 3 - 3
arch/arm/mach-orion5x/common.c

@@ -463,7 +463,7 @@ static struct platform_device orion5x_xor_shared = {
 	.resource	= orion5x_xor_shared_resources,
 	.resource	= orion5x_xor_shared_resources,
 };
 };
 
 
-static u64 orion5x_xor_dmamask = DMA_32BIT_MASK;
+static u64 orion5x_xor_dmamask = DMA_BIT_MASK(32);
 
 
 static struct resource orion5x_xor0_resources[] = {
 static struct resource orion5x_xor0_resources[] = {
 	[0] = {
 	[0] = {
@@ -486,7 +486,7 @@ static struct platform_device orion5x_xor0_channel = {
 	.resource	= orion5x_xor0_resources,
 	.resource	= orion5x_xor0_resources,
 	.dev		= {
 	.dev		= {
 		.dma_mask		= &orion5x_xor_dmamask,
 		.dma_mask		= &orion5x_xor_dmamask,
-		.coherent_dma_mask	= DMA_64BIT_MASK,
+		.coherent_dma_mask	= DMA_BIT_MASK(64),
 		.platform_data		= (void *)&orion5x_xor0_data,
 		.platform_data		= (void *)&orion5x_xor0_data,
 	},
 	},
 };
 };
@@ -512,7 +512,7 @@ static struct platform_device orion5x_xor1_channel = {
 	.resource	= orion5x_xor1_resources,
 	.resource	= orion5x_xor1_resources,
 	.dev		= {
 	.dev		= {
 		.dma_mask		= &orion5x_xor_dmamask,
 		.dma_mask		= &orion5x_xor_dmamask,
-		.coherent_dma_mask	= DMA_64BIT_MASK,
+		.coherent_dma_mask	= DMA_BIT_MASK(64),
 		.platform_data		= (void *)&orion5x_xor1_data,
 		.platform_data		= (void *)&orion5x_xor1_data,
 	},
 	},
 };
 };

+ 9 - 0
arch/arm/mach-pxa/Kconfig

@@ -343,6 +343,15 @@ config ARCH_PXA_PALM
 	bool "PXA based Palm PDAs"
 	bool "PXA based Palm PDAs"
 	select HAVE_PWM
 	select HAVE_PWM
 
 
+config MACH_PALMTE2
+	bool "Palm Tungsten|E2"
+	default y
+	depends on ARCH_PXA_PALM
+	select PXA25x
+	help
+	  Say Y here if you intend to run this kernel on a Palm Tungsten|E2
+	  handheld computer.
+
 config MACH_PALMT5
 config MACH_PALMT5
 	bool "Palm Tungsten|T5"
 	bool "Palm Tungsten|T5"
 	default y
 	default y

+ 1 - 0
arch/arm/mach-pxa/Makefile

@@ -57,6 +57,7 @@ obj-$(CONFIG_MACH_E740)		+= e740.o
 obj-$(CONFIG_MACH_E750)		+= e750.o
 obj-$(CONFIG_MACH_E750)		+= e750.o
 obj-$(CONFIG_MACH_E400)		+= e400.o
 obj-$(CONFIG_MACH_E400)		+= e400.o
 obj-$(CONFIG_MACH_E800)		+= e800.o
 obj-$(CONFIG_MACH_E800)		+= e800.o
+obj-$(CONFIG_MACH_PALMTE2)	+= palmte2.o
 obj-$(CONFIG_MACH_PALMT5)	+= palmt5.o
 obj-$(CONFIG_MACH_PALMT5)	+= palmt5.o
 obj-$(CONFIG_MACH_PALMTX)	+= palmtx.o
 obj-$(CONFIG_MACH_PALMTX)	+= palmtx.o
 obj-$(CONFIG_MACH_PALMLD)	+= palmld.o
 obj-$(CONFIG_MACH_PALMLD)	+= palmld.o

+ 1 - 1
arch/arm/mach-pxa/cm-x2xx.c

@@ -121,7 +121,7 @@ static inline void cmx2xx_init_dm9000(void) {}
 /* UCB1400 touchscreen controller */
 /* UCB1400 touchscreen controller */
 #if defined(CONFIG_TOUCHSCREEN_UCB1400) || defined(CONFIG_TOUCHSCREEN_UCB1400_MODULE)
 #if defined(CONFIG_TOUCHSCREEN_UCB1400) || defined(CONFIG_TOUCHSCREEN_UCB1400_MODULE)
 static struct platform_device cmx2xx_ts_device = {
 static struct platform_device cmx2xx_ts_device = {
-	.name		= "ucb1400_ts",
+	.name		= "ucb1400_core",
 	.id		= -1,
 	.id		= -1,
 };
 };
 
 

+ 6 - 5
arch/arm/mach-pxa/colibri-pxa300.c

@@ -15,7 +15,7 @@
 #include <linux/kernel.h>
 #include <linux/kernel.h>
 #include <linux/platform_device.h>
 #include <linux/platform_device.h>
 #include <linux/gpio.h>
 #include <linux/gpio.h>
-#include <net/ax88796.h>
+#include <linux/interrupt.h>
 
 
 #include <asm/mach-types.h>
 #include <asm/mach-types.h>
 #include <asm/sizes.h>
 #include <asm/sizes.h>
@@ -32,12 +32,13 @@
 
 
 #if defined(CONFIG_AX88796)
 #if defined(CONFIG_AX88796)
 #define COLIBRI_ETH_IRQ_GPIO	mfp_to_gpio(GPIO26_GPIO)
 #define COLIBRI_ETH_IRQ_GPIO	mfp_to_gpio(GPIO26_GPIO)
+
 /*
 /*
  * Asix AX88796 Ethernet
  * Asix AX88796 Ethernet
  */
  */
 static struct ax_plat_data colibri_asix_platdata = {
 static struct ax_plat_data colibri_asix_platdata = {
-	.flags		= AXFLG_MAC_FROMDEV,
-	.wordlength	= 2
+	.flags		= 0, /* defined later */
+	.wordlength	= 2,
 };
 };
 
 
 static struct resource colibri_asix_resource[] = {
 static struct resource colibri_asix_resource[] = {
@@ -49,7 +50,7 @@ static struct resource colibri_asix_resource[] = {
 	[1] = {
 	[1] = {
 		.start = gpio_to_irq(COLIBRI_ETH_IRQ_GPIO),
 		.start = gpio_to_irq(COLIBRI_ETH_IRQ_GPIO),
 		.end   = gpio_to_irq(COLIBRI_ETH_IRQ_GPIO),
 		.end   = gpio_to_irq(COLIBRI_ETH_IRQ_GPIO),
-		.flags = IORESOURCE_IRQ
+		.flags = IORESOURCE_IRQ | IRQF_TRIGGER_FALLING,
 	}
 	}
 };
 };
 
 
@@ -70,8 +71,8 @@ static mfp_cfg_t colibri_pxa300_eth_pin_config[] __initdata = {
 
 
 static void __init colibri_pxa300_init_eth(void)
 static void __init colibri_pxa300_init_eth(void)
 {
 {
+	colibri_pxa3xx_init_eth(&colibri_asix_platdata);
 	pxa3xx_mfp_config(ARRAY_AND_SIZE(colibri_pxa300_eth_pin_config));
 	pxa3xx_mfp_config(ARRAY_AND_SIZE(colibri_pxa300_eth_pin_config));
-	set_irq_type(gpio_to_irq(COLIBRI_ETH_IRQ_GPIO), IRQ_TYPE_EDGE_FALLING);
 	platform_device_register(&asix_device);
 	platform_device_register(&asix_device);
 }
 }
 #else
 #else

+ 5 - 5
arch/arm/mach-pxa/colibri-pxa320.c

@@ -15,7 +15,7 @@
 #include <linux/kernel.h>
 #include <linux/kernel.h>
 #include <linux/platform_device.h>
 #include <linux/platform_device.h>
 #include <linux/gpio.h>
 #include <linux/gpio.h>
-#include <net/ax88796.h>
+#include <linux/interrupt.h>
 
 
 #include <asm/mach-types.h>
 #include <asm/mach-types.h>
 #include <asm/sizes.h>
 #include <asm/sizes.h>
@@ -38,8 +38,8 @@
  * Asix AX88796 Ethernet
  * Asix AX88796 Ethernet
  */
  */
 static struct ax_plat_data colibri_asix_platdata = {
 static struct ax_plat_data colibri_asix_platdata = {
-	.flags		= AXFLG_MAC_FROMDEV,
-	.wordlength	= 2
+	.flags		= 0, /* defined later */
+	.wordlength	= 2,
 };
 };
 
 
 static struct resource colibri_asix_resource[] = {
 static struct resource colibri_asix_resource[] = {
@@ -51,7 +51,7 @@ static struct resource colibri_asix_resource[] = {
 	[1] = {
 	[1] = {
 		.start = gpio_to_irq(COLIBRI_ETH_IRQ_GPIO),
 		.start = gpio_to_irq(COLIBRI_ETH_IRQ_GPIO),
 		.end   = gpio_to_irq(COLIBRI_ETH_IRQ_GPIO),
 		.end   = gpio_to_irq(COLIBRI_ETH_IRQ_GPIO),
-		.flags = IORESOURCE_IRQ
+		.flags = IORESOURCE_IRQ | IRQF_TRIGGER_FALLING,
 	}
 	}
 };
 };
 
 
@@ -72,8 +72,8 @@ static mfp_cfg_t colibri_pxa320_eth_pin_config[] __initdata = {
 
 
 static void __init colibri_pxa320_init_eth(void)
 static void __init colibri_pxa320_init_eth(void)
 {
 {
+	colibri_pxa3xx_init_eth(&colibri_asix_platdata);
 	pxa3xx_mfp_config(ARRAY_AND_SIZE(colibri_pxa320_eth_pin_config));
 	pxa3xx_mfp_config(ARRAY_AND_SIZE(colibri_pxa320_eth_pin_config));
-	set_irq_type(gpio_to_irq(COLIBRI_ETH_IRQ_GPIO), IRQ_TYPE_EDGE_FALLING);
 	platform_device_register(&asix_device);
 	platform_device_register(&asix_device);
 }
 }
 #else
 #else

+ 35 - 0
arch/arm/mach-pxa/colibri-pxa3xx.c

@@ -14,6 +14,7 @@
 #include <linux/kernel.h>
 #include <linux/kernel.h>
 #include <linux/platform_device.h>
 #include <linux/platform_device.h>
 #include <linux/gpio.h>
 #include <linux/gpio.h>
+#include <linux/etherdevice.h>
 #include <asm/mach-types.h>
 #include <asm/mach-types.h>
 #include <mach/hardware.h>
 #include <mach/hardware.h>
 #include <asm/sizes.h>
 #include <asm/sizes.h>
@@ -28,6 +29,40 @@
 #include "generic.h"
 #include "generic.h"
 #include "devices.h"
 #include "devices.h"
 
 
+#if defined(CONFIG_AX88796)
+#define ETHER_ADDR_LEN 6
+static u8 ether_mac_addr[ETHER_ADDR_LEN];
+
+void __init colibri_pxa3xx_init_eth(struct ax_plat_data *plat_data)
+{
+	int i;
+	u64 serial = ((u64) system_serial_high << 32) | system_serial_low;
+
+	/*
+	 * If the bootloader passed in a serial boot tag, which contains a
+	 * valid ethernet MAC, pass it to the interface. Toradex ships the
+	 * modules with their own bootloader which provides a valid MAC
+	 * this way.
+	 */
+
+	for (i = 0; i < ETHER_ADDR_LEN; i++) {
+		ether_mac_addr[i] = serial & 0xff;
+		serial >>= 8;
+	}
+
+	if (is_valid_ether_addr(ether_mac_addr)) {
+		plat_data->flags |= AXFLG_MAC_FROMPLATFORM;
+		plat_data->mac_addr = ether_mac_addr;
+		printk(KERN_INFO "%s(): taking MAC from serial boot tag\n",
+			__func__);
+	} else {
+		plat_data->flags |= AXFLG_MAC_FROMDEV;
+		printk(KERN_INFO "%s(): no valid serial boot tag found, "
+			"taking MAC from device\n", __func__);
+	}
+}
+#endif
+
 #if defined(CONFIG_MMC_PXA) || defined(CONFIG_MMC_PXA_MODULE)
 #if defined(CONFIG_MMC_PXA) || defined(CONFIG_MMC_PXA_MODULE)
 static int mmc_detect_pin;
 static int mmc_detect_pin;
 
 

+ 5 - 0
arch/arm/mach-pxa/csb701.c

@@ -5,6 +5,8 @@
 #include <linux/input.h>
 #include <linux/input.h>
 #include <linux/leds.h>
 #include <linux/leds.h>
 
 
+#include <asm/mach-types.h>
+
 static struct gpio_keys_button csb701_buttons[] = {
 static struct gpio_keys_button csb701_buttons[] = {
 	{
 	{
 		.code	= 0x7,
 		.code	= 0x7,
@@ -54,6 +56,9 @@ static struct platform_device *devices[] __initdata = {
 
 
 static int __init csb701_init(void)
 static int __init csb701_init(void)
 {
 {
+	if (!machine_is_csb726())
+		return -ENODEV;
+
 	return platform_add_devices(devices, ARRAY_SIZE(devices));
 	return platform_add_devices(devices, ARRAY_SIZE(devices));
 }
 }
 
 

+ 2 - 0
arch/arm/mach-pxa/e740.c

@@ -29,6 +29,7 @@
 #include <mach/udc.h>
 #include <mach/udc.h>
 #include <mach/irda.h>
 #include <mach/irda.h>
 #include <mach/irqs.h>
 #include <mach/irqs.h>
+#include <mach/audio.h>
 
 
 #include "generic.h"
 #include "generic.h"
 #include "eseries.h"
 #include "eseries.h"
@@ -197,6 +198,7 @@ static void __init e740_init(void)
 	eseries_get_tmio_gpios();
 	eseries_get_tmio_gpios();
 	platform_add_devices(devices, ARRAY_SIZE(devices));
 	platform_add_devices(devices, ARRAY_SIZE(devices));
 	pxa_set_udc_info(&e7xx_udc_mach_info);
 	pxa_set_udc_info(&e7xx_udc_mach_info);
+	pxa_set_ac97_info(NULL);
 	e7xx_irda_init();
 	e7xx_irda_init();
 	pxa_set_ficp_info(&e7xx_ficp_platform_data);
 	pxa_set_ficp_info(&e7xx_ficp_platform_data);
 }
 }

+ 2 - 0
arch/arm/mach-pxa/e750.c

@@ -28,6 +28,7 @@
 #include <mach/udc.h>
 #include <mach/udc.h>
 #include <mach/irda.h>
 #include <mach/irda.h>
 #include <mach/irqs.h>
 #include <mach/irqs.h>
+#include <mach/audio.h>
 
 
 #include "generic.h"
 #include "generic.h"
 #include "eseries.h"
 #include "eseries.h"
@@ -198,6 +199,7 @@ static void __init e750_init(void)
 	eseries_get_tmio_gpios();
 	eseries_get_tmio_gpios();
 	platform_add_devices(devices, ARRAY_SIZE(devices));
 	platform_add_devices(devices, ARRAY_SIZE(devices));
 	pxa_set_udc_info(&e7xx_udc_mach_info);
 	pxa_set_udc_info(&e7xx_udc_mach_info);
+	pxa_set_ac97_info(NULL);
 	e7xx_irda_init();
 	e7xx_irda_init();
 	pxa_set_ficp_info(&e7xx_ficp_platform_data);
 	pxa_set_ficp_info(&e7xx_ficp_platform_data);
 }
 }

+ 2 - 0
arch/arm/mach-pxa/e800.c

@@ -27,6 +27,7 @@
 #include <mach/eseries-gpio.h>
 #include <mach/eseries-gpio.h>
 #include <mach/udc.h>
 #include <mach/udc.h>
 #include <mach/irqs.h>
 #include <mach/irqs.h>
+#include <mach/audio.h>
 
 
 #include "generic.h"
 #include "generic.h"
 #include "eseries.h"
 #include "eseries.h"
@@ -199,6 +200,7 @@ static void __init e800_init(void)
 	eseries_get_tmio_gpios();
 	eseries_get_tmio_gpios();
 	platform_add_devices(devices, ARRAY_SIZE(devices));
 	platform_add_devices(devices, ARRAY_SIZE(devices));
 	pxa_set_udc_info(&e800_udc_mach_info);
 	pxa_set_udc_info(&e800_udc_mach_info);
+	pxa_set_ac97_info(NULL);
 }
 }
 
 
 MACHINE_START(E800, "Toshiba e800")
 MACHINE_START(E800, "Toshiba e800")

+ 78 - 8
arch/arm/mach-pxa/em-x270.c

@@ -25,8 +25,10 @@
 #include <linux/regulator/machine.h>
 #include <linux/regulator/machine.h>
 #include <linux/spi/spi.h>
 #include <linux/spi/spi.h>
 #include <linux/spi/tdo24m.h>
 #include <linux/spi/tdo24m.h>
+#include <linux/spi/libertas_spi.h>
 #include <linux/power_supply.h>
 #include <linux/power_supply.h>
 #include <linux/apm-emulation.h>
 #include <linux/apm-emulation.h>
+#include <linux/delay.h>
 
 
 #include <media/soc_camera.h>
 #include <media/soc_camera.h>
 
 
@@ -62,6 +64,8 @@
 #define GPIO93_CAM_RESET	(93)
 #define GPIO93_CAM_RESET	(93)
 #define GPIO41_ETHIRQ		(41)
 #define GPIO41_ETHIRQ		(41)
 #define EM_X270_ETHIRQ		IRQ_GPIO(GPIO41_ETHIRQ)
 #define EM_X270_ETHIRQ		IRQ_GPIO(GPIO41_ETHIRQ)
+#define GPIO115_WLAN_PWEN	(115)
+#define GPIO19_WLAN_STRAP	(19)
 
 
 static int mmc_cd;
 static int mmc_cd;
 static int nand_rb;
 static int nand_rb;
@@ -159,8 +163,8 @@ static unsigned long common_pin_config[] = {
 	GPIO57_SSP1_TXD,
 	GPIO57_SSP1_TXD,
 
 
 	/* SSP2 */
 	/* SSP2 */
-	GPIO19_SSP2_SCLK,
-	GPIO14_SSP2_SFRM,
+	GPIO19_GPIO,	/* SSP2 clock is used as GPIO for Libertas pin-strap */
+	GPIO14_GPIO,
 	GPIO89_SSP2_TXD,
 	GPIO89_SSP2_TXD,
 	GPIO88_SSP2_RXD,
 	GPIO88_SSP2_RXD,
 
 
@@ -648,20 +652,86 @@ static struct tdo24m_platform_data em_x270_tdo24m_pdata = {
 	.model = TDO35S,
 	.model = TDO35S,
 };
 };
 
 
+static struct pxa2xx_spi_master em_x270_spi_2_info = {
+	.num_chipselect	= 1,
+	.enable_dma	= 1,
+};
+
+static struct pxa2xx_spi_chip em_x270_libertas_chip = {
+	.rx_threshold	= 1,
+	.tx_threshold	= 1,
+	.timeout	= 1000,
+};
+
+static unsigned long em_x270_libertas_pin_config[] = {
+	/* SSP2 */
+	GPIO19_SSP2_SCLK,
+	GPIO14_GPIO,
+	GPIO89_SSP2_TXD,
+	GPIO88_SSP2_RXD,
+};
+
+static int em_x270_libertas_setup(struct spi_device *spi)
+{
+	int err = gpio_request(GPIO115_WLAN_PWEN, "WLAN PWEN");
+	if (err)
+		return err;
+
+	gpio_direction_output(GPIO19_WLAN_STRAP, 1);
+	mdelay(100);
+
+	pxa2xx_mfp_config(ARRAY_AND_SIZE(em_x270_libertas_pin_config));
+
+	gpio_direction_output(GPIO115_WLAN_PWEN, 0);
+	mdelay(100);
+	gpio_set_value(GPIO115_WLAN_PWEN, 1);
+	mdelay(100);
+
+	spi->bits_per_word = 16;
+	spi_setup(spi);
+
+	return 0;
+}
+
+static int em_x270_libertas_teardown(struct spi_device *spi)
+{
+	gpio_set_value(GPIO115_WLAN_PWEN, 0);
+	gpio_free(GPIO115_WLAN_PWEN);
+
+	return 0;
+}
+
+struct libertas_spi_platform_data em_x270_libertas_pdata = {
+	.use_dummy_writes	= 1,
+	.gpio_cs		= 14,
+	.setup			= em_x270_libertas_setup,
+	.teardown		= em_x270_libertas_teardown,
+};
+
 static struct spi_board_info em_x270_spi_devices[] __initdata = {
 static struct spi_board_info em_x270_spi_devices[] __initdata = {
 	{
 	{
-		.modalias = "tdo24m",
-		.max_speed_hz = 1000000,
-		.bus_num = 1,
-		.chip_select = 0,
-		.controller_data = &em_x270_tdo24m_chip,
-		.platform_data = &em_x270_tdo24m_pdata,
+		.modalias		= "tdo24m",
+		.max_speed_hz		= 1000000,
+		.bus_num		= 1,
+		.chip_select		= 0,
+		.controller_data	= &em_x270_tdo24m_chip,
+		.platform_data		= &em_x270_tdo24m_pdata,
+	},
+	{
+		.modalias		= "libertas_spi",
+		.max_speed_hz		= 13000000,
+		.bus_num		= 2,
+		.irq			= IRQ_GPIO(116),
+		.chip_select		= 0,
+		.controller_data	= &em_x270_libertas_chip,
+		.platform_data		= &em_x270_libertas_pdata,
 	},
 	},
 };
 };
 
 
 static void __init em_x270_init_spi(void)
 static void __init em_x270_init_spi(void)
 {
 {
 	pxa2xx_set_spi_info(1, &em_x270_spi_info);
 	pxa2xx_set_spi_info(1, &em_x270_spi_info);
+	pxa2xx_set_spi_info(2, &em_x270_spi_2_info);
 	spi_register_board_info(ARRAY_AND_SIZE(em_x270_spi_devices));
 	spi_register_board_info(ARRAY_AND_SIZE(em_x270_spi_devices));
 }
 }
 #else
 #else

+ 7 - 0
arch/arm/mach-pxa/include/mach/colibri.h

@@ -1,5 +1,8 @@
 #ifndef _COLIBRI_H_
 #ifndef _COLIBRI_H_
 #define _COLIBRI_H_
 #define _COLIBRI_H_
+
+#include <net/ax88796.h>
+
 /*
 /*
  * common settings for all modules
  * common settings for all modules
  */
  */
@@ -16,6 +19,10 @@ extern void colibri_pxa3xx_init_lcd(int bl_pin);
 static inline void colibri_pxa3xx_init_lcd(int) {}
 static inline void colibri_pxa3xx_init_lcd(int) {}
 #endif
 #endif
 
 
+#if defined(CONFIG_AX88796)
+extern void colibri_pxa3xx_init_eth(struct ax_plat_data *plat_data);
+#endif
+
 /* physical memory regions */
 /* physical memory regions */
 #define COLIBRI_SDRAM_BASE	0xa0000000      /* SDRAM region */
 #define COLIBRI_SDRAM_BASE	0xa0000000      /* SDRAM region */
 
 

+ 2 - 2
arch/arm/mach-pxa/include/mach/magician.h

@@ -27,7 +27,7 @@
 #define GPIO22_MAGICIAN_VIBRA_EN		22
 #define GPIO22_MAGICIAN_VIBRA_EN		22
 #define GPIO26_MAGICIAN_GSM_POWER		26
 #define GPIO26_MAGICIAN_GSM_POWER		26
 #define GPIO27_MAGICIAN_USBC_PUEN		27
 #define GPIO27_MAGICIAN_USBC_PUEN		27
-#define GPIO30_MAGICIAN_nCHARGE_EN		30
+#define GPIO30_MAGICIAN_BQ24022_nCHARGE_EN	30
 #define GPIO37_MAGICIAN_KEY_HANGUP		37
 #define GPIO37_MAGICIAN_KEY_HANGUP		37
 #define GPIO38_MAGICIAN_KEY_CONTACTS		38
 #define GPIO38_MAGICIAN_KEY_CONTACTS		38
 #define GPIO40_MAGICIAN_GSM_OUT2		40
 #define GPIO40_MAGICIAN_GSM_OUT2		40
@@ -98,7 +98,7 @@
 #define EGPIO_MAGICIAN_UNKNOWN_WAVEDEV_DLL	MAGICIAN_EGPIO(2, 2)
 #define EGPIO_MAGICIAN_UNKNOWN_WAVEDEV_DLL	MAGICIAN_EGPIO(2, 2)
 #define EGPIO_MAGICIAN_FLASH_VPP		MAGICIAN_EGPIO(2, 3)
 #define EGPIO_MAGICIAN_FLASH_VPP		MAGICIAN_EGPIO(2, 3)
 #define EGPIO_MAGICIAN_BL_POWER2		MAGICIAN_EGPIO(2, 4)
 #define EGPIO_MAGICIAN_BL_POWER2		MAGICIAN_EGPIO(2, 4)
-#define EGPIO_MAGICIAN_CHARGE_EN		MAGICIAN_EGPIO(2, 5)
+#define EGPIO_MAGICIAN_BQ24022_ISET2		MAGICIAN_EGPIO(2, 5)
 #define EGPIO_MAGICIAN_GSM_POWER		MAGICIAN_EGPIO(2, 7)
 #define EGPIO_MAGICIAN_GSM_POWER		MAGICIAN_EGPIO(2, 7)
 
 
 /* input */
 /* input */

+ 1 - 0
arch/arm/mach-pxa/include/mach/palmld.h

@@ -87,6 +87,7 @@
 #define PALMLD_IDE_SIZE		0x00100000
 #define PALMLD_IDE_SIZE		0x00100000
 
 
 #define PALMLD_PHYS_IO_START	0x40000000
 #define PALMLD_PHYS_IO_START	0x40000000
+#define PALMLD_STR_BASE		0xa0200000
 
 
 /* BATTERY */
 /* BATTERY */
 #define PALMLD_BAT_MAX_VOLTAGE		4000	/* 4.00V maximum voltage */
 #define PALMLD_BAT_MAX_VOLTAGE		4000	/* 4.00V maximum voltage */

+ 1 - 0
arch/arm/mach-pxa/include/mach/palmt5.h

@@ -59,6 +59,7 @@
 /* Various addresses  */
 /* Various addresses  */
 #define PALMT5_PHYS_RAM_START	0xa0000000
 #define PALMT5_PHYS_RAM_START	0xa0000000
 #define PALMT5_PHYS_IO_START	0x40000000
 #define PALMT5_PHYS_IO_START	0x40000000
+#define PALMT5_STR_BASE		0xa0200000
 
 
 /* TOUCHSCREEN */
 /* TOUCHSCREEN */
 #define AC97_LINK_FRAME		21
 #define AC97_LINK_FRAME		21

+ 68 - 0
arch/arm/mach-pxa/include/mach/palmte2.h

@@ -0,0 +1,68 @@
+/*
+ * GPIOs and interrupts for Palm Tungsten|E2 Handheld Computer
+ *
+ * Author:
+ *		Carlos Eduardo Medaglia Dyonisio <cadu@nerdfeliz.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ *
+ */
+
+#ifndef _INCLUDE_PALMTE2_H_
+#define _INCLUDE_PALMTE2_H_
+
+/** HERE ARE GPIOs **/
+
+/* GPIOs */
+#define GPIO_NR_PALMTE2_POWER_DETECT		9
+#define GPIO_NR_PALMTE2_HOTSYNC_BUTTON_N	4
+#define GPIO_NR_PALMTE2_EARPHONE_DETECT		15
+
+/* SD/MMC */
+#define GPIO_NR_PALMTE2_SD_DETECT_N		10
+#define GPIO_NR_PALMTE2_SD_POWER		55
+#define GPIO_NR_PALMTE2_SD_READONLY		51
+
+/* IRDA -  disable GPIO connected to SD pin of tranceiver (TFBS4710?) ? */
+#define GPIO_NR_PALMTE2_IR_DISABLE		48
+
+/* USB */
+#define GPIO_NR_PALMTE2_USB_DETECT_N		35
+#define GPIO_NR_PALMTE2_USB_PULLUP		53
+
+/* LCD/BACKLIGHT */
+#define GPIO_NR_PALMTE2_BL_POWER		56
+#define GPIO_NR_PALMTE2_LCD_POWER		37
+
+/* KEYS */
+#define GPIO_NR_PALMTE2_KEY_NOTES	5
+#define GPIO_NR_PALMTE2_KEY_TASKS	7
+#define GPIO_NR_PALMTE2_KEY_CALENDAR	11
+#define GPIO_NR_PALMTE2_KEY_CONTACTS	13
+#define GPIO_NR_PALMTE2_KEY_CENTER	14
+#define GPIO_NR_PALMTE2_KEY_LEFT	19
+#define GPIO_NR_PALMTE2_KEY_RIGHT	20
+#define GPIO_NR_PALMTE2_KEY_DOWN	21
+#define GPIO_NR_PALMTE2_KEY_UP		22
+
+/** HERE ARE INIT VALUES **/
+
+/* BACKLIGHT */
+#define PALMTE2_MAX_INTENSITY		0xFE
+#define PALMTE2_DEFAULT_INTENSITY	0x7E
+#define PALMTE2_LIMIT_MASK		0x7F
+#define PALMTE2_PRESCALER		0x3F
+#define PALMTE2_PERIOD_NS		3500
+
+/* BATTERY */
+#define PALMTE2_BAT_MAX_VOLTAGE		4000	/* 4.00v current voltage */
+#define PALMTE2_BAT_MIN_VOLTAGE		3550	/* 3.55v critical voltage */
+#define PALMTE2_BAT_MAX_CURRENT		0	/* unknokn */
+#define PALMTE2_BAT_MIN_CURRENT		0	/* unknown */
+#define PALMTE2_BAT_MAX_CHARGE		1	/* unknown */
+#define PALMTE2_BAT_MIN_CHARGE		1	/* unknown */
+#define PALMTE2_MAX_LIFE_MINS		360	/* on-life in minutes */
+
+#endif

+ 2 - 0
arch/arm/mach-pxa/include/mach/palmtx.h

@@ -78,6 +78,8 @@
 #define PALMTX_PHYS_RAM_START	0xa0000000
 #define PALMTX_PHYS_RAM_START	0xa0000000
 #define PALMTX_PHYS_IO_START	0x40000000
 #define PALMTX_PHYS_IO_START	0x40000000
 
 
+#define PALMTX_STR_BASE		0xa0200000
+
 #define PALMTX_PHYS_FLASH_START	PXA_CS0_PHYS	/* ChipSelect 0 */
 #define PALMTX_PHYS_FLASH_START	PXA_CS0_PHYS	/* ChipSelect 0 */
 #define PALMTX_PHYS_NAND_START	PXA_CS1_PHYS	/* ChipSelect 1 */
 #define PALMTX_PHYS_NAND_START	PXA_CS1_PHYS	/* ChipSelect 1 */
 
 

+ 1 - 0
arch/arm/mach-pxa/include/mach/pxa2xx_spi.h

@@ -38,6 +38,7 @@ struct pxa2xx_spi_chip {
 	u8 dma_burst_size;
 	u8 dma_burst_size;
 	u32 timeout;
 	u32 timeout;
 	u8 enable_loopback;
 	u8 enable_loopback;
+	int gpio_cs;
 	void (*cs_control)(u32 command);
 	void (*cs_control)(u32 command);
 };
 };
 
 

+ 3 - 0
arch/arm/mach-pxa/include/mach/pxa3xx_nand.h

@@ -49,6 +49,9 @@ struct pxa3xx_nand_platform_data {
 	 */
 	 */
 	int	enable_arbiter;
 	int	enable_arbiter;
 
 
+	/* allow platform code to keep OBM/bootloader defined NFC config */
+	int	keep_config;
+
 	const struct mtd_partition		*parts;
 	const struct mtd_partition		*parts;
 	unsigned int				nr_parts;
 	unsigned int				nr_parts;
 
 

+ 41 - 43
arch/arm/mach-pxa/magician.c

@@ -25,6 +25,8 @@
 #include <linux/mtd/physmap.h>
 #include <linux/mtd/physmap.h>
 #include <linux/pda_power.h>
 #include <linux/pda_power.h>
 #include <linux/pwm_backlight.h>
 #include <linux/pwm_backlight.h>
+#include <linux/regulator/bq24022.h>
+#include <linux/regulator/machine.h>
 #include <linux/usb/gpio_vbus.h>
 #include <linux/usb/gpio_vbus.h>
 
 
 #include <mach/hardware.h>
 #include <mach/hardware.h>
@@ -552,33 +554,7 @@ static struct platform_device gpio_vbus = {
 
 
 static int power_supply_init(struct device *dev)
 static int power_supply_init(struct device *dev)
 {
 {
-	int ret;
-
-	ret = gpio_request(EGPIO_MAGICIAN_CABLE_STATE_AC, "CABLE_STATE_AC");
-	if (ret)
-		goto err_cs_ac;
-	ret = gpio_request(EGPIO_MAGICIAN_CABLE_STATE_USB, "CABLE_STATE_USB");
-	if (ret)
-		goto err_cs_usb;
-	ret = gpio_request(EGPIO_MAGICIAN_CHARGE_EN, "CHARGE_EN");
-	if (ret)
-		goto err_chg_en;
-	ret = gpio_request(GPIO30_MAGICIAN_nCHARGE_EN, "nCHARGE_EN");
-	if (!ret)
-		ret = gpio_direction_output(GPIO30_MAGICIAN_nCHARGE_EN, 0);
-	if (ret)
-		goto err_nchg_en;
-
-	return 0;
-
-err_nchg_en:
-	gpio_free(EGPIO_MAGICIAN_CHARGE_EN);
-err_chg_en:
-	gpio_free(EGPIO_MAGICIAN_CABLE_STATE_USB);
-err_cs_usb:
-	gpio_free(EGPIO_MAGICIAN_CABLE_STATE_AC);
-err_cs_ac:
-	return ret;
+	return gpio_request(EGPIO_MAGICIAN_CABLE_STATE_AC, "CABLE_STATE_AC");
 }
 }
 
 
 static int magician_is_ac_online(void)
 static int magician_is_ac_online(void)
@@ -586,22 +562,8 @@ static int magician_is_ac_online(void)
 	return gpio_get_value(EGPIO_MAGICIAN_CABLE_STATE_AC);
 	return gpio_get_value(EGPIO_MAGICIAN_CABLE_STATE_AC);
 }
 }
 
 
-static int magician_is_usb_online(void)
-{
-	return gpio_get_value(EGPIO_MAGICIAN_CABLE_STATE_USB);
-}
-
-static void magician_set_charge(int flags)
-{
-	gpio_set_value(GPIO30_MAGICIAN_nCHARGE_EN, !flags);
-	gpio_set_value(EGPIO_MAGICIAN_CHARGE_EN, flags);
-}
-
 static void power_supply_exit(struct device *dev)
 static void power_supply_exit(struct device *dev)
 {
 {
-	gpio_free(GPIO30_MAGICIAN_nCHARGE_EN);
-	gpio_free(EGPIO_MAGICIAN_CHARGE_EN);
-	gpio_free(EGPIO_MAGICIAN_CABLE_STATE_USB);
 	gpio_free(EGPIO_MAGICIAN_CABLE_STATE_AC);
 	gpio_free(EGPIO_MAGICIAN_CABLE_STATE_AC);
 }
 }
 
 
@@ -612,8 +574,6 @@ static char *magician_supplicants[] = {
 static struct pda_power_pdata power_supply_info = {
 static struct pda_power_pdata power_supply_info = {
 	.init            = power_supply_init,
 	.init            = power_supply_init,
 	.is_ac_online    = magician_is_ac_online,
 	.is_ac_online    = magician_is_ac_online,
-	.is_usb_online   = magician_is_usb_online,
-	.set_charge      = magician_set_charge,
 	.exit            = power_supply_exit,
 	.exit            = power_supply_exit,
 	.supplied_to     = magician_supplicants,
 	.supplied_to     = magician_supplicants,
 	.num_supplicants = ARRAY_SIZE(magician_supplicants),
 	.num_supplicants = ARRAY_SIZE(magician_supplicants),
@@ -646,6 +606,43 @@ static struct platform_device power_supply = {
 	.num_resources = ARRAY_SIZE(power_supply_resources),
 	.num_resources = ARRAY_SIZE(power_supply_resources),
 };
 };
 
 
+/*
+ * Battery charger
+ */
+
+static struct regulator_consumer_supply bq24022_consumers[] = {
+	{
+		.dev = &gpio_vbus.dev,
+		.supply = "vbus_draw",
+	},
+	{
+		.dev = &power_supply.dev,
+		.supply = "ac_draw",
+	},
+};
+
+static struct regulator_init_data bq24022_init_data = {
+	.constraints = {
+		.max_uA         = 500000,
+		.valid_ops_mask = REGULATOR_CHANGE_CURRENT,
+	},
+	.num_consumer_supplies  = ARRAY_SIZE(bq24022_consumers),
+	.consumer_supplies      = bq24022_consumers,
+};
+
+static struct bq24022_mach_info bq24022_info = {
+	.gpio_nce   = GPIO30_MAGICIAN_BQ24022_nCHARGE_EN,
+	.gpio_iset2 = EGPIO_MAGICIAN_BQ24022_ISET2,
+	.init_data  = &bq24022_init_data,
+};
+
+static struct platform_device bq24022 = {
+	.name = "bq24022",
+	.id   = -1,
+	.dev  = {
+		.platform_data = &bq24022_info,
+	},
+};
 
 
 /*
 /*
  * MMC/SD
  * MMC/SD
@@ -756,6 +753,7 @@ static struct platform_device *devices[] __initdata = {
 	&egpio,
 	&egpio,
 	&backlight,
 	&backlight,
 	&pasic3,
 	&pasic3,
+	&bq24022,
 	&gpio_vbus,
 	&gpio_vbus,
 	&power_supply,
 	&power_supply,
 	&strataflash,
 	&strataflash,

+ 2 - 4
arch/arm/mach-pxa/mioa701.c

@@ -50,6 +50,7 @@
 #include <mach/pxa27x-udc.h>
 #include <mach/pxa27x-udc.h>
 #include <mach/i2c.h>
 #include <mach/i2c.h>
 #include <mach/camera.h>
 #include <mach/camera.h>
+#include <mach/audio.h>
 #include <media/soc_camera.h>
 #include <media/soc_camera.h>
 
 
 #include <mach/mioa701.h>
 #include <mach/mioa701.h>
@@ -763,8 +764,6 @@ MIO_PARENT_DEV(mioa701_backlight, "pwm-backlight",  &pxa27x_device_pwm0.dev,
 		&mioa701_backlight_data);
 		&mioa701_backlight_data);
 MIO_SIMPLE_DEV(mioa701_led,	  "leds-gpio",	    &gpio_led_info)
 MIO_SIMPLE_DEV(mioa701_led,	  "leds-gpio",	    &gpio_led_info)
 MIO_SIMPLE_DEV(pxa2xx_pcm,	  "pxa2xx-pcm",	    NULL)
 MIO_SIMPLE_DEV(pxa2xx_pcm,	  "pxa2xx-pcm",	    NULL)
-MIO_SIMPLE_DEV(pxa2xx_ac97,	  "pxa2xx-ac97",    NULL)
-MIO_PARENT_DEV(mio_wm9713_codec,  "wm9713-codec",   &pxa2xx_ac97.dev, NULL)
 MIO_SIMPLE_DEV(mioa701_sound,	  "mioa701-wm9713", NULL)
 MIO_SIMPLE_DEV(mioa701_sound,	  "mioa701-wm9713", NULL)
 MIO_SIMPLE_DEV(mioa701_board,	  "mioa701-board",  NULL)
 MIO_SIMPLE_DEV(mioa701_board,	  "mioa701-board",  NULL)
 MIO_SIMPLE_DEV(gpio_vbus,	  "gpio-vbus",      &gpio_vbus_data);
 MIO_SIMPLE_DEV(gpio_vbus,	  "gpio-vbus",      &gpio_vbus_data);
@@ -774,8 +773,6 @@ static struct platform_device *devices[] __initdata = {
 	&mioa701_backlight,
 	&mioa701_backlight,
 	&mioa701_led,
 	&mioa701_led,
 	&pxa2xx_pcm,
 	&pxa2xx_pcm,
-	&pxa2xx_ac97,
-	&mio_wm9713_codec,
 	&mioa701_sound,
 	&mioa701_sound,
 	&power_dev,
 	&power_dev,
 	&strataflash,
 	&strataflash,
@@ -818,6 +815,7 @@ static void __init mioa701_machine_init(void)
 	pxa_set_keypad_info(&mioa701_keypad_info);
 	pxa_set_keypad_info(&mioa701_keypad_info);
 	wm97xx_bat_set_pdata(&mioa701_battery_data);
 	wm97xx_bat_set_pdata(&mioa701_battery_data);
 	pxa_set_udc_info(&mioa701_udc_info);
 	pxa_set_udc_info(&mioa701_udc_info);
+	pxa_set_ac97_info(NULL);
 	pm_power_off = mioa701_poweroff;
 	pm_power_off = mioa701_poweroff;
 	arm_pm_restart = mioa701_restart;
 	arm_pm_restart = mioa701_restart;
 	platform_add_devices(devices, ARRAY_SIZE(devices));
 	platform_add_devices(devices, ARRAY_SIZE(devices));

+ 32 - 4
arch/arm/mach-pxa/palmld.c

@@ -24,6 +24,7 @@
 #include <linux/gpio.h>
 #include <linux/gpio.h>
 #include <linux/wm97xx_batt.h>
 #include <linux/wm97xx_batt.h>
 #include <linux/power_supply.h>
 #include <linux/power_supply.h>
+#include <linux/sysdev.h>
 
 
 #include <asm/mach-types.h>
 #include <asm/mach-types.h>
 #include <asm/mach/arch.h>
 #include <asm/mach/arch.h>
@@ -68,10 +69,10 @@ static unsigned long palmld_pin_config[] __initdata = {
 	GPIO47_FICP_TXD,
 	GPIO47_FICP_TXD,
 
 
 	/* MATRIX KEYPAD */
 	/* MATRIX KEYPAD */
-	GPIO100_KP_MKIN_0,
-	GPIO101_KP_MKIN_1,
-	GPIO102_KP_MKIN_2,
-	GPIO97_KP_MKIN_3,
+	GPIO100_KP_MKIN_0 | WAKEUP_ON_LEVEL_HIGH,
+	GPIO101_KP_MKIN_1 | WAKEUP_ON_LEVEL_HIGH,
+	GPIO102_KP_MKIN_2 | WAKEUP_ON_LEVEL_HIGH,
+	GPIO97_KP_MKIN_3 | WAKEUP_ON_LEVEL_HIGH,
 	GPIO103_KP_MKOUT_0,
 	GPIO103_KP_MKOUT_0,
 	GPIO104_KP_MKOUT_1,
 	GPIO104_KP_MKOUT_1,
 	GPIO105_KP_MKOUT_2,
 	GPIO105_KP_MKOUT_2,
@@ -506,6 +507,33 @@ static struct pxafb_mach_info palmld_lcd_screen = {
 	.lcd_conn	= LCD_COLOR_TFT_16BPP | LCD_PCLK_EDGE_FALL,
 	.lcd_conn	= LCD_COLOR_TFT_16BPP | LCD_PCLK_EDGE_FALL,
 };
 };
 
 
+/******************************************************************************
+ * Power management - standby
+ ******************************************************************************/
+#ifdef CONFIG_PM
+static u32 *addr __initdata;
+static u32 resume[3] __initdata = {
+	0xe3a00101,	/* mov	r0,	#0x40000000 */
+	0xe380060f,	/* orr	r0, r0, #0x00f00000 */
+	0xe590f008,	/* ldr	pc, [r0, #0x08] */
+};
+
+static int __init palmld_pm_init(void)
+{
+	int i;
+
+	/* this is where the bootloader jumps */
+	addr = phys_to_virt(PALMLD_STR_BASE);
+
+	for (i = 0; i < 3; i++)
+		addr[i] = resume[i];
+
+	return 0;
+}
+
+device_initcall(palmld_pm_init);
+#endif
+
 /******************************************************************************
 /******************************************************************************
  * Machine init
  * Machine init
  ******************************************************************************/
  ******************************************************************************/

+ 31 - 4
arch/arm/mach-pxa/palmt5.c

@@ -75,10 +75,10 @@ static unsigned long palmt5_pin_config[] __initdata = {
 	GPIO95_GPIO,	/* usb power */
 	GPIO95_GPIO,	/* usb power */
 
 
 	/* MATRIX KEYPAD */
 	/* MATRIX KEYPAD */
-	GPIO100_KP_MKIN_0,
-	GPIO101_KP_MKIN_1,
-	GPIO102_KP_MKIN_2,
-	GPIO97_KP_MKIN_3,
+	GPIO100_KP_MKIN_0 | WAKEUP_ON_LEVEL_HIGH,
+	GPIO101_KP_MKIN_1 | WAKEUP_ON_LEVEL_HIGH,
+	GPIO102_KP_MKIN_2 | WAKEUP_ON_LEVEL_HIGH,
+	GPIO97_KP_MKIN_3 | WAKEUP_ON_LEVEL_HIGH,
 	GPIO103_KP_MKOUT_0,
 	GPIO103_KP_MKOUT_0,
 	GPIO104_KP_MKOUT_1,
 	GPIO104_KP_MKOUT_1,
 	GPIO105_KP_MKOUT_2,
 	GPIO105_KP_MKOUT_2,
@@ -449,6 +449,33 @@ static struct pxafb_mach_info palmt5_lcd_screen = {
 	.lcd_conn	= LCD_COLOR_TFT_16BPP | LCD_PCLK_EDGE_FALL,
 	.lcd_conn	= LCD_COLOR_TFT_16BPP | LCD_PCLK_EDGE_FALL,
 };
 };
 
 
+/******************************************************************************
+ * Power management - standby
+ ******************************************************************************/
+#ifdef CONFIG_PM
+static u32 *addr __initdata;
+static u32 resume[3] __initdata = {
+	0xe3a00101,	/* mov	r0,	#0x40000000 */
+	0xe380060f,	/* orr	r0, r0, #0x00f00000 */
+	0xe590f008,	/* ldr	pc, [r0, #0x08] */
+};
+
+static int __init palmt5_pm_init(void)
+{
+	int i;
+
+	/* this is where the bootloader jumps */
+	addr = phys_to_virt(PALMT5_STR_BASE);
+
+	for (i = 0; i < 3; i++)
+		addr[i] = resume[i];
+
+	return 0;
+}
+
+device_initcall(palmt5_pm_init);
+#endif
+
 /******************************************************************************
 /******************************************************************************
  * Machine init
  * Machine init
  ******************************************************************************/
  ******************************************************************************/

+ 466 - 0
arch/arm/mach-pxa/palmte2.c

@@ -0,0 +1,466 @@
+/*
+ * Hardware definitions for Palm Tungsten|E2
+ *
+ * Author:
+ *	Carlos Eduardo Medaglia Dyonisio <cadu@nerdfeliz.com>
+ *
+ * Rewrite for mainline:
+ *	Marek Vasut <marek.vasut@gmail.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ *
+ * (find more info at www.hackndev.com)
+ *
+ */
+
+#include <linux/platform_device.h>
+#include <linux/delay.h>
+#include <linux/irq.h>
+#include <linux/gpio_keys.h>
+#include <linux/input.h>
+#include <linux/pda_power.h>
+#include <linux/pwm_backlight.h>
+#include <linux/gpio.h>
+#include <linux/wm97xx_batt.h>
+#include <linux/power_supply.h>
+
+#include <asm/mach-types.h>
+#include <asm/mach/arch.h>
+#include <asm/mach/map.h>
+
+#include <mach/audio.h>
+#include <mach/palmte2.h>
+#include <mach/mmc.h>
+#include <mach/pxafb.h>
+#include <mach/mfp-pxa25x.h>
+#include <mach/irda.h>
+#include <mach/udc.h>
+
+#include "generic.h"
+#include "devices.h"
+
+/******************************************************************************
+ * Pin configuration
+ ******************************************************************************/
+static unsigned long palmte2_pin_config[] __initdata = {
+	/* MMC */
+	GPIO6_MMC_CLK,
+	GPIO8_MMC_CS0,
+	GPIO10_GPIO,	/* SD detect */
+	GPIO55_GPIO,	/* SD power */
+	GPIO51_GPIO,	/* SD r/o switch */
+
+	/* AC97 */
+	GPIO28_AC97_BITCLK,
+	GPIO29_AC97_SDATA_IN_0,
+	GPIO30_AC97_SDATA_OUT,
+	GPIO31_AC97_SYNC,
+
+	/* PWM */
+	GPIO16_PWM0_OUT,
+
+	/* USB */
+	GPIO15_GPIO,	/* usb detect */
+	GPIO53_GPIO,	/* usb power */
+
+	/* IrDA */
+	GPIO48_GPIO,	/* ir disable */
+	GPIO46_FICP_RXD,
+	GPIO47_FICP_TXD,
+
+	/* LCD */
+	GPIO58_LCD_LDD_0,
+	GPIO59_LCD_LDD_1,
+	GPIO60_LCD_LDD_2,
+	GPIO61_LCD_LDD_3,
+	GPIO62_LCD_LDD_4,
+	GPIO63_LCD_LDD_5,
+	GPIO64_LCD_LDD_6,
+	GPIO65_LCD_LDD_7,
+	GPIO66_LCD_LDD_8,
+	GPIO67_LCD_LDD_9,
+	GPIO68_LCD_LDD_10,
+	GPIO69_LCD_LDD_11,
+	GPIO70_LCD_LDD_12,
+	GPIO71_LCD_LDD_13,
+	GPIO72_LCD_LDD_14,
+	GPIO73_LCD_LDD_15,
+	GPIO74_LCD_FCLK,
+	GPIO75_LCD_LCLK,
+	GPIO76_LCD_PCLK,
+	GPIO77_LCD_BIAS,
+
+	/* GPIO KEYS */
+	GPIO5_GPIO,	/* notes */
+	GPIO7_GPIO,	/* tasks */
+	GPIO11_GPIO,	/* calendar */
+	GPIO13_GPIO,	/* contacts */
+	GPIO14_GPIO,	/* center */
+	GPIO19_GPIO,	/* left */
+	GPIO20_GPIO,	/* right */
+	GPIO21_GPIO,	/* down */
+	GPIO22_GPIO,	/* up */
+
+	/* MISC */
+	GPIO1_RST,	/* reset */
+	GPIO4_GPIO,	/* Hotsync button */
+	GPIO9_GPIO,	/* power detect */
+	GPIO37_GPIO,	/* LCD power */
+	GPIO56_GPIO,	/* Backlight power */
+};
+
+/******************************************************************************
+ * SD/MMC card controller
+ ******************************************************************************/
+static int palmte2_mci_init(struct device *dev,
+				irq_handler_t palmte2_detect_int, void *data)
+{
+	int err = 0;
+
+	/* Setup an interrupt for detecting card insert/remove events */
+	err = gpio_request(GPIO_NR_PALMTE2_SD_DETECT_N, "SD IRQ");
+	if (err)
+		goto err;
+	err = gpio_direction_input(GPIO_NR_PALMTE2_SD_DETECT_N);
+	if (err)
+		goto err2;
+	err = request_irq(gpio_to_irq(GPIO_NR_PALMTE2_SD_DETECT_N),
+			palmte2_detect_int, IRQF_DISABLED | IRQF_SAMPLE_RANDOM |
+			IRQF_TRIGGER_FALLING | IRQF_TRIGGER_RISING,
+			"SD/MMC card detect", data);
+	if (err) {
+		printk(KERN_ERR "%s: cannot request SD/MMC card detect IRQ\n",
+				__func__);
+		goto err2;
+	}
+
+	err = gpio_request(GPIO_NR_PALMTE2_SD_POWER, "SD_POWER");
+	if (err)
+		goto err3;
+	err = gpio_direction_output(GPIO_NR_PALMTE2_SD_POWER, 0);
+	if (err)
+		goto err4;
+
+	err = gpio_request(GPIO_NR_PALMTE2_SD_READONLY, "SD_READONLY");
+	if (err)
+		goto err4;
+	err = gpio_direction_input(GPIO_NR_PALMTE2_SD_READONLY);
+	if (err)
+		goto err5;
+
+	printk(KERN_DEBUG "%s: irq registered\n", __func__);
+
+	return 0;
+
+err5:
+	gpio_free(GPIO_NR_PALMTE2_SD_READONLY);
+err4:
+	gpio_free(GPIO_NR_PALMTE2_SD_POWER);
+err3:
+	free_irq(gpio_to_irq(GPIO_NR_PALMTE2_SD_DETECT_N), data);
+err2:
+	gpio_free(GPIO_NR_PALMTE2_SD_DETECT_N);
+err:
+	return err;
+}
+
+static void palmte2_mci_exit(struct device *dev, void *data)
+{
+	gpio_free(GPIO_NR_PALMTE2_SD_READONLY);
+	gpio_free(GPIO_NR_PALMTE2_SD_POWER);
+	free_irq(gpio_to_irq(GPIO_NR_PALMTE2_SD_DETECT_N), data);
+	gpio_free(GPIO_NR_PALMTE2_SD_DETECT_N);
+}
+
+static void palmte2_mci_power(struct device *dev, unsigned int vdd)
+{
+	struct pxamci_platform_data *p_d = dev->platform_data;
+	gpio_set_value(GPIO_NR_PALMTE2_SD_POWER, p_d->ocr_mask & (1 << vdd));
+}
+
+static int palmte2_mci_get_ro(struct device *dev)
+{
+	return gpio_get_value(GPIO_NR_PALMTE2_SD_READONLY);
+}
+
+static struct pxamci_platform_data palmte2_mci_platform_data = {
+	.ocr_mask	= MMC_VDD_32_33 | MMC_VDD_33_34,
+	.setpower	= palmte2_mci_power,
+	.get_ro		= palmte2_mci_get_ro,
+	.init 		= palmte2_mci_init,
+	.exit		= palmte2_mci_exit,
+};
+
+/******************************************************************************
+ * GPIO keys
+ ******************************************************************************/
+static struct gpio_keys_button palmte2_pxa_buttons[] = {
+	{KEY_F1,	GPIO_NR_PALMTE2_KEY_CONTACTS,	1, "Contacts" },
+	{KEY_F2,	GPIO_NR_PALMTE2_KEY_CALENDAR,	1, "Calendar" },
+	{KEY_F3,	GPIO_NR_PALMTE2_KEY_TASKS,	1, "Tasks" },
+	{KEY_F4,	GPIO_NR_PALMTE2_KEY_NOTES,	1, "Notes" },
+	{KEY_ENTER,	GPIO_NR_PALMTE2_KEY_CENTER,	1, "Center" },
+	{KEY_LEFT,	GPIO_NR_PALMTE2_KEY_LEFT,	1, "Left" },
+	{KEY_RIGHT,	GPIO_NR_PALMTE2_KEY_RIGHT,	1, "Right" },
+	{KEY_DOWN,	GPIO_NR_PALMTE2_KEY_DOWN,	1, "Down" },
+	{KEY_UP,	GPIO_NR_PALMTE2_KEY_UP,		1, "Up" },
+};
+
+static struct gpio_keys_platform_data palmte2_pxa_keys_data = {
+	.buttons	= palmte2_pxa_buttons,
+	.nbuttons	= ARRAY_SIZE(palmte2_pxa_buttons),
+};
+
+static struct platform_device palmte2_pxa_keys = {
+	.name	= "gpio-keys",
+	.id	= -1,
+	.dev	= {
+		.platform_data = &palmte2_pxa_keys_data,
+	},
+};
+
+/******************************************************************************
+ * Backlight
+ ******************************************************************************/
+static int palmte2_backlight_init(struct device *dev)
+{
+	int ret;
+
+	ret = gpio_request(GPIO_NR_PALMTE2_BL_POWER, "BL POWER");
+	if (ret)
+		goto err;
+	ret = gpio_direction_output(GPIO_NR_PALMTE2_BL_POWER, 0);
+	if (ret)
+		goto err2;
+	ret = gpio_request(GPIO_NR_PALMTE2_LCD_POWER, "LCD POWER");
+	if (ret)
+		goto err2;
+	ret = gpio_direction_output(GPIO_NR_PALMTE2_LCD_POWER, 0);
+	if (ret)
+		goto err3;
+
+	return 0;
+err3:
+	gpio_free(GPIO_NR_PALMTE2_LCD_POWER);
+err2:
+	gpio_free(GPIO_NR_PALMTE2_BL_POWER);
+err:
+	return ret;
+}
+
+static int palmte2_backlight_notify(int brightness)
+{
+	gpio_set_value(GPIO_NR_PALMTE2_BL_POWER, brightness);
+	gpio_set_value(GPIO_NR_PALMTE2_LCD_POWER, brightness);
+	return brightness;
+}
+
+static void palmte2_backlight_exit(struct device *dev)
+{
+	gpio_free(GPIO_NR_PALMTE2_BL_POWER);
+	gpio_free(GPIO_NR_PALMTE2_LCD_POWER);
+}
+
+static struct platform_pwm_backlight_data palmte2_backlight_data = {
+	.pwm_id		= 0,
+	.max_brightness	= PALMTE2_MAX_INTENSITY,
+	.dft_brightness	= PALMTE2_MAX_INTENSITY,
+	.pwm_period_ns	= PALMTE2_PERIOD_NS,
+	.init		= palmte2_backlight_init,
+	.notify		= palmte2_backlight_notify,
+	.exit		= palmte2_backlight_exit,
+};
+
+static struct platform_device palmte2_backlight = {
+	.name	= "pwm-backlight",
+	.dev	= {
+		.parent		= &pxa25x_device_pwm0.dev,
+		.platform_data	= &palmte2_backlight_data,
+	},
+};
+
+/******************************************************************************
+ * IrDA
+ ******************************************************************************/
+static int palmte2_irda_startup(struct device *dev)
+{
+	int err;
+	err = gpio_request(GPIO_NR_PALMTE2_IR_DISABLE, "IR DISABLE");
+	if (err)
+		goto err;
+	err = gpio_direction_output(GPIO_NR_PALMTE2_IR_DISABLE, 1);
+	if (err)
+		gpio_free(GPIO_NR_PALMTE2_IR_DISABLE);
+err:
+	return err;
+}
+
+static void palmte2_irda_shutdown(struct device *dev)
+{
+	gpio_free(GPIO_NR_PALMTE2_IR_DISABLE);
+}
+
+static void palmte2_irda_transceiver_mode(struct device *dev, int mode)
+{
+	gpio_set_value(GPIO_NR_PALMTE2_IR_DISABLE, mode & IR_OFF);
+	pxa2xx_transceiver_mode(dev, mode);
+}
+
+static struct pxaficp_platform_data palmte2_ficp_platform_data = {
+	.startup		= palmte2_irda_startup,
+	.shutdown		= palmte2_irda_shutdown,
+	.transceiver_cap	= IR_SIRMODE | IR_FIRMODE | IR_OFF,
+	.transceiver_mode	= palmte2_irda_transceiver_mode,
+};
+
+/******************************************************************************
+ * UDC
+ ******************************************************************************/
+static struct pxa2xx_udc_mach_info palmte2_udc_info __initdata = {
+	.gpio_vbus		= GPIO_NR_PALMTE2_USB_DETECT_N,
+	.gpio_vbus_inverted	= 1,
+	.gpio_pullup		= GPIO_NR_PALMTE2_USB_PULLUP,
+	.gpio_pullup_inverted	= 0,
+};
+
+/******************************************************************************
+ * Power supply
+ ******************************************************************************/
+static int power_supply_init(struct device *dev)
+{
+	int ret;
+
+	ret = gpio_request(GPIO_NR_PALMTE2_POWER_DETECT, "CABLE_STATE_AC");
+	if (ret)
+		goto err1;
+	ret = gpio_direction_input(GPIO_NR_PALMTE2_POWER_DETECT);
+	if (ret)
+		goto err2;
+
+	return 0;
+
+err2:
+	gpio_free(GPIO_NR_PALMTE2_POWER_DETECT);
+err1:
+	return ret;
+}
+
+static int palmte2_is_ac_online(void)
+{
+	return gpio_get_value(GPIO_NR_PALMTE2_POWER_DETECT);
+}
+
+static void power_supply_exit(struct device *dev)
+{
+	gpio_free(GPIO_NR_PALMTE2_POWER_DETECT);
+}
+
+static char *palmte2_supplicants[] = {
+	"main-battery",
+};
+
+static struct pda_power_pdata power_supply_info = {
+	.init            = power_supply_init,
+	.is_ac_online    = palmte2_is_ac_online,
+	.exit            = power_supply_exit,
+	.supplied_to     = palmte2_supplicants,
+	.num_supplicants = ARRAY_SIZE(palmte2_supplicants),
+};
+
+static struct platform_device power_supply = {
+	.name = "pda-power",
+	.id   = -1,
+	.dev  = {
+		.platform_data = &power_supply_info,
+	},
+};
+
+/******************************************************************************
+ * WM97xx battery
+ ******************************************************************************/
+static struct wm97xx_batt_info wm97xx_batt_pdata = {
+	.batt_aux	= WM97XX_AUX_ID3,
+	.temp_aux	= WM97XX_AUX_ID2,
+	.charge_gpio	= -1,
+	.max_voltage	= PALMTE2_BAT_MAX_VOLTAGE,
+	.min_voltage	= PALMTE2_BAT_MIN_VOLTAGE,
+	.batt_mult	= 1000,
+	.batt_div	= 414,
+	.temp_mult	= 1,
+	.temp_div	= 1,
+	.batt_tech	= POWER_SUPPLY_TECHNOLOGY_LIPO,
+	.batt_name	= "main-batt",
+};
+
+/******************************************************************************
+ * Framebuffer
+ ******************************************************************************/
+static struct pxafb_mode_info palmte2_lcd_modes[] = {
+{
+	.pixclock	= 77757,
+	.xres		= 320,
+	.yres		= 320,
+	.bpp		= 16,
+
+	.left_margin	= 28,
+	.right_margin	= 7,
+	.upper_margin	= 7,
+	.lower_margin	= 5,
+
+	.hsync_len	= 4,
+	.vsync_len	= 1,
+},
+};
+
+static struct pxafb_mach_info palmte2_lcd_screen = {
+	.modes		= palmte2_lcd_modes,
+	.num_modes	= ARRAY_SIZE(palmte2_lcd_modes),
+	.lcd_conn	= LCD_COLOR_TFT_16BPP | LCD_PCLK_EDGE_FALL,
+};
+
+/******************************************************************************
+ * Machine init
+ ******************************************************************************/
+static struct platform_device *devices[] __initdata = {
+#if defined(CONFIG_KEYBOARD_GPIO) || defined(CONFIG_KEYBOARD_GPIO_MODULE)
+	&palmte2_pxa_keys,
+#endif
+	&palmte2_backlight,
+	&power_supply,
+};
+
+/* setup udc GPIOs initial state */
+static void __init palmte2_udc_init(void)
+{
+	if (!gpio_request(GPIO_NR_PALMTE2_USB_PULLUP, "UDC Vbus")) {
+		gpio_direction_output(GPIO_NR_PALMTE2_USB_PULLUP, 1);
+		gpio_free(GPIO_NR_PALMTE2_USB_PULLUP);
+	}
+}
+
+static void __init palmte2_init(void)
+{
+	pxa2xx_mfp_config(ARRAY_AND_SIZE(palmte2_pin_config));
+
+	set_pxa_fb_info(&palmte2_lcd_screen);
+	pxa_set_mci_info(&palmte2_mci_platform_data);
+	palmte2_udc_init();
+	pxa_set_udc_info(&palmte2_udc_info);
+	pxa_set_ac97_info(NULL);
+	pxa_set_ficp_info(&palmte2_ficp_platform_data);
+	wm97xx_bat_set_pdata(&wm97xx_batt_pdata);
+
+	platform_add_devices(devices, ARRAY_SIZE(devices));
+}
+
+MACHINE_START(PALMTE2, "Palm Tungsten|E2")
+	.phys_io	= 0x40000000,
+	.io_pg_offst	= (io_p2v(0x40000000) >> 18) & 0xfffc,
+	.boot_params	= 0xa0000100,
+	.map_io		= pxa_map_io,
+	.init_irq	= pxa25x_init_irq,
+	.timer		= &pxa_timer,
+	.init_machine	= palmte2_init
+MACHINE_END

+ 31 - 4
arch/arm/mach-pxa/palmtx.c

@@ -93,10 +93,10 @@ static unsigned long palmtx_pin_config[] __initdata = {
 	GPIO116_GPIO,	/* wifi ready */
 	GPIO116_GPIO,	/* wifi ready */
 
 
 	/* MATRIX KEYPAD */
 	/* MATRIX KEYPAD */
-	GPIO100_KP_MKIN_0,
-	GPIO101_KP_MKIN_1,
-	GPIO102_KP_MKIN_2,
-	GPIO97_KP_MKIN_3,
+	GPIO100_KP_MKIN_0 | WAKEUP_ON_LEVEL_HIGH,
+	GPIO101_KP_MKIN_1 | WAKEUP_ON_LEVEL_HIGH,
+	GPIO102_KP_MKIN_2 | WAKEUP_ON_LEVEL_HIGH,
+	GPIO97_KP_MKIN_3 | WAKEUP_ON_LEVEL_HIGH,
 	GPIO103_KP_MKOUT_0,
 	GPIO103_KP_MKOUT_0,
 	GPIO104_KP_MKOUT_1,
 	GPIO104_KP_MKOUT_1,
 	GPIO105_KP_MKOUT_2,
 	GPIO105_KP_MKOUT_2,
@@ -458,6 +458,33 @@ static struct pxafb_mach_info palmtx_lcd_screen = {
 	.lcd_conn	= LCD_COLOR_TFT_16BPP | LCD_PCLK_EDGE_FALL,
 	.lcd_conn	= LCD_COLOR_TFT_16BPP | LCD_PCLK_EDGE_FALL,
 };
 };
 
 
+/******************************************************************************
+ * Power management - standby
+ ******************************************************************************/
+#ifdef CONFIG_PM
+static u32 *addr __initdata;
+static u32 resume[3] __initdata = {
+	0xe3a00101,	/* mov	r0,	#0x40000000 */
+	0xe380060f,	/* orr	r0, r0, #0x00f00000 */
+	0xe590f008,	/* ldr	pc, [r0, #0x08] */
+};
+
+static int __init palmtx_pm_init(void)
+{
+	int i;
+
+	/* this is where the bootloader jumps */
+	addr = phys_to_virt(PALMTX_STR_BASE);
+
+	for (i = 0; i < 3; i++)
+		addr[i] = resume[i];
+
+	return 0;
+}
+
+device_initcall(palmtx_pm_init);
+#endif
+
 /******************************************************************************
 /******************************************************************************
  * Machine init
  * Machine init
  ******************************************************************************/
  ******************************************************************************/

+ 2 - 0
arch/arm/mach-pxa/tosa.c

@@ -45,6 +45,7 @@
 #include <mach/udc.h>
 #include <mach/udc.h>
 #include <mach/tosa_bt.h>
 #include <mach/tosa_bt.h>
 #include <mach/pxa2xx_spi.h>
 #include <mach/pxa2xx_spi.h>
+#include <mach/audio.h>
 
 
 #include <asm/mach/arch.h>
 #include <asm/mach/arch.h>
 #include <mach/tosa.h>
 #include <mach/tosa.h>
@@ -914,6 +915,7 @@ static void __init tosa_init(void)
 	pxa_set_udc_info(&udc_info);
 	pxa_set_udc_info(&udc_info);
 	pxa_set_ficp_info(&tosa_ficp_platform_data);
 	pxa_set_ficp_info(&tosa_ficp_platform_data);
 	pxa_set_i2c_info(NULL);
 	pxa_set_i2c_info(NULL);
+	pxa_set_ac97_info(NULL);
 	platform_scoop_config = &tosa_pcmcia_config;
 	platform_scoop_config = &tosa_pcmcia_config;
 
 
 	pxa2xx_set_spi_info(2, &pxa_ssp_master_info);
 	pxa2xx_set_spi_info(2, &pxa_ssp_master_info);

+ 1 - 2
arch/arm/mach-s3c2410/mach-bast.c

@@ -409,8 +409,7 @@ static struct platform_device bast_sio = {
 static struct s3c2410_platform_i2c __initdata bast_i2c_info = {
 static struct s3c2410_platform_i2c __initdata bast_i2c_info = {
 	.flags		= 0,
 	.flags		= 0,
 	.slave_addr	= 0x10,
 	.slave_addr	= 0x10,
-	.bus_freq	= 100*1000,
-	.max_freq	= 130*1000,
+	.frequency	= 100*1000,
 };
 };
 
 
 /* Asix AX88796 10/100 ethernet controller */
 /* Asix AX88796 10/100 ethernet controller */

+ 1 - 2
arch/arm/mach-s3c2410/mach-n30.c

@@ -340,8 +340,7 @@ static struct platform_device *n35_devices[] __initdata = {
 static struct s3c2410_platform_i2c n30_i2ccfg = {
 static struct s3c2410_platform_i2c n30_i2ccfg = {
 	.flags		= 0,
 	.flags		= 0,
 	.slave_addr	= 0x10,
 	.slave_addr	= 0x10,
-	.bus_freq	= 10*1000,
-	.max_freq	= 10*1000,
+	.frequency	= 10*1000,
 };
 };
 
 
 /* Lots of hardcoded stuff, but it sets up the hardware in a useful
 /* Lots of hardcoded stuff, but it sets up the hardware in a useful

+ 1 - 2
arch/arm/mach-s3c2412/mach-jive.c

@@ -453,8 +453,7 @@ static struct spi_board_info __initdata jive_spi_devs[] = {
 /* I2C bus and device configuration. */
 /* I2C bus and device configuration. */
 
 
 static struct s3c2410_platform_i2c jive_i2c_cfg __initdata = {
 static struct s3c2410_platform_i2c jive_i2c_cfg __initdata = {
-	.max_freq	= 80 * 1000,
-	.bus_freq	= 50 * 1000,
+	.frequency	= 80 * 1000,
 	.flags		= S3C_IICFLG_FILTER,
 	.flags		= S3C_IICFLG_FILTER,
 	.sda_delay	= 2,
 	.sda_delay	= 2,
 };
 };

+ 11 - 0
arch/arm/mm/mmu.c

@@ -828,6 +828,17 @@ void __init reserve_node_zero(pg_data_t *pgdat)
 				BOOTMEM_DEFAULT);
 				BOOTMEM_DEFAULT);
 	}
 	}
 
 
+	if (machine_is_palmld() || machine_is_palmtx()) {
+		reserve_bootmem_node(pgdat, 0xa0000000, 0x1000,
+				BOOTMEM_EXCLUSIVE);
+		reserve_bootmem_node(pgdat, 0xa0200000, 0x1000,
+				BOOTMEM_EXCLUSIVE);
+	}
+
+	if (machine_is_palmt5())
+		reserve_bootmem_node(pgdat, 0xa0200000, 0x1000,
+				BOOTMEM_EXCLUSIVE);
+
 #ifdef CONFIG_SA1111
 #ifdef CONFIG_SA1111
 	/*
 	/*
 	 * Because of the SA1111 DMA bug, we want to preserve our
 	 * Because of the SA1111 DMA bug, we want to preserve our

+ 4 - 4
arch/arm/plat-iop/adma.c

@@ -119,7 +119,7 @@ static struct resource iop3xx_aau_resources[] = {
 	}
 	}
 };
 };
 
 
-static u64 iop3xx_adma_dmamask = DMA_32BIT_MASK;
+static u64 iop3xx_adma_dmamask = DMA_BIT_MASK(32);
 
 
 static struct iop_adma_platform_data iop3xx_dma_0_data = {
 static struct iop_adma_platform_data iop3xx_dma_0_data = {
 	.hw_id = DMA0_ID,
 	.hw_id = DMA0_ID,
@@ -143,7 +143,7 @@ struct platform_device iop3xx_dma_0_channel = {
 	.resource = iop3xx_dma_0_resources,
 	.resource = iop3xx_dma_0_resources,
 	.dev = {
 	.dev = {
 		.dma_mask = &iop3xx_adma_dmamask,
 		.dma_mask = &iop3xx_adma_dmamask,
-		.coherent_dma_mask = DMA_64BIT_MASK,
+		.coherent_dma_mask = DMA_BIT_MASK(64),
 		.platform_data = (void *) &iop3xx_dma_0_data,
 		.platform_data = (void *) &iop3xx_dma_0_data,
 	},
 	},
 };
 };
@@ -155,7 +155,7 @@ struct platform_device iop3xx_dma_1_channel = {
 	.resource = iop3xx_dma_1_resources,
 	.resource = iop3xx_dma_1_resources,
 	.dev = {
 	.dev = {
 		.dma_mask = &iop3xx_adma_dmamask,
 		.dma_mask = &iop3xx_adma_dmamask,
-		.coherent_dma_mask = DMA_64BIT_MASK,
+		.coherent_dma_mask = DMA_BIT_MASK(64),
 		.platform_data = (void *) &iop3xx_dma_1_data,
 		.platform_data = (void *) &iop3xx_dma_1_data,
 	},
 	},
 };
 };
@@ -167,7 +167,7 @@ struct platform_device iop3xx_aau_channel = {
 	.resource = iop3xx_aau_resources,
 	.resource = iop3xx_aau_resources,
 	.dev = {
 	.dev = {
 		.dma_mask = &iop3xx_adma_dmamask,
 		.dma_mask = &iop3xx_adma_dmamask,
-		.coherent_dma_mask = DMA_64BIT_MASK,
+		.coherent_dma_mask = DMA_BIT_MASK(64),
 		.platform_data = (void *) &iop3xx_aau_data,
 		.platform_data = (void *) &iop3xx_aau_data,
 	},
 	},
 };
 };

+ 25 - 0
arch/arm/plat-mxc/include/mach/i2c.h

@@ -0,0 +1,25 @@
+/*
+ * i2c.h - i.MX I2C driver header file
+ *
+ * Copyright (c) 2008, Darius Augulis <augulis.darius@gmail.com>
+ *
+ * This file is released under the GPLv2
+ */
+
+#ifndef __ASM_ARCH_I2C_H_
+#define __ASM_ARCH_I2C_H_
+
+/**
+ * struct imxi2c_platform_data - structure of platform data for MXC I2C driver
+ * @init:	Initialise gpio's and other board specific things
+ * @exit:	Free everything initialised by @init
+ * @bitrate:	Bus speed measured in Hz
+ *
+ **/
+struct imxi2c_platform_data {
+	int (*init)(struct device *dev);
+	void (*exit)(struct device *dev);
+	int bitrate;
+};
+
+#endif /* __ASM_ARCH_I2C_H_ */

+ 8 - 0
arch/arm/plat-mxc/include/mach/memory.h

@@ -24,4 +24,12 @@
 #define PHYS_OFFSET		UL(0x80000000)
 #define PHYS_OFFSET		UL(0x80000000)
 #endif
 #endif
 
 
+#if defined(CONFIG_MX1_VIDEO)
+/*
+ * Increase size of DMA-consistent memory region.
+ * This is required for i.MX camera driver to capture at least four VGA frames.
+ */
+#define CONSISTENT_DMA_SIZE SZ_4M
+#endif /* CONFIG_MX1_VIDEO */
+
 #endif /* __ASM_ARCH_MXC_MEMORY_H__ */
 #endif /* __ASM_ARCH_MXC_MEMORY_H__ */

+ 35 - 0
arch/arm/plat-mxc/include/mach/mx1_camera.h

@@ -0,0 +1,35 @@
+/*
+ * mx1_camera.h - i.MX1/i.MXL camera driver header file
+ *
+ * Copyright (c) 2008, Paulius Zaleckas <paulius.zaleckas@teltonika.lt>
+ * Copyright (C) 2009, Darius Augulis <augulis.darius@gmail.com>
+ *
+ * Based on PXA camera.h file:
+ * Copyright (C) 2003, Intel Corporation
+ * Copyright (C) 2008, Guennadi Liakhovetski <kernel@pengutronix.de>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#ifndef __ASM_ARCH_CAMERA_H_
+#define __ASM_ARCH_CAMERA_H_
+
+#define MX1_CAMERA_DATA_HIGH	1
+#define MX1_CAMERA_PCLK_RISING	2
+#define MX1_CAMERA_VSYNC_HIGH	4
+
+extern unsigned char mx1_camera_sof_fiq_start, mx1_camera_sof_fiq_end;
+
+/**
+ * struct mx1_camera_pdata - i.MX1/i.MXL camera platform data
+ * @mclk_10khz:	master clock frequency in 10kHz units
+ * @flags:	MX1 camera platform flags
+ */
+struct mx1_camera_pdata {
+	unsigned long mclk_10khz;
+	unsigned long flags;
+};
+
+#endif /* __ASM_ARCH_CAMERA_H_ */

+ 3 - 4
arch/arm/plat-s3c/dev-i2c0.c

@@ -1,6 +1,6 @@
 /* linux/arch/arm/plat-s3c/dev-i2c0.c
 /* linux/arch/arm/plat-s3c/dev-i2c0.c
  *
  *
- * Copyright 2008 Simtec Electronics
+ * Copyright 2008,2009 Simtec Electronics
  *	Ben Dooks <ben@simtec.co.uk>
  *	Ben Dooks <ben@simtec.co.uk>
  *	http://armlinux.simtec.co.uk/
  *	http://armlinux.simtec.co.uk/
  *
  *
@@ -50,9 +50,8 @@ struct platform_device s3c_device_i2c0 = {
 static struct s3c2410_platform_i2c default_i2c_data0 __initdata = {
 static struct s3c2410_platform_i2c default_i2c_data0 __initdata = {
 	.flags		= 0,
 	.flags		= 0,
 	.slave_addr	= 0x10,
 	.slave_addr	= 0x10,
-	.bus_freq	= 100*1000,
-	.max_freq	= 400*1000,
-	.sda_delay	= S3C2410_IICLC_SDA_DELAY5 | S3C2410_IICLC_FILTER_ON,
+	.frequency	= 100*1000,
+	.sda_delay	= 100,
 };
 };
 
 
 void __init s3c_i2c0_set_platdata(struct s3c2410_platform_i2c *pd)
 void __init s3c_i2c0_set_platdata(struct s3c2410_platform_i2c *pd)

+ 3 - 4
arch/arm/plat-s3c/dev-i2c1.c

@@ -1,6 +1,6 @@
 /* linux/arch/arm/plat-s3c/dev-i2c1.c
 /* linux/arch/arm/plat-s3c/dev-i2c1.c
  *
  *
- * Copyright 2008 Simtec Electronics
+ * Copyright 2008,2009 Simtec Electronics
  *	Ben Dooks <ben@simtec.co.uk>
  *	Ben Dooks <ben@simtec.co.uk>
  *	http://armlinux.simtec.co.uk/
  *	http://armlinux.simtec.co.uk/
  *
  *
@@ -47,9 +47,8 @@ static struct s3c2410_platform_i2c default_i2c_data1 __initdata = {
 	.flags		= 0,
 	.flags		= 0,
 	.bus_num	= 1,
 	.bus_num	= 1,
 	.slave_addr	= 0x10,
 	.slave_addr	= 0x10,
-	.bus_freq	= 100*1000,
-	.max_freq	= 400*1000,
-	.sda_delay	= S3C2410_IICLC_SDA_DELAY5 | S3C2410_IICLC_FILTER_ON,
+	.frequency	= 100*1000,
+	.sda_delay	= 100,
 };
 };
 
 
 void __init s3c_i2c1_set_platdata(struct s3c2410_platform_i2c *pd)
 void __init s3c_i2c1_set_platdata(struct s3c2410_platform_i2c *pd)

+ 19 - 14
arch/arm/plat-s3c/include/plat/iic.h

@@ -1,9 +1,9 @@
-/* arch/arm/mach-s3c2410/include/mach/iic.h
+/* arch/arm/plat-s3c/include/plat/iic.h
  *
  *
- * Copyright (c) 2004 Simtec Electronics
+ * Copyright 2004,2009 Simtec Electronics
  *	Ben Dooks <ben@simtec.co.uk>
  *	Ben Dooks <ben@simtec.co.uk>
  *
  *
- * S3C2410 - I2C Controller platfrom_device info
+ * S3C - I2C Controller platform_device info
  *
  *
  * This program is free software; you can redistribute it and/or modify
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License version 2 as
  * it under the terms of the GNU General Public License version 2 as
@@ -15,19 +15,24 @@
 
 
 #define S3C_IICFLG_FILTER	(1<<0)	/* enable s3c2440 filter */
 #define S3C_IICFLG_FILTER	(1<<0)	/* enable s3c2440 filter */
 
 
-/* Notes:
- *	1) All frequencies are expressed in Hz
- *	2) A value of zero is `do not care`
-*/
-
+/**
+ *	struct s3c2410_platform_i2c - Platform data for s3c I2C.
+ *	@bus_num: The bus number to use (if possible).
+ *	@flags: Any flags for the I2C bus (E.g. S3C_IICFLK_FILTER).
+ *	@slave_addr: The I2C address for the slave device (if enabled).
+ *	@frequency: The desired frequency in Hz of the bus.  This is
+ *                  guaranteed to not be exceeded.  If the caller does
+ *                  not care, use zero and the driver will select a
+ *                  useful default.
+ *	@sda_delay: The delay (in ns) applied to SDA edges.
+ *	@cfg_gpio: A callback to configure the pins for I2C operation.
+ */
 struct s3c2410_platform_i2c {
 struct s3c2410_platform_i2c {
-	int		bus_num;	/* bus number to use */
+	int		bus_num;
 	unsigned int	flags;
 	unsigned int	flags;
-	unsigned int	slave_addr;	/* slave address for controller */
-	unsigned long	bus_freq;	/* standard bus frequency */
-	unsigned long	max_freq;	/* max frequency for the bus */
-	unsigned long	min_freq;	/* min frequency for the bus */
-	unsigned int	sda_delay;	/* pclks (s3c2440 only) */
+	unsigned int	slave_addr;
+	unsigned long	frequency;
+	unsigned int	sda_delay;
 
 
 	void	(*cfg_gpio)(struct platform_device *dev);
 	void	(*cfg_gpio)(struct platform_device *dev);
 };
 };

+ 2 - 2
arch/avr32/boards/hammerhead/flash.c

@@ -280,13 +280,13 @@ static struct resource hh_fpga0_resource[] = {
 	},
 	},
 };
 };
 
 
-static u64 hh_fpga0_dma_mask = DMA_32BIT_MASK;
+static u64 hh_fpga0_dma_mask = DMA_BIT_MASK(32);
 static struct platform_device hh_fpga0_device = {
 static struct platform_device hh_fpga0_device = {
 	.name		= "hh_fpga",
 	.name		= "hh_fpga",
 	.id		= 0,
 	.id		= 0,
 	.dev		= {
 	.dev		= {
 		.dma_mask = &hh_fpga0_dma_mask,
 		.dma_mask = &hh_fpga0_dma_mask,
-		.coherent_dma_mask = DMA_32BIT_MASK,
+		.coherent_dma_mask = DMA_BIT_MASK(32),
 	},
 	},
 	.resource	= hh_fpga0_resource,
 	.resource	= hh_fpga0_resource,
 	.num_resources	= ARRAY_SIZE(hh_fpga0_resource),
 	.num_resources	= ARRAY_SIZE(hh_fpga0_resource),

+ 4 - 4
arch/avr32/mach-at32ap/at32ap700x.c

@@ -60,26 +60,26 @@
  * don't ... tc, smc, pio, rtc, watchdog, pwm, ps2, and more.
  * don't ... tc, smc, pio, rtc, watchdog, pwm, ps2, and more.
  */
  */
 #define DEFINE_DEV(_name, _id)					\
 #define DEFINE_DEV(_name, _id)					\
-static u64 _name##_id##_dma_mask = DMA_32BIT_MASK;		\
+static u64 _name##_id##_dma_mask = DMA_BIT_MASK(32);		\
 static struct platform_device _name##_id##_device = {		\
 static struct platform_device _name##_id##_device = {		\
 	.name		= #_name,				\
 	.name		= #_name,				\
 	.id		= _id,					\
 	.id		= _id,					\
 	.dev		= {					\
 	.dev		= {					\
 		.dma_mask = &_name##_id##_dma_mask,		\
 		.dma_mask = &_name##_id##_dma_mask,		\
-		.coherent_dma_mask = DMA_32BIT_MASK,		\
+		.coherent_dma_mask = DMA_BIT_MASK(32),		\
 	},							\
 	},							\
 	.resource	= _name##_id##_resource,		\
 	.resource	= _name##_id##_resource,		\
 	.num_resources	= ARRAY_SIZE(_name##_id##_resource),	\
 	.num_resources	= ARRAY_SIZE(_name##_id##_resource),	\
 }
 }
 #define DEFINE_DEV_DATA(_name, _id)				\
 #define DEFINE_DEV_DATA(_name, _id)				\
-static u64 _name##_id##_dma_mask = DMA_32BIT_MASK;		\
+static u64 _name##_id##_dma_mask = DMA_BIT_MASK(32);		\
 static struct platform_device _name##_id##_device = {		\
 static struct platform_device _name##_id##_device = {		\
 	.name		= #_name,				\
 	.name		= #_name,				\
 	.id		= _id,					\
 	.id		= _id,					\
 	.dev		= {					\
 	.dev		= {					\
 		.dma_mask = &_name##_id##_dma_mask,		\
 		.dma_mask = &_name##_id##_dma_mask,		\
 		.platform_data	= &_name##_id##_data,		\
 		.platform_data	= &_name##_id##_data,		\
-		.coherent_dma_mask = DMA_32BIT_MASK,		\
+		.coherent_dma_mask = DMA_BIT_MASK(32),		\
 	},							\
 	},							\
 	.resource	= _name##_id##_resource,		\
 	.resource	= _name##_id##_resource,		\
 	.num_resources	= ARRAY_SIZE(_name##_id##_resource),	\
 	.num_resources	= ARRAY_SIZE(_name##_id##_resource),	\

+ 5 - 0
arch/blackfin/include/asm/bfin5xx_spi.h

@@ -11,6 +11,8 @@
 #ifndef _SPI_CHANNEL_H_
 #ifndef _SPI_CHANNEL_H_
 #define _SPI_CHANNEL_H_
 #define _SPI_CHANNEL_H_
 
 
+#define MIN_SPI_BAUD_VAL	2
+
 #define SPI_READ              0
 #define SPI_READ              0
 #define SPI_WRITE             1
 #define SPI_WRITE             1
 
 
@@ -122,6 +124,9 @@ struct bfin5xx_spi_chip {
 	u8 bits_per_word;
 	u8 bits_per_word;
 	u8 cs_change_per_word;
 	u8 cs_change_per_word;
 	u16 cs_chg_udelay; /* Some devices require 16-bit delays */
 	u16 cs_chg_udelay; /* Some devices require 16-bit delays */
+	u32 cs_gpio;
+	/* Value to send if no TX value is supplied, usually 0x0 or 0xFFFF */
+	u16 idle_tx_val;
 };
 };
 
 
 #endif /* _SPI_CHANNEL_H_ */
 #endif /* _SPI_CHANNEL_H_ */

+ 1 - 1
arch/blackfin/kernel/process.c

@@ -337,7 +337,7 @@ int _access_ok(unsigned long addr, unsigned long size)
 	if (addr >= memory_mtd_end && (addr + size) <= physical_mem_end)
 	if (addr >= memory_mtd_end && (addr + size) <= physical_mem_end)
 		return 1;
 		return 1;
 
 
-#ifdef CONFIG_ROMFS_MTD_FS
+#ifdef CONFIG_ROMFS_ON_MTD
 	/* For XIP, allow user space to use pointers within the ROMFS.  */
 	/* For XIP, allow user space to use pointers within the ROMFS.  */
 	if (addr >= memory_mtd_start && (addr + size) <= memory_mtd_end)
 	if (addr >= memory_mtd_start && (addr + size) <= memory_mtd_end)
 		return 1;
 		return 1;

+ 7 - 3
arch/blackfin/mach-bf518/include/mach/bfin_serial_5xx.h

@@ -53,9 +53,9 @@
 #define UART_SET_DLAB(uart)     do { UART_PUT_LCR(uart, UART_GET_LCR(uart) | DLAB); SSYNC(); } while (0)
 #define UART_SET_DLAB(uart)     do { UART_PUT_LCR(uart, UART_GET_LCR(uart) | DLAB); SSYNC(); } while (0)
 #define UART_CLEAR_DLAB(uart)   do { UART_PUT_LCR(uart, UART_GET_LCR(uart) & ~DLAB); SSYNC(); } while (0)
 #define UART_CLEAR_DLAB(uart)   do { UART_PUT_LCR(uart, UART_GET_LCR(uart) & ~DLAB); SSYNC(); } while (0)
 
 
-#define UART_GET_CTS(x) gpio_get_value(x->cts_pin)
-#define UART_SET_RTS(x) gpio_set_value(x->rts_pin, 1)
-#define UART_CLEAR_RTS(x) gpio_set_value(x->rts_pin, 0)
+#define UART_GET_CTS(x) (!gpio_get_value(x->cts_pin))
+#define UART_DISABLE_RTS(x) gpio_set_value(x->rts_pin, 1)
+#define UART_ENABLE_RTS(x) gpio_set_value(x->rts_pin, 0)
 #define UART_ENABLE_INTS(x, v) UART_PUT_IER(x, v)
 #define UART_ENABLE_INTS(x, v) UART_PUT_IER(x, v)
 #define UART_DISABLE_INTS(x) UART_PUT_IER(x, 0)
 #define UART_DISABLE_INTS(x) UART_PUT_IER(x, 0)
 
 
@@ -87,6 +87,7 @@
 struct bfin_serial_port {
 struct bfin_serial_port {
 	struct uart_port port;
 	struct uart_port port;
 	unsigned int old_status;
 	unsigned int old_status;
+	int status_irq;
 	unsigned int lsr;
 	unsigned int lsr;
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	int tx_done;
 	int tx_done;
@@ -125,6 +126,7 @@ static inline void UART_CLEAR_LSR(struct bfin_serial_port *uart)
 struct bfin_serial_res {
 struct bfin_serial_res {
 	unsigned long uart_base_addr;
 	unsigned long uart_base_addr;
 	int uart_irq;
 	int uart_irq;
+	int uart_status_irq;
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	unsigned int uart_tx_dma_channel;
 	unsigned int uart_tx_dma_channel;
 	unsigned int uart_rx_dma_channel;
 	unsigned int uart_rx_dma_channel;
@@ -140,6 +142,7 @@ struct bfin_serial_res bfin_serial_resource[] = {
 	{
 	{
 	 0xFFC00400,
 	 0xFFC00400,
 	 IRQ_UART0_RX,
 	 IRQ_UART0_RX,
+	 IRQ_UART0_ERROR,
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	 CH_UART0_TX,
 	 CH_UART0_TX,
 	 CH_UART0_RX,
 	 CH_UART0_RX,
@@ -154,6 +157,7 @@ struct bfin_serial_res bfin_serial_resource[] = {
 	{
 	{
 	 0xFFC02000,
 	 0xFFC02000,
 	 IRQ_UART1_RX,
 	 IRQ_UART1_RX,
+	 IRQ_UART1_ERROR,
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	 CH_UART1_TX,
 	 CH_UART1_TX,
 	 CH_UART1_RX,
 	 CH_UART1_RX,

+ 7 - 29
arch/blackfin/mach-bf527/include/mach/bfin_serial_5xx.h

@@ -53,9 +53,9 @@
 #define UART_SET_DLAB(uart)     do { UART_PUT_LCR(uart, UART_GET_LCR(uart) | DLAB); SSYNC(); } while (0)
 #define UART_SET_DLAB(uart)     do { UART_PUT_LCR(uart, UART_GET_LCR(uart) | DLAB); SSYNC(); } while (0)
 #define UART_CLEAR_DLAB(uart)   do { UART_PUT_LCR(uart, UART_GET_LCR(uart) & ~DLAB); SSYNC(); } while (0)
 #define UART_CLEAR_DLAB(uart)   do { UART_PUT_LCR(uart, UART_GET_LCR(uart) & ~DLAB); SSYNC(); } while (0)
 
 
-#define UART_GET_CTS(x) gpio_get_value(x->cts_pin)
-#define UART_SET_RTS(x) gpio_set_value(x->rts_pin, 1)
-#define UART_CLEAR_RTS(x) gpio_set_value(x->rts_pin, 0)
+#define UART_GET_CTS(x) (!gpio_get_value(x->cts_pin))
+#define UART_DISABLE_RTS(x) gpio_set_value(x->rts_pin, 1)
+#define UART_ENABLE_RTS(x) gpio_set_value(x->rts_pin, 0)
 #define UART_ENABLE_INTS(x, v) UART_PUT_IER(x, v)
 #define UART_ENABLE_INTS(x, v) UART_PUT_IER(x, v)
 #define UART_DISABLE_INTS(x) UART_PUT_IER(x, 0)
 #define UART_DISABLE_INTS(x) UART_PUT_IER(x, 0)
 
 
@@ -87,6 +87,7 @@
 struct bfin_serial_port {
 struct bfin_serial_port {
 	struct uart_port port;
 	struct uart_port port;
 	unsigned int old_status;
 	unsigned int old_status;
+	int status_irq;
 	unsigned int lsr;
 	unsigned int lsr;
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	int tx_done;
 	int tx_done;
@@ -125,6 +126,7 @@ static inline void UART_CLEAR_LSR(struct bfin_serial_port *uart)
 struct bfin_serial_res {
 struct bfin_serial_res {
 	unsigned long uart_base_addr;
 	unsigned long uart_base_addr;
 	int uart_irq;
 	int uart_irq;
+	int uart_status_irq;
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	unsigned int uart_tx_dma_channel;
 	unsigned int uart_tx_dma_channel;
 	unsigned int uart_rx_dma_channel;
 	unsigned int uart_rx_dma_channel;
@@ -140,6 +142,7 @@ struct bfin_serial_res bfin_serial_resource[] = {
 	{
 	{
 	 0xFFC00400,
 	 0xFFC00400,
 	 IRQ_UART0_RX,
 	 IRQ_UART0_RX,
+	 IRQ_UART0_ERROR,
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	 CH_UART0_TX,
 	 CH_UART0_TX,
 	 CH_UART0_RX,
 	 CH_UART0_RX,
@@ -154,6 +157,7 @@ struct bfin_serial_res bfin_serial_resource[] = {
 	{
 	{
 	 0xFFC02000,
 	 0xFFC02000,
 	 IRQ_UART1_RX,
 	 IRQ_UART1_RX,
+	 IRQ_UART1_ERROR,
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	 CH_UART1_TX,
 	 CH_UART1_TX,
 	 CH_UART1_RX,
 	 CH_UART1_RX,
@@ -167,29 +171,3 @@ struct bfin_serial_res bfin_serial_resource[] = {
 };
 };
 
 
 #define DRIVER_NAME "bfin-uart"
 #define DRIVER_NAME "bfin-uart"
-
-static void bfin_serial_hw_init(struct bfin_serial_port *uart)
-{
-
-#ifdef CONFIG_SERIAL_BFIN_UART0
-	peripheral_request(P_UART0_TX, DRIVER_NAME);
-	peripheral_request(P_UART0_RX, DRIVER_NAME);
-#endif
-
-#ifdef CONFIG_SERIAL_BFIN_UART1
-	peripheral_request(P_UART1_TX, DRIVER_NAME);
-	peripheral_request(P_UART1_RX, DRIVER_NAME);
-#endif
-
-#ifdef CONFIG_SERIAL_BFIN_CTSRTS
-	if (uart->cts_pin >= 0) {
-		gpio_request(uart->cts_pin, DRIVER_NAME);
-		gpio_direction_input(uart->cts_pin);
-	}
-
-	if (uart->rts_pin >= 0) {
-		gpio_request(uart->rts_pin, DRIVER_NAME);
-		gpio_direction_output(uart->rts_pin, 0);
-	}
-#endif
-}

+ 6 - 23
arch/blackfin/mach-bf533/include/mach/bfin_serial_5xx.h

@@ -53,9 +53,9 @@
 #define UART_SET_DLAB(uart)     do { UART_PUT_LCR(uart, UART_GET_LCR(uart) | DLAB); SSYNC(); } while (0)
 #define UART_SET_DLAB(uart)     do { UART_PUT_LCR(uart, UART_GET_LCR(uart) | DLAB); SSYNC(); } while (0)
 #define UART_CLEAR_DLAB(uart)   do { UART_PUT_LCR(uart, UART_GET_LCR(uart) & ~DLAB); SSYNC(); } while (0)
 #define UART_CLEAR_DLAB(uart)   do { UART_PUT_LCR(uart, UART_GET_LCR(uart) & ~DLAB); SSYNC(); } while (0)
 
 
-#define UART_GET_CTS(x) gpio_get_value(x->cts_pin)
-#define UART_SET_RTS(x) gpio_set_value(x->rts_pin, 1)
-#define UART_CLEAR_RTS(x) gpio_set_value(x->rts_pin, 0)
+#define UART_GET_CTS(x) (!gpio_get_value(x->cts_pin))
+#define UART_DISABLE_RTS(x) gpio_set_value(x->rts_pin, 1)
+#define UART_ENABLE_RTS(x) gpio_set_value(x->rts_pin, 0)
 #define UART_ENABLE_INTS(x, v) UART_PUT_IER(x, v)
 #define UART_ENABLE_INTS(x, v) UART_PUT_IER(x, v)
 #define UART_DISABLE_INTS(x) UART_PUT_IER(x, 0)
 #define UART_DISABLE_INTS(x) UART_PUT_IER(x, 0)
 
 
@@ -74,6 +74,7 @@
 struct bfin_serial_port {
 struct bfin_serial_port {
         struct uart_port        port;
         struct uart_port        port;
         unsigned int            old_status;
         unsigned int            old_status;
+	int			status_irq;
 	unsigned int lsr;
 	unsigned int lsr;
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	int			tx_done;
 	int			tx_done;
@@ -116,6 +117,7 @@ static inline void UART_CLEAR_LSR(struct bfin_serial_port *uart)
 struct bfin_serial_res {
 struct bfin_serial_res {
 	unsigned long	uart_base_addr;
 	unsigned long	uart_base_addr;
 	int		uart_irq;
 	int		uart_irq;
+	int		uart_status_irq;
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	unsigned int	uart_tx_dma_channel;
 	unsigned int	uart_tx_dma_channel;
 	unsigned int	uart_rx_dma_channel;
 	unsigned int	uart_rx_dma_channel;
@@ -130,6 +132,7 @@ struct bfin_serial_res bfin_serial_resource[] = {
 	{
 	{
 	0xFFC00400,
 	0xFFC00400,
 	IRQ_UART_RX,
 	IRQ_UART_RX,
+	IRQ_UART_ERROR,
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	CH_UART_TX,
 	CH_UART_TX,
 	CH_UART_RX,
 	CH_UART_RX,
@@ -142,23 +145,3 @@ struct bfin_serial_res bfin_serial_resource[] = {
 };
 };
 
 
 #define DRIVER_NAME "bfin-uart"
 #define DRIVER_NAME "bfin-uart"
-
-static void bfin_serial_hw_init(struct bfin_serial_port *uart)
-{
-
-#ifdef CONFIG_SERIAL_BFIN_UART0
-	peripheral_request(P_UART0_TX, DRIVER_NAME);
-	peripheral_request(P_UART0_RX, DRIVER_NAME);
-#endif
-
-#ifdef CONFIG_SERIAL_BFIN_CTSRTS
-	if (uart->cts_pin >= 0) {
-		gpio_request(uart->cts_pin, DRIVER_NAME);
-		gpio_direction_input(uart->cts_pin);
-	}
-	if (uart->rts_pin >= 0) {
-		gpio_request(uart->rts_pin, DRIVER_NAME);
-		gpio_direction_output(uart->rts_pin, 0);
-	}
-#endif
-}

+ 7 - 30
arch/blackfin/mach-bf537/include/mach/bfin_serial_5xx.h

@@ -53,9 +53,9 @@
 #define UART_SET_DLAB(uart)     do { UART_PUT_LCR(uart, UART_GET_LCR(uart) | DLAB); SSYNC(); } while (0)
 #define UART_SET_DLAB(uart)     do { UART_PUT_LCR(uart, UART_GET_LCR(uart) | DLAB); SSYNC(); } while (0)
 #define UART_CLEAR_DLAB(uart)   do { UART_PUT_LCR(uart, UART_GET_LCR(uart) & ~DLAB); SSYNC(); } while (0)
 #define UART_CLEAR_DLAB(uart)   do { UART_PUT_LCR(uart, UART_GET_LCR(uart) & ~DLAB); SSYNC(); } while (0)
 
 
-#define UART_GET_CTS(x) gpio_get_value(x->cts_pin)
-#define UART_SET_RTS(x) gpio_set_value(x->rts_pin, 1)
-#define UART_CLEAR_RTS(x) gpio_set_value(x->rts_pin, 0)
+#define UART_GET_CTS(x) (!gpio_get_value(x->cts_pin))
+#define UART_DISABLE_RTS(x) gpio_set_value(x->rts_pin, 1)
+#define UART_ENABLE_RTS(x) gpio_set_value(x->rts_pin, 0)
 #define UART_ENABLE_INTS(x, v) UART_PUT_IER(x, v)
 #define UART_ENABLE_INTS(x, v) UART_PUT_IER(x, v)
 #define UART_DISABLE_INTS(x) UART_PUT_IER(x, 0)
 #define UART_DISABLE_INTS(x) UART_PUT_IER(x, 0)
 
 
@@ -87,6 +87,7 @@
 struct bfin_serial_port {
 struct bfin_serial_port {
         struct uart_port        port;
         struct uart_port        port;
         unsigned int            old_status;
         unsigned int            old_status;
+	int			status_irq;
 	unsigned int lsr;
 	unsigned int lsr;
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	int			tx_done;
 	int			tx_done;
@@ -99,7 +100,6 @@ struct bfin_serial_port {
 	struct work_struct	tx_dma_workqueue;
 	struct work_struct	tx_dma_workqueue;
 #endif
 #endif
 #ifdef CONFIG_SERIAL_BFIN_CTSRTS
 #ifdef CONFIG_SERIAL_BFIN_CTSRTS
-	struct timer_list 	cts_timer;
 	int		cts_pin;
 	int		cts_pin;
 	int 		rts_pin;
 	int 		rts_pin;
 #endif
 #endif
@@ -125,6 +125,7 @@ static inline void UART_CLEAR_LSR(struct bfin_serial_port *uart)
 struct bfin_serial_res {
 struct bfin_serial_res {
 	unsigned long	uart_base_addr;
 	unsigned long	uart_base_addr;
 	int		uart_irq;
 	int		uart_irq;
+	int		uart_status_irq;
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	unsigned int	uart_tx_dma_channel;
 	unsigned int	uart_tx_dma_channel;
 	unsigned int	uart_rx_dma_channel;
 	unsigned int	uart_rx_dma_channel;
@@ -140,6 +141,7 @@ struct bfin_serial_res bfin_serial_resource[] = {
 	{
 	{
 	0xFFC00400,
 	0xFFC00400,
 	IRQ_UART0_RX,
 	IRQ_UART0_RX,
+	IRQ_UART0_ERROR,
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	CH_UART0_TX,
 	CH_UART0_TX,
 	CH_UART0_RX,
 	CH_UART0_RX,
@@ -154,6 +156,7 @@ struct bfin_serial_res bfin_serial_resource[] = {
 	{
 	{
 	0xFFC02000,
 	0xFFC02000,
 	IRQ_UART1_RX,
 	IRQ_UART1_RX,
+	IRQ_UART1_ERROR,
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	CH_UART1_TX,
 	CH_UART1_TX,
 	CH_UART1_RX,
 	CH_UART1_RX,
@@ -167,29 +170,3 @@ struct bfin_serial_res bfin_serial_resource[] = {
 };
 };
 
 
 #define DRIVER_NAME "bfin-uart"
 #define DRIVER_NAME "bfin-uart"
-
-static void bfin_serial_hw_init(struct bfin_serial_port *uart)
-{
-
-#ifdef CONFIG_SERIAL_BFIN_UART0
-	peripheral_request(P_UART0_TX, DRIVER_NAME);
-	peripheral_request(P_UART0_RX, DRIVER_NAME);
-#endif
-
-#ifdef CONFIG_SERIAL_BFIN_UART1
-	peripheral_request(P_UART1_TX, DRIVER_NAME);
-	peripheral_request(P_UART1_RX, DRIVER_NAME);
-#endif
-
-#ifdef CONFIG_SERIAL_BFIN_CTSRTS
-	if (uart->cts_pin >= 0) {
-		gpio_request(uart->cts_pin, DRIVER_NAME);
-		gpio_direction_input(uart->cts_pin);
-	}
-
-	if (uart->rts_pin >= 0) {
-		gpio_request(uart->rts_pin, DRIVER_NAME);
-		gpio_direction_output(uart->rts_pin, 0);
-	}
-#endif
-}

+ 7 - 3
arch/blackfin/mach-bf538/include/mach/bfin_serial_5xx.h

@@ -53,9 +53,9 @@
 #define UART_SET_DLAB(uart)     do { UART_PUT_LCR(uart, UART_GET_LCR(uart) | DLAB); SSYNC(); } while (0)
 #define UART_SET_DLAB(uart)     do { UART_PUT_LCR(uart, UART_GET_LCR(uart) | DLAB); SSYNC(); } while (0)
 #define UART_CLEAR_DLAB(uart)   do { UART_PUT_LCR(uart, UART_GET_LCR(uart) & ~DLAB); SSYNC(); } while (0)
 #define UART_CLEAR_DLAB(uart)   do { UART_PUT_LCR(uart, UART_GET_LCR(uart) & ~DLAB); SSYNC(); } while (0)
 
 
-#define UART_GET_CTS(x) gpio_get_value(x->cts_pin)
-#define UART_SET_RTS(x) gpio_set_value(x->rts_pin, 1)
-#define UART_CLEAR_RTS(x) gpio_set_value(x->rts_pin, 0)
+#define UART_GET_CTS(x) (!gpio_get_value(x->cts_pin))
+#define UART_DISABLE_RTS(x) gpio_set_value(x->rts_pin, 1)
+#define UART_ENABLE_RTS(x) gpio_set_value(x->rts_pin, 0)
 #define UART_ENABLE_INTS(x, v) UART_PUT_IER(x, v)
 #define UART_ENABLE_INTS(x, v) UART_PUT_IER(x, v)
 #define UART_DISABLE_INTS(x) UART_PUT_IER(x, 0)
 #define UART_DISABLE_INTS(x) UART_PUT_IER(x, 0)
 
 
@@ -87,6 +87,7 @@
 struct bfin_serial_port {
 struct bfin_serial_port {
 	struct uart_port	port;
 	struct uart_port	port;
 	unsigned int		old_status;
 	unsigned int		old_status;
+	int			status_irq;
 	unsigned int lsr;
 	unsigned int lsr;
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	int			tx_done;
 	int			tx_done;
@@ -125,6 +126,7 @@ static inline void UART_CLEAR_LSR(struct bfin_serial_port *uart)
 struct bfin_serial_res {
 struct bfin_serial_res {
 	unsigned long	uart_base_addr;
 	unsigned long	uart_base_addr;
 	int		uart_irq;
 	int		uart_irq;
+	int		uart_status_irq;
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	unsigned int	uart_tx_dma_channel;
 	unsigned int	uart_tx_dma_channel;
 	unsigned int	uart_rx_dma_channel;
 	unsigned int	uart_rx_dma_channel;
@@ -140,6 +142,7 @@ struct bfin_serial_res bfin_serial_resource[] = {
 	{
 	{
 	0xFFC00400,
 	0xFFC00400,
 	IRQ_UART0_RX,
 	IRQ_UART0_RX,
+	IRQ_UART0_ERROR,
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	CH_UART0_TX,
 	CH_UART0_TX,
 	CH_UART0_RX,
 	CH_UART0_RX,
@@ -154,6 +157,7 @@ struct bfin_serial_res bfin_serial_resource[] = {
 	{
 	{
 	0xFFC02000,
 	0xFFC02000,
 	IRQ_UART1_RX,
 	IRQ_UART1_RX,
+	IRQ_UART1_ERROR,
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	CH_UART1_TX,
 	CH_UART1_TX,
 	CH_UART1_RX,
 	CH_UART1_RX,

+ 32 - 85
arch/blackfin/mach-bf548/include/mach/bfin_serial_5xx.h

@@ -46,41 +46,27 @@
 #define UART_PUT_CHAR(uart,v)   bfin_write16(((uart)->port.membase + OFFSET_THR),v)
 #define UART_PUT_CHAR(uart,v)   bfin_write16(((uart)->port.membase + OFFSET_THR),v)
 #define UART_PUT_DLL(uart,v)    bfin_write16(((uart)->port.membase + OFFSET_DLL),v)
 #define UART_PUT_DLL(uart,v)    bfin_write16(((uart)->port.membase + OFFSET_DLL),v)
 #define UART_SET_IER(uart,v)    bfin_write16(((uart)->port.membase + OFFSET_IER_SET),v)
 #define UART_SET_IER(uart,v)    bfin_write16(((uart)->port.membase + OFFSET_IER_SET),v)
-#define UART_CLEAR_IER(uart,v)    bfin_write16(((uart)->port.membase + OFFSET_IER_CLEAR),v)
+#define UART_CLEAR_IER(uart,v)  bfin_write16(((uart)->port.membase + OFFSET_IER_CLEAR),v)
 #define UART_PUT_DLH(uart,v)    bfin_write16(((uart)->port.membase + OFFSET_DLH),v)
 #define UART_PUT_DLH(uart,v)    bfin_write16(((uart)->port.membase + OFFSET_DLH),v)
 #define UART_PUT_LSR(uart,v)	bfin_write16(((uart)->port.membase + OFFSET_LSR),v)
 #define UART_PUT_LSR(uart,v)	bfin_write16(((uart)->port.membase + OFFSET_LSR),v)
 #define UART_PUT_LCR(uart,v)    bfin_write16(((uart)->port.membase + OFFSET_LCR),v)
 #define UART_PUT_LCR(uart,v)    bfin_write16(((uart)->port.membase + OFFSET_LCR),v)
 #define UART_CLEAR_LSR(uart)    bfin_write16(((uart)->port.membase + OFFSET_LSR), -1)
 #define UART_CLEAR_LSR(uart)    bfin_write16(((uart)->port.membase + OFFSET_LSR), -1)
 #define UART_PUT_GCTL(uart,v)   bfin_write16(((uart)->port.membase + OFFSET_GCTL),v)
 #define UART_PUT_GCTL(uart,v)   bfin_write16(((uart)->port.membase + OFFSET_GCTL),v)
 #define UART_PUT_MCR(uart,v)    bfin_write16(((uart)->port.membase + OFFSET_MCR),v)
 #define UART_PUT_MCR(uart,v)    bfin_write16(((uart)->port.membase + OFFSET_MCR),v)
+#define UART_CLEAR_SCTS(uart)   bfin_write16(((uart)->port.membase + OFFSET_MSR),SCTS)
 
 
 #define UART_SET_DLAB(uart)     /* MMRs not muxed on BF54x */
 #define UART_SET_DLAB(uart)     /* MMRs not muxed on BF54x */
 #define UART_CLEAR_DLAB(uart)   /* MMRs not muxed on BF54x */
 #define UART_CLEAR_DLAB(uart)   /* MMRs not muxed on BF54x */
 
 
 #define UART_GET_CTS(x) (UART_GET_MSR(x) & CTS)
 #define UART_GET_CTS(x) (UART_GET_MSR(x) & CTS)
-#define UART_SET_RTS(x) (UART_PUT_MCR(x, UART_GET_MCR(x) | MRTS))
-#define UART_CLEAR_RTS(x) (UART_PUT_MCR(x, UART_GET_MCR(x) & ~MRTS))
+#define UART_DISABLE_RTS(x) UART_PUT_MCR(x, UART_GET_MCR(x) & ~(ARTS|MRTS))
+#define UART_ENABLE_RTS(x) UART_PUT_MCR(x, UART_GET_MCR(x) | MRTS | ARTS)
 #define UART_ENABLE_INTS(x, v) UART_SET_IER(x, v)
 #define UART_ENABLE_INTS(x, v) UART_SET_IER(x, v)
 #define UART_DISABLE_INTS(x) UART_CLEAR_IER(x, 0xF)
 #define UART_DISABLE_INTS(x) UART_CLEAR_IER(x, 0xF)
 
 
-#if defined(CONFIG_BFIN_UART0_CTSRTS) || defined(CONFIG_BFIN_UART2_CTSRTS)
-# define CONFIG_SERIAL_BFIN_CTSRTS
-
-# ifndef CONFIG_UART0_CTS_PIN
-#  define CONFIG_UART0_CTS_PIN -1
-# endif
-
-# ifndef CONFIG_UART0_RTS_PIN
-#  define CONFIG_UART0_RTS_PIN -1
-# endif
-
-# ifndef CONFIG_UART2_CTS_PIN
-#  define CONFIG_UART2_CTS_PIN -1
-# endif
-
-# ifndef CONFIG_UART2_RTS_PIN
-#  define CONFIG_UART2_RTS_PIN -1
-# endif
+#if defined(CONFIG_BFIN_UART0_CTSRTS) || defined(CONFIG_BFIN_UART1_CTSRTS) || \
+	defined(CONFIG_BFIN_UART2_CTSRTS) || defined(CONFIG_BFIN_UART3_CTSRTS)
+# define CONFIG_SERIAL_BFIN_HARD_CTSRTS
 #endif
 #endif
 
 
 #define BFIN_UART_TX_FIFO_SIZE	2
 #define BFIN_UART_TX_FIFO_SIZE	2
@@ -91,6 +77,7 @@
 struct bfin_serial_port {
 struct bfin_serial_port {
         struct uart_port        port;
         struct uart_port        port;
         unsigned int            old_status;
         unsigned int            old_status;
+	int			status_irq;
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	int			tx_done;
 	int			tx_done;
 	int			tx_count;
 	int			tx_count;
@@ -101,23 +88,24 @@ struct bfin_serial_port {
 	unsigned int		rx_dma_channel;
 	unsigned int		rx_dma_channel;
 	struct work_struct	tx_dma_workqueue;
 	struct work_struct	tx_dma_workqueue;
 #endif
 #endif
-#ifdef CONFIG_SERIAL_BFIN_CTSRTS
-	struct timer_list 	cts_timer;
-	int		cts_pin;
-	int 		rts_pin;
+#ifdef CONFIG_SERIAL_BFIN_HARD_CTSRTS
+	int			scts;
+	int			cts_pin;
+	int			rts_pin;
 #endif
 #endif
 };
 };
 
 
 struct bfin_serial_res {
 struct bfin_serial_res {
 	unsigned long	uart_base_addr;
 	unsigned long	uart_base_addr;
 	int		uart_irq;
 	int		uart_irq;
+	int		uart_status_irq;
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	unsigned int	uart_tx_dma_channel;
 	unsigned int	uart_tx_dma_channel;
 	unsigned int	uart_rx_dma_channel;
 	unsigned int	uart_rx_dma_channel;
 #endif
 #endif
-#ifdef CONFIG_SERIAL_BFIN_CTSRTS
-	int	uart_cts_pin;
-	int	uart_rts_pin;
+#ifdef CONFIG_SERIAL_BFIN_HARD_CTSRTS
+	int		uart_cts_pin;
+	int		uart_rts_pin;
 #endif
 #endif
 };
 };
 
 
@@ -126,13 +114,14 @@ struct bfin_serial_res bfin_serial_resource[] = {
 	{
 	{
 	0xFFC00400,
 	0xFFC00400,
 	IRQ_UART0_RX,
 	IRQ_UART0_RX,
+	IRQ_UART0_ERROR,
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	CH_UART0_TX,
 	CH_UART0_TX,
 	CH_UART0_RX,
 	CH_UART0_RX,
 #endif
 #endif
-#ifdef CONFIG_SERIAL_BFIN_CTSRTS
-	CONFIG_UART0_CTS_PIN,
-	CONFIG_UART0_RTS_PIN,
+#ifdef CONFIG_SERIAL_BFIN_HARD_CTSRTS
+	0,
+	0,
 #endif
 #endif
 	},
 	},
 #endif
 #endif
@@ -140,13 +129,14 @@ struct bfin_serial_res bfin_serial_resource[] = {
 	{
 	{
 	0xFFC02000,
 	0xFFC02000,
 	IRQ_UART1_RX,
 	IRQ_UART1_RX,
+	IRQ_UART1_ERROR,
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	CH_UART1_TX,
 	CH_UART1_TX,
 	CH_UART1_RX,
 	CH_UART1_RX,
 #endif
 #endif
-#ifdef CONFIG_SERIAL_BFIN_CTSRTS
-	0,
-	0,
+#ifdef CONFIG_SERIAL_BFIN_HARD_CTSRTS
+	GPIO_PE10,
+	GPIO_PE9,
 #endif
 #endif
 	},
 	},
 #endif
 #endif
@@ -154,13 +144,14 @@ struct bfin_serial_res bfin_serial_resource[] = {
 	{
 	{
 	0xFFC02100,
 	0xFFC02100,
 	IRQ_UART2_RX,
 	IRQ_UART2_RX,
+	IRQ_UART2_ERROR,
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	CH_UART2_TX,
 	CH_UART2_TX,
 	CH_UART2_RX,
 	CH_UART2_RX,
 #endif
 #endif
-#ifdef CONFIG_SERIAL_BFIN_CTSRTS
-	CONFIG_UART2_CTS_PIN,
-	CONFIG_UART2_RTS_PIN,
+#ifdef CONFIG_SERIAL_BFIN_HARD_CTSRTS
+	0,
+	0,
 #endif
 #endif
 	},
 	},
 #endif
 #endif
@@ -168,61 +159,17 @@ struct bfin_serial_res bfin_serial_resource[] = {
 	{
 	{
 	0xFFC03100,
 	0xFFC03100,
 	IRQ_UART3_RX,
 	IRQ_UART3_RX,
+	IRQ_UART3_ERROR,
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	CH_UART3_TX,
 	CH_UART3_TX,
 	CH_UART3_RX,
 	CH_UART3_RX,
 #endif
 #endif
-#ifdef CONFIG_SERIAL_BFIN_CTSRTS
-	0,
-	0,
+#ifdef CONFIG_SERIAL_BFIN_HARD_CTSRTS
+	GPIO_PB3,
+	GPIO_PB2,
 #endif
 #endif
 	},
 	},
 #endif
 #endif
 };
 };
 
 
 #define DRIVER_NAME "bfin-uart"
 #define DRIVER_NAME "bfin-uart"
-
-static void bfin_serial_hw_init(struct bfin_serial_port *uart)
-{
-#ifdef CONFIG_SERIAL_BFIN_UART0
-	peripheral_request(P_UART0_TX, DRIVER_NAME);
-	peripheral_request(P_UART0_RX, DRIVER_NAME);
-#endif
-
-#ifdef CONFIG_SERIAL_BFIN_UART1
-	peripheral_request(P_UART1_TX, DRIVER_NAME);
-	peripheral_request(P_UART1_RX, DRIVER_NAME);
-
-#ifdef CONFIG_BFIN_UART1_CTSRTS
-	peripheral_request(P_UART1_RTS, DRIVER_NAME);
-	peripheral_request(P_UART1_CTS, DRIVER_NAME);
-#endif
-#endif
-
-#ifdef CONFIG_SERIAL_BFIN_UART2
-	peripheral_request(P_UART2_TX, DRIVER_NAME);
-	peripheral_request(P_UART2_RX, DRIVER_NAME);
-#endif
-
-#ifdef CONFIG_SERIAL_BFIN_UART3
-	peripheral_request(P_UART3_TX, DRIVER_NAME);
-	peripheral_request(P_UART3_RX, DRIVER_NAME);
-
-#ifdef CONFIG_BFIN_UART3_CTSRTS
-	peripheral_request(P_UART3_RTS, DRIVER_NAME);
-	peripheral_request(P_UART3_CTS, DRIVER_NAME);
-#endif
-#endif
-	SSYNC();
-#ifdef CONFIG_SERIAL_BFIN_CTSRTS
-	if (uart->cts_pin >= 0) {
-		gpio_request(uart->cts_pin, DRIVER_NAME);
-		gpio_direction_input(uart->cts_pin);
-	}
-
-	if (uart->rts_pin >= 0) {
-		gpio_request(uart->rts_pin, DRIVER_NAME);
-		gpio_direction_output(uart->rts_pin, 0);
-	}
-#endif
-}

+ 6 - 23
arch/blackfin/mach-bf561/include/mach/bfin_serial_5xx.h

@@ -53,9 +53,9 @@
 #define UART_SET_DLAB(uart)     do { UART_PUT_LCR(uart, UART_GET_LCR(uart) | DLAB); SSYNC(); } while (0)
 #define UART_SET_DLAB(uart)     do { UART_PUT_LCR(uart, UART_GET_LCR(uart) | DLAB); SSYNC(); } while (0)
 #define UART_CLEAR_DLAB(uart)   do { UART_PUT_LCR(uart, UART_GET_LCR(uart) & ~DLAB); SSYNC(); } while (0)
 #define UART_CLEAR_DLAB(uart)   do { UART_PUT_LCR(uart, UART_GET_LCR(uart) & ~DLAB); SSYNC(); } while (0)
 
 
-#define UART_GET_CTS(x) gpio_get_value(x->cts_pin)
-#define UART_SET_RTS(x) gpio_set_value(x->rts_pin, 1)
-#define UART_CLEAR_RTS(x) gpio_set_value(x->rts_pin, 0)
+#define UART_GET_CTS(x) (!gpio_get_value(x->cts_pin))
+#define UART_DISABLE_RTS(x) gpio_set_value(x->rts_pin, 1)
+#define UART_ENABLE_RTS(x) gpio_set_value(x->rts_pin, 0)
 #define UART_ENABLE_INTS(x, v) UART_PUT_IER(x, v)
 #define UART_ENABLE_INTS(x, v) UART_PUT_IER(x, v)
 #define UART_DISABLE_INTS(x) UART_PUT_IER(x, 0)
 #define UART_DISABLE_INTS(x) UART_PUT_IER(x, 0)
 
 
@@ -74,6 +74,7 @@
 struct bfin_serial_port {
 struct bfin_serial_port {
         struct uart_port        port;
         struct uart_port        port;
         unsigned int            old_status;
         unsigned int            old_status;
+	int			status_irq;
 	unsigned int lsr;
 	unsigned int lsr;
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	int			tx_done;
 	int			tx_done;
@@ -116,6 +117,7 @@ static inline void UART_CLEAR_LSR(struct bfin_serial_port *uart)
 struct bfin_serial_res {
 struct bfin_serial_res {
 	unsigned long	uart_base_addr;
 	unsigned long	uart_base_addr;
 	int		uart_irq;
 	int		uart_irq;
+	int		uart_status_irq;
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	unsigned int	uart_tx_dma_channel;
 	unsigned int	uart_tx_dma_channel;
 	unsigned int	uart_rx_dma_channel;
 	unsigned int	uart_rx_dma_channel;
@@ -130,6 +132,7 @@ struct bfin_serial_res bfin_serial_resource[] = {
 	{
 	{
 	0xFFC00400,
 	0xFFC00400,
 	IRQ_UART_RX,
 	IRQ_UART_RX,
+	IRQ_UART_ERROR,
 #ifdef CONFIG_SERIAL_BFIN_DMA
 #ifdef CONFIG_SERIAL_BFIN_DMA
 	CH_UART_TX,
 	CH_UART_TX,
 	CH_UART_RX,
 	CH_UART_RX,
@@ -142,23 +145,3 @@ struct bfin_serial_res bfin_serial_resource[] = {
 };
 };
 
 
 #define DRIVER_NAME "bfin-uart"
 #define DRIVER_NAME "bfin-uart"
-
-static void bfin_serial_hw_init(struct bfin_serial_port *uart)
-{
-
-#ifdef CONFIG_SERIAL_BFIN_UART0
-	peripheral_request(P_UART0_TX, DRIVER_NAME);
-	peripheral_request(P_UART0_RX, DRIVER_NAME);
-#endif
-
-#ifdef CONFIG_SERIAL_BFIN_CTSRTS
-	if (uart->cts_pin >= 0) {
-		gpio_request(uart->cts_pin, DRIVER_NAME);
-		gpio_direction_input(uart->cts_pin);
-	}
-	if (uart->rts_pin >= 0) {
-		gpio_request(uart->rts_pin, DRIVER_NAME);
-		gpio_direction_output(uart->rts_pin, 0);
-	}
-#endif
-}

Some files were not shown because too many files changed in this diff