Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 4 May 2020 10:59:17 +0000 (UTC)
From:      Vladimir Kondratyev <wulf@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r360624 - head/sys/dev/evdev
Message-ID:  <202005041059.044AxHOp096069@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: wulf
Date: Mon May  4 10:59:17 2020
New Revision: 360624
URL: https://svnweb.freebsd.org/changeset/base/360624

Log:
  [evdev] Add AT translated set1 scancodes for F-unlocked F1-12 keys.
  
  "F lock" is a switch between two sets of scancodes for function keys F1-F12
  found on some Logitech and Microsoft PS/2 keyboards [1]. When "F lock" is
  pressed, then F1-F12 act as function keys and produce usual keyscans for
  these keys. When "F lock" is depressed, F1-F12 produced the same keyscans
  but prefixed with E0.
  Some laptops use [2] E0-prefixed F1-F12 scancodes for non-standard keys.
  
  [1] https://www.win.tue.nl/~aeb/linux/kbd/scancodes-6.html
  [2] https://reviews.freebsd.org/D21565
  
  MFC after:	2 weeks

Modified:
  head/sys/dev/evdev/evdev_utils.c

Modified: head/sys/dev/evdev/evdev_utils.c
==============================================================================
--- head/sys/dev/evdev/evdev_utils.c	Mon May  4 10:10:07 2020	(r360623)
+++ head/sys/dev/evdev/evdev_utils.c	Mon May  4 10:59:17 2020	(r360624)
@@ -166,16 +166,16 @@ static uint16_t evdev_at_set1_scancodes[] = {
 	NONE,		NONE,		KEY_VOLUMEDOWN,	NONE,
 	KEY_VOLUMEUP,	NONE,		KEY_HOMEPAGE,	NONE,
 	NONE,		KEY_KPSLASH,	NONE,		KEY_SYSRQ,
-	KEY_RIGHTALT,	NONE,		NONE,		NONE,
-	NONE,		NONE,		NONE,		NONE,
+	KEY_RIGHTALT,	NONE,		NONE,		KEY_F13,
+	KEY_F14,	KEY_F15,	KEY_F16,	KEY_F17,
 	/* 0x40 - 0x5f. 0xE0 prefixed */
-	NONE,		NONE,		NONE,		NONE,
-	NONE,		NONE,		KEY_PAUSE,	KEY_HOME,
+	KEY_F18,	KEY_F19,	KEY_F20,	KEY_F21,
+	KEY_F22,	NONE,		KEY_PAUSE,	KEY_HOME,
 	KEY_UP,		KEY_PAGEUP,	NONE,		KEY_LEFT,
 	NONE,		KEY_RIGHT,	NONE,		KEY_END,
 	KEY_DOWN,	KEY_PAGEDOWN,	KEY_INSERT,	KEY_DELETE,
-	NONE,		NONE,		NONE,		NONE,
-	NONE,		NONE,		NONE,		KEY_LEFTMETA,
+	NONE,		NONE,		NONE,		KEY_F23,
+	KEY_F24,	NONE,		NONE,		KEY_LEFTMETA,
 	KEY_RIGHTMETA,	KEY_MENU,	KEY_POWER,	KEY_SLEEP,
 	/* 0x60 - 0x7f. 0xE0 prefixed */
 	NONE,		NONE,		NONE,		KEY_WAKEUP,



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202005041059.044AxHOp096069>