[PATCH v4 0/6] spi: cadence-qspi: add Mobileye EyeQ5 support

From: Théo Lebrun
Date: Tue Apr 23 2024 - 06:03:04 EST


Hi all,

V4 of this series adding octal SPI-NOR support to Mobileye EyeQ5
platform. It has been tested on EyeQ5 hardware successfully. Patches
have been taken over time, meaning series got smaller over time.

Patches:
- Make cdns,fifo-depth optional by computing it from hardware.
- No-IRQ mode for indirect read operations. Behind a quirk flag.
- Busywait on commands and indirect reads; reduces hrtimeouts load.
- Add mobileye,eyeq5-ospi compatible.
- EyeQ5 devicetree:
- Add octal SPI-NOR node.
- Add SPI-NOR flash node on eval board.

There is no dependency except if you want zero errors in devicetree:
system-controller series [3] for <&clocks> phandle.

Have a nice day,
Théo

[0]: https://lore.kernel.org/lkml/20240216174227.409400-1-gregory.clement@xxxxxxxxxxx/
[1]: https://lore.kernel.org/linux-mips/20240209-regname-v1-0-2125efa016ef@xxxxxxxxxxx/
[2]: https://git.kernel.org/pub/scm/linux/kernel/git/mips/linux.git/log/
[3]: https://lore.kernel.org/lkml/20240301-mbly-clk-v9-0-cbf06eb88708@xxxxxxxxxxx/
[4]: https://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi.git/log/
[5]: https://lore.kernel.org/lkml/20240308-cdns-qspi-mbly-v1-0-a503856dd205@xxxxxxxxxxx/
[6]: https://lore.kernel.org/lkml/171259906078.120310.15397790336440498713.b4-ty@xxxxxxxxxx/

Signed-off-by: Théo Lebrun <theo.lebrun@xxxxxxxxxxx>
---
Changes in v4:
- Fix -Wunused-variable warning on patch "allow FIFO depth detection"
by dropping two unused local variables.
- Rebase onto spi/for-next, drop three applied patches:
- spi: dt-bindings: cdns,qspi-nor: sort compatibles alphabetically
- spi: dt-bindings: cdns,qspi-nor: add mobileye,eyeq5-ospi compatible
- spi: dt-bindings: cdns,qspi-nor: make cdns,fifo-depth optional
- Link to v3: https://lore.kernel.org/r/20240410-cdns-qspi-mbly-v3-0-7b7053449cf7@xxxxxxxxxxx

Changes in v3:
- dt-bindings:
- Patch "sort compatibles alphabetically":
- Moved first.
- Take Reviewed-By Krzysztof.
- Patch "add mobileye,eyeq5-ospi compatible":
- EyeQ5 no longer implies no cdns,fifo-depth prop. Patch now only adds
compatible, no more property conditional.
- New "make cdns,fifo-depth optional" patch, for all compatibles.
- Driver:
- FIFO depth detection is no longer a quirk. It is for all compatibles
if no DT property is provided.
- Rebase onto spi-next [4] to drop three patches. No-IRQ mode patch is
mentioned in email saying a subset of patches got applied [6].
However, it is not in spi-next, so it is kept in series.
- Busywait is no longer behind a quirk; it applies to all compatibles.
- No-IRQ mode patch got modified to change its quirk index because
previous quirk got removed.
- As we removed some quirks, we no longer overflow u8 quirks.
- Link to v2: https://lore.kernel.org/r/20240405-cdns-qspi-mbly-v2-0-956679866d6d@xxxxxxxxxxx

Changes in v2:
- Rebase upon v6.9-rc2.
- Fix dt-bindings commit subject tags.
- Take Reviewed-by: Krzysztof Kozlowski on dt-bindings commit.
- Add dt-bindings commit to order compatibles alphabetically.
Krzysztof: unsure if you want this. It is second so that commit
adding EyeQ5 compatible can be taken alone easily.
- Drop patch taken upstream:
spi: cadence-qspi: switch from legacy names to modern ones
- Add To: Rob Herring, following get_maintainer.pl recommendation.
- Link to v1: https://lore.kernel.org/r/20240308-cdns-qspi-mbly-v1-0-a503856dd205@xxxxxxxxxxx

---
Théo Lebrun (6):
spi: cadence-qspi: allow FIFO depth detection
spi: cadence-qspi: add no-IRQ mode to indirect reads
spi: cadence-qspi: add early busywait to cqspi_wait_for_bit()
spi: cadence-qspi: add mobileye,eyeq5-ospi compatible
MIPS: mobileye: eyeq5: Add SPI-NOR controller node
MIPS: mobileye: eyeq5: add octal flash node to eval board DTS

arch/mips/boot/dts/mobileye/eyeq5-epm5.dts | 15 +++++
arch/mips/boot/dts/mobileye/eyeq5.dtsi | 15 +++++
drivers/spi/spi-cadence-quadspi.c | 91 +++++++++++++++++++++++-------
3 files changed, 102 insertions(+), 19 deletions(-)
---
base-commit: 9deae5003d0e89ec6ef15879a70ba6fb43e15029
change-id: 20240209-cdns-qspi-mbly-de2205a44ab3

Best regards,
--
Théo Lebrun <theo.lebrun@xxxxxxxxxxx>