forked from Minki/linux
d194a22f50
This series is a subset of "[PATCH v12 0/4] spi: cadence-quadspi: Add
support for the Cadence QSPI controller" by Ramuthevar,Vadivel MuruganX
<vadivel.muruganx.ramuthevar@linux.intel.com> that intended to move
cadence-quadspi driver to spi-mem framework
Those patches were trying to accomplish too many things in a single set
of patches and need to split into smaller patches. This is reduced
version of above series.
Changes that are intended to make migration easy are split into separate
patches. Patches 1 to 3 drop features that cannot be supported under
spi-mem at the moment (backward compatibility is maintained).
Patch 4-5 are trivial cleanups. Patch 6 does the actual conversion to
spi-mem and patch 7 moves the driver to drivers/spi folder.
I have tested both INDAC mode (used by non TI platforms like Altera
SoCFPGA) and DAC mode (used by TI platforms) on TI EVMs.
Patches to move move bindings over to
"Documentation/devicetree/bindings/spi/" directory and also conversion
of bindig doc to YAML will be posted separately. Support for Intel
platform would follow that.
Resend v3:
Rebased onto v5.7-c1
v3:
Split handling of probe deferral into separate patch (out of 5/6)
Split dropping of redundant WREN to separate patch (out of 5/6)
Fix a possible memleak due to lack of spi_master_put()
Parse all SPI slave nodes in cqspi_setup_flash()
Address misc comments from Tudor on v2
Rebase onto latest spi-nor/next
v2:
Rework patch 1/6 to keep "cdns,is-decoded-cs" property supported.
Ramuthevar Vadivel Murugan (2):
mtd: spi-nor: Convert cadence-quadspi to use spi-mem framework
spi: Move cadence-quadspi driver to drivers/spi/
Vignesh Raghavendra (6):
mtd: spi-nor: cadence-quadspi: Make driver independent of flash
geometry
mtd: spi-nor: cadence-quadspi: Provide a way to disable DAC mode
mtd: spi-nor: cadence-quadspi: Don't initialize rx_dma_complete on
failure
mtd: spi-nor: cadence-quadspi: Fix error path on failure to acquire
reset lines
mtd: spi-nor: cadence-quadspi: Handle probe deferral while requesting
DMA channel
mtd: spi-nor: cadence-quadspi: Drop redundant WREN in erase path
drivers/mtd/spi-nor/controllers/Kconfig | 11 -
drivers/mtd/spi-nor/controllers/Makefile | 1 -
drivers/spi/Kconfig | 11 +
drivers/spi/Makefile | 1 +
.../spi-cadence-quadspi.c} | 541 +++++++-----------
5 files changed, 222 insertions(+), 343 deletions(-)
rename drivers/{mtd/spi-nor/controllers/cadence-quadspi.c => spi/spi-cadence-quadspi.c} (74%)
base-commit: b3a9e3b962
--
2.26.2
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
138 lines
5.9 KiB
Makefile
138 lines
5.9 KiB
Makefile
# SPDX-License-Identifier: GPL-2.0
|
|
#
|
|
# Makefile for kernel SPI drivers.
|
|
#
|
|
|
|
ccflags-$(CONFIG_SPI_DEBUG) := -DDEBUG
|
|
|
|
# small core, mostly translating board-specific
|
|
# config declarations into driver model code
|
|
obj-$(CONFIG_SPI_MASTER) += spi.o
|
|
obj-$(CONFIG_SPI_MEM) += spi-mem.o
|
|
obj-$(CONFIG_SPI_MUX) += spi-mux.o
|
|
obj-$(CONFIG_SPI_SPIDEV) += spidev.o
|
|
obj-$(CONFIG_SPI_LOOPBACK_TEST) += spi-loopback-test.o
|
|
|
|
# SPI master controller drivers (bus)
|
|
obj-$(CONFIG_SPI_ALTERA) += spi-altera.o
|
|
obj-$(CONFIG_SPI_AR934X) += spi-ar934x.o
|
|
obj-$(CONFIG_SPI_ARMADA_3700) += spi-armada-3700.o
|
|
obj-$(CONFIG_SPI_ATMEL) += spi-atmel.o
|
|
obj-$(CONFIG_SPI_ATMEL_QUADSPI) += atmel-quadspi.o
|
|
obj-$(CONFIG_SPI_AT91_USART) += spi-at91-usart.o
|
|
obj-$(CONFIG_SPI_ATH79) += spi-ath79.o
|
|
obj-$(CONFIG_SPI_AU1550) += spi-au1550.o
|
|
obj-$(CONFIG_SPI_AXI_SPI_ENGINE) += spi-axi-spi-engine.o
|
|
obj-$(CONFIG_SPI_BCM2835) += spi-bcm2835.o
|
|
obj-$(CONFIG_SPI_BCM2835AUX) += spi-bcm2835aux.o
|
|
obj-$(CONFIG_SPI_BCM63XX) += spi-bcm63xx.o
|
|
obj-$(CONFIG_SPI_BCM63XX_HSSPI) += spi-bcm63xx-hsspi.o
|
|
obj-$(CONFIG_SPI_BCM_QSPI) += spi-iproc-qspi.o spi-brcmstb-qspi.o spi-bcm-qspi.o
|
|
obj-$(CONFIG_SPI_BITBANG) += spi-bitbang.o
|
|
obj-$(CONFIG_SPI_BUTTERFLY) += spi-butterfly.o
|
|
obj-$(CONFIG_SPI_CADENCE) += spi-cadence.o
|
|
obj-$(CONFIG_SPI_CADENCE_QUADSPI) += spi-cadence-quadspi.o
|
|
obj-$(CONFIG_SPI_CLPS711X) += spi-clps711x.o
|
|
obj-$(CONFIG_SPI_COLDFIRE_QSPI) += spi-coldfire-qspi.o
|
|
obj-$(CONFIG_SPI_DAVINCI) += spi-davinci.o
|
|
obj-$(CONFIG_SPI_DLN2) += spi-dln2.o
|
|
obj-$(CONFIG_SPI_DESIGNWARE) += spi-dw.o
|
|
spi-dw-y := spi-dw-core.o
|
|
spi-dw-$(CONFIG_SPI_DW_DMA) += spi-dw-dma.o
|
|
obj-$(CONFIG_SPI_DW_MMIO) += spi-dw-mmio.o
|
|
obj-$(CONFIG_SPI_DW_PCI) += spi-dw-pci.o
|
|
obj-$(CONFIG_SPI_EFM32) += spi-efm32.o
|
|
obj-$(CONFIG_SPI_EP93XX) += spi-ep93xx.o
|
|
obj-$(CONFIG_SPI_FALCON) += spi-falcon.o
|
|
obj-$(CONFIG_SPI_FSI) += spi-fsi.o
|
|
obj-$(CONFIG_SPI_FSL_CPM) += spi-fsl-cpm.o
|
|
obj-$(CONFIG_SPI_FSL_DSPI) += spi-fsl-dspi.o
|
|
obj-$(CONFIG_SPI_FSL_LIB) += spi-fsl-lib.o
|
|
obj-$(CONFIG_SPI_FSL_ESPI) += spi-fsl-espi.o
|
|
obj-$(CONFIG_SPI_FSL_LPSPI) += spi-fsl-lpspi.o
|
|
obj-$(CONFIG_SPI_FSL_QUADSPI) += spi-fsl-qspi.o
|
|
obj-$(CONFIG_SPI_FSL_SPI) += spi-fsl-spi.o
|
|
obj-$(CONFIG_SPI_GPIO) += spi-gpio.o
|
|
obj-$(CONFIG_SPI_HISI_SFC_V3XX) += spi-hisi-sfc-v3xx.o
|
|
obj-$(CONFIG_SPI_IMG_SPFI) += spi-img-spfi.o
|
|
obj-$(CONFIG_SPI_IMX) += spi-imx.o
|
|
obj-$(CONFIG_SPI_LANTIQ_SSC) += spi-lantiq-ssc.o
|
|
obj-$(CONFIG_SPI_JCORE) += spi-jcore.o
|
|
obj-$(CONFIG_SPI_LM70_LLP) += spi-lm70llp.o
|
|
obj-$(CONFIG_SPI_LP8841_RTC) += spi-lp8841-rtc.o
|
|
obj-$(CONFIG_SPI_MESON_SPICC) += spi-meson-spicc.o
|
|
obj-$(CONFIG_SPI_MESON_SPIFC) += spi-meson-spifc.o
|
|
obj-$(CONFIG_SPI_MPC512x_PSC) += spi-mpc512x-psc.o
|
|
obj-$(CONFIG_SPI_MPC52xx_PSC) += spi-mpc52xx-psc.o
|
|
obj-$(CONFIG_SPI_MPC52xx) += spi-mpc52xx.o
|
|
obj-$(CONFIG_SPI_MT65XX) += spi-mt65xx.o
|
|
obj-$(CONFIG_SPI_MT7621) += spi-mt7621.o
|
|
obj-$(CONFIG_SPI_MTK_NOR) += spi-mtk-nor.o
|
|
obj-$(CONFIG_SPI_MXIC) += spi-mxic.o
|
|
obj-$(CONFIG_SPI_MXS) += spi-mxs.o
|
|
obj-$(CONFIG_SPI_NPCM_FIU) += spi-npcm-fiu.o
|
|
obj-$(CONFIG_SPI_NPCM_PSPI) += spi-npcm-pspi.o
|
|
obj-$(CONFIG_SPI_NXP_FLEXSPI) += spi-nxp-fspi.o
|
|
obj-$(CONFIG_SPI_OC_TINY) += spi-oc-tiny.o
|
|
spi-octeon-objs := spi-cavium.o spi-cavium-octeon.o
|
|
obj-$(CONFIG_SPI_OCTEON) += spi-octeon.o
|
|
obj-$(CONFIG_SPI_OMAP_UWIRE) += spi-omap-uwire.o
|
|
obj-$(CONFIG_SPI_OMAP_100K) += spi-omap-100k.o
|
|
obj-$(CONFIG_SPI_OMAP24XX) += spi-omap2-mcspi.o
|
|
obj-$(CONFIG_SPI_TI_QSPI) += spi-ti-qspi.o
|
|
obj-$(CONFIG_SPI_ORION) += spi-orion.o
|
|
obj-$(CONFIG_SPI_PIC32) += spi-pic32.o
|
|
obj-$(CONFIG_SPI_PIC32_SQI) += spi-pic32-sqi.o
|
|
obj-$(CONFIG_SPI_PL022) += spi-pl022.o
|
|
obj-$(CONFIG_SPI_PPC4xx) += spi-ppc4xx.o
|
|
spi-pxa2xx-platform-objs := spi-pxa2xx.o spi-pxa2xx-dma.o
|
|
obj-$(CONFIG_SPI_PXA2XX) += spi-pxa2xx-platform.o
|
|
obj-$(CONFIG_SPI_PXA2XX_PCI) += spi-pxa2xx-pci.o
|
|
obj-$(CONFIG_SPI_QCOM_GENI) += spi-geni-qcom.o
|
|
obj-$(CONFIG_SPI_QCOM_QSPI) += spi-qcom-qspi.o
|
|
obj-$(CONFIG_SPI_QUP) += spi-qup.o
|
|
obj-$(CONFIG_SPI_ROCKCHIP) += spi-rockchip.o
|
|
obj-$(CONFIG_SPI_RB4XX) += spi-rb4xx.o
|
|
obj-$(CONFIG_SPI_RPCIF) += spi-rpc-if.o
|
|
obj-$(CONFIG_SPI_RSPI) += spi-rspi.o
|
|
obj-$(CONFIG_SPI_S3C24XX) += spi-s3c24xx-hw.o
|
|
spi-s3c24xx-hw-y := spi-s3c24xx.o
|
|
spi-s3c24xx-hw-$(CONFIG_SPI_S3C24XX_FIQ) += spi-s3c24xx-fiq.o
|
|
obj-$(CONFIG_SPI_S3C64XX) += spi-s3c64xx.o
|
|
obj-$(CONFIG_SPI_SC18IS602) += spi-sc18is602.o
|
|
obj-$(CONFIG_SPI_SH) += spi-sh.o
|
|
obj-$(CONFIG_SPI_SH_HSPI) += spi-sh-hspi.o
|
|
obj-$(CONFIG_SPI_SH_MSIOF) += spi-sh-msiof.o
|
|
obj-$(CONFIG_SPI_SH_SCI) += spi-sh-sci.o
|
|
obj-$(CONFIG_SPI_SIFIVE) += spi-sifive.o
|
|
obj-$(CONFIG_SPI_SIRF) += spi-sirf.o
|
|
obj-$(CONFIG_SPI_SLAVE_MT27XX) += spi-slave-mt27xx.o
|
|
obj-$(CONFIG_SPI_SPRD) += spi-sprd.o
|
|
obj-$(CONFIG_SPI_SPRD_ADI) += spi-sprd-adi.o
|
|
obj-$(CONFIG_SPI_STM32) += spi-stm32.o
|
|
obj-$(CONFIG_SPI_STM32_QSPI) += spi-stm32-qspi.o
|
|
obj-$(CONFIG_SPI_ST_SSC4) += spi-st-ssc4.o
|
|
obj-$(CONFIG_SPI_SUN4I) += spi-sun4i.o
|
|
obj-$(CONFIG_SPI_SUN6I) += spi-sun6i.o
|
|
obj-$(CONFIG_SPI_SYNQUACER) += spi-synquacer.o
|
|
obj-$(CONFIG_SPI_TEGRA114) += spi-tegra114.o
|
|
obj-$(CONFIG_SPI_TEGRA20_SFLASH) += spi-tegra20-sflash.o
|
|
obj-$(CONFIG_SPI_TEGRA20_SLINK) += spi-tegra20-slink.o
|
|
obj-$(CONFIG_SPI_TLE62X0) += spi-tle62x0.o
|
|
spi-thunderx-objs := spi-cavium.o spi-cavium-thunderx.o
|
|
obj-$(CONFIG_SPI_THUNDERX) += spi-thunderx.o
|
|
obj-$(CONFIG_SPI_TOPCLIFF_PCH) += spi-topcliff-pch.o
|
|
obj-$(CONFIG_SPI_TXX9) += spi-txx9.o
|
|
obj-$(CONFIG_SPI_UNIPHIER) += spi-uniphier.o
|
|
obj-$(CONFIG_SPI_XCOMM) += spi-xcomm.o
|
|
obj-$(CONFIG_SPI_XILINX) += spi-xilinx.o
|
|
obj-$(CONFIG_SPI_XLP) += spi-xlp.o
|
|
obj-$(CONFIG_SPI_XTENSA_XTFPGA) += spi-xtensa-xtfpga.o
|
|
obj-$(CONFIG_SPI_ZYNQ_QSPI) += spi-zynq-qspi.o
|
|
obj-$(CONFIG_SPI_ZYNQMP_GQSPI) += spi-zynqmp-gqspi.o
|
|
obj-$(CONFIG_SPI_AMD) += spi-amd.o
|
|
|
|
# SPI slave protocol handlers
|
|
obj-$(CONFIG_SPI_SLAVE_TIME) += spi-slave-time.o
|
|
obj-$(CONFIG_SPI_SLAVE_SYSTEM_CONTROL) += spi-slave-system-control.o
|