1# SPDX-License-Identifier: GPL-2.0-only
2config SPI_ASPEED_SMC
3	tristate "Aspeed flash controllers in SPI mode"
4	depends on ARCH_ASPEED || COMPILE_TEST
5	depends on HAS_IOMEM && OF
6	help
7	  This enables support for the Firmware Memory controller (FMC)
8	  in the Aspeed AST2500/AST2400 SoCs when attached to SPI NOR chips,
9	  and support for the SPI flash memory controller (SPI) for
10	  the host firmware. The implementation only supports SPI NOR.
11
12config SPI_CADENCE_QUADSPI
13	tristate "Cadence Quad SPI controller"
14	depends on OF && (ARM || ARM64 || COMPILE_TEST)
15	help
16	  Enable support for the Cadence Quad SPI Flash controller.
17
18	  Cadence QSPI is a specialized controller for connecting an SPI
19	  Flash over 1/2/4-bit wide bus. Enable this option if you have a
20	  device with a Cadence QSPI controller and want to access the
21	  Flash as an MTD device.
22
23config SPI_HISI_SFC
24	tristate "Hisilicon FMC SPI NOR Flash Controller(SFC)"
25	depends on ARCH_HISI || COMPILE_TEST
26	depends on HAS_IOMEM
27	help
28	  This enables support for HiSilicon FMC SPI NOR flash controller.
29
30config SPI_NXP_SPIFI
31	tristate "NXP SPI Flash Interface (SPIFI)"
32	depends on OF && (ARCH_LPC18XX || COMPILE_TEST)
33	depends on HAS_IOMEM
34	help
35	  Enable support for the NXP LPC SPI Flash Interface controller.
36
37	  SPIFI is a specialized controller for connecting serial SPI
38	  Flash. Enable this option if you have a device with a SPIFI
39	  controller and want to access the Flash as a mtd device.
40
41config SPI_INTEL_SPI
42	tristate
43
44config SPI_INTEL_SPI_PCI
45	tristate "Intel PCH/PCU SPI flash PCI driver (DANGEROUS)"
46	depends on X86 && PCI
47	select SPI_INTEL_SPI
48	help
49	  This enables PCI support for the Intel PCH/PCU SPI controller in
50	  master mode. This controller is present in modern Intel hardware
51	  and is used to hold BIOS and other persistent settings. Using
52	  this driver it is possible to upgrade BIOS directly from Linux.
53
54	  Say N here unless you know what you are doing. Overwriting the
55	  SPI flash may render the system unbootable.
56
57	  To compile this driver as a module, choose M here: the module
58	  will be called intel-spi-pci.
59
60config SPI_INTEL_SPI_PLATFORM
61	tristate "Intel PCH/PCU SPI flash platform driver (DANGEROUS)"
62	depends on X86
63	select SPI_INTEL_SPI
64	help
65	  This enables platform support for the Intel PCH/PCU SPI
66	  controller in master mode. This controller is present in modern
67	  Intel hardware and is used to hold BIOS and other persistent
68	  settings. Using this driver it is possible to upgrade BIOS
69	  directly from Linux.
70
71	  Say N here unless you know what you are doing. Overwriting the
72	  SPI flash may render the system unbootable.
73
74	  To compile this driver as a module, choose M here: the module
75	  will be called intel-spi-platform.
76