[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20230706154937.1380bdcf9d84e1cff78911fa@hugovil.com>
Date: Thu, 6 Jul 2023 15:49:37 -0400
From: Hugo Villeneuve <hugo@...ovil.com>
To: Miguel Ojeda <miguel.ojeda.sandonis@...il.com>
Cc: Miguel Ojeda <ojeda@...nel.org>,
Hugo Villeneuve <hvilleneuve@...onoff.com>,
linux-kernel@...r.kernel.org, Lars Poeschel <poeschel@...onage.de>,
geert@...ux-m68k.org
Subject: Re: [PATCH] auxdisplay: hd44780: move cursor home after clear
display command
On Thu, 6 Jul 2023 21:33:05 +0200
Miguel Ojeda <miguel.ojeda.sandonis@...il.com> wrote:
> On Thu, Jul 6, 2023 at 8:51 PM Hugo Villeneuve <hugo@...ovil.com> wrote:
> >
> > The "clear display" 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 clear display
> > command.
> >
> > Extract of CLEAR_DISPLAY 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 clear display command to support
> > non-standard LCDs.
> >
> > Signed-off-by: Hugo Villeneuve <hvilleneuve@...onoff.com>
>
> Thanks! Sounds good to me, as long the extra command does not
> introduce some issue with the actual HD44780 -- can we double-check
> the HD44780 still works as expected?
>
> Cc'ing Lars and Geert since they may be able to give it a quick test.
Hi Miguel,
I do not have a standard Hitachi controller to test it on, so lets wait
for feedback from Lars and Geert or others.
> > + /*
> > + * Some LCDs (ex: NewHaven) do not reset the DDRAM address when
> > + * executing the CLEAR_DISPLAY command. Explicitely move cursor
> > + * to home position to account for these non-standard LCDs:
> > + */
> > + return hd44780_common_home(lcd);
>
> Few nits:
>
> - Explicitely -> Explicitly.
> - Isn't the command `DISPLAY_CLEAR` instead of `CLEAR_DISPLAY`? (at
> least the identifier above is `LCD_CMD_DISPLAY_CLEAR`).
Yes, I have also modified the commit log message to be consistent with
the code.
> - `:` -> `.`.
> What about something like:
>
> The Hitachi HD44780 controller (and compatible ones) reset the
> DDRAM address when executing the `DISPLAY_CLEAR` command, thus the
> following call is not required. However, other controllers do not
> (e.g. NewHaven NHD-0220DZW-AG5), thus move the cursor to home
> unconditionally to support both.
Ok, changed comments to that.
Thank you,
Hugo.
Powered by blists - more mailing lists