Even though the SPI controller in the Allwinner H6 SoC is more advanced than in the previous generations (it supports 3-wire and 4-wire mode), the register set stays backwards-compatible. So we can use the existing driver to use the "normal" SPI mode, for instance to access the SPI flash soldered on the Pine H64 board.
These two patches allow this by adding the SPI controller nodes to the DT. The compatible strings include an H6 specific name, so that any future 4-wire enhancements for instance would be automatically usable once the driver learns this new trick. For now we use the H3 fallback name to bind the current driver. This time I tested this actual branch (on top of sunxi/dt-for-5.6), on a Pine H64, both the internal SPI flash as well with SPI flash connected to the other SPI controller available on the GPIO headers. As the SPI0-CS0 pin clashes with the eMMC CMD pin, we keep this node disabled by default, to avoid losing the eMMC if it probes last. People (or U-Boot) can enable it if needed. Cheers, Andre. Changelog v1 ... v2: - comment on pinmux clash between eMMC and SPI - disable Pine H64 SPI flash node by default - add binding doc for the new compatible string Andre Przywara (3): arm64: dts: sun50i: H6: Add SPI controllers nodes and pinmuxes arm64: dts: allwinner: h6: Pine H64: Add SPI flash node dt-bindings: spi: sunxi: Document new compatible strings .../bindings/spi/allwinner,sun6i-a31-spi.yaml | 12 +++-- .../boot/dts/allwinner/sun50i-h6-pine-h64.dts | 19 ++++++++ arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi | 55 ++++++++++++++++++++++ 3 files changed, 83 insertions(+), 3 deletions(-) -- 2.14.5 -- You received this message because you are subscribed to the Google Groups "linux-sunxi" group. To unsubscribe from this group and stop receiving emails from it, send an email to linux-sunxi+unsubscr...@googlegroups.com. To view this discussion on the web, visit https://groups.google.com/d/msgid/linux-sunxi/20200116005654.27672-1-andre.przywara%40arm.com.