This is a revisit of two earlier efforts to add more complex mutliplexing to SPI busses. https://patchwork.kernel.org/patch/2706151/ https://patchwork.kernel.org/patch/10897255/ This version makes use of the general purpose mux controller which simplifies things greatly. One outstanding problem is the need for the spi-max-frequency on the mux device. This is not used for anything and is just needed to satisfy the spi driver infrastructure which expects all spi devices to have this property. Chris Packham (2): dt-bindings: spi: Document binding for generic SPI multiplexer spi: Add generic SPI multiplexer .../devicetree/bindings/spi/spi-mux.yaml | 89 +++++++++ drivers/spi/Kconfig | 11 ++ drivers/spi/Makefile | 1 + drivers/spi/spi-mux.c | 187 ++++++++++++++++++ 4 files changed, 288 insertions(+) create mode 100644 Documentation/devicetree/bindings/spi/spi-mux.yaml create mode 100644 drivers/spi/spi-mux.c -- 2.25.0