Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5762ab71 authored by Romain Perier's avatar Romain Perier Committed by Mark Brown
Browse files

spi: Add support for Armada 3700 SPI Controller



Marvell Armada 3700 SoC comprises an SPI Controller. This Controller
supports up to 4 SPI slave devices, with dedicated chip selects,supports
SPI mode 0/1/2 and 3, CPIO or Fifo mode with DMA transfers and different
SPI transfer mode (Single, Dual or Quad).

This commit adds basic driver support for FIFO mode. In this mode,
dedicated registers are used to store the instruction, the address, the
read mode and the data. Write and Read FIFO are used to store the
outcoming or incoming data. The data FIFOs are accessible via DMA or by
the CPU. Only the CPU is supported for now.

Signed-off-by: default avatarRomain Perier <romain.perier@free-electrons.com>
Tested-by: default avatarGregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 40495377
Loading
Loading
Loading
Loading
+7 −0
Original line number Original line Diff line number Diff line
@@ -67,6 +67,13 @@ config SPI_ATH79
	  This enables support for the SPI controller present on the
	  This enables support for the SPI controller present on the
	  Atheros AR71XX/AR724X/AR913X SoCs.
	  Atheros AR71XX/AR724X/AR913X SoCs.


config SPI_ARMADA_3700
	tristate "Marvell Armada 3700 SPI Controller"
	depends on (ARCH_MVEBU && OF) || COMPILE_TEST
	help
	  This enables support for the SPI controller present on the
	  Marvell Armada 3700 SoCs.

config SPI_ATMEL
config SPI_ATMEL
	tristate "Atmel SPI Controller"
	tristate "Atmel SPI Controller"
	depends on HAS_DMA
	depends on HAS_DMA
+1 −0
Original line number Original line Diff line number Diff line
@@ -12,6 +12,7 @@ obj-$(CONFIG_SPI_LOOPBACK_TEST) += spi-loopback-test.o


# SPI master controller drivers (bus)
# SPI master controller drivers (bus)
obj-$(CONFIG_SPI_ALTERA)		+= spi-altera.o
obj-$(CONFIG_SPI_ALTERA)		+= spi-altera.o
obj-$(CONFIG_SPI_ARMADA_3700)		+= spi-armada-3700.o
obj-$(CONFIG_SPI_ATMEL)			+= spi-atmel.o
obj-$(CONFIG_SPI_ATMEL)			+= spi-atmel.o
obj-$(CONFIG_SPI_ATH79)			+= spi-ath79.o
obj-$(CONFIG_SPI_ATH79)			+= spi-ath79.o
obj-$(CONFIG_SPI_AU1550)		+= spi-au1550.o
obj-$(CONFIG_SPI_AU1550)		+= spi-au1550.o
+923 −0

File added.

Preview size limit exceeded, changes collapsed.