On Monday 26 June 2023 10:07:35 Simon Glass wrote: > Hi Pali, > > On Sat, 24 Jun 2023 at 09:44, Pali Rohár <p...@kernel.org> wrote: > > > > On Saturday 17 June 2023 11:49:47 Simon Glass wrote: > > > This series is an attempt to get the keyboard working properly with > > > bootmenu. > > > > > > It fixes the board's tstc() function, which should be in drivers/input > > > > > > It also adjusts stopping of the menu autodelay - it should only stop when > > > a whole escape sequence is received, not when the first escape character > > > is received. That is pretty minor, so we could drop that patch. > > > > > > This series also adds some debugging output. This seems to make things > > > work correctly, suggesting that there is some other problem. > > > > > > I also see this message fairly often: > > > > > > cyclic function rx51_watchdog took too long: 10000us vs 1000us max > > > > > > > > > Simon Glass (6): > > > menu: Re-enable the ANSI codes > > > nokia_rx51: Correct tstc() implementation > > > bootmenu: Cancel delay only when a real key is pressed > > > boobtmenu: Add debugging > > > getch: debugging > > > menu: Add debugging > > > > > > board/nokia/rx51/rx51.c | 3 +++ > > > cmd/bootmenu.c | 19 ++++++++++++------- > > > common/cli_getch.c | 23 ++++++++++++++++++++--- > > > common/menu.c | 7 ++++++- > > > 4 files changed, 41 insertions(+), 11 deletions(-) > > > > > > -- > > > 2.41.0.162.gfafddb0af9-goog > > > > > > > Hello, it looks like that this patch series is not finish yet (contains > > some commented code, etc.). Anyway, I have tested it and it makes it > > even worse. For example PAGE DOWN key in bootmenu on emulated UART > > terminal completely stopped working and do nothing. So this patch series > > still does not fix this problem. > > Indeed, but I was hoping it would help you to find the problem. > > The keyboard driver is currently returning 0 from tst() even when > characters are available (i.e. a call to getc() will return valid > chars but tstc() returns 0.
No, look again, rx51 tstc is returning 1 if there is something in SW buffer. > I attempted to fix this, but perhaps you > can do a proper fix? With that bug in place, it cannot work properly > with the menu. > > See the docs for tstc: > > /** > * tstc() - check if a key is available > * > * @dev: Device to check > * @return 0 if no key is available, 1 if a key is available, -ve on > * error > */ > int (*tstc)(struct udevice *dev); > > Regards, > Simon I think it matches doc; I do not see issue here.