Microchip PCI1XXXX is an unmanaged PCIe3.1a switch for consumer, industrial, and automotive applications. This switch has multiple downstream ports. One of the switch's downstream ports is a multifunction endpoint; one of those functions supports SPI functionality. This series of patches provides the SPI controller driver for the SPI function of the multifunction PCIe endpoint of the switch. RFC -> V2: - Added logic to handle chip select disable case - Set SPI_MASTER_MUST_TX flag - Added logic to ensure current transaction is complete before suspending Tharun Kumar P (2): spi: microchip: pci1xxxx: Add driver for SPI controller of PCI1XXXX PCIe switch spi: microchip: pci1xxxx: Add suspend and resume support for PCI1XXXX SPI driver drivers/spi/Kconfig | 9 + drivers/spi/Makefile | 1 + drivers/spi/spi-pci1xxxx.c | 475 +++++++++++++++++++++++++++++++++++++ 3 files changed, 485 insertions(+) create mode 100644 drivers/spi/spi-pci1xxxx.c -- 2.25.1