Add Octal SPI(OSPI) controller support for Xilinx Versal SoC. Update the binding to add Xilinx Versal compatible string, also add 'power-domains' property and made as required for Xilinx Versal SoCs. Add API in xilinx firmware for configuring OSPI Mux, which is required to change the interface to OSPI. Xilinx Versal SoC has external DMA support, so by using the OSPI MUX selection, interface to the OSPI will be selected (either DMA interface or AXI slave interface). Xilinx Versal OSPI external DMA: Xilinx Versal OSPI DMA module is integrated to the Cadence OSPI Controller with the DMA write channel. Cadence OSPI Controller which reads the data from the Flash and stores in its internal SRAM and Xilinx Versal OSPI DMA which reads the data from the SRAM in the Cadence OSPI Controller using the DMA SRC channel and then the DMA DST channel initiates a write DMA transfer into the destined address location. Sai Krishna Potthuri (4): firmware: xilinx: Add OSPI Mux selection support dt-bindings: spi: cadence-quadspi: Add support for Xilinx Versal OSPI spi: cadence-quadspi: Add OSPI support for Xilinx Versal SoC spi: cadence-quadspi: Add Xilinx Versal external DMA support .../bindings/spi/cdns,qspi-nor.yaml | 12 + drivers/firmware/xilinx/zynqmp.c | 17 ++ drivers/spi/spi-cadence-quadspi.c | 214 ++++++++++++++++++ include/linux/firmware/xlnx-zynqmp.h | 12 + 4 files changed, 255 insertions(+) -- 2.17.1