lkml.org 
[lkml]   [2000]   [Mar]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRE-mapping sysrq on extra keys
I don't exactly who is the maintainer for keyboard drivers, 
I hope he will receive this mail..

The joined patch (on 2.2.14) is used to be able to map sysreq
on an unused (and unknown) key on a Compaq Armada 1700

1-sysrq-)
You define a command with 'm' key which depend on the keyboard type.
I suggest a patch in pc_keybd.c, with one new CONFIG parameter.
So config scripts must to be updated!
And maybe other keyboards are to be defined...
Other solutions for this problem are:
-Use only for the sysrq commands key common for most keyboards
-say in sysrq documentation something as "the keyname refers to
the key position in the standard US keyboard" (sysrq is a debug feature)..

2-extra-keys)
On a laptop Sysreq needs 3 keys: Fn,Alt,Impr
with the command key, you need 4 fingers!
and on Compaq Fn-T has a special meaning.
so I want to use one among the 4 extra keys.
So the second patch.
Maybe it would be better with a new CONFIG parameter!

3-)
I have updated my keyboard.h with '#define SYSRQ_KEY 124'
and I have a smart access to sysrq features.--- /src/linux/drivers/char/pc_keyb.c Mon Aug 9 21:04:39 1999
+++ pc_keyb.c Wed Mar 22 22:24:00 2000
@@ -44,6 +44,16 @@
/* Simple translation table for the SysRq keys */

#ifdef CONFIG_MAGIC_SYSRQ
+#ifdef CONFIG_KBD_FR
+unsigned char pckbd_sysrq_xlate[128] =
+ "\000\0331234567890)=\177\t" /* 0x00 - 0x0f */
+ "azertyuiop[]\r\000qs" /* 0x10 - 0x1f */
+ "dfghjklm'`\000\\wxcv" /* 0x20 - 0x2f */
+ "bn,;/!\000*\000 \000\201\202\203\204\205" /* 0x30 - 0x3f */
+ "\206\207\210\211\212\000\000789-456+1" /* 0x40 - 0x4f */
+ "230\177\000\000\213\214\000\000\000\000\000\000\000\000\000\000" /* 0x50 - 0x5f */
+ "\r\000/"; /* 0x60 - 0x6f */
+#else
unsigned char pckbd_sysrq_xlate[128] =
"\000\0331234567890-=\177\t" /* 0x00 - 0x0f */
"qwertyuiop[]\r\000as" /* 0x10 - 0x1f */
@@ -53,6 +63,7 @@
"230\177\000\000\213\214\000\000\000\000\000\000\000\000\000\000" /* 0x50 - 0x5f */
"\r\000/"; /* 0x60 - 0x6f */
#endif
+#endif

static void kbd_write_command_w(int data);
static void kbd_write_output_w(int data);
@@ -181,10 +192,21 @@
#define RGN3 126
#define RGN4 127

+/* christian.gennerat@vz.cit.alcatel.fr
+ * The four keys are located over the Esc-F1..F12,
+ * and are labelled *1-*4.
+ * Laptop Compaq Armada
+ * Scancodes: 65, 67, 69, 6b.
+ */
+#define CPQ_X1 124
+#define CPQ_X2 125
+#define CPQ_X3 126
+#define CPQ_X4 127
+
static unsigned char high_keys[128 - SC_LIM] = {
RGN1, RGN2, RGN3, RGN4, 0, 0, 0, /* 0x59-0x5f */
- 0, 0, 0, 0, 0, 0, 0, 0, /* 0x60-0x67 */
- 0, 0, 0, 0, 0, FOCUS_PF11, 0, FOCUS_PF12, /* 0x68-0x6f */
+ 0, 0, 0, 0, 0, CPQ_X1, 0, CPQ_X2, /* 0x60-0x67 */
+ 0, CPQ_X3, 0, CPQ_X4, 0, FOCUS_PF11, 0, FOCUS_PF12,/* 0x68-0x6f */
0, 0, 0, FOCUS_PF2, FOCUS_PF9, 0, 0, FOCUS_PF3, /* 0x70-0x77 */
FOCUS_PF4, FOCUS_PF5, FOCUS_PF6, FOCUS_PF7, /* 0x78-0x7b */
FOCUS_PF8, JAP_86, FOCUS_PF10, 0 /* 0x7c-0x7f */
\
 
 \ /
  Last update: 2005-03-22 13:57    [W:0.030 / U:0.252 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site