18ae12a0dSDavid Brownell# 28ae12a0dSDavid Brownell# SPI driver configuration 38ae12a0dSDavid Brownell# 48ae12a0dSDavid Brownell# NOTE: the reason this doesn't show SPI slave support is mostly that 58ae12a0dSDavid Brownell# nobody's needed a slave side API yet. The master-role API is not 68ae12a0dSDavid Brownell# fully appropriate there, so it'd need some thought to do well. 78ae12a0dSDavid Brownell# 879d8c7a8SAlessandro Guidomenuconfig SPI 98ae12a0dSDavid Brownell bool "SPI support" 1079d8c7a8SAlessandro Guido depends on HAS_IOMEM 118ae12a0dSDavid Brownell help 128ae12a0dSDavid Brownell The "Serial Peripheral Interface" is a low level synchronous 138ae12a0dSDavid Brownell protocol. Chips that support SPI can have data transfer rates 148ae12a0dSDavid Brownell up to several tens of Mbit/sec. Chips are addressed with a 158ae12a0dSDavid Brownell controller and a chipselect. Most SPI slaves don't support 168ae12a0dSDavid Brownell dynamic device discovery; some are even write-only or read-only. 178ae12a0dSDavid Brownell 183cb2fcccSMatt LaPlante SPI is widely used by microcontrollers to talk with sensors, 198ae12a0dSDavid Brownell eeprom and flash memory, codecs and various other controller 208ae12a0dSDavid Brownell chips, analog to digital (and d-to-a) converters, and more. 218ae12a0dSDavid Brownell MMC and SD cards can be accessed using SPI protocol; and for 228ae12a0dSDavid Brownell DataFlash cards used in MMC sockets, SPI must always be used. 238ae12a0dSDavid Brownell 248ae12a0dSDavid Brownell SPI is one of a family of similar protocols using a four wire 258ae12a0dSDavid Brownell interface (select, clock, data in, data out) including Microwire 268ae12a0dSDavid Brownell (half duplex), SSP, SSI, and PSP. This driver framework should 278ae12a0dSDavid Brownell work with most such devices and controllers. 288ae12a0dSDavid Brownell 2979d8c7a8SAlessandro Guidoif SPI 3079d8c7a8SAlessandro Guido 318ae12a0dSDavid Brownellconfig SPI_DEBUG 326341e62bSChristoph Jaeger bool "Debug support for SPI drivers" 3379d8c7a8SAlessandro Guido depends on DEBUG_KERNEL 348ae12a0dSDavid Brownell help 358ae12a0dSDavid Brownell Say "yes" to enable debug messaging (like dev_dbg and pr_debug), 368ae12a0dSDavid Brownell sysfs, and debugfs support in SPI controller and protocol drivers. 378ae12a0dSDavid Brownell 388ae12a0dSDavid Brownell# 398ae12a0dSDavid Brownell# MASTER side ... talking to discrete SPI slave chips including microcontrollers 408ae12a0dSDavid Brownell# 418ae12a0dSDavid Brownell 428ae12a0dSDavid Brownellconfig SPI_MASTER 436341e62bSChristoph Jaeger# bool "SPI Master Support" 446341e62bSChristoph Jaeger bool 458ae12a0dSDavid Brownell default SPI 468ae12a0dSDavid Brownell help 478ae12a0dSDavid Brownell If your system has an master-capable SPI controller (which 488ae12a0dSDavid Brownell provides the clock and chipselect), you can enable that 498ae12a0dSDavid Brownell controller and the protocol drivers for the SPI slave chips 508ae12a0dSDavid Brownell that are connected. 518ae12a0dSDavid Brownell 526291fe2aSRobert P. J. Dayif SPI_MASTER 536291fe2aSRobert P. J. Day 548ae12a0dSDavid Brownellcomment "SPI Master Controller Drivers" 558ae12a0dSDavid Brownell 560b782531SThomas Chouconfig SPI_ALTERA 570b782531SThomas Chou tristate "Altera SPI Controller" 580b782531SThomas Chou select SPI_BITBANG 590b782531SThomas Chou help 600b782531SThomas Chou This is the driver for the Altera SPI Controller. 610b782531SThomas Chou 628efaef4dSGabor Juhosconfig SPI_ATH79 638efaef4dSGabor Juhos tristate "Atheros AR71XX/AR724X/AR913X SPI controller driver" 6476ec9d18SAlexandre Courbot depends on ATH79 && GPIOLIB 658efaef4dSGabor Juhos select SPI_BITBANG 668efaef4dSGabor Juhos help 678efaef4dSGabor Juhos This enables support for the SPI controller present on the 688efaef4dSGabor Juhos Atheros AR71XX/AR724X/AR913X SoCs. 698efaef4dSGabor Juhos 70754ce4f2SHaavard Skinnemoenconfig SPI_ATMEL 71754ce4f2SHaavard Skinnemoen tristate "Atmel SPI Controller" 72f59838a0SGeert Uytterhoeven depends on HAS_DMA 73dd1053a9SMark Brown depends on (ARCH_AT91 || AVR32 || COMPILE_TEST) 74754ce4f2SHaavard Skinnemoen help 75754ce4f2SHaavard Skinnemoen This selects a driver for the Atmel SPI Controller, present on 76754ce4f2SHaavard Skinnemoen many AT32 (AVR32) and AT91 (ARM) chips. 77754ce4f2SHaavard Skinnemoen 78e32bb870SMark Brownconfig SPI_AU1550 79e32bb870SMark Brown tristate "Au1550/Au1200/Au1300 SPI Controller" 80e32bb870SMark Brown depends on MIPS_ALCHEMY 81e32bb870SMark Brown select SPI_BITBANG 82e32bb870SMark Brown help 83e32bb870SMark Brown If you say yes to this option, support will be included for the 84e32bb870SMark Brown PSC SPI controller found on Au1550, Au1200 and Au1300 series. 85e32bb870SMark Brown 86b1353d1cSLars-Peter Clausenconfig SPI_AXI_SPI_ENGINE 87b1353d1cSLars-Peter Clausen tristate "Analog Devices AXI SPI Engine controller" 88b1353d1cSLars-Peter Clausen depends on HAS_IOMEM 89b1353d1cSLars-Peter Clausen help 90b1353d1cSLars-Peter Clausen This enables support for the Analog Devices AXI SPI Engine SPI controller. 91b1353d1cSLars-Peter Clausen It is part of the SPI Engine framework that is used in some Analog Devices 92b1353d1cSLars-Peter Clausen reference designs for FPGAs. 93b1353d1cSLars-Peter Clausen 94f8043872SChris Bootconfig SPI_BCM2835 95f8043872SChris Boot tristate "BCM2835 SPI controller" 96e0d58cdcSYoshinori Sato depends on GPIOLIB 97dd1053a9SMark Brown depends on ARCH_BCM2835 || COMPILE_TEST 98f8043872SChris Boot help 99f8043872SChris Boot This selects a driver for the Broadcom BCM2835 SPI master. 100f8043872SChris Boot 101f8043872SChris Boot The BCM2835 contains two types of SPI master controller; the 102f8043872SChris Boot "universal SPI master", and the regular SPI controller. This driver 103f8043872SChris Boot is for the regular SPI controller. Slave mode operation is not also 104f8043872SChris Boot not supported. 105f8043872SChris Boot 1061ea29b39SMartin Sperlconfig SPI_BCM2835AUX 1071ea29b39SMartin Sperl tristate "BCM2835 SPI auxiliary controller" 1080697ae80SGeert Uytterhoeven depends on (ARCH_BCM2835 && GPIOLIB) || COMPILE_TEST 1091ea29b39SMartin Sperl help 1101ea29b39SMartin Sperl This selects a driver for the Broadcom BCM2835 SPI aux master. 1111ea29b39SMartin Sperl 1121ea29b39SMartin Sperl The BCM2835 contains two types of SPI master controller; the 1131ea29b39SMartin Sperl "universal SPI master", and the regular SPI controller. 1141ea29b39SMartin Sperl This driver is for the universal/auxiliary SPI controller. 1151ea29b39SMartin Sperl 11622ac3e82SScott Jiangconfig SPI_BFIN5XX 117a5f6abd4SWu, Bryan tristate "SPI controller driver for ADI Blackfin5xx" 118fa4bd4f1SScott Jiang depends on BLACKFIN && !BF60x 119a5f6abd4SWu, Bryan help 120a5f6abd4SWu, Bryan This is the SPI controller master driver for Blackfin 5xx processor. 121a5f6abd4SWu, Bryan 122766e3721SScott Jiangconfig SPI_ADI_V3 123766e3721SScott Jiang tristate "SPI controller v3 for ADI" 124fa4bd4f1SScott Jiang depends on BF60x 125fa4bd4f1SScott Jiang help 126fa4bd4f1SScott Jiang This is the SPI controller v3 master driver 127fa4bd4f1SScott Jiang found on Blackfin 60x processor. 128fa4bd4f1SScott Jiang 1299c3e7375SCliff Caiconfig SPI_BFIN_SPORT 1309c3e7375SCliff Cai tristate "SPI bus via Blackfin SPORT" 1319c3e7375SCliff Cai depends on BLACKFIN 1329c3e7375SCliff Cai help 1339c3e7375SCliff Cai Enable support for a SPI bus via the Blackfin SPORT peripheral. 1349c3e7375SCliff Cai 1350fc6a323SRafał Miłeckiconfig SPI_BCM53XX 1360fc6a323SRafał Miłecki tristate "Broadcom BCM53xx SPI controller" 1370fc6a323SRafał Miłecki depends on ARCH_BCM_5301X 138933fc7b0SAxel Lin depends on BCMA_POSSIBLE 139933fc7b0SAxel Lin select BCMA 1400fc6a323SRafał Miłecki help 1410fc6a323SRafał Miłecki Enable support for the SPI controller on Broadcom BCM53xx ARM SoCs. 1420fc6a323SRafał Miłecki 143b42dfed8SFlorian Fainelliconfig SPI_BCM63XX 144b42dfed8SFlorian Fainelli tristate "Broadcom BCM63xx SPI controller" 14544d8fb30SJonas Gorski depends on BCM63XX || COMPILE_TEST 146b42dfed8SFlorian Fainelli help 147b42dfed8SFlorian Fainelli Enable support for the SPI controller on the Broadcom BCM63xx SoCs. 148b42dfed8SFlorian Fainelli 149142168ebSJonas Gorskiconfig SPI_BCM63XX_HSSPI 150142168ebSJonas Gorski tristate "Broadcom BCM63XX HS SPI controller driver" 151142168ebSJonas Gorski depends on BCM63XX || COMPILE_TEST 152142168ebSJonas Gorski help 153142168ebSJonas Gorski This enables support for the High Speed SPI controller present on 154142168ebSJonas Gorski newer Broadcom BCM63XX SoCs. 155142168ebSJonas Gorski 156*fa236a7eSKamal Dasuconfig SPI_BCM_QSPI 157*fa236a7eSKamal Dasu tristate "Broadcom BSPI and MSPI controller support" 158*fa236a7eSKamal Dasu depends on ARCH_BRCMSTB || ARCH_BCM || ARCH_BCM_IPROC || COMPILE_TEST 159*fa236a7eSKamal Dasu default ARCH_BCM_IPROC 160*fa236a7eSKamal Dasu help 161*fa236a7eSKamal Dasu Enables support for the Broadcom SPI flash and MSPI controller. 162*fa236a7eSKamal Dasu Select this option for any one of BRCMSTB, iProc NSP and NS2 SoCs 163*fa236a7eSKamal Dasu based platforms. This driver works for both SPI master for spi-nor 164*fa236a7eSKamal Dasu flash device as well as MSPI device. 165*fa236a7eSKamal Dasu 1669904f22aSDavid Brownellconfig SPI_BITBANG 167d29389deSDavid Brownell tristate "Utilities for Bitbanging SPI masters" 1689904f22aSDavid Brownell help 1699904f22aSDavid Brownell With a few GPIO pins, your system can bitbang the SPI protocol. 1709904f22aSDavid Brownell Select this to get SPI support through I/O pins (GPIO, parallel 1719904f22aSDavid Brownell port, etc). Or, some systems' SPI master controller drivers use 1729904f22aSDavid Brownell this code to manage the per-word or per-transfer accesses to the 1739904f22aSDavid Brownell hardware shift registers. 1749904f22aSDavid Brownell 1759904f22aSDavid Brownell This is library code, and is automatically selected by drivers that 1769904f22aSDavid Brownell need it. You only need to select this explicitly to support driver 1779904f22aSDavid Brownell modules that aren't part of this kernel tree. 1788ae12a0dSDavid Brownell 1797111763dSDavid Brownellconfig SPI_BUTTERFLY 1807111763dSDavid Brownell tristate "Parallel port adapter for AVR Butterfly (DEVELOPMENT)" 1816291fe2aSRobert P. J. Day depends on PARPORT 1827111763dSDavid Brownell select SPI_BITBANG 1837111763dSDavid Brownell help 1847111763dSDavid Brownell This uses a custom parallel port cable to connect to an AVR 1857111763dSDavid Brownell Butterfly <http://www.atmel.com/products/avr/butterfly>, an 1867111763dSDavid Brownell inexpensive battery powered microcontroller evaluation board. 1877111763dSDavid Brownell This same cable can be used to flash new firmware. 1887111763dSDavid Brownell 189c474b386SHarini Katakamconfig SPI_CADENCE 190c474b386SHarini Katakam tristate "Cadence SPI controller" 191c474b386SHarini Katakam help 192c474b386SHarini Katakam This selects the Cadence SPI controller master driver 19338b6484eSMichal Simek used by Xilinx Zynq and ZynqMP. 194c474b386SHarini Katakam 195161b96c3SAlexander Shiyanconfig SPI_CLPS711X 196161b96c3SAlexander Shiyan tristate "CLPS711X host SPI controller" 1975634dd8bSAxel Lin depends on ARCH_CLPS711X || COMPILE_TEST 198161b96c3SAlexander Shiyan help 199161b96c3SAlexander Shiyan This enables dedicated general purpose SPI/Microwire1-compatible 200161b96c3SAlexander Shiyan master mode interface (SSI1) for CLPS711X-based CPUs. 201161b96c3SAlexander Shiyan 20234b8c661SSteven Kingconfig SPI_COLDFIRE_QSPI 20334b8c661SSteven King tristate "Freescale Coldfire QSPI controller" 204bce4d12bSSteven King depends on (M520x || M523x || M5249 || M525x || M527x || M528x || M532x) 20534b8c661SSteven King help 20634b8c661SSteven King This enables support for the Coldfire QSPI controller in master 20734b8c661SSteven King mode. 20834b8c661SSteven King 209358934a6SSandeep Paulrajconfig SPI_DAVINCI 21023ce17adSSekhar Nori tristate "Texas Instruments DaVinci/DA8x/OMAP-L/AM1x SoC SPI controller" 21178848914SSantosh Shilimkar depends on ARCH_DAVINCI || ARCH_KEYSTONE 212358934a6SSandeep Paulraj select SPI_BITBANG 213358934a6SSandeep Paulraj help 21423ce17adSSekhar Nori SPI master controller for DaVinci/DA8x/OMAP-L/AM1x SPI modules. 21523ce17adSSekhar Nori 216e32bb870SMark Brownconfig SPI_DESIGNWARE 217e32bb870SMark Brown tristate "DesignWare SPI controller core support" 218e32bb870SMark Brown help 219e32bb870SMark Brown general driver for SPI controller core from DesignWare 220e32bb870SMark Brown 221e32bb870SMark Brownconfig SPI_DW_PCI 222e32bb870SMark Brown tristate "PCI interface driver for DW SPI core" 223e32bb870SMark Brown depends on SPI_DESIGNWARE && PCI 224e32bb870SMark Brown 225e32bb870SMark Brownconfig SPI_DW_MID_DMA 226e32bb870SMark Brown bool "DMA support for DW SPI controller on Intel MID platform" 227e32bb870SMark Brown depends on SPI_DW_PCI && DW_DMAC_PCI 228e32bb870SMark Brown 229e32bb870SMark Brownconfig SPI_DW_MMIO 230e32bb870SMark Brown tristate "Memory-mapped io interface driver for DW SPI core" 231e32bb870SMark Brown depends on SPI_DESIGNWARE 232e32bb870SMark Brown 2333d8c0d74SLaurentiu Palcuconfig SPI_DLN2 2343d8c0d74SLaurentiu Palcu tristate "Diolan DLN-2 USB SPI adapter" 2353d8c0d74SLaurentiu Palcu depends on MFD_DLN2 2363d8c0d74SLaurentiu Palcu help 2373d8c0d74SLaurentiu Palcu If you say yes to this option, support will be included for Diolan 2383d8c0d74SLaurentiu Palcu DLN2, a USB to SPI interface. 2393d8c0d74SLaurentiu Palcu 2403d8c0d74SLaurentiu Palcu This driver can also be built as a module. If so, the module 2413d8c0d74SLaurentiu Palcu will be called spi-dln2. 2423d8c0d74SLaurentiu Palcu 24386f8973cSUwe Kleine-Königconfig SPI_EFM32 24486f8973cSUwe Kleine-König tristate "EFM32 SPI controller" 24586f8973cSUwe Kleine-König depends on OF && ARM && (ARCH_EFM32 || COMPILE_TEST) 24686f8973cSUwe Kleine-König select SPI_BITBANG 24786f8973cSUwe Kleine-König help 24886f8973cSUwe Kleine-König Driver for the spi controller found on Energy Micro's EFM32 SoCs. 24986f8973cSUwe Kleine-König 250011f23a3SMika Westerbergconfig SPI_EP93XX 251011f23a3SMika Westerberg tristate "Cirrus Logic EP93xx SPI controller" 252f59838a0SGeert Uytterhoeven depends on HAS_DMA 253dd1053a9SMark Brown depends on ARCH_EP93XX || COMPILE_TEST 254011f23a3SMika Westerberg help 255011f23a3SMika Westerberg This enables using the Cirrus EP93xx SPI controller in master 256011f23a3SMika Westerberg mode. 257011f23a3SMika Westerberg 2586cd3c7e2SThomas Langerconfig SPI_FALCON 2596cd3c7e2SThomas Langer tristate "Falcon SPI controller support" 2606cd3c7e2SThomas Langer depends on SOC_FALCON 2616cd3c7e2SThomas Langer help 2626cd3c7e2SThomas Langer The external bus unit (EBU) found on the FALC-ON SoC has SPI 2636cd3c7e2SThomas Langer emulation that is designed for serial flash access. This driver 2646cd3c7e2SThomas Langer has only been tested with m25p80 type chips. The hardware has no 2656cd3c7e2SThomas Langer support for other types of SPI peripherals. 2666cd3c7e2SThomas Langer 267d29389deSDavid Brownellconfig SPI_GPIO 268d29389deSDavid Brownell tristate "GPIO-based bitbanging SPI Master" 2695c2301a9SGeert Uytterhoeven depends on GPIOLIB || COMPILE_TEST 270d29389deSDavid Brownell select SPI_BITBANG 271d29389deSDavid Brownell help 272d29389deSDavid Brownell This simple GPIO bitbanging SPI master uses the arch-neutral GPIO 273d29389deSDavid Brownell interface to manage MOSI, MISO, SCK, and chipselect signals. SPI 274d29389deSDavid Brownell slaves connected to a bus using this driver are configured as usual, 275d29389deSDavid Brownell except that the spi_board_info.controller_data holds the GPIO number 276d29389deSDavid Brownell for the chipselect used by this controller driver. 277d29389deSDavid Brownell 278d29389deSDavid Brownell Note that this driver often won't achieve even 1 Mbit/sec speeds, 279d29389deSDavid Brownell making it unusually slow for SPI. If your platform can inline 280d29389deSDavid Brownell GPIO operations, you should be able to leverage that for better 281d29389deSDavid Brownell speed with a custom version of this driver; see the source code. 282d29389deSDavid Brownell 283deba2580SAndrew Brestickerconfig SPI_IMG_SPFI 284deba2580SAndrew Bresticker tristate "IMG SPFI controller" 285deba2580SAndrew Bresticker depends on MIPS || COMPILE_TEST 286deba2580SAndrew Bresticker help 287deba2580SAndrew Bresticker This enables support for the SPFI master controller found on 288deba2580SAndrew Bresticker IMG SoCs. 289deba2580SAndrew Bresticker 290b5f3294fSSascha Hauerconfig SPI_IMX 291b5f3294fSSascha Hauer tristate "Freescale i.MX SPI controllers" 292dd1053a9SMark Brown depends on ARCH_MXC || COMPILE_TEST 293b5f3294fSSascha Hauer select SPI_BITBANG 294b5f3294fSSascha Hauer help 295b5f3294fSSascha Hauer This enables using the Freescale i.MX SPI controllers in master 296b5f3294fSSascha Hauer mode. 297b5f3294fSSascha Hauer 29878961a57SKaiwan N Billimoriaconfig SPI_LM70_LLP 29978961a57SKaiwan N Billimoria tristate "Parallel port adapter for LM70 eval board (DEVELOPMENT)" 3006d1f56aaSKees Cook depends on PARPORT 30178961a57SKaiwan N Billimoria select SPI_BITBANG 30278961a57SKaiwan N Billimoria help 30378961a57SKaiwan N Billimoria This driver supports the NS LM70 LLP Evaluation Board, 30478961a57SKaiwan N Billimoria which interfaces to an LM70 temperature sensor using 30578961a57SKaiwan N Billimoria a parallel port. 30678961a57SKaiwan N Billimoria 3077ecbfff6SSergei Ianovichconfig SPI_LP8841_RTC 3087ecbfff6SSergei Ianovich tristate "ICP DAS LP-8841 SPI Controller for RTC" 3097ecbfff6SSergei Ianovich depends on MACH_PXA27X_DT || COMPILE_TEST 3107ecbfff6SSergei Ianovich help 3117ecbfff6SSergei Ianovich This driver provides an SPI master device to drive Maxim 3127ecbfff6SSergei Ianovich DS-1302 real time clock. 3137ecbfff6SSergei Ianovich 3147ecbfff6SSergei Ianovich Say N here unless you plan to run the kernel on an ICP DAS 3157ecbfff6SSergei Ianovich LP-8x4x industrial computer. 3167ecbfff6SSergei Ianovich 31742bbb709SGrant Likelyconfig SPI_MPC52xx 31842bbb709SGrant Likely tristate "Freescale MPC52xx SPI (non-PSC) controller support" 3197433f2b7SPaul Bolle depends on PPC_MPC52xx 32042bbb709SGrant Likely help 32142bbb709SGrant Likely This drivers supports the MPC52xx SPI controller in master SPI 32242bbb709SGrant Likely mode. 32342bbb709SGrant Likely 32400b8fd23SDragos Carpconfig SPI_MPC52xx_PSC 32500b8fd23SDragos Carp tristate "Freescale MPC52xx PSC SPI controller" 3266d1f56aaSKees Cook depends on PPC_MPC52xx 32700b8fd23SDragos Carp help 32800b8fd23SDragos Carp This enables using the Freescale MPC52xx Programmable Serial 32900b8fd23SDragos Carp Controller in master SPI mode. 33000b8fd23SDragos Carp 3316e27388fSAnatolij Gustschinconfig SPI_MPC512x_PSC 3326e27388fSAnatolij Gustschin tristate "Freescale MPC512x PSC SPI controller" 3335e8afa34SUwe Kleine-König depends on PPC_MPC512x 3346e27388fSAnatolij Gustschin help 3356e27388fSAnatolij Gustschin This enables using the Freescale MPC5121 Programmable Serial 3366e27388fSAnatolij Gustschin Controller in SPI master mode. 3376e27388fSAnatolij Gustschin 338b36ece83SMingkai Huconfig SPI_FSL_LIB 339b36ece83SMingkai Hu tristate 340e8beacbbSAndreas Larsson depends on OF 341e8beacbbSAndreas Larsson 342e8beacbbSAndreas Larssonconfig SPI_FSL_CPM 343e8beacbbSAndreas Larsson tristate 344b36ece83SMingkai Hu depends on FSL_SOC 345b36ece83SMingkai Hu 3463272029fSMingkai Huconfig SPI_FSL_SPI 34738455d7aSEsben Haabendal tristate "Freescale SPI controller and Aeroflex Gaisler GRLIB SPI controller" 348e8beacbbSAndreas Larsson depends on OF 349b36ece83SMingkai Hu select SPI_FSL_LIB 350e8beacbbSAndreas Larsson select SPI_FSL_CPM if FSL_SOC 351ccf06998SKumar Gala help 3523272029fSMingkai Hu This enables using the Freescale SPI controllers in master mode. 3533272029fSMingkai Hu MPC83xx platform uses the controller in cpu mode or CPM/QE mode. 3543272029fSMingkai Hu MPC8569 uses the controller in QE mode, MPC8610 in cpu mode. 355447b0c7bSAndreas Larsson This also enables using the Aeroflex Gaisler GRLIB SPI controller in 356447b0c7bSAndreas Larsson master mode. 357ccf06998SKumar Gala 358349ad66cSChao Fuconfig SPI_FSL_DSPI 359349ad66cSChao Fu tristate "Freescale DSPI controller" 3601acbdeb9SChao Fu select REGMAP_MMIO 3615a60adafSYuan Yao depends on SOC_VF610 || SOC_LS1021A || ARCH_LAYERSCAPE || COMPILE_TEST 362349ad66cSChao Fu help 363349ad66cSChao Fu This enables support for the Freescale DSPI controller in master 364349ad66cSChao Fu mode. VF610 platform uses the controller. 365349ad66cSChao Fu 3668b60d6c2SMingkai Huconfig SPI_FSL_ESPI 36738455d7aSEsben Haabendal tristate "Freescale eSPI controller" 3688b60d6c2SMingkai Hu depends on FSL_SOC 3698b60d6c2SMingkai Hu select SPI_FSL_LIB 3708b60d6c2SMingkai Hu help 3718b60d6c2SMingkai Hu This enables using the Freescale eSPI controllers in master mode. 3728b60d6c2SMingkai Hu From MPC8536, 85xx platform uses the controller, and all P10xx, 3738b60d6c2SMingkai Hu P20xx, P30xx,P40xx, P50xx uses this controller. 3748b60d6c2SMingkai Hu 375c3e4bc54SBeniamino Galvaniconfig SPI_MESON_SPIFC 376c3e4bc54SBeniamino Galvani tristate "Amlogic Meson SPIFC controller" 377c3e4bc54SBeniamino Galvani depends on ARCH_MESON || COMPILE_TEST 3781327ecd4SBeniamino Galvani select REGMAP_MMIO 379c3e4bc54SBeniamino Galvani help 380c3e4bc54SBeniamino Galvani This enables master mode support for the SPIFC (SPI flash 381c3e4bc54SBeniamino Galvani controller) available in Amlogic Meson SoCs. 382c3e4bc54SBeniamino Galvani 383a568231fSLeilk Liuconfig SPI_MT65XX 384a568231fSLeilk Liu tristate "MediaTek SPI controller" 385a568231fSLeilk Liu depends on ARCH_MEDIATEK || COMPILE_TEST 386a568231fSLeilk Liu help 387a568231fSLeilk Liu This selects the MediaTek(R) SPI bus driver. 388a568231fSLeilk Liu If you want to use MediaTek(R) SPI interface, 389a568231fSLeilk Liu say Y or M here.If you are not sure, say N. 390a568231fSLeilk Liu SPI drivers for Mediatek MT65XX and MT81XX series ARM SoCs. 391a568231fSLeilk Liu 392e32bb870SMark Brownconfig SPI_NUC900 393e32bb870SMark Brown tristate "Nuvoton NUC900 series SPI" 394e32bb870SMark Brown depends on ARCH_W90X900 395e32bb870SMark Brown select SPI_BITBANG 396e32bb870SMark Brown help 397e32bb870SMark Brown SPI driver for Nuvoton NUC900 series ARM SoCs 398e32bb870SMark Brown 399ce792580SThomas Chouconfig SPI_OC_TINY 400ce792580SThomas Chou tristate "OpenCores tiny SPI" 4015c2301a9SGeert Uytterhoeven depends on GPIOLIB || COMPILE_TEST 402ce792580SThomas Chou select SPI_BITBANG 403ce792580SThomas Chou help 404ce792580SThomas Chou This is the driver for OpenCores tiny SPI master controller. 405ce792580SThomas Chou 4066b52c00fSDavid Daneyconfig SPI_OCTEON 4076b52c00fSDavid Daney tristate "Cavium OCTEON SPI controller" 4089ddebc46SDavid Daney depends on CAVIUM_OCTEON_SOC 4096b52c00fSDavid Daney help 4106b52c00fSDavid Daney SPI host driver for the hardware found on some Cavium OCTEON 4116b52c00fSDavid Daney SOCs. 4126b52c00fSDavid Daney 413fdb3c18dSDavid Brownellconfig SPI_OMAP_UWIRE 414fdb3c18dSDavid Brownell tristate "OMAP1 MicroWire" 4156291fe2aSRobert P. J. Day depends on ARCH_OMAP1 416fdb3c18dSDavid Brownell select SPI_BITBANG 417fdb3c18dSDavid Brownell help 418fdb3c18dSDavid Brownell This hooks up to the MicroWire controller on OMAP1 chips. 419fdb3c18dSDavid Brownell 420ccdc7bf9SSamuel Ortizconfig SPI_OMAP24XX 4218ebeb545SSyed Rafiuddin tristate "McSPI driver for OMAP" 422f59838a0SGeert Uytterhoeven depends on HAS_DMA 423dd1053a9SMark Brown depends on ARCH_OMAP2PLUS || COMPILE_TEST 4242b32e987SFranklin S Cooper Jr select SG_SPLIT 425ccdc7bf9SSamuel Ortiz help 4268ebeb545SSyed Rafiuddin SPI master controller for OMAP24XX and later Multichannel SPI 427ccdc7bf9SSamuel Ortiz (McSPI) modules. 42869c202afSAndrea Paterniani 429505a1495SSourav Poddarconfig SPI_TI_QSPI 430505a1495SSourav Poddar tristate "DRA7xxx QSPI controller support" 431505a1495SSourav Poddar depends on ARCH_OMAP2PLUS || COMPILE_TEST 432505a1495SSourav Poddar help 433505a1495SSourav Poddar QSPI master controller for DRA7xxx used for flash devices. 434505a1495SSourav Poddar This device supports single, dual and quad read support, while 435505a1495SSourav Poddar it only supports single write mode. 436505a1495SSourav Poddar 43735c9049bSCory Maccarroneconfig SPI_OMAP_100K 43835c9049bSCory Maccarrone tristate "OMAP SPI 100K" 439dd1053a9SMark Brown depends on ARCH_OMAP850 || ARCH_OMAP730 || COMPILE_TEST 44035c9049bSCory Maccarrone help 44135c9049bSCory Maccarrone OMAP SPI 100K master controller for omap7xx boards. 44235c9049bSCory Maccarrone 44360cadec9SShadi Ammouriconfig SPI_ORION 4446d1f56aaSKees Cook tristate "Orion SPI master" 445710a1d54SThomas Petazzoni depends on PLAT_ORION || ARCH_MVEBU || COMPILE_TEST 44660cadec9SShadi Ammouri help 44760cadec9SShadi Ammouri This enables using the SPI master controller on the Orion chips. 44860cadec9SShadi Ammouri 4491bcb9f8cSPurna Chandra Mandalconfig SPI_PIC32 4501bcb9f8cSPurna Chandra Mandal tristate "Microchip PIC32 series SPI" 4511bcb9f8cSPurna Chandra Mandal depends on MACH_PIC32 || COMPILE_TEST 4521bcb9f8cSPurna Chandra Mandal help 4531bcb9f8cSPurna Chandra Mandal SPI driver for Microchip PIC32 SPI master controller. 4541bcb9f8cSPurna Chandra Mandal 4553270ac23SPurna Chandra Mandalconfig SPI_PIC32_SQI 4563270ac23SPurna Chandra Mandal tristate "Microchip PIC32 Quad SPI driver" 4573270ac23SPurna Chandra Mandal depends on MACH_PIC32 || COMPILE_TEST 45821825ff1SPurna Chandra Mandal depends on HAS_DMA 4593270ac23SPurna Chandra Mandal help 4603270ac23SPurna Chandra Mandal SPI driver for PIC32 Quad SPI controller. 4613270ac23SPurna Chandra Mandal 462b43d65f7SLinus Walleijconfig SPI_PL022 4637f9a4b97SLinus Walleij tristate "ARM AMBA PL022 SSP controller" 4647f9a4b97SLinus Walleij depends on ARM_AMBA 465b43d65f7SLinus Walleij default y if MACH_U300 466f33b29eeSlinus.walleij@stericsson.com default y if ARCH_REALVIEW 467f33b29eeSlinus.walleij@stericsson.com default y if INTEGRATOR_IMPD1 468f33b29eeSlinus.walleij@stericsson.com default y if ARCH_VERSATILE 469b43d65f7SLinus Walleij help 470b43d65f7SLinus Walleij This selects the ARM(R) AMBA(R) PrimeCell PL022 SSP 471b43d65f7SLinus Walleij controller. If you have an embedded system with an AMBA(R) 472b43d65f7SLinus Walleij bus and a PL022 controller, say Y or M here. 473b43d65f7SLinus Walleij 47444dab88eSSteven A. Falcoconfig SPI_PPC4xx 47544dab88eSSteven A. Falco tristate "PPC4xx SPI Controller" 4765e8afa34SUwe Kleine-König depends on PPC32 && 4xx 47744dab88eSSteven A. Falco select SPI_BITBANG 47844dab88eSSteven A. Falco help 47944dab88eSSteven A. Falco This selects a driver for the PPC4xx SPI Controller. 48044dab88eSSteven A. Falco 481e0c9905eSStephen Streetconfig SPI_PXA2XX 482e0c9905eSStephen Street tristate "PXA2xx SSP SPI master" 4830244ad00SMartin Schwidefsky depends on (ARCH_PXA || PCI || ACPI) 484d6ea3df0SSebastian Andrzej Siewior select PXA_SSP if ARCH_PXA 485e0c9905eSStephen Street help 486d6ea3df0SSebastian Andrzej Siewior This enables using a PXA2xx or Sodaville SSP port as a SPI master 487d6ea3df0SSebastian Andrzej Siewior controller. The driver can be configured to use any SSP port and 488d6ea3df0SSebastian Andrzej Siewior additional documentation can be found a Documentation/spi/pxa2xx. 489d6ea3df0SSebastian Andrzej Siewior 490d6ea3df0SSebastian Andrzej Siewiorconfig SPI_PXA2XX_PCI 491afa93c90SChew, Chiau Ee def_tristate SPI_PXA2XX && PCI && COMMON_CLK 492e0c9905eSStephen Street 49364e36824Saddy keconfig SPI_ROCKCHIP 49464e36824Saddy ke tristate "Rockchip SPI controller driver" 49564e36824Saddy ke help 49664e36824Saddy ke This selects a driver for Rockchip SPI controller. 49764e36824Saddy ke 49864e36824Saddy ke If you say yes to this option, support will be included for 49964e36824Saddy ke RK3066, RK3188 and RK3288 families of SPI controller. 50064e36824Saddy ke Rockchip SPI controller support DMA transport and PIO mode. 50164e36824Saddy ke The main usecase of this controller is to use spi flash as boot 50264e36824Saddy ke device. 50364e36824Saddy ke 50405aec357SBert Vermeulenconfig SPI_RB4XX 50505aec357SBert Vermeulen tristate "Mikrotik RB4XX SPI master" 50605aec357SBert Vermeulen depends on SPI_MASTER && ATH79 50705aec357SBert Vermeulen help 50805aec357SBert Vermeulen SPI controller driver for the Mikrotik RB4xx series boards. 50905aec357SBert Vermeulen 5100b2182ddSShimoda, Yoshihiroconfig SPI_RSPI 511e290c343SGeert Uytterhoeven tristate "Renesas RSPI/QSPI controller" 5123aec3166SSimon Horman depends on SUPERH || ARCH_RENESAS || COMPILE_TEST 5130b2182ddSShimoda, Yoshihiro help 514e290c343SGeert Uytterhoeven SPI driver for Renesas RSPI and QSPI blocks. 5150b2182ddSShimoda, Yoshihiro 51664ff247aSIvan T. Ivanovconfig SPI_QUP 51764ff247aSIvan T. Ivanov tristate "Qualcomm SPI controller with QUP interface" 518058f11c8SPaul Bolle depends on ARCH_QCOM || (ARM && COMPILE_TEST) 51964ff247aSIvan T. Ivanov help 52064ff247aSIvan T. Ivanov Qualcomm Universal Peripheral (QUP) core is an AHB slave that 52164ff247aSIvan T. Ivanov provides a common data path (an output FIFO and an input FIFO) 52264ff247aSIvan T. Ivanov for serial peripheral interface (SPI) mini-core. SPI in master 52364ff247aSIvan T. Ivanov mode supports up to 50MHz, up to four chip selects, programmable 52464ff247aSIvan T. Ivanov data path from 4 bits to 32 bits and numerous protocol variants. 52564ff247aSIvan T. Ivanov 52664ff247aSIvan T. Ivanov This driver can also be built as a module. If so, the module 52764ff247aSIvan T. Ivanov will be called spi_qup. 5288ae12a0dSDavid Brownell 52985abfaa7SDavid Brownellconfig SPI_S3C24XX 53085abfaa7SDavid Brownell tristate "Samsung S3C24XX series SPI" 5316d1f56aaSKees Cook depends on ARCH_S3C24XX 532da0abc27SDavid Brownell select SPI_BITBANG 53385abfaa7SDavid Brownell help 53485abfaa7SDavid Brownell SPI driver for Samsung S3C24XX series ARM SoCs 53585abfaa7SDavid Brownell 536bec0806cSBen Dooksconfig SPI_S3C24XX_FIQ 537bec0806cSBen Dooks bool "S3C24XX driver with FIQ pseudo-DMA" 538bec0806cSBen Dooks depends on SPI_S3C24XX 539bec0806cSBen Dooks select FIQ 540bec0806cSBen Dooks help 541bec0806cSBen Dooks Enable FIQ support for the S3C24XX SPI driver to provide pseudo 542bec0806cSBen Dooks DMA by using the fast-interrupt request framework, This allows 543bec0806cSBen Dooks the driver to get DMA-like performance when there are either 544bec0806cSBen Dooks no free DMA channels, or when doing transfers that required both 545bec0806cSBen Dooks TX and RX data paths. 546bec0806cSBen Dooks 547230d42d4SJassi Brarconfig SPI_S3C64XX 548230d42d4SJassi Brar tristate "Samsung S3C64XX series type SPI" 549bf77cba9SPadmavathi Venna depends on (PLAT_SAMSUNG || ARCH_EXYNOS) 550230d42d4SJassi Brar help 551230d42d4SJassi Brar SPI driver for Samsung S3C64XX and newer SoCs. 552230d42d4SJassi Brar 5533ce8859eSGuenter Roeckconfig SPI_SC18IS602 5543ce8859eSGuenter Roeck tristate "NXP SC18IS602/602B/603 I2C to SPI bridge" 5553ce8859eSGuenter Roeck depends on I2C 5563ce8859eSGuenter Roeck help 5573ce8859eSGuenter Roeck SPI driver for NXP SC18IS602/602B/603 I2C to SPI bridge. 5583ce8859eSGuenter Roeck 5598051effcSMagnus Dammconfig SPI_SH_MSIOF 5608051effcSMagnus Damm tristate "SuperH MSIOF SPI controller" 56151fd5090SGeert Uytterhoeven depends on HAVE_CLK && HAS_DMA 5623aec3166SSimon Horman depends on SUPERH || ARCH_RENESAS || COMPILE_TEST 5638051effcSMagnus Damm help 564746aeffdSBastian Hecht SPI driver for SuperH and SH Mobile MSIOF blocks. 5658051effcSMagnus Damm 5665c05dd07SYoshihiro Shimodaconfig SPI_SH 5675c05dd07SYoshihiro Shimoda tristate "SuperH SPI controller" 568dd1053a9SMark Brown depends on SUPERH || COMPILE_TEST 5695c05dd07SYoshihiro Shimoda help 5705c05dd07SYoshihiro Shimoda SPI driver for SuperH SPI blocks. 5715c05dd07SYoshihiro Shimoda 57237e46640SMagnus Dammconfig SPI_SH_SCI 57337e46640SMagnus Damm tristate "SuperH SCI SPI controller" 5746291fe2aSRobert P. J. Day depends on SUPERH 57537e46640SMagnus Damm select SPI_BITBANG 57637e46640SMagnus Damm help 57737e46640SMagnus Damm SPI driver for SuperH SCI blocks. 57837e46640SMagnus Damm 579d1c8bbd7SKuninori Morimotoconfig SPI_SH_HSPI 580d1c8bbd7SKuninori Morimoto tristate "SuperH HSPI controller" 5813aec3166SSimon Horman depends on ARCH_RENESAS || COMPILE_TEST 582d1c8bbd7SKuninori Morimoto help 583d1c8bbd7SKuninori Morimoto SPI driver for SuperH HSPI blocks. 584d1c8bbd7SKuninori Morimoto 5851cc2df9dSZhiwu Songconfig SPI_SIRF 5861cc2df9dSZhiwu Song tristate "CSR SiRFprimaII SPI controller" 5877668c294SMark Brown depends on SIRF_DMA 5881cc2df9dSZhiwu Song select SPI_BITBANG 5891cc2df9dSZhiwu Song help 5901cc2df9dSZhiwu Song SPI driver for CSR SiRFprimaII SoCs 5911cc2df9dSZhiwu Song 5929e862375SLee Jonesconfig SPI_ST_SSC4 5939e862375SLee Jones tristate "STMicroelectronics SPI SSC-based driver" 59483fefd2dSAxel Lin depends on ARCH_STI || COMPILE_TEST 5959e862375SLee Jones help 5969e862375SLee Jones STMicroelectronics SoCs support for SPI. If you say yes to 5979e862375SLee Jones this option, support will be included for the SSC driven SPI. 5989e862375SLee Jones 599b5f65179SMaxime Ripardconfig SPI_SUN4I 600b5f65179SMaxime Ripard tristate "Allwinner A10 SoCs SPI controller" 601b5f65179SMaxime Ripard depends on ARCH_SUNXI || COMPILE_TEST 602b5f65179SMaxime Ripard help 603b5f65179SMaxime Ripard SPI driver for Allwinner sun4i, sun5i and sun7i SoCs 604b5f65179SMaxime Ripard 6053558fe90SMaxime Ripardconfig SPI_SUN6I 6063558fe90SMaxime Ripard tristate "Allwinner A31 SPI controller" 6073558fe90SMaxime Ripard depends on ARCH_SUNXI || COMPILE_TEST 6087961656aSMark Brown depends on RESET_CONTROLLER 6093558fe90SMaxime Ripard help 6103558fe90SMaxime Ripard This enables using the SPI controller on the Allwinner A31 SoCs. 6113558fe90SMaxime Ripard 612646781d3SMarek Vasutconfig SPI_MXS 613646781d3SMarek Vasut tristate "Freescale MXS SPI controller" 614646781d3SMarek Vasut depends on ARCH_MXS 615646781d3SMarek Vasut select STMP_DEVICE 616646781d3SMarek Vasut help 617646781d3SMarek Vasut SPI driver for Freescale MXS devices. 618646781d3SMarek Vasut 619f333a331SLaxman Dewanganconfig SPI_TEGRA114 620f333a331SLaxman Dewangan tristate "NVIDIA Tegra114 SPI Controller" 621dd1053a9SMark Brown depends on (ARCH_TEGRA && TEGRA20_APB_DMA) || COMPILE_TEST 622f59838a0SGeert Uytterhoeven depends on RESET_CONTROLLER && HAS_DMA 623f333a331SLaxman Dewangan help 624f333a331SLaxman Dewangan SPI driver for NVIDIA Tegra114 SPI Controller interface. This controller 625f333a331SLaxman Dewangan is different than the older SoCs SPI controller and also register interface 626f333a331SLaxman Dewangan get changed with this controller. 627f333a331SLaxman Dewangan 6288528547bSLaxman Dewanganconfig SPI_TEGRA20_SFLASH 6298528547bSLaxman Dewangan tristate "Nvidia Tegra20 Serial flash Controller" 630dd1053a9SMark Brown depends on ARCH_TEGRA || COMPILE_TEST 631ff2251e3SStephen Warren depends on RESET_CONTROLLER 6328528547bSLaxman Dewangan help 6338528547bSLaxman Dewangan SPI driver for Nvidia Tegra20 Serial flash Controller interface. 6348528547bSLaxman Dewangan The main usecase of this controller is to use spi flash as boot 6358528547bSLaxman Dewangan device. 6368528547bSLaxman Dewangan 637dc4dc360SLaxman Dewanganconfig SPI_TEGRA20_SLINK 638dc4dc360SLaxman Dewangan tristate "Nvidia Tegra20/Tegra30 SLINK Controller" 639dd1053a9SMark Brown depends on (ARCH_TEGRA && TEGRA20_APB_DMA) || COMPILE_TEST 640f59838a0SGeert Uytterhoeven depends on RESET_CONTROLLER && HAS_DMA 641dc4dc360SLaxman Dewangan help 642dc4dc360SLaxman Dewangan SPI driver for Nvidia Tegra20/Tegra30 SLINK Controller interface. 643dc4dc360SLaxman Dewangan 644e8b17b5bSMasayuki Ohtakeconfig SPI_TOPCLIFF_PCH 64592b3a5c1STomoya MORINAGA tristate "Intel EG20T PCH/LAPIS Semicon IOH(ML7213/ML7223/ML7831) SPI" 646f05ca854SPaul Burton depends on PCI && (X86_32 || MIPS || COMPILE_TEST) 647e8b17b5bSMasayuki Ohtake help 648cdbc8f04SGrant Likely SPI driver for the Topcliff PCH (Platform Controller Hub) SPI bus 649cdbc8f04SGrant Likely used in some x86 embedded processors. 650e8b17b5bSMasayuki Ohtake 65192b3a5c1STomoya MORINAGA This driver also supports the ML7213/ML7223/ML7831, a companion chip 65292b3a5c1STomoya MORINAGA for the Atom E6xx series and compatible with the Intel EG20T PCH. 653f016aeb6STomoya MORINAGA 654f2cac67dSAtsushi Nemotoconfig SPI_TXX9 655f2cac67dSAtsushi Nemoto tristate "Toshiba TXx9 SPI controller" 656dd1053a9SMark Brown depends on GPIOLIB && (CPU_TX49XX || COMPILE_TEST) 657f2cac67dSAtsushi Nemoto help 658f2cac67dSAtsushi Nemoto SPI driver for Toshiba TXx9 MIPS SoCs 659f2cac67dSAtsushi Nemoto 660b3165900SLars-Peter Clausenconfig SPI_XCOMM 661b3165900SLars-Peter Clausen tristate "Analog Devices AD-FMCOMMS1-EBZ SPI-I2C-bridge driver" 662b3165900SLars-Peter Clausen depends on I2C 663b3165900SLars-Peter Clausen help 664b3165900SLars-Peter Clausen Support for the SPI-I2C bridge found on the Analog Devices 665b3165900SLars-Peter Clausen AD-FMCOMMS1-EBZ board. 666b3165900SLars-Peter Clausen 667ae918c02SAndrei Konovalovconfig SPI_XILINX 668c9da2e12SRichard Röjfors tristate "Xilinx SPI controller common module" 6696d1f56aaSKees Cook depends on HAS_IOMEM 670ae918c02SAndrei Konovalov select SPI_BITBANG 671ae918c02SAndrei Konovalov help 672ae918c02SAndrei Konovalov This exposes the SPI controller IP from the Xilinx EDK. 673ae918c02SAndrei Konovalov 674ae918c02SAndrei Konovalov See the "OPB Serial Peripheral Interface (SPI) (v1.00e)" 675ae918c02SAndrei Konovalov Product Specification document (DS464) for hardware details. 676ae918c02SAndrei Konovalov 677c9da2e12SRichard Röjfors Or for the DS570, see "XPS Serial Peripheral Interface (SPI) (v2.00b)" 678c9da2e12SRichard Röjfors 679d8c80d49SKamlakant Patelconfig SPI_XLP 680d8c80d49SKamlakant Patel tristate "Netlogic XLP SPI controller driver" 681bf23d191SKamlakant Patel depends on CPU_XLP || ARCH_VULCAN || COMPILE_TEST 682d8c80d49SKamlakant Patel help 683d8c80d49SKamlakant Patel Enable support for the SPI controller on the Netlogic XLP SoCs. 684d8c80d49SKamlakant Patel Currently supported XLP variants are XLP8XX, XLP3XX, XLP2XX, XLP9XX 685d8c80d49SKamlakant Patel and XLP5XX. 686d8c80d49SKamlakant Patel 687d8c80d49SKamlakant Patel If you have a Netlogic XLP platform say Y here. 688d8c80d49SKamlakant Patel If unsure, say N. 689d8c80d49SKamlakant Patel 6906840cc29SMax Filippovconfig SPI_XTENSA_XTFPGA 6916840cc29SMax Filippov tristate "Xtensa SPI controller for xtfpga" 692be8dde46SAxel Lin depends on (XTENSA && XTENSA_PLATFORM_XTFPGA) || COMPILE_TEST 6936840cc29SMax Filippov select SPI_BITBANG 6946840cc29SMax Filippov help 6956840cc29SMax Filippov SPI driver for xtfpga SPI master controller. 6966840cc29SMax Filippov 6976840cc29SMax Filippov This simple SPI master controller is built into xtfpga bitstreams 6986840cc29SMax Filippov and is used to control daughterboard audio codec. It always transfers 6996840cc29SMax Filippov 16 bit words in SPI mode 0, automatically asserting CS on transfer 7006840cc29SMax Filippov start and deasserting on end. 7016840cc29SMax Filippov 702dfe11a11SRanjit Waghmodeconfig SPI_ZYNQMP_GQSPI 703dfe11a11SRanjit Waghmode tristate "Xilinx ZynqMP GQSPI controller" 7042e1c75f4SGeert Uytterhoeven depends on SPI_MASTER && HAS_DMA 705dfe11a11SRanjit Waghmode help 706dfe11a11SRanjit Waghmode Enables Xilinx GQSPI controller driver for Zynq UltraScale+ MPSoC. 707dfe11a11SRanjit Waghmode 7088ae12a0dSDavid Brownell# 7098ae12a0dSDavid Brownell# Add new SPI master controllers in alphabetical order above this line 7108ae12a0dSDavid Brownell# 7118ae12a0dSDavid Brownell 7128ae12a0dSDavid Brownell# 7138ae12a0dSDavid Brownell# There are lots of SPI device types, with sensors and memory 7148ae12a0dSDavid Brownell# being probably the most widely used ones. 7158ae12a0dSDavid Brownell# 7168ae12a0dSDavid Brownellcomment "SPI Protocol Masters" 7178ae12a0dSDavid Brownell 718814a8d50SAndrea Paternianiconfig SPI_SPIDEV 719814a8d50SAndrea Paterniani tristate "User mode SPI device driver support" 720814a8d50SAndrea Paterniani help 721814a8d50SAndrea Paterniani This supports user mode SPI protocol drivers. 722814a8d50SAndrea Paterniani 723814a8d50SAndrea Paterniani Note that this application programming interface is EXPERIMENTAL 724814a8d50SAndrea Paterniani and hence SUBJECT TO CHANGE WITHOUT NOTICE while it stabilizes. 725814a8d50SAndrea Paterniani 72697896195SMartin Sperlconfig SPI_LOOPBACK_TEST 72797896195SMartin Sperl tristate "spi loopback test framework support" 72897896195SMartin Sperl depends on m 72997896195SMartin Sperl help 73097896195SMartin Sperl This enables the SPI loopback testing framework driver 73197896195SMartin Sperl 73297896195SMartin Sperl primarily used for development of spi_master drivers 73397896195SMartin Sperl and to detect regressions 73497896195SMartin Sperl 735447aef1aSBen Dooksconfig SPI_TLE62X0 736447aef1aSBen Dooks tristate "Infineon TLE62X0 (for power switching)" 7376291fe2aSRobert P. J. Day depends on SYSFS 738447aef1aSBen Dooks help 739447aef1aSBen Dooks SPI driver for Infineon TLE62X0 series line driver chips, 740447aef1aSBen Dooks such as the TLE6220, TLE6230 and TLE6240. This provides a 741447aef1aSBen Dooks sysfs interface, with each line presented as a kind of GPIO 742447aef1aSBen Dooks exposing both switch control and diagnostic feedback. 743447aef1aSBen Dooks 7448ae12a0dSDavid Brownell# 7458ae12a0dSDavid Brownell# Add new SPI protocol masters in alphabetical order above this line 7468ae12a0dSDavid Brownell# 7478ae12a0dSDavid Brownell 7486291fe2aSRobert P. J. Dayendif # SPI_MASTER 7496291fe2aSRobert P. J. Day 7508ae12a0dSDavid Brownell# (slave support would go here) 7518ae12a0dSDavid Brownell 75279d8c7a8SAlessandro Guidoendif # SPI 753