[PATCH v3 00/13] spi: Add support for stacked/parallel memories

Amit Kumar Mahapatra posted 13 patches 1 year, 9 months ago
There is a newer version of this series
drivers/iio/imu/adis16400.c                   |   2 +-
drivers/mtd/devices/mtd_dataflash.c           |   2 +-
drivers/mtd/spi-nor/atmel.c                   |  17 +-
drivers/mtd/spi-nor/core.c                    | 665 +++++++++++++++---
drivers/mtd/spi-nor/core.h                    |   8 +
drivers/mtd/spi-nor/debugfs.c                 |   4 +-
drivers/mtd/spi-nor/gigadevice.c              |   4 +-
drivers/mtd/spi-nor/issi.c                    |  11 +-
drivers/mtd/spi-nor/macronix.c                |   6 +-
drivers/mtd/spi-nor/micron-st.c               |  39 +-
drivers/mtd/spi-nor/otp.c                     |  48 +-
drivers/mtd/spi-nor/sfdp.c                    |  29 +-
drivers/mtd/spi-nor/spansion.c                |  50 +-
drivers/mtd/spi-nor/sst.c                     |   7 +-
drivers/mtd/spi-nor/swp.c                     |  22 +-
drivers/mtd/spi-nor/winbond.c                 |  10 +-
drivers/mtd/spi-nor/xilinx.c                  |  18 +-
drivers/net/ethernet/adi/adin1110.c           |   2 +-
drivers/net/ethernet/asix/ax88796c_main.c     |   2 +-
drivers/net/ethernet/davicom/dm9051.c         |   2 +-
drivers/net/ethernet/qualcomm/qca_debug.c     |   2 +-
drivers/net/ieee802154/ca8210.c               |   2 +-
drivers/net/wan/slic_ds26522.c                |   2 +-
.../net/wireless/marvell/libertas/if_spi.c    |   2 +-
drivers/net/wireless/silabs/wfx/bus_spi.c     |   2 +-
drivers/net/wireless/st/cw1200/cw1200_spi.c   |   2 +-
.../platform/x86/serial-multi-instantiate.c   |   3 +-
drivers/spi/spi-altera-core.c                 |   2 +-
drivers/spi/spi-amd.c                         |   4 +-
drivers/spi/spi-ar934x.c                      |   2 +-
drivers/spi/spi-armada-3700.c                 |   4 +-
drivers/spi/spi-aspeed-smc.c                  |  13 +-
drivers/spi/spi-at91-usart.c                  |   2 +-
drivers/spi/spi-ath79.c                       |   4 +-
drivers/spi/spi-atmel.c                       |  26 +-
drivers/spi/spi-au1550.c                      |   4 +-
drivers/spi/spi-axi-spi-engine.c              |   2 +-
drivers/spi/spi-bcm-qspi.c                    |  10 +-
drivers/spi/spi-bcm2835.c                     |  19 +-
drivers/spi/spi-bcm2835aux.c                  |   4 +-
drivers/spi/spi-bcm63xx-hsspi.c               |  22 +-
drivers/spi/spi-bcm63xx.c                     |   2 +-
drivers/spi/spi-cadence-quadspi.c             |   5 +-
drivers/spi/spi-cadence-xspi.c                |   4 +-
drivers/spi/spi-cadence.c                     |   4 +-
drivers/spi/spi-cavium.c                      |   8 +-
drivers/spi/spi-coldfire-qspi.c               |   8 +-
drivers/spi/spi-davinci.c                     |  18 +-
drivers/spi/spi-dln2.c                        |   6 +-
drivers/spi/spi-dw-core.c                     |   2 +-
drivers/spi/spi-dw-mmio.c                     |   4 +-
drivers/spi/spi-falcon.c                      |   2 +-
drivers/spi/spi-fsi.c                         |   2 +-
drivers/spi/spi-fsl-dspi.c                    |  16 +-
drivers/spi/spi-fsl-espi.c                    |   6 +-
drivers/spi/spi-fsl-lpspi.c                   |   2 +-
drivers/spi/spi-fsl-qspi.c                    |   6 +-
drivers/spi/spi-fsl-spi.c                     |   2 +-
drivers/spi/spi-geni-qcom.c                   |   6 +-
drivers/spi/spi-gpio.c                        |   4 +-
drivers/spi/spi-gxp.c                         |   4 +-
drivers/spi/spi-hisi-sfc-v3xx.c               |   2 +-
drivers/spi/spi-img-spfi.c                    |  14 +-
drivers/spi/spi-imx.c                         |  30 +-
drivers/spi/spi-ingenic.c                     |   4 +-
drivers/spi/spi-intel.c                       |   2 +-
drivers/spi/spi-jcore.c                       |   4 +-
drivers/spi/spi-lantiq-ssc.c                  |   6 +-
drivers/spi/spi-mem.c                         |   4 +-
drivers/spi/spi-meson-spicc.c                 |   2 +-
drivers/spi/spi-microchip-core.c              |   6 +-
drivers/spi/spi-mpc512x-psc.c                 |   8 +-
drivers/spi/spi-mpc52xx.c                     |   2 +-
drivers/spi/spi-mt65xx.c                      |   6 +-
drivers/spi/spi-mt7621.c                      |   2 +-
drivers/spi/spi-mux.c                         |   8 +-
drivers/spi/spi-mxic.c                        |  10 +-
drivers/spi/spi-mxs.c                         |   2 +-
drivers/spi/spi-npcm-fiu.c                    |  20 +-
drivers/spi/spi-nxp-fspi.c                    |  10 +-
drivers/spi/spi-omap-100k.c                   |   2 +-
drivers/spi/spi-omap-uwire.c                  |   8 +-
drivers/spi/spi-omap2-mcspi.c                 |  24 +-
drivers/spi/spi-orion.c                       |   4 +-
drivers/spi/spi-pci1xxxx.c                    |   4 +-
drivers/spi/spi-pic32-sqi.c                   |   2 +-
drivers/spi/spi-pic32.c                       |   4 +-
drivers/spi/spi-pl022.c                       |   4 +-
drivers/spi/spi-pxa2xx.c                      |   6 +-
drivers/spi/spi-qcom-qspi.c                   |   2 +-
drivers/spi/spi-rb4xx.c                       |   2 +-
drivers/spi/spi-rockchip-sfc.c                |   2 +-
drivers/spi/spi-rockchip.c                    |  26 +-
drivers/spi/spi-rspi.c                        |  10 +-
drivers/spi/spi-s3c64xx.c                     |   2 +-
drivers/spi/spi-sc18is602.c                   |   4 +-
drivers/spi/spi-sh-msiof.c                    |   6 +-
drivers/spi/spi-sh-sci.c                      |   2 +-
drivers/spi/spi-sifive.c                      |   6 +-
drivers/spi/spi-sn-f-ospi.c                   |   2 +-
drivers/spi/spi-st-ssc4.c                     |   2 +-
drivers/spi/spi-stm32-qspi.c                  |  12 +-
drivers/spi/spi-sun4i.c                       |   2 +-
drivers/spi/spi-sun6i.c                       |   2 +-
drivers/spi/spi-synquacer.c                   |   6 +-
drivers/spi/spi-tegra114.c                    |  28 +-
drivers/spi/spi-tegra20-sflash.c              |   2 +-
drivers/spi/spi-tegra20-slink.c               |   6 +-
drivers/spi/spi-tegra210-quad.c               |   8 +-
drivers/spi/spi-ti-qspi.c                     |  16 +-
drivers/spi/spi-topcliff-pch.c                |   4 +-
drivers/spi/spi-wpcm-fiu.c                    |  12 +-
drivers/spi/spi-xcomm.c                       |   2 +-
drivers/spi/spi-xilinx.c                      |   6 +-
drivers/spi/spi-xlp.c                         |   4 +-
drivers/spi/spi-zynq-qspi.c                   |   2 +-
drivers/spi/spi-zynqmp-gqspi.c                |  58 +-
drivers/spi/spi.c                             | 213 ++++--
drivers/spi/spidev.c                          |   6 +-
drivers/staging/fbtft/fbtft-core.c            |   2 +-
drivers/staging/greybus/spilib.c              |   2 +-
include/linux/mtd/spi-nor.h                   |  18 +-
include/linux/spi/spi.h                       |  34 +-
include/trace/events/spi.h                    |  10 +-
124 files changed, 1321 insertions(+), 592 deletions(-)
[PATCH v3 00/13] spi: Add support for stacked/parallel memories
Posted by Amit Kumar Mahapatra 1 year, 9 months ago
This patch is in the continuation to the discussions which happened on
'commit f89504300e94 ("spi: Stacked/parallel memories bindings")' for
adding dt-binding support for stacked/parallel memories.

This patch series updated the spi-nor, spi core and the spi drivers
to add stacked and parallel memories support.

The first patch
https://lore.kernel.org/all/20230119185342.2093323-1-amit.kumar-mahapatra@amd.com/ 
of the previous series got applied to 
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi.git for-next
But the rest of the patches in the series did not get applied due to merge 
conflict, so send the remaining patches in the series after rebasing it 
on top of for-next branch.
---
BRANCH: for-next

Changes in v3:
- Rebased the patches on top of 
  https://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi.git for-next
- Added a patch to convert spi_nor_otp_region_len(nor) & 
  spi_nor_otp_n_regions(nor) macros into inline functions
- Added Reviewed-by & Acked-by tags
 
Changes in v2:
- Rebased the patches on top of v6.2-rc1
- Created separate patch to add get & set APIs for spi->chip_select &
  spi->cs_gpiod, and replaced all spi->chip_select and spi->cs_gpiod
  references with the API calls.
- Created separate patch to add get & set APIs for nor->params.
---
Amit Kumar Mahapatra (13):
  spi: Replace all spi->chip_select and spi->cs_gpiod references with
    function call
  net: Replace all spi->chip_select and spi->cs_gpiod references with
    function call
  iio: imu: Replace all spi->chip_select and spi->cs_gpiod references
    with function call
  mtd: devices: Replace all spi->chip_select and spi->cs_gpiod
    references with function call
  staging: Replace all spi->chip_select and spi->cs_gpiod references
    with function call
  platform/x86: serial-multi-instantiate: Replace all spi->chip_select
    and spi->cs_gpiod references with function call
  spi: Add stacked and parallel memories support in SPI core
  mtd: spi-nor: Convert macros with inline functions
  mtd: spi-nor: Add APIs to set/get nor->params
  mtd: spi-nor: Add stacked memories support in spi-nor
  spi: spi-zynqmp-gqspi: Add stacked memories support in GQSPI driver
  mtd: spi-nor: Add parallel memories support in spi-nor
  spi: spi-zynqmp-gqspi: Add parallel memories support in GQSPI driver

 drivers/iio/imu/adis16400.c                   |   2 +-
 drivers/mtd/devices/mtd_dataflash.c           |   2 +-
 drivers/mtd/spi-nor/atmel.c                   |  17 +-
 drivers/mtd/spi-nor/core.c                    | 665 +++++++++++++++---
 drivers/mtd/spi-nor/core.h                    |   8 +
 drivers/mtd/spi-nor/debugfs.c                 |   4 +-
 drivers/mtd/spi-nor/gigadevice.c              |   4 +-
 drivers/mtd/spi-nor/issi.c                    |  11 +-
 drivers/mtd/spi-nor/macronix.c                |   6 +-
 drivers/mtd/spi-nor/micron-st.c               |  39 +-
 drivers/mtd/spi-nor/otp.c                     |  48 +-
 drivers/mtd/spi-nor/sfdp.c                    |  29 +-
 drivers/mtd/spi-nor/spansion.c                |  50 +-
 drivers/mtd/spi-nor/sst.c                     |   7 +-
 drivers/mtd/spi-nor/swp.c                     |  22 +-
 drivers/mtd/spi-nor/winbond.c                 |  10 +-
 drivers/mtd/spi-nor/xilinx.c                  |  18 +-
 drivers/net/ethernet/adi/adin1110.c           |   2 +-
 drivers/net/ethernet/asix/ax88796c_main.c     |   2 +-
 drivers/net/ethernet/davicom/dm9051.c         |   2 +-
 drivers/net/ethernet/qualcomm/qca_debug.c     |   2 +-
 drivers/net/ieee802154/ca8210.c               |   2 +-
 drivers/net/wan/slic_ds26522.c                |   2 +-
 .../net/wireless/marvell/libertas/if_spi.c    |   2 +-
 drivers/net/wireless/silabs/wfx/bus_spi.c     |   2 +-
 drivers/net/wireless/st/cw1200/cw1200_spi.c   |   2 +-
 .../platform/x86/serial-multi-instantiate.c   |   3 +-
 drivers/spi/spi-altera-core.c                 |   2 +-
 drivers/spi/spi-amd.c                         |   4 +-
 drivers/spi/spi-ar934x.c                      |   2 +-
 drivers/spi/spi-armada-3700.c                 |   4 +-
 drivers/spi/spi-aspeed-smc.c                  |  13 +-
 drivers/spi/spi-at91-usart.c                  |   2 +-
 drivers/spi/spi-ath79.c                       |   4 +-
 drivers/spi/spi-atmel.c                       |  26 +-
 drivers/spi/spi-au1550.c                      |   4 +-
 drivers/spi/spi-axi-spi-engine.c              |   2 +-
 drivers/spi/spi-bcm-qspi.c                    |  10 +-
 drivers/spi/spi-bcm2835.c                     |  19 +-
 drivers/spi/spi-bcm2835aux.c                  |   4 +-
 drivers/spi/spi-bcm63xx-hsspi.c               |  22 +-
 drivers/spi/spi-bcm63xx.c                     |   2 +-
 drivers/spi/spi-cadence-quadspi.c             |   5 +-
 drivers/spi/spi-cadence-xspi.c                |   4 +-
 drivers/spi/spi-cadence.c                     |   4 +-
 drivers/spi/spi-cavium.c                      |   8 +-
 drivers/spi/spi-coldfire-qspi.c               |   8 +-
 drivers/spi/spi-davinci.c                     |  18 +-
 drivers/spi/spi-dln2.c                        |   6 +-
 drivers/spi/spi-dw-core.c                     |   2 +-
 drivers/spi/spi-dw-mmio.c                     |   4 +-
 drivers/spi/spi-falcon.c                      |   2 +-
 drivers/spi/spi-fsi.c                         |   2 +-
 drivers/spi/spi-fsl-dspi.c                    |  16 +-
 drivers/spi/spi-fsl-espi.c                    |   6 +-
 drivers/spi/spi-fsl-lpspi.c                   |   2 +-
 drivers/spi/spi-fsl-qspi.c                    |   6 +-
 drivers/spi/spi-fsl-spi.c                     |   2 +-
 drivers/spi/spi-geni-qcom.c                   |   6 +-
 drivers/spi/spi-gpio.c                        |   4 +-
 drivers/spi/spi-gxp.c                         |   4 +-
 drivers/spi/spi-hisi-sfc-v3xx.c               |   2 +-
 drivers/spi/spi-img-spfi.c                    |  14 +-
 drivers/spi/spi-imx.c                         |  30 +-
 drivers/spi/spi-ingenic.c                     |   4 +-
 drivers/spi/spi-intel.c                       |   2 +-
 drivers/spi/spi-jcore.c                       |   4 +-
 drivers/spi/spi-lantiq-ssc.c                  |   6 +-
 drivers/spi/spi-mem.c                         |   4 +-
 drivers/spi/spi-meson-spicc.c                 |   2 +-
 drivers/spi/spi-microchip-core.c              |   6 +-
 drivers/spi/spi-mpc512x-psc.c                 |   8 +-
 drivers/spi/spi-mpc52xx.c                     |   2 +-
 drivers/spi/spi-mt65xx.c                      |   6 +-
 drivers/spi/spi-mt7621.c                      |   2 +-
 drivers/spi/spi-mux.c                         |   8 +-
 drivers/spi/spi-mxic.c                        |  10 +-
 drivers/spi/spi-mxs.c                         |   2 +-
 drivers/spi/spi-npcm-fiu.c                    |  20 +-
 drivers/spi/spi-nxp-fspi.c                    |  10 +-
 drivers/spi/spi-omap-100k.c                   |   2 +-
 drivers/spi/spi-omap-uwire.c                  |   8 +-
 drivers/spi/spi-omap2-mcspi.c                 |  24 +-
 drivers/spi/spi-orion.c                       |   4 +-
 drivers/spi/spi-pci1xxxx.c                    |   4 +-
 drivers/spi/spi-pic32-sqi.c                   |   2 +-
 drivers/spi/spi-pic32.c                       |   4 +-
 drivers/spi/spi-pl022.c                       |   4 +-
 drivers/spi/spi-pxa2xx.c                      |   6 +-
 drivers/spi/spi-qcom-qspi.c                   |   2 +-
 drivers/spi/spi-rb4xx.c                       |   2 +-
 drivers/spi/spi-rockchip-sfc.c                |   2 +-
 drivers/spi/spi-rockchip.c                    |  26 +-
 drivers/spi/spi-rspi.c                        |  10 +-
 drivers/spi/spi-s3c64xx.c                     |   2 +-
 drivers/spi/spi-sc18is602.c                   |   4 +-
 drivers/spi/spi-sh-msiof.c                    |   6 +-
 drivers/spi/spi-sh-sci.c                      |   2 +-
 drivers/spi/spi-sifive.c                      |   6 +-
 drivers/spi/spi-sn-f-ospi.c                   |   2 +-
 drivers/spi/spi-st-ssc4.c                     |   2 +-
 drivers/spi/spi-stm32-qspi.c                  |  12 +-
 drivers/spi/spi-sun4i.c                       |   2 +-
 drivers/spi/spi-sun6i.c                       |   2 +-
 drivers/spi/spi-synquacer.c                   |   6 +-
 drivers/spi/spi-tegra114.c                    |  28 +-
 drivers/spi/spi-tegra20-sflash.c              |   2 +-
 drivers/spi/spi-tegra20-slink.c               |   6 +-
 drivers/spi/spi-tegra210-quad.c               |   8 +-
 drivers/spi/spi-ti-qspi.c                     |  16 +-
 drivers/spi/spi-topcliff-pch.c                |   4 +-
 drivers/spi/spi-wpcm-fiu.c                    |  12 +-
 drivers/spi/spi-xcomm.c                       |   2 +-
 drivers/spi/spi-xilinx.c                      |   6 +-
 drivers/spi/spi-xlp.c                         |   4 +-
 drivers/spi/spi-zynq-qspi.c                   |   2 +-
 drivers/spi/spi-zynqmp-gqspi.c                |  58 +-
 drivers/spi/spi.c                             | 213 ++++--
 drivers/spi/spidev.c                          |   6 +-
 drivers/staging/fbtft/fbtft-core.c            |   2 +-
 drivers/staging/greybus/spilib.c              |   2 +-
 include/linux/mtd/spi-nor.h                   |  18 +-
 include/linux/spi/spi.h                       |  34 +-
 include/trace/events/spi.h                    |  10 +-
 124 files changed, 1321 insertions(+), 592 deletions(-)

-- 
2.25.1