This series enables support for Pensando Elba SoC based platforms. The Elba SoC has the following features: - Sixteen ARM64 A72 cores - Dual DDR 4/5 memory controllers - 32 lanes of PCIe Gen3/4 to the Host - Network interfaces: Dual 200GE, Quad 100GE, 50GE, 25GE, 10GE and also a single 1GE management port. - Storage/crypto offloads and 144 programmable P4 cores. - QSPI and EMMC for SoC storage - Two SPI interfaces for peripheral management - I2C bus for platform management See below for an overview of changes since v1. == Patch overview == - 01 Fix typo, return code value and log message. - 03 Remove else clause, intrinsic DW chip-select is never used. - 08-11 Split out dts and bindings to sub-patches - 10 Converted existing cadence-quadspi.txt to YAML schema - 13 New driver should use <linux/gpio/driver.h> Brad Larson (13): gpio: Add Elba SoC gpio driver for spi cs control spi: cadence-quadspi: Add QSPI support for Pensando Elba SoC spi: dw: Add support for Pensando Elba SoC SPI spidev: Add Pensando CPLD compatible mmc: sdhci-cadence: Add Pensando Elba SoC support arm64: Add config for Pensando SoC platforms arm64: dts: Add Pensando Elba SoC support dt-bindings: Add pensando vendor prefix dt-bindings: mmc: Add Pensando Elba SoC binding dt-bindings: spi: cadence-qspi: Add support for Pensando Elba SoC dt-bindings: gpio: Add Pensando Elba SoC support MAINTAINERS: Add entry for PENSANDO gpio: Use linux/gpio/driver.h .../bindings/gpio/pensando,elba-spics.yaml | 50 +++ .../devicetree/bindings/mmc/cdns,sdhci.yaml | 1 + .../bindings/spi/cadence-quadspi.txt | 68 ---- .../bindings/spi/cadence-quadspi.yaml | 153 +++++++++ .../devicetree/bindings/vendor-prefixes.yaml | 2 + MAINTAINERS | 9 + arch/arm64/Kconfig.platforms | 5 + arch/arm64/boot/dts/Makefile | 1 + arch/arm64/boot/dts/pensando/Makefile | 6 + arch/arm64/boot/dts/pensando/elba-16core.dtsi | 170 ++++++++++ .../boot/dts/pensando/elba-asic-common.dtsi | 112 +++++++ arch/arm64/boot/dts/pensando/elba-asic.dts | 7 + .../boot/dts/pensando/elba-flash-parts.dtsi | 78 +++++ arch/arm64/boot/dts/pensando/elba.dtsi | 310 ++++++++++++++++++ drivers/gpio/Kconfig | 6 + drivers/gpio/Makefile | 1 + drivers/gpio/gpio-elba-spics.c | 113 +++++++ drivers/mmc/host/Kconfig | 15 + drivers/mmc/host/Makefile | 1 + drivers/mmc/host/sdhci-cadence-elba.c | 137 ++++++++ drivers/mmc/host/sdhci-cadence.c | 81 +++-- drivers/mmc/host/sdhci-cadence.h | 68 ++++ drivers/spi/spi-cadence-quadspi.c | 9 + drivers/spi/spi-dw-mmio.c | 28 +- drivers/spi/spidev.c | 1 + 25 files changed, 1321 insertions(+), 111 deletions(-) create mode 100644 Documentation/devicetree/bindings/gpio/pensando,elba-spics.yaml delete mode 100644 Documentation/devicetree/bindings/spi/cadence-quadspi.txt create mode 100644 Documentation/devicetree/bindings/spi/cadence-quadspi.yaml create mode 100644 arch/arm64/boot/dts/pensando/Makefile create mode 100644 arch/arm64/boot/dts/pensando/elba-16core.dtsi create mode 100644 arch/arm64/boot/dts/pensando/elba-asic-common.dtsi create mode 100644 arch/arm64/boot/dts/pensando/elba-asic.dts create mode 100644 arch/arm64/boot/dts/pensando/elba-flash-parts.dtsi create mode 100644 arch/arm64/boot/dts/pensando/elba.dtsi create mode 100644 drivers/gpio/gpio-elba-spics.c create mode 100644 drivers/mmc/host/sdhci-cadence-elba.c create mode 100644 drivers/mmc/host/sdhci-cadence.h -- 2.17.1