qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 0/5] ps2: fix keyboard set 3 and misc improvements


From: Hervé Poussineau
Subject: [Qemu-devel] [PATCH 0/5] ps2: fix keyboard set 3 and misc improvements
Date: Wed, 14 Sep 2016 23:57:40 +0200

Hi,

This patchset is a welcome cleanup of scancodes used in PS/2 keyboard emulation.

- Patches 1 and 2 are fixes to let Linux use set 3 if instructed so.
- Patch 3 makes scancodes untranslated by default and translates them if 
required,
  instead of receiving translated scancodes by default and untranslating them if
  required.
- Patch 4 switches to use qcodes instead of scancodes.
- Patch 5 is a small cleanup, to prevent sending invalid keycodes to the OS.

See each patch commit for details about what changed.

Missing part are handling of following commands in set 3:
- 0xf7: set all keys to typematic/autorepeat only
- 0xf8: set all keys to make/release
- 0xf9: set all keys to make only
- 0xfa: set all keys to typematic/autorepeat make/release
- 0xfb: set specific key to typematic/autorepeat only
- 0xfc: set specific key to make/release
- 0xfd: set specific key to make only

Translated set 2 and untranslated sets 2 and 3 have been tested with Linux,
using kernel parameters "i8042.direct=1" and "atkbd.set=3".
Set 1 has been tested with MIPS Magnum emulation.

Patch 3 doesn't pass checkpatch.pl, due to translation table using more than 80 
columns.
Patch 4 doesn't pass checkpatch.pl, due to some key mappings not implemented 
because of
missing an equivalent qcode.

Hervé

Hervé Poussineau (5):
  ps2: reject unknown commands, instead of blindly accepting them
  ps2: correctly handle 'get/set scancode' command
  ps2: allow keycode translation for all scancode sets
  ps2: use QEMU qcodes instead of scancodes
  ps2: do not generate invalid key codes for unknown keys

 hw/input/ps2.c | 595 +++++++++++++++++++++++++++++++++++++++++++++++++++------
 1 file changed, 541 insertions(+), 54 deletions(-)

-- 
2.1.4




reply via email to

[Prev in Thread] Current Thread [Next in Thread]