linux-stable/drivers/auxdisplay
Hugo Villeneuve a491c7be35 auxdisplay: hd44780: move cursor home after clear display command
commit 35b464e32c upstream.

The DISPLAY_CLEAR command on the NewHaven NHD-0220DZW-AG5 display
does NOT change the DDRAM address to 00h (home position) like the
standard Hitachi HD44780 controller. As a consequence, the starting
position of the initial string LCD_INIT_TEXT is not guaranteed to be
at 0,0 depending on where the cursor was before the DISPLAY_CLEAR
command.

Extract of DISPLAY_CLEAR command from datasheets of:

    Hitachi HD44780:
        ... It then sets DDRAM address 0 into the address counter...

    NewHaven NHD-0220DZW-AG5 datasheet:
	... This instruction does not change the DDRAM Address

Move the cursor home after sending DISPLAY_CLEAR command to support
non-standard LCDs.

Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com>
Reviewed-by: Geert Uytterhoeven <geert@linux-m68k.org>
Tested-by: David Reaver <me@davidreaver.com>
Link: https://lore.kernel.org/r/20230722180925.1408885-1-hugo@hugovil.com
Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-12-08 08:51:16 +01:00
..
Kconfig auxdisplay: ht16k33: Make use of device properties 2021-10-21 23:36:30 +02:00
Makefile auxdisplay: Extract character line display core support 2021-10-21 23:36:28 +02:00
arm-charlcd.c auxdisplay: Replace HTTP links with HTTPS ones 2020-08-08 16:10:03 +02:00
cfag12864b.c auxdisplay: Replace symbolic permissions with octal permissions 2021-07-16 07:42:35 +02:00
cfag12864bfb.c auxdisplay: cfag12864bfb: code indent should use tabs where possible 2021-10-22 00:13:16 +02:00
charlcd.c auxdisplay: charlcd: checking for pointer reference before dereferencing 2021-11-24 11:46:52 +01:00
charlcd.h auxdisplay: Change gotoxy calling interface 2020-11-04 11:04:04 +01:00
hd44780.c auxdisplay: hd44780: Fix potential memory leak in hd44780_remove() 2023-03-11 13:55:16 +01:00
hd44780_common.c auxdisplay: hd44780: move cursor home after clear display command 2023-12-08 08:51:16 +01:00
hd44780_common.h auxdisplay: Change gotoxy calling interface 2020-11-04 11:04:04 +01:00
ht16k33.c i2c: Make remove callback return void 2022-08-16 12:46:26 +02:00
img-ascii-lcd.c auxdisplay: Extract character line display core support 2021-10-21 23:36:28 +02:00
ks0108.c auxdisplay: ks0108: remove superfluous header files 2021-10-22 00:04:43 +02:00
lcd2s.c i2c: Make remove callback return void 2022-08-16 12:46:26 +02:00
line-display.c auxdisplay: linedisp: Add support for changing scroll rate 2021-10-21 23:36:29 +02:00
line-display.h auxdisplay: Extract character line display core support 2021-10-21 23:36:28 +02:00
panel.c treewide: remove editor modelines and cruft 2021-05-07 00:26:34 -07:00