mirror of
				https://xff.cz/git/u-boot/
				synced 2025-10-31 10:26:10 +01:00 
			
		
		
		
	Add spi nor flash controller driver for cv1800b SoC Signed-off-by: Kongyang Liu <seashell11234455@gmail.com> Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
		
			
				
	
	
		
			629 lines
		
	
	
		
			19 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			629 lines
		
	
	
		
			19 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| menuconfig SPI
 | |
| 	bool "SPI Support"
 | |
| 	help
 | |
| 	  The "Serial Peripheral Interface" is a low level synchronous
 | |
|           protocol.  Chips that support SPI can have data transfer rates
 | |
|           up to several tens of Mbit/sec.  Chips are addressed with a
 | |
|           controller and a chipselect.  Most SPI slaves don't support
 | |
|           dynamic device discovery; some are even write-only or read-only.
 | |
| 
 | |
|           SPI is widely used by microcontrollers to talk with sensors,
 | |
|           eeprom and flash memory, codecs and various other controller
 | |
|           chips, analog to digital (and d-to-a) converters, and more.
 | |
|           MMC and SD cards can be accessed using SPI protocol; and for
 | |
|           DataFlash cards used in MMC sockets, SPI must always be used.
 | |
| 
 | |
|           SPI is one of a family of similar protocols using a four wire
 | |
|           interface (select, clock, data in, data out) including Microwire
 | |
|           (half duplex), SSP, SSI, and PSP.  This driver framework should
 | |
|           work with most such devices and controllers.
 | |
| 
 | |
| if SPI
 | |
| 
 | |
| config DM_SPI
 | |
| 	bool "Enable Driver Model for SPI drivers"
 | |
| 	depends on DM
 | |
| 	help
 | |
| 	  Enable driver model for SPI. The SPI slave interface
 | |
| 	  (spi_setup_slave(), spi_xfer(), etc.) is then implemented by
 | |
| 	  the SPI uclass. Drivers provide methods to access the SPI
 | |
| 	  buses that they control. The uclass interface is defined in
 | |
| 	  include/spi.h. The existing spi_slave structure is attached
 | |
| 	  as 'parent data' to every slave on each bus. Slaves
 | |
| 	  typically use driver-private data instead of extending the
 | |
| 	  spi_slave structure.
 | |
| 
 | |
| config SPI_MEM
 | |
| 	bool "SPI memory extension"
 | |
| 	help
 | |
| 	  Enable this option if you want to enable the SPI memory extension.
 | |
| 	  This extension is meant to simplify interaction with SPI memories
 | |
| 	  by providing an high-level interface to send memory-like commands.
 | |
| 
 | |
| config SPI_DIRMAP
 | |
| 	bool "SPI direct mapping"
 | |
| 	depends on SPI_MEM
 | |
| 	help
 | |
| 	  Enable the SPI direct mapping API. Most modern SPI controllers can
 | |
| 	  directly map a SPI memory (or a portion of the SPI memory) in the CPU
 | |
| 	  address space. Most of the time this brings significant performance
 | |
| 	  improvements as it automates the whole process of sending SPI memory
 | |
| 	  operations every time a new region is accessed.
 | |
| 
 | |
| if DM_SPI
 | |
| 
 | |
| config ALTERA_SPI
 | |
| 	bool "Altera SPI driver"
 | |
| 	help
 | |
| 	  Enable the Altera SPI driver. This driver can be used to
 | |
| 	  access the SPI NOR flash on platforms embedding this Altera
 | |
| 	  IP core. Please find details on the "Embedded Peripherals IP
 | |
| 	  User Guide" of Altera.
 | |
| 
 | |
| config APPLE_SPI
 | |
| 	bool "Apple SPI driver"
 | |
| 	default y if ARCH_APPLE
 | |
| 	help
 | |
| 	  Enable the Apple SPI driver. This driver can be used to
 | |
| 	  access the SPI flash and keyboard on machines based on Apple SoCs.
 | |
| 
 | |
| config ATCSPI200_SPI
 | |
| 	bool "Andestech ATCSPI200 SPI driver"
 | |
| 	help
 | |
| 	  Enable the Andestech ATCSPI200 SPI driver. This driver can be
 | |
| 	  used to access the SPI flash on AE3XX and AE250 platforms embedding
 | |
| 	  this Andestech IP core.
 | |
| 
 | |
| config ATH79_SPI
 | |
| 	bool "Atheros SPI driver"
 | |
| 	depends on ARCH_ATH79
 | |
| 	help
 | |
| 	  Enable the Atheros ar7xxx/ar9xxx SoC SPI driver, it was used
 | |
| 	  to access SPI NOR flash and other SPI peripherals. This driver
 | |
| 	  uses driver model and requires a device tree binding to operate.
 | |
| 	  please refer to doc/device-tree-bindings/spi/spi-ath79.txt.
 | |
| 
 | |
| config ATMEL_QSPI
 | |
| 	bool "Atmel Quad SPI Controller"
 | |
| 	depends on ARCH_AT91
 | |
| 	help
 | |
| 	  Enable the Atmel Quad SPI controller in master mode. This driver
 | |
| 	  does not support generic SPI. The implementation supports only the
 | |
| 	  spi-mem interface.
 | |
| 
 | |
| config ATMEL_SPI
 | |
| 	bool "Atmel SPI driver"
 | |
| 	default y if ARCH_AT91
 | |
| 	help
 | |
| 	  This enables driver for the Atmel SPI Controller, present on
 | |
| 	  many AT91 (ARM) chips. This driver can be used to access
 | |
| 	  the SPI Flash, such as AT25DF321.
 | |
| 
 | |
| config BCM63XX_HSSPI
 | |
| 	bool "BCM63XX HSSPI driver"
 | |
| 	depends on (ARCH_BMIPS || ARCH_BCMBCA)
 | |
| 	help
 | |
| 	  Enable the BCM63XX HSSPI driver. This driver can be used to
 | |
| 	  access the SPI NOR flash on platforms embedding this Broadcom
 | |
| 	  SPI core.
 | |
| 
 | |
| config BCMBCA_HSSPI
 | |
| 	bool "BCMBCA HSSPI driver"
 | |
| 	depends on ARCH_BCMBCA && HAVE_SPI_CS_CTRL
 | |
| 	help
 | |
| 	  This enables support for the High Speed SPI controller present on
 | |
| 	  newer Broadcom BCMBCA SoCs. These SoCs include an updated SPI controller
 | |
| 	  that adds the capability to allow the driver to control chip select
 | |
| 	  explicitly.
 | |
| 
 | |
| config BCM63XX_SPI
 | |
| 	bool "BCM6348 SPI driver"
 | |
| 	depends on ARCH_BMIPS
 | |
| 	help
 | |
| 	  Enable the BCM6348/BCM6358 SPI driver. This driver can be used to
 | |
| 	  access the SPI NOR flash on platforms embedding these Broadcom
 | |
| 	  SPI cores.
 | |
| 
 | |
| config BCMSTB_SPI
 | |
| 	bool "BCMSTB SPI driver"
 | |
| 	help
 | |
| 	  Enable the Broadcom set-top box SPI driver. This driver can
 | |
| 	  be used to access the SPI flash on platforms embedding this
 | |
| 	  Broadcom SPI core.
 | |
| 
 | |
| config CORTINA_SFLASH
 | |
| 	bool "Cortina-Access Serial Flash controller driver"
 | |
| 	depends on DM_SPI && SPI_MEM
 | |
| 	help
 | |
| 	  Enable the Cortina-Access Serial Flash controller driver. This driver
 | |
| 	  can be used to access the SPI NOR/NAND flash on platforms embedding this
 | |
| 	  Cortina-Access IP core.
 | |
| 
 | |
| config CADENCE_QSPI
 | |
| 	bool "Cadence QSPI driver"
 | |
| 	help
 | |
| 	  Enable the Cadence Quad-SPI (QSPI) driver. This driver can be
 | |
| 	  used to access the SPI NOR flash on platforms embedding this
 | |
| 	  Cadence IP core.
 | |
| 
 | |
| config HAS_CQSPI_REF_CLK
 | |
| 	bool "Cadence QSPI static reference clock"
 | |
| 	depends on CADENCE_QSPI
 | |
| 
 | |
| config CQSPI_REF_CLK
 | |
| 	int "Cadence QSPI reference clock value in Hz"
 | |
| 	depends on HAS_CQSPI_REF_CLK
 | |
| 
 | |
| config CADENCE_OSPI_VERSAL
 | |
| 	bool "Configure Versal OSPI"
 | |
| 	depends on (ARCH_VERSAL || ARCH_VERSAL_NET) && CADENCE_QSPI
 | |
| 	imply DM_GPIO
 | |
| 	help
 | |
| 	  This option is used to enable Versal OSPI DMA operations which
 | |
| 	  are used for ospi flash read using cadence qspi controller.
 | |
| 
 | |
| config CF_SPI
 | |
|         bool "ColdFire SPI driver"
 | |
|         help
 | |
|           Enable the ColdFire SPI driver. This driver can be used on
 | |
|           some m68k SoCs.
 | |
| 
 | |
| config CV1800B_SPIF
 | |
| 	bool "Sophgo cv1800b SPI Flash Controller driver"
 | |
| 	depends on SPI_MEM
 | |
| 	help
 | |
| 	  Enable the Sophgo cv1800b SPI Flash Controller driver. This driver
 | |
| 	  can be used to access the SPI NOR flash on platforms embedding this
 | |
| 	  Sophgo cv1800b IP core.
 | |
| 
 | |
| config DAVINCI_SPI
 | |
| 	bool "Davinci & Keystone SPI driver"
 | |
| 	depends on ARCH_DAVINCI || ARCH_KEYSTONE
 | |
| 	help
 | |
| 	  Enable the Davinci SPI driver
 | |
| 
 | |
| config DESIGNWARE_SPI
 | |
| 	bool "Designware SPI driver"
 | |
| 	help
 | |
| 	  Enable the Designware SPI driver. This driver can be used to
 | |
| 	  access the SPI NOR flash on platforms embedding this Designware
 | |
| 	  IP core.
 | |
| 
 | |
| config EXYNOS_SPI
 | |
| 	bool "Samsung Exynos SPI driver"
 | |
| 	help
 | |
| 	  Enable the Samsung Exynos SPI driver. This driver can be used to
 | |
| 	  access the SPI NOR flash on platforms embedding this Samsung
 | |
| 	  Exynos IP core.
 | |
| 
 | |
| config FSL_DSPI
 | |
| 	bool "Freescale DSPI driver"
 | |
| 	help
 | |
| 	  Enable the Freescale DSPI driver. This driver can be used to
 | |
| 	  access the SPI NOR flash and SPI Data flash on platforms embedding
 | |
| 	  this Freescale DSPI IP core. LS102xA and Colibri VF50/VF61 platforms
 | |
| 	  use this driver.
 | |
| 
 | |
| config FSL_QSPI
 | |
| 	bool "Freescale QSPI driver"
 | |
| 	imply SPI_FLASH_BAR
 | |
| 	help
 | |
| 	  Enable the Freescale Quad-SPI (QSPI) driver. This driver can be
 | |
| 	  used to access the SPI NOR flash on platforms embedding this
 | |
| 	  Freescale IP core.
 | |
| 
 | |
| config FSL_QSPI_AHB_FULL_MAP
 | |
| 	bool "Use full AHB memory map space"
 | |
| 	depends on FSL_QSPI
 | |
| 	default y if ARCH_MX6 || ARCH_MX7 || ARCH_MX7ULP || ARCH_IMX8M
 | |
| 	help
 | |
| 	  Enable the Freescale QSPI driver to use full AHB memory map space for
 | |
| 	  flash access.
 | |
| 
 | |
| config GXP_SPI
 | |
| 	bool "SPI driver for GXP"
 | |
| 	imply SPI_FLASH_BAR
 | |
| 	help
 | |
| 	  Enable support for SPI on GXP.
 | |
| 
 | |
| config ICH_SPI
 | |
| 	bool "Intel ICH SPI driver"
 | |
| 	help
 | |
| 	  Enable the Intel ICH SPI driver. This driver can be used to
 | |
| 	  access the SPI NOR flash on platforms embedding this Intel
 | |
| 	  ICH IP core.
 | |
| 
 | |
| config IPROC_QSPI
 | |
| 	bool "Broadcom iProc QSPI Flash Controller driver"
 | |
| 	help
 | |
| 	  Enable Broadcom iProc QSPI Flash Controller driver.
 | |
| 	  This driver can be used to access the SPI NOR flash.
 | |
| 
 | |
| config KIRKWOOD_SPI
 | |
| 	bool "Marvell Kirkwood SPI Driver"
 | |
| 	help
 | |
| 	  Enable support for SPI on various Marvell SoCs, such as
 | |
| 	  Kirkwood and Armada 375.
 | |
| 
 | |
| config MESON_SPIFC
 | |
| 	bool "Amlogic Meson SPI Flash Controller driver"
 | |
| 	depends on ARCH_MESON
 | |
| 	help
 | |
| 	  Enable the Amlogic Meson SPI Flash Controller SPIFC) driver.
 | |
| 	  This driver can be used to access the SPI NOR flash chips on
 | |
| 	  Amlogic Meson SoCs.
 | |
| 
 | |
| config MICROCHIP_COREQSPI
 | |
| 	bool "Microchip FPGA QSPI Controller driver"
 | |
| 	help
 | |
| 	  Enable the QSPI driver for Microchip FPGA QSPI controllers.
 | |
| 	  This driver can be used on Polarfire SoC.
 | |
| 
 | |
| config MESON_SPIFC_A1
 | |
| 	bool "Amlogic Meson A1 SPI Flash Controller driver"
 | |
| 	depends on ARCH_MESON
 | |
| 	help
 | |
| 	  Enable the Amlogic A1 SPI Flash Controller (SPIFC) driver.
 | |
| 	  This driver can be used to access the SPI NOR/NAND flash chips
 | |
| 	  with STR mode frequency up to 98MHz. Dual and quad modes are
 | |
| 	  supported by controller.
 | |
| 
 | |
| config MPC8XX_SPI
 | |
| 	bool "MPC8XX SPI Driver"
 | |
| 	depends on MPC8xx && DM_GPIO
 | |
| 	help
 | |
| 	  Enable support for SPI on MPC8XX
 | |
| 
 | |
| config MPC8XXX_SPI
 | |
| 	bool "MPC8XXX SPI Driver"
 | |
| 	help
 | |
| 	  Enable support for SPI on the MPC8XXX PowerPC SoCs.
 | |
| 
 | |
| config MSCC_BB_SPI
 | |
| 	bool "MSCC bitbang SPI driver"
 | |
| 	depends on SOC_VCOREIII
 | |
| 	help
 | |
| 	  Enable MSCC bitbang SPI driver. This driver can be used on
 | |
| 	  MSCC SOCs.
 | |
| 
 | |
| config MT7620_SPI
 | |
| 	bool "MediaTek MT7620 SPI driver"
 | |
| 	depends on SOC_MT7620
 | |
| 	help
 | |
| 	  Enable the MT7620 SPI driver. This driver can be used to access
 | |
| 	  generic SPI devices on MediaTek MT7620 SoC.
 | |
| 
 | |
| config MT7621_SPI
 | |
| 	bool "MediaTek MT7621 SPI driver"
 | |
| 	depends on SOC_MT7621 || SOC_MT7628
 | |
| 	help
 | |
| 	  Enable the MT7621 SPI driver. This driver can be used to access
 | |
| 	  the SPI NOR flash on platforms embedding this Ralink / MediaTek
 | |
| 	  SPI core, like MT7621/7628/7688.
 | |
| 
 | |
| config MTK_SNOR
 | |
| 	bool "Mediatek SPI-NOR controller driver"
 | |
| 	depends on SPI_MEM
 | |
| 	help
 | |
| 	  Enable the Mediatek SPINOR controller driver. This driver has
 | |
|           better read/write performance with NOR.
 | |
| 
 | |
| config MTK_SNFI_SPI
 | |
| 	bool "Mediatek SPI memory controller driver"
 | |
| 	depends on SPI_MEM
 | |
| 	help
 | |
| 	  Enable the Mediatek SPI memory controller driver. This driver is
 | |
| 	  originally based on the MediaTek SNFI IP core. It can only be
 | |
| 	  used to access SPI memory devices like SPI-NOR or SPI-NAND on
 | |
| 	  platforms embedding this IP core, like MT7622/M7629.
 | |
| 
 | |
| config MTK_SPIM
 | |
| 	bool "Mediatek SPI-MEM master controller driver"
 | |
| 	depends on SPI_MEM
 | |
| 	help
 | |
| 	  Enable MediaTek SPI-MEM master controller driver. This driver mainly
 | |
| 	  supports SPI flashes. You can use single, dual or quad mode
 | |
| 	  transmission on this controller.
 | |
| 
 | |
| config MVEBU_A3700_SPI
 | |
| 	bool "Marvell Armada 3700 SPI driver"
 | |
| 	select CLK_ARMADA_3720
 | |
| 	help
 | |
| 	  Enable the Marvell Armada 3700 SPI driver. This driver can be
 | |
| 	  used to access the SPI NOR flash on platforms embedding this
 | |
| 	  Marvell IP core.
 | |
| 
 | |
| config MXS_SPI
 | |
| 	bool "MXS SPI Driver"
 | |
| 	help
 | |
| 	  Enable the MXS SPI controller driver. This driver can be used
 | |
| 	  on the i.MX23 and i.MX28 SoCs.
 | |
| 
 | |
| config SPI_MXIC
 | |
| 	bool "Macronix MX25F0A SPI controller"
 | |
| 	help
 | |
| 	  Enable the Macronix MX25F0A SPI controller driver. This driver
 | |
| 	  can be used to access the SPI flash on platforms embedding
 | |
| 	  this Macronix IP core.
 | |
| 
 | |
| config NPCM_FIU_SPI
 | |
| 	bool "FIU driver for Nuvoton NPCM SoC"
 | |
| 	help
 | |
| 	  This enables support for the Flash Interface Unit SPI controller
 | |
| 	  in master mode.
 | |
| 
 | |
| config NPCM_PSPI
 | |
| 	bool "PSPI driver for Nuvoton NPCM SoC"
 | |
| 	help
 | |
| 	  PSPI driver for NPCM SoC
 | |
| 
 | |
| config NXP_FSPI
 | |
| 	bool "NXP FlexSPI driver"
 | |
| 	depends on SPI_MEM
 | |
| 	help
 | |
| 	  Enable the NXP FlexSPI (FSPI) driver. This driver can be used to
 | |
| 	  access the SPI NOR flash on platforms embedding this NXP IP core.
 | |
| 
 | |
| config OCTEON_SPI
 | |
| 	bool "Octeon SPI driver"
 | |
| 	depends on ARCH_OCTEON || ARCH_OCTEONTX || ARCH_OCTEONTX2
 | |
| 	help
 | |
| 	  Enable the Octeon SPI driver. This driver can be used to
 | |
| 	  access the SPI NOR flash on Octeon II/III and OcteonTX/TX2
 | |
| 	  SoC platforms.
 | |
| 
 | |
| config OMAP3_SPI
 | |
| 	bool "McSPI driver for OMAP"
 | |
| 	help
 | |
| 	  SPI master controller for OMAP24XX and later Multichannel SPI
 | |
| 	  (McSPI). This driver be used to access SPI chips on platforms
 | |
| 	  embedding this OMAP3 McSPI IP core.
 | |
| 
 | |
| config PIC32_SPI
 | |
| 	bool "Microchip PIC32 SPI driver"
 | |
| 	depends on MACH_PIC32
 | |
| 	help
 | |
| 	  Enable the Microchip PIC32 SPI driver. This driver can be used
 | |
| 	  to access the SPI NOR flash, MMC-over-SPI on platforms based on
 | |
| 	  Microchip PIC32 family devices.
 | |
| 
 | |
| config PL022_SPI
 | |
| 	bool "ARM AMBA PL022 SSP controller driver"
 | |
| 	depends on ARM
 | |
| 	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_QUP
 | |
| 	bool "Qualcomm SPI controller with QUP interface"
 | |
| 	depends on ARCH_IPQ40XX
 | |
| 	help
 | |
| 	  Qualcomm Universal Peripheral (QUP) core is an AHB slave that
 | |
| 	  provides a common data path (an output FIFO and an input FIFO)
 | |
| 	  for serial peripheral interface (SPI) mini-core. SPI in master
 | |
| 	  mode supports up to 50MHz, up to four chip selects, programmable
 | |
| 	  data path from 4 bits to 32 bits and numerous protocol variants.
 | |
| 
 | |
| config RENESAS_RPC_SPI
 | |
| 	bool "Renesas RPC SPI driver"
 | |
| 	depends on RCAR_64 || RZA1
 | |
| 	imply SPI_FLASH_SFDP_SUPPORT
 | |
| 	help
 | |
| 	  Enable the Renesas RPC SPI driver, used to access SPI NOR flash
 | |
| 	  on Renesas RCar Gen3 SoCs. This uses driver model and requires a
 | |
| 	  device tree binding to operate.
 | |
| 
 | |
| config ROCKCHIP_SFC
 | |
| 	bool "Rockchip SFC Driver"
 | |
| 	help
 | |
| 	  Enable the Rockchip SFC Driver for SPI NOR flash. This device is
 | |
| 	  a limited purpose SPI controller for driving NOR flash on certain
 | |
| 	  Rockchip SoCs. This uses driver model and requires a device tree
 | |
| 	  binding to operate.
 | |
| 
 | |
| config ROCKCHIP_SPI
 | |
| 	bool "Rockchip SPI driver"
 | |
| 	help
 | |
| 	  Enable the Rockchip SPI driver, used to access SPI NOR flash and
 | |
| 	  other SPI peripherals (such as the Chrome OS EC) on Rockchip SoCs.
 | |
| 	  This uses driver model and requires a device tree binding to
 | |
| 	  operate.
 | |
| 
 | |
| config SANDBOX_SPI
 | |
| 	bool "Sandbox SPI driver"
 | |
| 	depends on SANDBOX && DM
 | |
| 	help
 | |
| 	  Enable SPI support for sandbox. This is an emulation of a real SPI
 | |
| 	  bus. Devices can be attached to the bus using the device tree
 | |
| 	  which specifies the driver to use. As an example, see this device
 | |
| 	  tree fragment from sandbox.dts. It shows that the SPI bus has a
 | |
| 	  single flash device on chip select 0 which is emulated by the driver
 | |
| 	  for "sandbox,spi-flash", which is in drivers/mtd/spi/sandbox.c.
 | |
| 
 | |
| 	  spi@0 {
 | |
| 		#address-cells = <1>;
 | |
| 		#size-cells = <0>;
 | |
| 		reg = <0>;
 | |
| 		compatible = "sandbox,spi";
 | |
| 		cs-gpios = <0>, <&gpio_a 0>;
 | |
| 		flash@0 {
 | |
| 			reg = <0>;
 | |
| 			compatible = "spansion,m25p16", "jedec,spi-nor";
 | |
| 			spi-max-frequency = <40000000>;
 | |
| 			sandbox,filename = "spi.bin";
 | |
| 		};
 | |
| 	  };
 | |
| 
 | |
| config SANDBOX_SPI_MAX_BUS
 | |
| 	int
 | |
| 	depends on SANDBOX
 | |
| 	default 1
 | |
| 
 | |
| config SANDBOX_SPI_MAX_CS
 | |
| 	int
 | |
| 	depends on SANDBOX
 | |
| 	default 10
 | |
| 
 | |
| config SPI_ASPEED_SMC
 | |
| 	bool "ASPEED SPI flash controller driver"
 | |
| 	depends on DM_SPI && SPI_MEM
 | |
| 	help
 | |
| 	  Enable ASPEED SPI flash controller driver for AST2500
 | |
| 	  and AST2600 SoCs.
 | |
| 
 | |
| config SPI_SIFIVE
 | |
| 	bool "SiFive SPI driver"
 | |
| 	help
 | |
| 	  This driver supports the SiFive SPI IP. If unsure say N.
 | |
| 	  Enable the SiFive SPI controller driver.
 | |
| 
 | |
| 	  The SiFive SPI controller driver is found on various SiFive SoCs.
 | |
| 
 | |
| config SOFT_SPI
 | |
| 	bool "Soft SPI driver"
 | |
| 	help
 | |
| 	 Enable Soft SPI driver. This driver is to use GPIO simulate
 | |
| 	 the SPI protocol.
 | |
| 
 | |
| config SPI_SN_F_OSPI
 | |
| 	tristate "Socionext F_OSPI SPI flash controller"
 | |
| 	depends on SPI_MEM
 | |
| 	help
 | |
| 	  This enables support for the Socionext F_OSPI controller
 | |
| 	  for connecting an SPI flash memory over up to 8-bit wide bus.
 | |
| 	  It supports indirect access mode only.
 | |
| 
 | |
| config SPI_SUNXI
 | |
| 	bool "Allwinner SoC SPI controllers"
 | |
| 	default ARCH_SUNXI
 | |
| 	help
 | |
| 	  Enable the Allwinner SoC SPi controller driver.
 | |
| 
 | |
| 	  Same controller driver can reuse in all Allwinner SoC variants.
 | |
| 
 | |
| config STM32_QSPI
 | |
| 	bool "STM32F7 QSPI driver"
 | |
| 	depends on STM32F4 || STM32F7 || ARCH_STM32MP
 | |
| 	help
 | |
| 	  Enable the STM32F7 Quad-SPI (QSPI) driver. This driver can be
 | |
| 	  used to access the SPI NOR flash chips on platforms embedding
 | |
| 	  this ST IP core.
 | |
| 
 | |
| config STM32_SPI
 | |
| 	bool "STM32 SPI driver"
 | |
| 	depends on ARCH_STM32MP
 | |
| 	help
 | |
| 	  Enable the STM32 Serial Peripheral Interface (SPI) driver for STM32MP
 | |
| 	  SoCs. This uses driver model and requires a device tree binding to
 | |
| 	  operate.
 | |
| 
 | |
| config TEGRA114_SPI
 | |
| 	bool "nVidia Tegra114 SPI driver"
 | |
| 	help
 | |
| 	  Enable the nVidia Tegra114 SPI driver. This driver can be used to
 | |
| 	  access the SPI NOR flash on platforms embedding this nVidia Tegra114
 | |
| 	  IP core.
 | |
| 
 | |
| 	  This controller is different than the older SoCs SPI controller and
 | |
| 	  also register interface get changed with this controller.
 | |
| 
 | |
| config TEGRA20_SFLASH
 | |
| 	bool "nVidia Tegra20 Serial Flash controller driver"
 | |
| 	help
 | |
| 	  Enable the nVidia Tegra20 Serial Flash controller driver. This driver
 | |
| 	  can be used to access the SPI NOR flash on platforms embedding this
 | |
| 	  nVidia Tegra20 IP core.
 | |
| 
 | |
| config TEGRA20_SLINK
 | |
| 	bool "nVidia Tegra20/Tegra30 SLINK driver"
 | |
| 	help
 | |
| 	  Enable the nVidia Tegra20/Tegra30 SLINK driver. This driver can
 | |
| 	  be used to access the SPI NOR flash on platforms embedding this
 | |
| 	  nVidia Tegra20/Tegra30 IP cores.
 | |
| 
 | |
| config TEGRA210_QSPI
 | |
| 	bool "nVidia Tegra210 QSPI driver"
 | |
| 	help
 | |
| 	  Enable the Tegra Quad-SPI (QSPI) driver for T210. This driver
 | |
| 	  be used to access SPI chips on platforms embedding this
 | |
| 	  NVIDIA Tegra210 IP core.
 | |
| 
 | |
| config TI_QSPI
 | |
| 	bool "TI QSPI driver"
 | |
| 	imply TI_EDMA3
 | |
| 	help
 | |
| 	  Enable the TI Quad-SPI (QSPI) driver for DRA7xx and AM43xx evms.
 | |
| 	  This driver support spi flash single, quad and memory reads.
 | |
| 
 | |
| config UNIPHIER_SPI
 | |
| 	bool "Socionext UniPhier SPI driver"
 | |
| 	depends on ARCH_UNIPHIER
 | |
| 	help
 | |
| 	  Enable the Socionext UniPhier SPI driver. This driver can
 | |
| 	  be used to access SPI chips on platforms embedding this
 | |
| 	  UniPhier IP core.
 | |
| 
 | |
| config XILINX_SPI
 | |
| 	bool "Xilinx SPI driver"
 | |
| 	help
 | |
| 	  Enable the Xilinx SPI driver from the Xilinx EDK. This SPI
 | |
| 	  controller support 8 bit SPI transfers only, with or w/o FIFO.
 | |
| 	  For more info on Xilinx SPI Register Definitions and Overview
 | |
| 	  see driver file - drivers/spi/xilinx_spi.c
 | |
| 
 | |
| config ZYNQ_SPI
 | |
| 	bool "Zynq SPI driver"
 | |
| 	help
 | |
| 	  Enable the Zynq SPI driver. This driver can be used to
 | |
| 	  access the SPI NOR flash on platforms embedding this Zynq
 | |
| 	  SPI IP core.
 | |
| 
 | |
| config ZYNQ_QSPI
 | |
| 	bool "Zynq QSPI driver"
 | |
| 	imply SPI_FLASH_BAR
 | |
| 	help
 | |
| 	  Enable the Zynq Quad-SPI (QSPI) driver. This driver can be
 | |
| 	  used to access the SPI NOR flash on platforms embedding this
 | |
| 	  Zynq QSPI IP core. This IP is used to connect the flash in
 | |
| 	  4-bit qspi, 8-bit dual stacked and shared 4-bit dual parallel.
 | |
| 
 | |
| config ZYNQMP_GQSPI
 | |
| 	bool "Configure ZynqMP Generic QSPI"
 | |
| 	help
 | |
| 	  This option is used to enable ZynqMP QSPI controller driver which
 | |
| 	  is used to communicate with qspi flash devices.
 | |
| 
 | |
| endif # if DM_SPI
 | |
| 
 | |
| config FSL_ESPI
 | |
| 	bool "Freescale eSPI driver"
 | |
| 	depends on MPC85xx
 | |
| 	imply SPI_FLASH_BAR
 | |
| 	help
 | |
| 	  Enable the Freescale eSPI driver. This driver can be used to
 | |
| 	  access the SPI interface and SPI NOR flash on platforms embedding
 | |
| 	  this Freescale eSPI IP core.
 | |
| 
 | |
| config SH_QSPI
 | |
| 	bool "Renesas Quad SPI driver"
 | |
| 	help
 | |
| 	  Enable the Renesas Quad SPI controller driver. This driver can be
 | |
| 	  used on Renesas SoCs.
 | |
| 
 | |
| config MXC_SPI
 | |
| 	bool "MXC SPI Driver"
 | |
| 	help
 | |
| 	  Enable the MXC SPI controller driver. This driver can be used
 | |
| 	  on various i.MX SoCs such as i.MX31/35/51/6/7.
 | |
| 
 | |
| config SYNQUACER_SPI
 | |
| 	bool "Socionext SynQuacer HS-SPI driver"
 | |
| 	depends on ARCH_SYNQUACER
 | |
| 	help
 | |
| 	  Enable the Socionext HS-SPI driver for SynQuacer. This driver can
 | |
| 	  be used to access the SPI interface and SPI NOR flash on platforms
 | |
| 	  embedding this HS-SPI IP core.
 | |
| 
 | |
| endif # menu "SPI Support"
 |