On 17/09/08 17:00 +0200, Stefan Reinauer wrote:
See patch
-- coresystems GmbH • Brahmsstr. 16 • D-79104 Freiburg i. Br. Tel.: +49 761 7668825 • Fax: +49 761 7664613 Email: info@coresystems.de • http://www.coresystems.de/ Registergericht: Amtsgericht Freiburg • HRB 7656 Geschäftsführer: Stefan Reinauer • Ust-IdNr.: DE245674866
The tinycurses keyboard driver has the same bug as the "normal" libpayload keyboard driver had before. The better way would be to unify those two drivers. But for now, the attached patch fixes the problem.
Signed-off-by: Stefan Reinauer stepan@coresystems.de
Acked-by: Jordan Crouse jordan.crouse@amd.com
Index: libpayload/curses/keyboard.c
--- libpayload/curses/keyboard.c (revision 665) +++ libpayload/curses/keyboard.c (working copy) @@ -140,11 +140,11 @@
/* Scancode macros */
-#define DOWN(_c) (0x80 | (_c)) -#define UP(_c) (_c) +#define DOWN(_c) (_c) +#define UP(_c) (0x80 | (_c))
-#define ISDOWN(_c) ((_c) & 0x80) -#define ISUP(_c) (!ISDOWN((_c))) +#define ISUP(_c) ((_c) & 0x80) +#define ISDOWN(_c) (!ISUP((_c)))
#define SCANCODE(_c) ((_c) & ~0x80)
@@ -293,8 +293,8 @@ return 0; }
- /* Only process keys on an upstroke. */
- if (!ISUP(code))
/* Only process keys on an down stroke. */
if (!ISDOWN(code)) return 0;
sc = SCANCODE(code);
-- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot