From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:56279) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bkICL-00087k-Ii for qemu-devel@nongnu.org; Wed, 14 Sep 2016 17:58:30 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bkICH-0008G4-GU for qemu-devel@nongnu.org; Wed, 14 Sep 2016 17:58:28 -0400 Received: from smtp2-g21.free.fr ([212.27.42.2]:53610) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bkICH-00089G-9f for qemu-devel@nongnu.org; Wed, 14 Sep 2016 17:58:25 -0400 From: =?UTF-8?q?Herv=C3=A9=20Poussineau?= Date: Wed, 14 Sep 2016 23:57:40 +0200 Message-Id: <1473890265-3304-1-git-send-email-hpoussin@reactos.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: [Qemu-devel] [PATCH 0/5] ps2: fix keyboard set 3 and misc improvements List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: "Michael S. Tsirkin" , =?UTF-8?q?Herv=C3=A9=20Poussineau?= Hi, This patchset is a welcome cleanup of scancodes used in PS/2 keyboard emu= lation. - 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 Linu= x, using kernel parameters "i8042.direct=3D1" and "atkbd.set=3D3". Set 1 has been tested with MIPS Magnum emulation. Patch 3 doesn't pass checkpatch.pl, due to translation table using more t= han 80 columns. Patch 4 doesn't pass checkpatch.pl, due to some key mappings not implemen= ted because of missing an equivalent qcode. Herv=C3=A9 Herv=C3=A9 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(-) --=20 2.1.4