During review of the TPO TPG110 driver[1] it was noted that the protocol used is a variant of SPI 3WIRE[2] and the panel should be a SPI child device.[3] While trying to repurpose the driver to use the brand new 3WIRE support in SPI, I ran into a few rough edges (patches 1 & 2). If these are OK with Lorenzo they can probably be applied as-is. Then I had to add support for the special "high impedance turn-around cycle" to the SPI core and the GPIO bit-banging driver to be able to support the panel. It is now working fine and I have patches to use the panel as an SPI child device, but these patches are needed to get it going. References: [1]: https://lists.freedesktop.org/archives/dri-devel/2018-July/181848.html [2]: http://aitendo3.sakura.ne.jp/aitendo_data/product_img/lcd/tft/T43P00/TPG110%20Customer%20Spec_0.6.pdf [3]: https://lists.freedesktop.org/archives/dri-devel/2018-July/181993.html Linus Walleij (4): spi: core: Allow both TX and RX transfers in 3WIRE spi: gpio: Fix reading for 3WIRE spi: Add a DT binding for high impedance turnaround spi: gpio: Support 3WIRE high impedance turn-around .../devicetree/bindings/spi/spi-bus.txt | 4 ++ drivers/spi/spi-gpio.c | 41 +++++++++++++++---- drivers/spi/spi.c | 17 ++++++-- include/linux/spi/spi.h | 1 + 4 files changed, 52 insertions(+), 11 deletions(-) -- 2.17.1