linux-stable/drivers/staging/fbtft
Andy Shevchenko 4bcd9eae73 fbtft: Fix the initialization from property algorithm
When converting to device property API the commit
8b2d3aeeb7 ("fbtft: Make use of device property API")
mistakenly placed the reading of the first value inside the loop,
that jumps over value after initialization sequence or sleep commands.

Move the above mentioned reading outside of the loop to restore
correct behaviour.

Besides that, we are using pre-increment operation which may lead to
out of the boundary access at the end of sequence. Thus, allocate buffer
with an additional element at the end to prevent out of the boundary
access.

Fixes: 8b2d3aeeb7 ("fbtft: Make use of device property API")
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20191121140207.65089-1-andriy.shevchenko@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-12-10 15:55:55 +01:00
..
Kconfig staging: fbtft: Fix Kconfig indentation 2019-11-20 15:20:28 +01:00
Makefile drivers/staging/fbtft/fb_seps525: New driver for SEPS525 (Syncoam) LCD Controllers 2019-10-26 20:47:52 +02:00
README
TODO
fb_agm1264k-fl.c staging: fbtft: fb_agm1264k-fl.c: Replace bit shifting with BIT macro 2019-04-02 19:57:11 +02:00
fb_bd663474.c Staging: fbtft: Fix GPIO handling 2019-07-25 10:09:29 +02:00
fb_hx8340bn.c staging: fbtft: make several arrays static const, makes object smaller 2019-09-12 10:35:52 +01:00
fb_hx8347d.c staging: fbtft: make several arrays static const, makes object smaller 2019-09-12 10:35:52 +01:00
fb_hx8353d.c
fb_hx8357d.c
fb_hx8357d.h
fb_ili9163.c staging: fbtft: make several arrays static const, makes object smaller 2019-09-12 10:35:52 +01:00
fb_ili9320.c staging: fbtft: make several arrays static const, makes object smaller 2019-09-12 10:35:52 +01:00
fb_ili9325.c staging: fbtft: make several arrays static const, makes object smaller 2019-09-12 10:35:52 +01:00
fb_ili9340.c Staging: fbtft: Switch to the gpio descriptor interface 2019-01-18 11:01:02 +01:00
fb_ili9341.c
fb_ili9481.c
fb_ili9486.c
fb_pcd8544.c Staging: fbtft: Fix some typo. pdc8544 --> pcd8544 2019-07-30 09:52:04 +02:00
fb_ra8875.c staging: fbtft: fixed format-string errors. 2019-03-18 07:06:08 +01:00
fb_s6d02a1.c
fb_s6d1121.c staging: fbtft: make several arrays static const, makes object smaller 2019-09-12 10:35:52 +01:00
fb_seps525.c drivers/staging/fbtft/fb_seps525: New driver for SEPS525 (Syncoam) LCD Controllers 2019-10-26 20:47:52 +02:00
fb_sh1106.c Staging: fbtft: Switch to the gpio descriptor interface 2019-01-18 11:01:02 +01:00
fb_ssd1289.c staging: fbtft: make several arrays static const, makes object smaller 2019-09-12 10:35:52 +01:00
fb_ssd1305.c Staging: fbtft: Switch to the gpio descriptor interface 2019-01-18 11:01:02 +01:00
fb_ssd1306.c staging: fbtft: ternary statement to if statement. 2019-03-19 14:35:42 +01:00
fb_ssd1325.c Staging: fbtft: Switch to the gpio descriptor interface 2019-01-18 11:01:02 +01:00
fb_ssd1331.c Staging: fbtft: Fix GPIO handling 2019-07-25 10:09:29 +02:00
fb_ssd1351.c staging: fbtft: fb_ssd1351.c: Replace bit shifting with BIT macro 2019-04-02 19:57:11 +02:00
fb_st7735r.c
fb_st7789v.c
fb_tinylcd.c Staging: fbtft: Alignment should match open parenthesis 2019-02-26 11:40:07 +01:00
fb_tls8204.c Staging: fbtft: Switch to the gpio descriptor interface 2019-01-18 11:01:02 +01:00
fb_uc1611.c staging: fbtft: Do not hardcode SPI CS polarity inversion 2019-12-10 10:56:53 +01:00
fb_uc1701.c Staging: fbtft: Switch to the gpio descriptor interface 2019-01-18 11:01:02 +01:00
fb_upd161704.c Staging: fbtft: Fix GPIO handling 2019-07-25 10:09:29 +02:00
fb_watterott.c staging: fbtft: Do not hardcode SPI CS polarity inversion 2019-12-10 10:56:53 +01:00
fbtft-bus.c Staging: fbtft: Fix GPIO handling 2019-07-25 10:09:29 +02:00
fbtft-core.c fbtft: Fix the initialization from property algorithm 2019-12-10 15:55:55 +01:00
fbtft-io.c staging: fbtft: fixed format-string errors. 2019-03-18 07:06:08 +01:00
fbtft-sysfs.c
fbtft.h fbtft: Drop OF dependency 2019-11-20 14:35:58 +01:00
internal.h

README

  FBTFT
=========

Linux Framebuffer drivers for small TFT LCD display modules.
The module 'fbtft' makes writing drivers for some of these displays very easy.

Development is done on a Raspberry Pi running the Raspbian "wheezy" distribution.

INSTALLATION
  Download kernel sources

  From Linux 3.15
    cd drivers/video/fbdev/fbtft
    git clone https://github.com/notro/fbtft.git

    Add to drivers/video/fbdev/Kconfig:   source "drivers/video/fbdev/fbtft/Kconfig"
    Add to drivers/video/fbdev/Makefile:  obj-y += fbtft/

  Before Linux 3.15
    cd drivers/video
    git clone https://github.com/notro/fbtft.git

    Add to drivers/video/Kconfig:   source "drivers/video/fbtft/Kconfig"
    Add to drivers/video/Makefile:  obj-y += fbtft/

  Enable driver(s) in menuconfig and build the kernel


See wiki for more information: https://github.com/notro/fbtft/wiki


Source: https://github.com/notro/fbtft/