kbc: Handle setting typematic rate/delay

Per [1], use a default delay of 500ms and a rate of 10.9 CPS. When the
Linux kernel starts, this will be updated by atkbd to the fastest
settings possible [2]: 250ms delay and 30 CPS.

Modifying these values with kbdrate to test settings will cause two
spurious ACKs in the kernel. This behavior is also present in the
proprietary firmware.

[1]: https://web.archive.org/web/20180217074705/http://computer-engineering.org/ps2keyboard/
[2]: c5f8689118/drivers/input/keyboard/atkbd.c (L863-L868)
This commit is contained in:
Tim Crawford
2020-02-25 14:20:13 -07:00
parent a8f921fcab
commit a176da0ebe
9 changed files with 198 additions and 9 deletions

View File

@@ -7,6 +7,11 @@
extern bool kbscan_enabled;
// ms between repeating key
extern uint16_t kbscan_repeat_period;
// ms between pressing key and repeating
extern uint16_t kbscan_repeat_delay;
void kbscan_init(void);
void kbscan_event(void);