Re: [PATCH v3] backlight: tdo24m: fix the spi cs between transfers

From: Lee Jones
Date: Tue Jan 02 2018 - 10:38:50 EST


On Thu, 28 Dec 2017, Robert Jarzmik wrote:

> Currently the LCD display (TD035S) on the cm-x300 platform is broken and
> remains blank.
>
> The TD0245S specification requires that the chipselect is toggled
> between commands sent to the panel. This was also the purpose of the
> former patch of commit f64dcac0b124 ("backlight: tdo24m: ensure chip
> select changes between transfers").
>
> Unfortunately, the "cs_change" field of a SPI transfer is
> misleading. Its true meaning is that for a SPI message holding multiple
> transfers, the chip select is toggled between each transfer, but for the
> last transfer it remains asserted.
>
> In this driver, all the SPI messages contain exactly one transfer, which
> means that each transfer is the last of its message, and as a
> consequence the chip select is never toggled.
>
> Actually, there was a second bug hidding the first one, hence the
> problem was not seen until v4.6. This problem was fixed by commit
> a52db659c79c ("spi: pxa2xx: Fix cs_change management") for PXA based
> boards.
>
> This fix makes the TD035S work again on a cm-x300 board. The same
> applies to other PXA boards, ie. corgi and tosa.
>
> Fixes: a52db659c79c ("spi: pxa2xx: Fix cs_change management")

Since this fixes an old kernel, I'm not going to apply it for -fixes.

> Reported-by: Andrea Adami <andrea.adami@xxxxxxxxx>
> Signed-off-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
> Acked-by: Daniel Thompson <daniel.thompson@xxxxxxxxxx>
> ---
> Since v1: added 2 other panels
> Since v2: added Daniel's ack
> ---
> drivers/video/backlight/corgi_lcd.c | 2 +-
> drivers/video/backlight/tdo24m.c | 2 +-
> drivers/video/backlight/tosa_lcd.c | 2 +-
> 3 files changed, 3 insertions(+), 3 deletions(-)

Applied to -next, thanks.

--
Lee Jones
Linaro Services Technical Lead
Linaro.org â Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog