[3/4] spi: Add a DT binding for high impedance turnaround

Message ID 20180903215035.17265-4-linus.walleij@linaro.org
State Superseded
Headers show
Series
  • SPI 3WIRE fixes and highz turnaround
Related show

Commit Message

Linus Walleij Sept. 3, 2018, 9:50 p.m.
Some 3WIRE SPI devices require the host to insert a "high
impedance turnaround" essentially a clock pulse after
switching the one line from output to input.

This is needed to support the TPO TPG110 panel to use
the 3WIRE SPI bindings.

Cc: devicetree@vger.kernel.org
Cc: Andrzej Hajda <a.hajda@samsung.com>
Cc: Lorenzo Bianconi <lorenzo.bianconi@redhat.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>

---
 Documentation/devicetree/bindings/spi/spi-bus.txt | 4 ++++
 1 file changed, 4 insertions(+)

-- 
2.17.1

Comments

Geert Uytterhoeven Sept. 4, 2018, 7:39 a.m. | #1
Hi Linus,

On Mon, Sep 3, 2018 at 11:51 PM Linus Walleij <linus.walleij@linaro.org> wrote:
> Some 3WIRE SPI devices require the host to insert a "high

> impedance turnaround" essentially a clock pulse after


high-impedance

(English allows both, but since you use "turn-around")

> switching the one line from output to input.

>

> This is needed to support the TPO TPG110 panel to use

> the 3WIRE SPI bindings.

>

> Cc: devicetree@vger.kernel.org

> Cc: Andrzej Hajda <a.hajda@samsung.com>

> Cc: Lorenzo Bianconi <lorenzo.bianconi@redhat.com>

> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>


Thanks for your patch!

> --- a/Documentation/devicetree/bindings/spi/spi-bus.txt

> +++ b/Documentation/devicetree/bindings/spi/spi-bus.txt

> @@ -70,6 +70,10 @@ All slave nodes can contain the following optional properties:

>  - spi-cs-high     - Empty property indicating device requires chip select

>                     active high.

>  - spi-3wire       - Empty property indicating device requires 3-wire mode.

> +- spi-3wire-high-impedance-turnaround - Empty property indicating that a

> +                   3wire host need to insert a high impedance turn-around


needs
high-impedance

> +                   clock cycle after turning the one output line into an

> +                   input line.

>  - spi-lsb-first   - Empty property indicating device requires LSB first mode.

>  - spi-tx-bus-width - The bus width (number of data wires) that is used for MOSI.

>                     Defaults to 1 if not present.


Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

Patch

diff --git a/Documentation/devicetree/bindings/spi/spi-bus.txt b/Documentation/devicetree/bindings/spi/spi-bus.txt
index 1f6e86f787ef..ee08be2894eb 100644
--- a/Documentation/devicetree/bindings/spi/spi-bus.txt
+++ b/Documentation/devicetree/bindings/spi/spi-bus.txt
@@ -70,6 +70,10 @@  All slave nodes can contain the following optional properties:
 - spi-cs-high     - Empty property indicating device requires chip select
 		    active high.
 - spi-3wire       - Empty property indicating device requires 3-wire mode.
+- spi-3wire-high-impedance-turnaround - Empty property indicating that a
+		    3wire host need to insert a high impedance turn-around
+		    clock cycle after turning the one output line into an
+		    input line.
 - spi-lsb-first   - Empty property indicating device requires LSB first mode.
 - spi-tx-bus-width - The bus width (number of data wires) that is used for MOSI.
 		    Defaults to 1 if not present.