mbox series

[v3,0/8] spi: Adding support for Microchip Sparx5 SoC

Message ID 20200702101331.26375-1-lars.povlsen@microchip.com (mailing list archive)
Headers show
Series spi: Adding support for Microchip Sparx5 SoC | expand

Message

Lars Povlsen July 2, 2020, 10:13 a.m. UTC
This is an add-on series to the main SoC Sparx5 series
(Message-ID: <20200615133242.24911-1-lars.povlsen@microchip.com>

The series add support for the Sparx5 SoC SPI controller in the
spi-dw-mmio.c spi driver.

v3 changes:
- Added mux support for controlling SPI bus interface. This is new mux
  driver, bindings and added to sparx5 base DT.
- Removed "microchip,spi-interface2" property in favour of
  "mux-controls" property in SPI controller (sparx5 only).
- Changed dw_spi_sparx5_set_cs() to use the mux control instead of
  directly acessing "mux" register. Associated code/defines moved to mux
  driver.
- Changed dw_spi_sparx5_set_cs() to match other similar functions in
  signature and avoid explicit CS toggling.
- Spun off duplicated NAND device DT chunks into separate DT file.

v2 changes:
- Moved all RX sample delay into spi-dw-core.c, using
  the "snps,rx-sample-delay-ns" device property.
- Integrated Sparx5 support directly in spi-dw-mmio.c
- Changed SPI2 configuration to per-slave "microchip,spi-interface2"
  property.
- Added bindings to existing snps,dw-apb-ssi.yaml file
- Dropped patches for polled mode and SPI memory operations.

Lars Povlsen (8):
  spi: dw: Add support for RX sample delay register
  arm64: dts: sparx5: Add SPI controller and SPI mux
  spi: dw: Add Microchip Sparx5 support
  mux: sparx5: Add Sparx5 SPI mux driver
  dt-bindings: snps,dw-apb-ssi: Add sparx5 support, plus
    snps,rx-sample-delay-ns property
  dt-bindings: microchip,sparx5-spi-mux: Add Sparx5 SPI mux driver
    bindings
  arm64: dts: sparx5: Add spi-nor support
  arm64: dts: sparx5: Add spi-nand devices

 .../mux/microchip,sparx5-spi-mux.yaml         |  71 +++++++++
 .../bindings/spi/snps,dw-apb-ssi.yaml         |  28 ++++
 arch/arm64/boot/dts/microchip/sparx5.dtsi     |  43 ++++++
 .../arm64/boot/dts/microchip/sparx5_nand.dtsi |  32 ++++
 .../boot/dts/microchip/sparx5_pcb125.dts      |  16 ++
 .../boot/dts/microchip/sparx5_pcb134.dts      |   1 +
 .../dts/microchip/sparx5_pcb134_board.dtsi    |   9 ++
 .../boot/dts/microchip/sparx5_pcb135.dts      |   1 +
 .../dts/microchip/sparx5_pcb135_board.dtsi    |   9 ++
 drivers/mux/Makefile                          |   2 +
 drivers/mux/sparx5-spi.c                      | 138 ++++++++++++++++++
 drivers/spi/Kconfig                           |   1 +
 drivers/spi/spi-dw-core.c                     |  20 +++
 drivers/spi/spi-dw-mmio.c                     |  79 +++++++++-
 drivers/spi/spi-dw.h                          |   2 +
 15 files changed, 451 insertions(+), 1 deletion(-)
 create mode 100644 Documentation/devicetree/bindings/mux/microchip,sparx5-spi-mux.yaml
 create mode 100644 arch/arm64/boot/dts/microchip/sparx5_nand.dtsi
 create mode 100644 drivers/mux/sparx5-spi.c

--
2.27.0