From: Ian Dannapel <iansdannapel@xxxxxxxxx> This patch series introduces support for Efinix FPGA devices through SPI-based programming. Currently, only Trion devices are tested. Topaz and Titanium series are theoretically supported because of the similarity with Trion, but the driver is only documentation based. Changes since v3: - major rework on the driver spi write approach - indirect CS assert using spi_transfer instead of duplicating the SPI controller property - locked SPI bus transfer to avoid possible conflicts with other devices on the bus - file name and compatible strings renamed to better match device - minor improvements/fixes Ian Dannapel (3): dt-bindings: vendor-prefix: Add prefix for Efinix, Inc. dt-bindings: fpga: Add Efinix SPI programming bindings fpga-mgr: Add Efinix SPI programming driver .../devicetree/bindings/fpga/efinix,spi.yaml | 81 +++++++ .../devicetree/bindings/vendor-prefixes.yaml | 2 + drivers/fpga/Kconfig | 7 + drivers/fpga/Makefile | 1 + drivers/fpga/efinix-spi.c | 212 ++++++++++++++++++ 5 files changed, 303 insertions(+) create mode 100644 Documentation/devicetree/bindings/fpga/efinix,spi.yaml create mode 100644 drivers/fpga/efinix-spi.c -- 2.43.0