twx-linux/drivers/spi
Linus Torvalds e23dd95cfd spi: Updates for v6.11
There's some quite exciting core work in this release, we've got the
 beginnings of support for hardware initiated transfers which is itself
 independently useful for optimising fast paths in existing drivers.
 
 We also have a rework of the DMA mapping which allows finer grained
 decisions about DMA mapping messages and also helps remove some bodges
 that we'd had.
 
 Otherwise it's a fairly quiet release, a few new drivers and features
 for existing drivers, together with various cleanups and DT binding
 conversions.
 
 One regmap SPI fix made it's way in here too which I should probably
 have sent as a regmap fix instead.
 
  - Support for pre-optimising messages, reducing the overhead for
    messages that are repeatedly used (eg, reading the interrupt status
    from a device).  This will also be used for hardware initiated
    transfers in future.
  - A reworking of how DMA mapping is done, introducing a new helper and
    allowing the DMA mapping decision to be done per transfer instead of
    per message.
  - Support for Atmel SAMA7D64, Freescale LX2160A DSPI and WCH CH341A.
 -----BEGIN PGP SIGNATURE-----
 
 iQEzBAABCgAdFiEEreZoqmdXGLWf4p/qJNaLcl1Uh9AFAmaVLH0ACgkQJNaLcl1U
 h9DhHQf+KD1gVf0dF9N7Y4gf+fjFQpbf7hxpB24lpJ952/9Ke1hsM19JZDqNaTVa
 ITXIyQLr4uCtPXZ6jOd03td/6TGs9sG3VTLcRrYCG44CvhWpDgAg9Nc3KbNj95Zf
 oPWMLEG2Y2ZjGzIrbqciJ5IRF/gT4rnc2PwytmkrPYwQn6CLUCw7BM3QFFqMnyPb
 U4UA/EmLuOqtlu4z+hdL97JX/XWQfWNLzXfIlIrfJserRBexwmefN7Y2+5fica02
 OBTDyMsg82yZtqASvbsTVn4di577oCYbMnpy+0f+a74h2DDMDfspury8CbrST+Cj
 Jr7/082RuYUlUUyrR9N98EhJ9p1K+w==
 =snrv
 -----END PGP SIGNATURE-----

Merge tag 'spi-v6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi

Pull spi updates from Mark Brown:
 "There's some quite exciting core work in this release, we've got the
  beginnings of support for hardware initiated transfers which is itself
  independently useful for optimising fast paths in existing drivers.

  We also have a rework of the DMA mapping which allows finer grained
  decisions about DMA mapping messages and also helps remove some bodges
  that we'd had.

  Otherwise it's a fairly quiet release, a few new drivers and features
  for existing drivers, together with various cleanups and DT binding
  conversions.

  One regmap SPI fix made it's way in here too which I should probably
  have sent as a regmap fix instead.

  Summary:

   - Support for pre-optimising messages, reducing the overhead for
     messages that are repeatedly used (eg, reading the interrupt status
     from a device). This will also be used for hardware initiated
     transfers in future.

   - A reworking of how DMA mapping is done, introducing a new helper
     and allowing the DMA mapping decision to be done per transfer
     instead of per message.

   - Support for Atmel SAMA7D64, Freescale LX2160A DSPI and WCH CH341A"

* tag 'spi-v6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (72 commits)
  spi: dt-bindings: at91: Add sama7d65 compatible string
  spi: add ch341a usb2spi driver
  spi: dt-bindings: fsl-dspi: add compatible string 'fsl,lx2160a-dspi'
  spi: dt-bindings: fsl-dspi: add dmas and dma-names properties
  spi: spi: Remove unnecessary ‘0’ values from status
  spi: spi: Remove unnecessary ‘0’ values from rc
  spi: xcomm: fix coding style
  spi: xcomm: remove i2c_set_clientdata()
  spi: xcomm: make use of devm_spi_alloc_host()
  spi: xcomm: add gpiochip support
  spi: dt-bindings: snps,dw-apb-ssi.yaml: update compatible property
  spi: dt-bindings: fsl-dspi: Convert to yaml format
  spi: fsl-dspi: use common proptery 'spi-cs-setup(hold)-delay-ns'
  spi: axi-spi-engine: remove platform_set_drvdata()
  spi: spi-fsl-lpspi: Pass pm_ptr()
  spi: spi-imx: Pass pm_ptr()
  spi: spi-fsl-lpspi: Switch to SYSTEM_SLEEP_PM_OPS()
  spi: spi-imx: Switch to RUNTIME_PM_OPS/SYSTEM_SLEEP_PM_OPS()
  spi: add EXPORT_SYMBOL_GPL(devm_spi_optimize_message)
  spi: add devm_spi_optimize_message() helper
  ...
2024-07-15 18:03:43 -07:00
..
atmel-quadspi.c spi: atmel-quadspi: Add missing check for clk_prepare 2024-05-27 01:33:39 +01:00
internals.h spi: Rework per message DMA mapped flag to be per transfer 2024-06-10 12:49:03 +01:00
Kconfig spi: add ch341a usb2spi driver 2024-07-08 17:01:10 +01:00
Makefile spi: add ch341a usb2spi driver 2024-07-08 17:01:10 +01:00
spi-airoha-snfi.c spi: airoha: add SPI-NAND Flash controller driver 2024-04-30 23:40:28 +09:00
spi-altera-core.c spi: add missing MODULE_DESCRIPTION() macros 2024-06-10 12:49:05 +01:00
spi-altera-dfl.c
spi-altera-platform.c spi: altera: Drop unneeded MODULE_ALIAS 2024-04-15 10:17:25 +09:00
spi-amd.c spi: spi_amd: Add support for SPI MEM framework 2024-03-25 20:30:06 +00:00
spi-amlogic-spifc-a1.c
spi-ar934x.c
spi-armada-3700.c spi: armada-3700: use 'time_left' variable with wait_for_completion_timeout() 2024-04-30 23:57:26 +09:00
spi-aspeed-smc.c
spi-at91-usart.c
spi-ath79.c spi: bitbang: Follow renaming of SPI "master" to "controller" 2024-02-08 11:54:48 +00:00
spi-atmel.c spi: remove struct spi_message::is_dma_mapped 2024-03-25 20:30:07 +00:00
spi-au1550.c spi: au1550: t->{tx,rx}_dma checks 2024-03-28 21:09:45 +00:00
spi-axi-spi-engine.c spi: Updates for v6.11 2024-07-15 18:03:43 -07:00
spi-bcm63xx-hsspi.c
spi-bcm63xx.c
spi-bcm2835.c spi: bcm2835: implement ctlr->max_transfer_size 2024-02-05 14:35:44 +00:00
spi-bcm2835aux.c
spi-bcm-qspi.c spi: bcm-qspi: fix SFDP BFPT read by usig mspi read 2024-01-23 13:28:03 +00:00
spi-bcm-qspi.h
spi-bcmbca-hsspi.c
spi-bitbang-txrx.h
spi-bitbang.c spi: bitbang: Convert unsigned to unsigned int 2024-05-27 01:33:23 +01:00
spi-brcmstb-qspi.c
spi-butterfly.c spi: bitbang: Follow renaming of SPI "master" to "controller" 2024-02-08 11:54:48 +00:00
spi-cadence-quadspi.c spi: cadence-qspi: add mobileye,eyeq5-ospi compatible 2024-04-26 11:09:25 +09:00
spi-cadence-xspi.c spi: cadence: Ensure data lines set to low during dummy-cycle period 2024-05-29 13:43:02 +01:00
spi-cadence.c spi: spi-cadence: Enable spi refclk in slave mode 2024-06-19 13:54:17 +01:00
spi-cavium-octeon.c
spi-cavium-thunderx.c
spi-cavium.c spi: cavium: Follow renaming of SPI "master" to "controller" 2024-02-08 11:54:50 +00:00
spi-cavium.h spi: cavium: Follow renaming of SPI "master" to "controller" 2024-02-08 11:54:50 +00:00
spi-ch341.c spi: add ch341a usb2spi driver 2024-07-08 17:01:10 +01:00
spi-clps711x.c
spi-coldfire-qspi.c spi: coldfire-qspi: drop driver owner assignment 2024-03-28 13:58:41 +00:00
spi-cs42l43.c spi: cs42l43: Add speaker id support to the bridge configuration 2024-06-20 21:10:15 +01:00
spi-davinci.c spi: davinci: Unset POWERDOWN bit when releasing resources 2024-07-01 13:12:18 +01:00
spi-dln2.c
spi-dw-bt1.c spi: dw: differentiate between unsupported and invalid requests 2024-05-27 01:33:04 +01:00
spi-dw-core.c spi: dw: Use new spi_xfer_is_dma_mapped() helper 2024-06-10 12:48:58 +01:00
spi-dw-dma.c spi: dw: remove redundant assignment to variable len 2024-02-15 14:17:19 +00:00
spi-dw-mmio.c spi: dw: Bail out early on unsupported target mode 2024-05-09 17:48:06 +02:00
spi-dw-pci.c
spi-dw.h spi: dw: Convert dw_spi::num_cs to u32 2024-05-03 11:09:24 +09:00
spi-ep93xx.c
spi-falcon.c
spi-fsi.c
spi-fsl-cpm.c spi: add missing MODULE_DESCRIPTION() macros 2024-06-10 12:49:05 +01:00
spi-fsl-cpm.h spi: fsl: remove is_dma_mapped checks 2024-03-28 21:09:46 +00:00
spi-fsl-dspi.c spi: fsl-dspi: use common proptery 'spi-cs-setup(hold)-delay-ns' 2024-07-01 13:12:42 +01:00
spi-fsl-espi.c
spi-fsl-lib.c spi: add missing MODULE_DESCRIPTION() macros 2024-06-10 12:49:05 +01:00
spi-fsl-lib.h
spi-fsl-lpspi.c spi: spi-fsl-lpspi: Pass pm_ptr() 2024-06-25 20:04:32 +01:00
spi-fsl-qspi.c
spi-fsl-spi.c spi: fsl: remove is_dma_mapped checks 2024-03-28 21:09:46 +00:00
spi-fsl-spi.h
spi-geni-qcom.c spi: geni-qcom: Follow renaming of SPI "master" to "controller" 2024-02-08 11:54:51 +00:00
spi-gpio.c spi: gpio: Use traditional pattern when checking error codes 2024-05-27 01:33:30 +01:00
spi-gxp.c
spi-hisi-kunpeng.c spi: hisi-kunpeng: Delete the dump interface of data registers in debugfs 2024-04-16 19:59:48 +09:00
spi-hisi-sfc-v3xx.c spi: hisi-sfc-v3xx: Return IRQ_NONE if no interrupts were detected 2024-01-23 15:05:18 +00:00
spi-img-spfi.c
spi-imx.c spi: spi-imx: Pass pm_ptr() 2024-06-25 20:04:31 +01:00
spi-ingenic.c spi: ingenic: Use new spi_xfer_is_dma_mapped() helper 2024-06-10 12:48:59 +01:00
spi-intel-pci.c spi: intel-pci: Add support for Lunar Lake-M SPI serial flash 2024-02-12 13:41:35 +00:00
spi-intel-platform.c
spi-intel.c spi: intel: Keep the BIOS partition inside the first chip 2024-02-05 14:35:47 +00:00
spi-intel.h
spi-iproc-qspi.c
spi-jcore.c
spi-lantiq-ssc.c
spi-ljca.c spi: ljca: switch to use devm_spi_alloc_host() 2023-12-11 12:55:16 +00:00
spi-lm70llp.c spi: lm70llp: fix links in doc and comments 2024-03-18 15:55:12 +00:00
spi-loongson-core.c
spi-loongson-pci.c
spi-loongson-plat.c
spi-loongson.h
spi-loopback-test.c spi: loopback-test: drop driver owner assignment 2024-03-28 13:58:40 +00:00
spi-lp8841-rtc.c
spi-mem.c spi: Fix error code checking in spi_mem_exec_op() 2024-03-14 14:14:20 +00:00
spi-meson-spicc.c spi: meson-spicc: add spicc loopback mode 2024-06-12 16:19:59 +01:00
spi-meson-spifc.c
spi-microchip-core-qspi.c spi: microchip-core-qspi: fix setting spi bus clock rate 2024-05-09 06:59:19 +02:00
spi-microchip-core.c spi: spi-microchip-core: Add support for GPIO based CS 2024-05-27 01:33:16 +01:00
spi-mpc52xx-psc.c
spi-mpc52xx.c spi: mpc52xx: explicitly include linux/platform_device.h 2023-12-08 20:13:24 +00:00
spi-mpc512x-psc.c
spi-mt65xx.c spi: spi-mt65xx: Rename a variable in interrupt handler 2024-03-25 15:03:03 +00:00
spi-mt7621.c spi: mt7621: allow GPIO chip select lines 2024-03-25 15:03:02 +00:00
spi-mtk-nor.c
spi-mtk-snfi.c
spi-mux.c spi: mux: set ctlr->bits_per_word_mask 2024-07-09 17:42:33 +01:00
spi-mxic.c spi: mxic: differentiate between unsupported and invalid requests 2024-05-27 01:33:05 +01:00
spi-mxs.c spi-mxs: Fix chipselect glitch 2024-02-13 15:48:22 +00:00
spi-npcm-fiu.c spi: Unify error codes by replacing -ENOTSUPP with -EOPNOTSUPP 2023-11-30 12:12:39 +00:00
spi-npcm-pspi.c
spi-nxp-fspi.c spi: nxp-fspi: Adjust LUT debug output alignment 2024-01-22 00:06:54 +00:00
spi-oc-tiny.c spi: oc-tiny: Remove unused of_gpio.h 2024-04-17 23:01:11 +09:00
spi-omap2-mcspi.c spi: Updates for v6.11 2024-07-15 18:03:43 -07:00
spi-omap-uwire.c spi: add missing MODULE_DESCRIPTION() macros 2024-06-10 12:49:05 +01:00
spi-orion.c
spi-pci1xxxx.c spi: pci1xxxx: Use new spi_xfer_is_dma_mapped() helper 2024-06-10 12:49:01 +01:00
spi-pic32-sqi.c spi: pic32-sqi: use 'time_left' variable with wait_for_completion_timeout() 2024-04-30 23:57:29 +09:00
spi-pic32.c spi: pic32: use 'time_left' variable with wait_for_completion_timeout() 2024-04-30 23:57:30 +09:00
spi-pl022.c spi: pl022: update description of internal_cs_control() 2023-12-15 12:58:18 +00:00
spi-ppc4xx.c Linux 6.8 2024-03-18 17:30:46 +00:00
spi-pxa2xx-dma.c spi: pxa2xx: Remove DMA parameters from struct chip_data 2024-05-03 11:11:36 +09:00
spi-pxa2xx-pci.c spi: pxa2xx: Convert PCI driver to use spi-pxa2xx code directly 2024-06-03 16:00:04 +01:00
spi-pxa2xx-platform.c spi: pxa2xx: Move platform driver to a separate file 2024-06-03 16:00:03 +01:00
spi-pxa2xx.c spi: pxa2xx: Use new spi_xfer_is_dma_mapped() helper 2024-06-10 12:49:01 +01:00
spi-pxa2xx.h spi: pxa2xx: Move platform driver to a separate file 2024-06-03 16:00:03 +01:00
spi-qcom-qspi.c
spi-qup.c spi: Rework DMA mapped flag 2024-06-11 11:38:25 +01:00
spi-rb4xx.c
spi-realtek-rtl.c
spi-rockchip-sfc.c
spi-rockchip.c spi: spi-rockchip: Fix max_native_cs 2024-02-05 14:35:49 +00:00
spi-rpc-if.c spi: rpc-if: differentiate between unsupported and invalid requests 2024-05-27 01:33:06 +01:00
spi-rspi.c spi: rspi: Get rid of unused struct rspi_plat_data 2024-03-25 17:18:22 +00:00
spi-rzv2m-csi.c
spi-s3c64xx.c spi: spi-s3c64xx.c: Remove of_node_put for auto cleanup 2024-04-24 10:27:16 +09:00
spi-sc18is602.c
spi-sh-hspi.c
spi-sh-msiof.c spi: sh-msiof: avoid integer overflow in constants 2024-01-30 15:27:21 +00:00
spi-sh-sci.c spi: bitbang: Follow renaming of SPI "master" to "controller" 2024-02-08 11:54:48 +00:00
spi-sh.c
spi-sifive.c
spi-slave-mt27xx.c spi: slave-mt27xx: Follow renaming of SPI "master" to "controller" 2024-02-08 11:54:53 +00:00
spi-slave-system-control.c
spi-slave-time.c
spi-sn-f-ospi.c
spi-sprd-adi.c spi: sprd-adi: switch to use spi_alloc_host() 2023-12-11 12:54:53 +00:00
spi-sprd.c spi: sprd: switch to use modern name 2023-12-11 12:54:53 +00:00
spi-st-ssc4.c spi: st-ssc4: switch to use modern name 2023-12-11 12:54:54 +00:00
spi-stm32-qspi.c spi: stm32: qspi: Clamp stm32_qspi_get_mode() output to CCR_BUSWIDTH_4 2024-06-18 14:48:26 +01:00
spi-stm32.c spi: stm32: Don't warn about spurious interrupts 2024-05-29 19:12:09 +01:00
spi-sun4i.c spi: sun4i: use 'time_left' variable with wait_for_completion_timeout() 2024-04-30 23:57:30 +09:00
spi-sun6i.c spi: sun6i: use 'time_left' variable with wait_for_completion_timeout() 2024-04-30 23:57:31 +09:00
spi-sunplus-sp7021.c spi: sunplus-sp7021: switch to use modern name 2023-12-11 12:54:59 +00:00
spi-synquacer.c spi: synquacer: switch to use modern name 2023-12-11 12:55:00 +00:00
spi-tegra20-sflash.c spi: tegra20-sflash: switch to use modern name 2023-12-11 12:55:03 +00:00
spi-tegra20-slink.c spi: tegra20-slink: switch to use modern name 2023-12-11 12:55:04 +00:00
spi-tegra114.c spi: tegra114: switch to use modern name 2023-12-11 12:55:02 +00:00
spi-tegra210-quad.c spi: tegra210-quad: switch to use modern name 2023-12-11 12:55:05 +00:00
spi-test.h
spi-ti-qspi.c spi: spi-ti-qspi: switch to use modern name 2023-12-11 12:55:06 +00:00
spi-tle62x0.c
spi-topcliff-pch.c spi: topcliff-pch: switch to use modern name 2023-12-11 12:55:07 +00:00
spi-uniphier.c spi: uniphier: switch to use modern name 2023-12-11 12:55:08 +00:00
spi-wpcm-fiu.c spi: wpcm-fiu: differentiate between unsupported and invalid requests 2024-05-27 01:33:06 +01:00
spi-xcomm.c spi: xcomm: fix coding style 2024-07-05 18:47:46 +01:00
spi-xilinx.c spi: bitbang: Follow renaming of SPI "master" to "controller" 2024-02-08 11:54:48 +00:00
spi-xlp.c spi: xlp: use 'time_left' variable with wait_for_completion_timeout() 2024-04-30 23:57:32 +09:00
spi-xtensa-xtfpga.c spi: bitbang: Follow renaming of SPI "master" to "controller" 2024-02-08 11:54:48 +00:00
spi-zynq-qspi.c spi: zynq-qspi: switch to use modern name 2023-12-11 12:55:13 +00:00
spi-zynqmp-gqspi.c spi: zynqmp-gqspi: switch to use modern name 2023-12-11 12:55:14 +00:00
spi.c spi: Updates for v6.11 2024-07-15 18:03:43 -07:00
spidev.c spi: spidev: Follow renaming of SPI "master" to "controller" 2024-02-08 11:54:53 +00:00