Lines Matching +full:xps +full:- +full:spi +full:- +full:2
1 # SPDX-License-Identifier: GPL-2.0-only
3 # SPI driver configuration
5 menuconfig SPI config
6 bool "SPI support"
10 protocol. Chips that support SPI can have data transfer rates
12 controller and a chipselect. Most SPI slaves don't support
13 dynamic device discovery; some are even write-only or read-only.
15 SPI is widely used by microcontrollers to talk with sensors,
17 chips, analog to digital (and d-to-a) converters, and more.
18 MMC and SD cards can be accessed using SPI protocol; and for
19 DataFlash cards used in MMC sockets, SPI must always be used.
21 SPI is one of a family of similar protocols using a four wire
26 if SPI
29 bool "Debug support for SPI drivers"
33 sysfs, and debugfs support in SPI controller and protocol drivers.
36 # MASTER side ... talking to discrete SPI slave chips including microcontrollers
40 # bool "SPI Master Support"
42 default SPI
44 If your system has an master-capable SPI controller (which
46 controller and the protocol drivers for the SPI slave chips
52 bool "SPI memory extension"
54 Enable this option if you want to enable the SPI memory extension.
55 This extension is meant to simplify interaction with SPI memories
56 by providing a high-level interface to send memory-like commands.
58 comment "SPI Master Controller Drivers"
61 tristate "Altera SPI Controller platform driver"
65 This is the driver for the Altera SPI Controller.
68 tristate "Altera SPI Controller core code" if COMPILE_TEST
71 "The core code for the Altera SPI Controller"
74 tristate "DFL bus driver for Altera SPI Controller"
79 Altera SPI master controller. The SPI master is connected
80 to a SPI slave to Avalon bridge in a Intel MAX BMC.
86 This enables master mode support for the SPIFC (SPI flash
90 tristate "Qualcomm Atheros AR934X/QCA95XX SPI controller driver"
93 This enables support for the SPI controller present on the
97 tristate "Atheros AR71XX/AR724X/AR913X SPI controller driver"
101 This enables support for the SPI controller present on the
105 tristate "Marvell Armada 3700 SPI Controller"
108 This enables support for the SPI controller present on the
112 tristate "Aspeed flash controllers in SPI mode"
118 to SPI NOR chips, and support for the SPI flash memory
119 controller (SPI) for the host firmware. The implementation
120 only supports SPI NOR.
123 tristate "Atmel SPI Controller"
127 This selects a driver for the Atmel SPI Controller, present on
131 tristate "Atmel USART Controller SPI driver"
135 This selects a driver for the AT91 USART Controller as SPI Master,
139 tristate "Atmel Quad SPI Controller"
143 This enables support for the Quad SPI controller in master mode.
144 This driver does not support generic SPI. The implementation only
145 supports spi-mem interface.
148 tristate "Au1550/Au1200/Au1300 SPI Controller"
153 PSC SPI controller found on Au1550, Au1200 and Au1300 series.
156 tristate "Analog Devices AXI SPI Engine controller"
159 This enables support for the Analog Devices AXI SPI Engine SPI controller.
160 It is part of the SPI Engine framework that is used in some Analog Devices
164 tristate "BCM2835 SPI controller"
168 This selects a driver for the Broadcom BCM2835 SPI master.
170 The BCM2835 contains two types of SPI master controller; the
171 "universal SPI master", and the regular SPI controller. This driver
172 is for the regular SPI controller. Slave mode operation is not also
176 tristate "BCM2835 SPI auxiliary controller"
179 This selects a driver for the Broadcom BCM2835 SPI aux master.
181 The BCM2835 contains two types of SPI master controller; the
182 "universal SPI master", and the regular SPI controller.
183 This driver is for the universal/auxiliary SPI controller.
186 tristate "Broadcom BCM63xx SPI controller"
189 Enable support for the SPI controller on the Broadcom BCM63xx SoCs.
192 tristate "Broadcom BCM63XX HS SPI controller driver"
195 This enables support for the High Speed SPI controller present on
204 Enables support for the Broadcom SPI flash and MSPI controller.
206 based platforms. This driver works for both SPI master for SPI NOR
210 tristate "Broadcom BCMBCA HS SPI controller driver"
213 This enables support for the High Speed SPI controller present on
214 newer Broadcom BCMBCA SoCs. These SoCs include an updated SPI controller
219 tristate "Utilities for Bitbanging SPI masters"
221 With a few GPIO pins, your system can bitbang the SPI protocol.
222 Select this to get SPI support through I/O pins (GPIO, parallel
223 port, etc). Or, some systems' SPI master controller drivers use
224 this code to manage the per-word or per-transfer accesses to the
242 tristate "Cadence SPI controller"
244 This selects the Cadence SPI controller master driver
248 tristate "Cadence Quad SPI controller"
251 Enable support for the Cadence Quad SPI Flash controller.
253 Cadence QSPI is a specialized controller for connecting an SPI
254 Flash over 1/2/4-bit wide bus. Enable this option if you have a
265 Cadence XSPI is a specialized controller for connecting an SPI
266 Flash over up to 8-bit wide bus. Enable this option if you have a
271 tristate "CLPS711X host SPI controller"
274 This enables dedicated general purpose SPI/Microwire1-compatible
275 master mode interface (SSI1) for CLPS711X-based CPUs.
285 tristate "Cirrus Logic CS42L43 SPI controller"
288 This enables support for the SPI controller inside the Cirrus Logic
292 tristate "Texas Instruments DaVinci/DA8x/OMAP-L/AM1x SoC SPI controller"
296 SPI master controller for DaVinci/DA8x/OMAP-L/AM1x SPI modules.
299 tristate "DesignWare SPI controller core support"
302 general driver for SPI controller core from DesignWare
307 bool "DMA support for DW SPI controller"
310 tristate "PCI interface driver for DW SPI core"
314 tristate "Memory-mapped io interface driver for DW SPI core"
318 tristate "Baikal-T1 SPI driver for DW SPI core"
322 Baikal-T1 SoC is equipped with three DW APB SSI-based MMIO SPI
325 part of the Baikal-T1 System Boot Controller has got a very
327 chip-select and Tx/Rx FIFO with just 8 words depth available.
328 The later one is normally connected to an external SPI-nor flash
332 bool "Directly mapped Baikal-T1 Boot SPI flash support"
335 Directly mapped SPI flash memory is an interface specific to the
336 Baikal-T1 System Boot Controller. It is a 16MB MMIO region, which
341 time-critical tasks (like the SPI memory operations implemented
347 tristate "Diolan DLN-2 USB SPI adapter"
351 DLN2, a USB to SPI interface.
354 will be called spi-dln2.
357 tristate "Cirrus Logic EP93xx SPI controller"
360 This enables using the Cirrus EP93xx SPI controller in master
364 bool "Falcon SPI controller support"
367 The external bus unit (EBU) found on the FALC-ON SoC has SPI
370 support for other types of SPI peripherals.
373 tristate "FSI SPI driver"
376 This enables support for the driver for FSI bus attached SPI
390 This enables support for the Quad SPI controller in master mode.
393 This controller does not support generic SPI messages. It only
394 supports the high-level SPI memory interface.
397 tristate "GXP SPI driver"
400 This enables support for the driver for GXP bus attached SPI
404 tristate "HiSilicon SPI Controller for Kunpeng SoCs"
407 This enables support for HiSilicon SPI controller found on
411 will be called hisi-kunpeng-spi.
414 tristate "HiSilicon SPI NOR Flash Controller for Hi16XX chipsets"
418 This enables support for HiSilicon v3xx SPI NOR flash controller
422 tristate "NXP Flex SPI controller"
426 This enables support for the Flex SPI controller in master mode.
429 This controller does not support generic SPI messages and only
430 supports the high-level SPI memory interface.
433 tristate "GPIO-based bitbanging SPI Master"
437 This simple GPIO bitbanging SPI master uses the arch-neutral GPIO
438 interface to manage MOSI, MISO, SCK, and chipselect signals. SPI
444 making it unusually slow for SPI. If your platform can inline
456 tristate "Freescale i.MX SPI controllers"
459 This enables support for the Freescale i.MX SPI controllers.
462 tristate "Ingenic SoCs SPI controller"
465 This enables support for the Ingenic SoCs SPI controller.
468 will be called spi-ingenic.
474 tristate "Intel PCH/PCU SPI flash PCI driver"
480 This enables PCI support for the Intel PCH/PCU SPI controller in
489 will be called spi-intel-pci.
492 tristate "Intel PCH/PCU SPI flash platform driver (DANGEROUS)"
497 This enables platform support for the Intel PCH/PCU SPI
501 exposes the low level SPI-NOR opcodes to the software. Using
505 SPI flash may render the system unbootable.
508 will be called spi-intel-platform.
511 tristate "J-Core SPI Master"
514 This enables support for the SPI master controller in the J-Core
531 tristate "Loongson SPI Controller PCI Driver Support"
535 This bus driver supports the Loongson SPI hardware controller in
537 register SPI device resources.
538 Say Y or M here if you want to use the SPI controller on
542 tristate "Loongson SPI Controller Platform Driver Support"
546 This bus driver supports the Loongson SPI hardware controller in
548 register SPI device resources.
549 Say Y or M here if you want to use the SPI controller on
553 tristate "ICP DAS LP-8841 SPI Controller for RTC"
556 This driver provides an SPI master device to drive Maxim
557 DS-1302 real time clock.
560 LP-8x4x industrial computer.
563 tristate "Freescale MPC52xx SPI (non-PSC) controller support"
566 This drivers supports the MPC52xx SPI controller in master SPI
570 tristate "Freescale MPC52xx PSC SPI controller"
574 Controller in master SPI mode.
577 tristate "Freescale MPC512x PSC SPI controller"
581 Controller in SPI master mode.
592 tristate "Freescale SPI controller and Aeroflex Gaisler GRLIB SPI controller"
597 This enables using the Freescale SPI controllers in master mode.
600 This also enables using the Aeroflex Gaisler GRLIB SPI controller in
620 tristate "Intel La Jolla Cove Adapter SPI support"
624 Select this option to enable SPI driver for the Intel
628 will be called spi-ljca.
635 This enables master mode support for the SPICC (SPI communication
643 This enables master mode support for the SPIFC (SPI flash
647 tristate "Microchip FPGA SPI controllers"
650 This enables the SPI driver for Microchip FPGA SPI controllers.
653 If built as a module, it will be called spi-microchip-core.
662 If built as a module, it will be called spi-microchip-core-qspi.
665 tristate "MediaTek SPI controller"
668 This selects the MediaTek(R) SPI bus driver.
669 If you want to use MediaTek(R) SPI interface,
671 SPI drivers for Mediatek MT65XX and MT81XX series ARM SoCs.
674 tristate "MediaTek MT7621 SPI Controller"
677 This selects a driver for the MediaTek MT7621 SPI Controller.
680 tristate "MediaTek SPI NOR controller"
683 This enables support for SPI NOR controller found on MediaTek
684 ARM SoCs. This is a controller specifically for SPI NOR flash.
685 It can perform generic SPI transfers up to 6 bytes via generic
686 SPI interface as well as several SPI NOR specific instructions
687 via SPI MEM interface.
690 tristate "MediaTek SPI NAND Flash Interface"
694 This enables support for SPI-NAND mode on the MediaTek NAND
696 is implemented as a SPI-MEM controller with pipelined ECC
704 This enables support got the Flash Interface Unit SPI controller
707 This driver does not support generic SPI. The implementation only
708 supports the spi-mem interface.
715 This enables support for the Flash Interface Unit SPI controller
717 This driver does not support generic SPI. The implementation only
718 supports spi-mem interface.
725 Peripheral SPI controller in master mode.
728 tristate "Lantiq SSC SPI controller"
731 This driver supports the Lantiq SSC SPI controller in master
736 tristate "OpenCores tiny SPI"
740 This is the driver for OpenCores tiny SPI master controller.
743 tristate "Cavium OCTEON SPI controller"
746 SPI host driver for the hardware found on some Cavium OCTEON
761 SPI master controller for OMAP24XX and later Multichannel SPI
773 tristate "Orion SPI master"
776 This enables using the SPI master controller on the Orion
780 tristate "PCI1XXXX SPI Bus support"
783 Say "yes" to Enable the SPI Bus support for the PCI1xxxx card
784 This is a PCI to SPI Bus driver
786 called as spi-pci1xxxx.
789 tristate "Microchip PIC32 series SPI"
792 SPI driver for Microchip PIC32 SPI master controller.
795 tristate "Microchip PIC32 Quad SPI driver"
798 SPI driver for PIC32 Quad SPI controller.
812 tristate "PPC4xx SPI Controller"
816 This selects a driver for the PPC4xx SPI Controller.
819 tristate "PXA2xx SSP SPI master"
823 This enables using a PXA2xx or Sodaville SSP port as a SPI master
825 additional documentation can be found a Documentation/spi/pxa2xx.rst.
831 tristate "Rockchip SPI controller driver"
834 This selects a driver for Rockchip SPI controller.
837 RK3066, RK3188 and RK3288 families of SPI controller.
838 Rockchip SPI controller support DMA transport and PIO mode.
839 The main usecase of this controller is to use spi flash as boot
848 is a specialized controller used to access SPI flash on some
855 tristate "Mikrotik RB4XX SPI master"
858 SPI controller driver for the Mikrotik RB4xx series boards.
861 tristate "Renesas RPC-IF SPI driver"
864 SPI driver for Renesas R-Car Gen3 or RZ/G2 RPC-IF.
870 SPI driver for Renesas RSPI and QSPI blocks.
876 SPI driver for Renesas RZ/V2M Clocked Serial Interface (CSI).
877 CSI supports both SPI host and SPI target roles.
883 QSPI(Quad SPI) driver for Qualcomm QSPI controller.
886 tristate "Qualcomm SPI controller with QUP interface"
891 for serial peripheral interface (SPI) mini-core. SPI in master
899 tristate "Qualcomm GENI based SPI controller"
902 This driver supports GENI serial engine based SPI controller in
904 yes to this option, support will be included for the built-in SPI
908 will be called spi-geni-qcom.
911 tristate "Samsung S3C64XX/Exynos SoC series type SPI"
914 SPI driver for Samsung S3C64XX, S5Pv210 and Exynos SoCs.
918 tristate "NXP SC18IS602/602B/603 I2C to SPI bridge"
921 SPI driver for NXP SC18IS602/602B/603 I2C to SPI bridge.
924 tristate "SuperH MSIOF SPI controller"
928 SPI driver for SuperH and SH Mobile MSIOF blocks.
931 tristate "SuperH SPI controller"
934 SPI driver for SuperH SPI blocks.
937 tristate "SuperH SCI SPI controller"
941 SPI driver for SuperH SCI blocks.
947 SPI driver for SuperH HSPI blocks.
950 tristate "SiFive SPI controller"
953 This exposes the SPI controller IP from SiFive.
956 tristate "MediaTek SPI slave device"
960 This selects the MediaTek(R) SPI slave device driver.
961 If you want to use MediaTek(R) SPI slave interface,
963 SPI slave drivers for Mediatek MT27XX series ARM SoCs.
966 tristate "Socionext F_OSPI SPI flash controller"
971 for connecting an SPI Flash memory over up to 8-bit wide bus.
975 tristate "Spreadtrum SPI controller"
978 SPI driver for Spreadtrum SoCs.
985 ADI driver based on SPI for Spreadtrum SoCs.
988 tristate "STMicroelectronics STM32 SPI controller"
992 SPI driver for STMicroelectronics STM32 SoCs.
994 STM32 SPI controller supports DMA and PIO modes. When DMA
999 tristate "STMicroelectronics STM32 QUAD SPI controller"
1004 This enables support for the Quad SPI controller in master mode.
1005 This driver does not support generic SPI. The implementation only
1006 supports spi-mem interface.
1009 tristate "STMicroelectronics SPI SSC-based driver"
1012 STMicroelectronics SoCs support for SPI. If you say yes to
1013 this option, support will be included for the SSC driven SPI.
1016 tristate "Allwinner A10 SoCs SPI controller"
1019 SPI driver for Allwinner sun4i, sun5i and sun7i SoCs
1022 tristate "Allwinner A31 SPI controller"
1026 This enables using the SPI controller on the Allwinner A31 SoCs.
1029 tristate "Sunplus SP7021 SPI controller"
1032 This enables Sunplus SP7021 SPI controller driver on the SP7021 SoCs.
1034 called as spi-sunplus-sp7021.
1040 tristate "Socionext's SynQuacer HighSpeed SPI controller"
1043 SPI driver for Socionext's High speed SPI controller which provides
1045 that use the de-facto standard SPI protocol.
1047 It also supports the new dual-bit and quad-bit SPI protocol.
1050 tristate "Macronix MX25F0A SPI controller"
1054 This selects the Macronix MX25F0A SPI controller driver.
1057 tristate "Freescale MXS SPI controller"
1061 SPI driver for Freescale MXS devices.
1069 controller is different from the SPI controller and is available
1073 tristate "NVIDIA Tegra114 SPI Controller"
1077 SPI driver for NVIDIA Tegra114 SPI Controller interface. This controller
1078 is different than the older SoCs SPI controller and also register interface
1086 SPI driver for Nvidia Tegra20 Serial flash Controller interface.
1087 The main usecase of this controller is to use spi flash as boot
1095 SPI driver for Nvidia Tegra20/Tegra30 SLINK Controller interface.
1098 tristate "Cavium ThunderX SPI controller"
1101 SPI host driver for the hardware found on Cavium ThunderX
1105 tristate "Intel EG20T PCH/LAPIS Semicon IOH(ML7213/ML7223/ML7831) SPI"
1108 SPI driver for the Topcliff PCH (Platform Controller Hub) SPI bus
1115 tristate "Socionext UniPhier SPI Controller"
1119 This enables a driver for the Socionext UniPhier SoC SCSSI SPI controller.
1121 UniPhier SoCs have SCSSI and MCSSI SPI controllers.
1129 tristate "Analog Devices AD-FMCOMMS1-EBZ SPI-I2C-bridge driver"
1132 Support for the SPI-I2C bridge found on the Analog Devices
1133 AD-FMCOMMS1-EBZ board.
1136 tristate "Xilinx SPI controller common module"
1140 This exposes the SPI controller IP from the Xilinx EDK.
1142 See the "OPB Serial Peripheral Interface (SPI) (v1.00e)"
1145 Or for the DS570, see "XPS Serial Peripheral Interface (SPI) (v2.00b)"
1148 tristate "Cavium ThunderX2 SPI controller driver"
1151 Enable support for the SPI controller on the Cavium ThunderX2.
1158 tristate "Xtensa SPI controller for xtfpga"
1162 SPI driver for xtfpga SPI master controller.
1164 This simple SPI master controller is built into xtfpga bitstreams
1166 16 bit words in SPI mode 0, automatically asserting CS on transfer
1174 This enables support for the Zynq Quad SPI controller
1176 This controller only supports SPI memory interface.
1183 This controller only supports SPI memory interface.
1186 tristate "AMD SPI controller"
1189 Enables SPI controller driver for AMD SoC.
1192 # Add new SPI master controllers in alphabetical order above this line
1195 comment "SPI Multiplexer support"
1198 tristate "SPI multiplexer support"
1201 This adds support for SPI multiplexers. Each SPI mux will be
1202 accessible as a SPI controller, the devices behind the mux will appear
1204 select one or more specific mux-controller drivers.
1207 # There are lots of SPI device types, with sensors and memory
1210 comment "SPI Protocol Masters"
1213 tristate "User mode SPI device driver support"
1215 This supports user mode SPI protocol drivers.
1218 tristate "spi loopback test framework support"
1221 This enables the SPI loopback testing framework driver
1230 SPI driver for Infineon TLE62X0 series line driver chips,
1236 # Add new SPI protocol masters in alphabetical order above this line
1242 # SLAVE side ... listening to other SPI masters
1246 bool "SPI slave protocol handlers"
1248 If your system has a slave-capable SPI controller, you can enable
1254 tristate "SPI slave handler reporting boot up time"
1256 SPI slave handler responding with the time of reception of the last
1257 SPI message.
1260 tristate "SPI slave handler controlling system state"
1262 SPI slave handler to allow remote control of system reboot, power
1270 endif # SPI