[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250616220054.3968946-1-sean.anderson@linux.dev>
Date: Mon, 16 Jun 2025 18:00:45 -0400
From: Sean Anderson <sean.anderson@...ux.dev>
To: Mark Brown <broonie@...nel.org>,
Michal Simek <michal.simek@....com>,
linux-spi@...r.kernel.org
Cc: Jinjie Ruan <ruanjinjie@...wei.com>,
Miquel Raynal <miquel.raynal@...tlin.com>,
linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org,
David Lechner <dlechner@...libre.com>,
Amit Kumar Mahapatra <amit.kumar-mahapatra@....com>,
Sean Anderson <sean.anderson@...ux.dev>,
Conor Dooley <conor+dt@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Rob Herring <robh@...nel.org>,
devicetree@...r.kernel.org
Subject: [PATCH v2 0/9] spi: zynqmp-gqspi: Support multiple buses and add GPIO support
This device really has two SPI buses but they are currently determined
by the slave's CS. Decouple bus selection from CS, and add support for
GPIO chipselects. This allows adding arbitrary devices on either bus.
This version does the bus selction using a spi-buses property in
slaves's node, as opposed to having separate nodes for the upper and
lower buses. This should be backwards compatible with existing bindings,
and could allow supporting "parallel" memories in the future (identical
flashes on both buses controlled in lockstep).
Changes in v2:
- Add spi-buses property
- Update spi-zynqmp-qspi.yaml with new binding style
- Support multi-bus controllers
- Add flag to determine default bus
- Support multiple buses with spi-buses instead of explicit
upper/lower/merged buses
David Lechner (2):
dt-bindings: spi: Add spi-buses property
spi: Support multi-bus controllers
Sean Anderson (7):
dt-bindings: spi: zynqmp-qspi: Add example dual upper/lower bus
spi: Add flag to determine default bus
spi: zynqmp-gqspi: Support multiple buses
spi: zynqmp-gqspi: Pass speed directly to config_op
spi: zynqmp-gqspi: Configure SPI mode dynamically
spi: zynqmp-gqspi: Support GPIO chip selects
ARM64: xilinx: zynqmp: Add spi-buses property
.../bindings/spi/spi-peripheral-props.yaml | 10 ++
.../bindings/spi/spi-zynqmp-qspi.yaml | 22 ++-
.../boot/dts/xilinx/zynqmp-sm-k26-revA.dts | 1 +
.../boot/dts/xilinx/zynqmp-zc1254-revA.dts | 1 +
.../dts/xilinx/zynqmp-zc1751-xm015-dc1.dts | 1 +
.../dts/xilinx/zynqmp-zc1751-xm018-dc4.dts | 1 +
.../boot/dts/xilinx/zynqmp-zcu102-revA.dts | 1 +
.../boot/dts/xilinx/zynqmp-zcu104-revA.dts | 1 +
.../boot/dts/xilinx/zynqmp-zcu104-revC.dts | 1 +
.../boot/dts/xilinx/zynqmp-zcu106-revA.dts | 1 +
.../boot/dts/xilinx/zynqmp-zcu111-revA.dts | 1 +
.../boot/dts/xilinx/zynqmp-zcu1275-revA.dts | 1 +
drivers/spi/spi-zynqmp-gqspi.c | 155 ++++++++++++++----
drivers/spi/spi.c | 31 +++-
include/linux/spi/spi.h | 15 ++
15 files changed, 208 insertions(+), 35 deletions(-)
--
2.35.1.1320.gc452695387.dirty
Powered by blists - more mailing lists