drivers: misc: pass miscdevice pointer via file private data
[safe/jmp/linux-2.6] / drivers / spi / Kconfig
index 86056d1..f950b63 100644 (file)
@@ -100,6 +100,23 @@ config SPI_BUTTERFLY
          inexpensive battery powered microcontroller evaluation board.
          This same cable can be used to flash new firmware.
 
+config SPI_COLDFIRE_QSPI
+       tristate "Freescale Coldfire QSPI controller"
+       depends on (M520x || M523x || M5249 || M527x || M528x || M532x)
+       help
+         This enables support for the Coldfire QSPI controller in master
+         mode.
+
+         This driver can also be built as a module.  If so, the module
+         will be called coldfire_qspi.
+
+config SPI_DAVINCI
+       tristate "SPI controller driver for DaVinci/DA8xx SoC's"
+       depends on SPI_MASTER && ARCH_DAVINCI
+       select SPI_BITBANG
+       help
+         SPI master controller for DaVinci and DA8xx SPI modules.
+
 config SPI_GPIO
        tristate "GPIO-based bitbanging SPI Master"
        depends on GENERIC_GPIO
@@ -116,6 +133,14 @@ config SPI_GPIO
          GPIO operations, you should be able to leverage that for better
          speed with a custom version of this driver; see the source code.
 
+config SPI_IMX
+       tristate "Freescale i.MX SPI controllers"
+       depends on ARCH_MXC
+       select SPI_BITBANG
+       help
+         This enables using the Freescale i.MX SPI controllers in master
+         mode.
+
 config SPI_LM70_LLP
        tristate "Parallel port adapter for LM70 eval board (DEVELOPMENT)"
        depends on PARPORT && EXPERIMENTAL
@@ -125,6 +150,14 @@ config SPI_LM70_LLP
          which interfaces to an LM70 temperature sensor using
          a parallel port.
 
+config SPI_MPC52xx
+       tristate "Freescale MPC52xx SPI (non-PSC) controller support"
+       depends on PPC_MPC52xx && SPI
+       select SPI_MASTER_OF
+       help
+         This drivers supports the MPC52xx SPI controller in master SPI
+         mode.
+
 config SPI_MPC52xx_PSC
        tristate "Freescale MPC52xx PSC SPI controller"
        depends on PPC_MPC52xx && EXPERIMENTAL
@@ -139,9 +172,6 @@ config SPI_MPC8xxx
          This enables using the Freescale MPC8xxx SPI controllers in master
          mode.
 
-         This driver uses a simple set of shift registers for data (opposed
-         to the CPM based descriptor model).
-
 config SPI_OMAP_UWIRE
        tristate "OMAP1 MicroWire"
        depends on ARCH_OMAP1
@@ -150,12 +180,18 @@ config SPI_OMAP_UWIRE
          This hooks up to the MicroWire controller on OMAP1 chips.
 
 config SPI_OMAP24XX
-       tristate "McSPI driver for OMAP24xx/OMAP34xx"
-       depends on ARCH_OMAP24XX || ARCH_OMAP34XX
+       tristate "McSPI driver for OMAP"
+       depends on ARCH_OMAP2PLUS
        help
-         SPI master controller for OMAP24xx/OMAP34xx Multichannel SPI
+         SPI master controller for OMAP24XX and later Multichannel SPI
          (McSPI) modules.
 
+config SPI_OMAP_100K
+       tristate "OMAP SPI 100K"
+       depends on SPI_MASTER && (ARCH_OMAP850 || ARCH_OMAP730)
+       help
+         OMAP SPI 100K master controller for omap7xx boards.
+
 config SPI_ORION
        tristate "Orion SPI master (EXPERIMENTAL)"
        depends on PLAT_ORION && EXPERIMENTAL
@@ -166,11 +202,21 @@ config SPI_PL022
        tristate "ARM AMBA PL022 SSP controller (EXPERIMENTAL)"
        depends on ARM_AMBA && EXPERIMENTAL
        default y if MACH_U300
+       default y if ARCH_REALVIEW
+       default y if INTEGRATOR_IMPD1
+       default y if ARCH_VERSATILE
        help
          This selects the ARM(R) AMBA(R) PrimeCell PL022 SSP
          controller. If you have an embedded system with an AMBA(R)
          bus and a PL022 controller, say Y or M here.
 
+config SPI_PPC4xx
+       tristate "PPC4xx SPI Controller"
+       depends on PPC32 && 4xx && SPI_MASTER
+       select SPI_BITBANG
+       help
+         This selects a driver for the PPC4xx SPI Controller.
+
 config SPI_PXA2XX
        tristate "PXA2xx SSP SPI master"
        depends on ARCH_PXA && EXPERIMENTAL
@@ -187,6 +233,17 @@ config SPI_S3C24XX
        help
          SPI driver for Samsung S3C24XX series ARM SoCs
 
+config SPI_S3C24XX_FIQ
+       bool "S3C24XX driver with FIQ pseudo-DMA"
+       depends on SPI_S3C24XX
+       select FIQ
+       help
+         Enable FIQ support for the S3C24XX SPI driver to provide pseudo
+         DMA by using the fast-interrupt request framework, This allows
+         the driver to get DMA-like performance when there are either
+         no free DMA channels, or when doing transfers that required both
+         TX and RX data paths.
+
 config SPI_S3C24XX_GPIO
        tristate "Samsung S3C24XX series SPI by GPIO"
        depends on ARCH_S3C2410 && EXPERIMENTAL
@@ -197,6 +254,20 @@ config SPI_S3C24XX_GPIO
          the inbuilt hardware cannot provide the transfer mode, or
          where the board is using non hardware connected pins.
 
+config SPI_S3C64XX
+       tristate "Samsung S3C64XX series type SPI"
+       depends on ARCH_S3C64XX && EXPERIMENTAL
+       select S3C64XX_DMA
+       help
+         SPI driver for Samsung S3C64XX and newer SoCs.
+
+config SPI_SH_MSIOF
+       tristate "SuperH MSIOF SPI controller"
+       depends on SUPERH && HAVE_CLK
+       select SPI_BITBANG
+       help
+         SPI driver for SuperH MSIOF blocks.
+
 config SPI_SH_SCI
        tristate "SuperH SCI SPI controller"
        depends on SUPERH
@@ -204,6 +275,12 @@ config SPI_SH_SCI
        help
          SPI driver for SuperH SCI blocks.
 
+config SPI_STMP3XXX
+       tristate "Freescale STMP37xx/378x SPI/SSP controller"
+       depends on ARCH_STMP3XXX && SPI_MASTER
+       help
+         SPI driver for Freescale STMP37xx/378x SoC SSP interface
+
 config SPI_TXX9
        tristate "Toshiba TXx9 SPI controller"
        depends on GENERIC_GPIO && CPU_TX49XX
@@ -211,19 +288,56 @@ config SPI_TXX9
          SPI driver for Toshiba TXx9 MIPS SoCs
 
 config SPI_XILINX
-       tristate "Xilinx SPI controller"
-       depends on (XILINX_VIRTEX || MICROBLAZE) && EXPERIMENTAL
+       tristate "Xilinx SPI controller common module"
+       depends on HAS_IOMEM && EXPERIMENTAL
        select SPI_BITBANG
+       select SPI_XILINX_OF if (XILINX_VIRTEX || MICROBLAZE)
        help
          This exposes the SPI controller IP from the Xilinx EDK.
 
          See the "OPB Serial Peripheral Interface (SPI) (v1.00e)"
          Product Specification document (DS464) for hardware details.
 
+         Or for the DS570, see "XPS Serial Peripheral Interface (SPI) (v2.00b)"
+
+config SPI_XILINX_OF
+       tristate "Xilinx SPI controller OF device"
+       depends on SPI_XILINX && (XILINX_VIRTEX || MICROBLAZE)
+       help
+         This is the OF driver for the SPI controller IP from the Xilinx EDK.
+
+config SPI_XILINX_PLTFM
+       tristate "Xilinx SPI controller platform device"
+       depends on SPI_XILINX
+       help
+         This is the platform driver for the SPI controller IP
+         from the Xilinx EDK.
+
+config SPI_NUC900
+       tristate "Nuvoton NUC900 series SPI"
+       depends on ARCH_W90X900 && EXPERIMENTAL
+       select SPI_BITBANG
+       help
+         SPI driver for Nuvoton NUC900 series ARM SoCs
+
 #
 # Add new SPI master controllers in alphabetical order above this line
 #
 
+config SPI_DESIGNWARE
+       tristate "DesignWare SPI controller core support"
+       depends on SPI_MASTER
+       help
+         general driver for SPI controller core from DesignWare
+
+config SPI_DW_PCI
+       tristate "PCI interface driver for DW SPI core"
+       depends on SPI_DESIGNWARE && PCI
+
+config SPI_DW_MMIO
+       tristate "Memory-mapped io interface driver for DW SPI core"
+       depends on SPI_DESIGNWARE && HAVE_CLK
+
 #
 # There are lots of SPI device types, with sensors and memory
 # being probably the most widely used ones.