From: Vojtech Pavlik <vojtech@suse.cz>
To: torvalds@osdl.org, vojtech@ucw.cz, linux-kernel@vger.kernel.org
Subject: [PATCH 10/44] Make enabling IBM RapidAccess special features its own option
Date: Tue, 16 Mar 2004 15:19:36 +0100 [thread overview]
Message-ID: <10794467762870@twilight.ucw.cz> (raw)
In-Reply-To: <10794467761141@twilight.ucw.cz>
You can pull this changeset from:
bk://kernel.bkbits.net/vojtech/input
===================================================================
ChangeSet@1.1474.188.10, 2004-01-26 13:57:19+01:00, vojtech@suse.cz
input: Create an extra option for enabling IBM RapidAccess keyboard
special features (atkbd.extra), instead of abusing the
atkbd.set option for this.
Documentation/kernel-parameters.txt | 13 ++++++++++---
drivers/input/keyboard/atkbd.c | 35 ++++++++++++++++++++---------------
2 files changed, 30 insertions(+), 18 deletions(-)
===================================================================
diff -Nru a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
--- a/Documentation/kernel-parameters.txt Tue Mar 16 13:19:43 2004
+++ b/Documentation/kernel-parameters.txt Tue Mar 16 13:19:43 2004
@@ -157,11 +157,18 @@
atascsi= [HW,SCSI] Atari SCSI
- atkbd.set= [HW] Select keyboard code set
- Format: <int>
+ atkbd.extra= [HW] Enable extra LEDs and keys on IBM RapidAccess, EzKey
+ and similar keyboards
+
+ atkbd.reset= [HW] Reset keyboard during initialization
+
+ atkbd.set= [HW] Select keyboard code set
+ Format: <int> (2 = AT (default) 3 = PS/2)
+
+ atkbd.scroll= [HW] Enable scroll wheel on MS Office and similar keyboards
+
atkbd.softrepeat=
[HW] Use software keyboard repeat
- atkbd.reset= [HW] Reset keyboard during initialization
autotest [IA64]
diff -Nru a/drivers/input/keyboard/atkbd.c b/drivers/input/keyboard/atkbd.c
--- a/drivers/input/keyboard/atkbd.c Tue Mar 16 13:19:43 2004
+++ b/drivers/input/keyboard/atkbd.c Tue Mar 16 13:19:43 2004
@@ -33,12 +33,11 @@
MODULE_PARM(atkbd_set, "1i");
MODULE_PARM(atkbd_reset, "1i");
MODULE_PARM(atkbd_softrepeat, "1i");
-MODULE_PARM(atkbd_scroll, "1i");
MODULE_LICENSE("GPL");
static int atkbd_set = 2;
module_param_named(set, atkbd_set, int, 0);
-MODULE_PARM_DESC(set, "Select keyboard code set (2 = default, 3, 4)");
+MODULE_PARM_DESC(set, "Select keyboard code set (2 = default, 3 = PS/2 native)");
#if defined(__i386__) || defined(__x86_64__) || defined(__hppa__)
static int atkbd_reset;
@@ -53,8 +52,12 @@
MODULE_PARM_DESC(softrepeat, "Use software keyboard repeat");
static int atkbd_scroll;
-module_parm_named(scroll, atkbd_scroll, bool, 0);
-MODULE_PARM_DESC_(scroll, "Enable scroll-wheel on office keyboards");
+module_param_named(scroll, atkbd_scroll, bool, 0);
+MODULE_PARM_DESC(scroll, "Enable scroll-wheel on MS Office and similar keyboards");
+
+static int atkbd_extra;
+module_param_named(extra, atkbd_extra, bool, 0);
+MODULE_PARM_DESC(extra, "Enable extra LEDs and keys on IBM RapidAcces, EzKey and similar keyboards");
/*
* Scancode to keycode tables. These are just the default setting, and
@@ -175,6 +178,7 @@
unsigned char cmdbuf[4];
unsigned char cmdcnt;
unsigned char set;
+ unsigned char extra;
unsigned char release;
int lastkey;
volatile signed char ack;
@@ -463,7 +467,7 @@
| (test_bit(LED_CAPSL, dev->led) ? 4 : 0);
atkbd_command(atkbd, param, ATKBD_CMD_SETLEDS);
- if (atkbd->set == 4) {
+ if (atkbd->extra) {
param[0] = 0;
param[1] = (test_bit(LED_COMPOSE, dev->led) ? 0x01 : 0)
| (test_bit(LED_SLEEP, dev->led) ? 0x02 : 0)
@@ -572,21 +576,22 @@
return 3;
}
- if (atkbd_set != 2)
- if (!atkbd_command(atkbd, param, ATKBD_CMD_OK_GETID)) {
- atkbd->id = param[0] << 8 | param[1];
+ if (atkbd_extra) {
+ param[0] = 0x71;
+ if (!atkbd_command(atkbd, param, ATKBD_CMD_EX_ENABLE)) {
+ atkbd->extra = 1;
return 2;
}
-
- if (atkbd_set == 4) {
- param[0] = 0x71;
- if (!atkbd_command(atkbd, param, ATKBD_CMD_EX_ENABLE))
- return 4;
}
if (atkbd_set != 3)
return 2;
+ if (!atkbd_command(atkbd, param, ATKBD_CMD_OK_GETID)) {
+ atkbd->id = param[0] << 8 | param[1];
+ return 2;
+ }
+
param[0] = 3;
if (atkbd_command(atkbd, param, ATKBD_CMD_SSCANSET))
return 2;
@@ -739,9 +744,9 @@
atkbd->id = 0xab00;
}
- if (atkbd->set == 4) {
+ if (atkbd->extra) {
atkbd->dev.ledbit[0] |= BIT(LED_COMPOSE) | BIT(LED_SUSPEND) | BIT(LED_SLEEP) | BIT(LED_MUTE) | BIT(LED_MISC);
- sprintf(atkbd->name, "AT Set 2 Extended keyboard");
+ sprintf(atkbd->name, "AT Set 2 Extra keyboard");
} else
sprintf(atkbd->name, "AT %s Set %d keyboard",
atkbd->translated ? "Translated" : "Raw", atkbd->set);
next prev parent reply other threads:[~2004-03-16 15:26 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-03-16 14:17 [44 patches] Input update Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 1/44] Fix hid-core for devices with #usages < #values Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 2/44] Add ioctl to hiddev to set multiple usages at once Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 3/44] HID quirk (badpad) for Saitek Rumblepad Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 4/44] HID quirk for another A4Tech dual-wheel mouse Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 5/44] .ko module names for acm.txt Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 6/44] Fix sunkbd.c to work with serport Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 7/44] request_region() instead of check_region() in ns558.c Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 8/44] Don't reinitialize scancode map after sleep in atkbd.c Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 9/44] Support for scroll wheel on Office keyboards Vojtech Pavlik
2004-03-16 14:19 ` Vojtech Pavlik [this message]
2004-03-16 14:19 ` [PATCH 11/44] Convert HP/PARISC Lasi/Dino PS/2 driver to a serio driver Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 12/44] Credit to Panagiotis Issaris for Graphire 3 support Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 13/44] Remove the obsolete busmouse.c helper driver Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 14/44] Fix a warning in i8042.c Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 15/44] Add serio entries for LK keyboards Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 16/44] Whitespace in atkbd.c Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 17/44] Automatically decide how strictly to check the protocol in synaptics Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 18/44] Whitespace fixes in psmouse.c Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 19/44] Don't fail when mouse reset doesn't work Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 20/44] Add module_parm_array() helper Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 21/44] Convert joystick drivers to new module parameters Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 22/44] Create __obsolete_setup() macro to warn users about obsolete kernel params Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 23/44] Use __obsolete_setup() in input drivers to warn " Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 24/44] Workaround i8042 chips with broken MUX mode Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 25/44] Only reprobe on PS/2 HW when the HW sends 0xaa Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 26/44] Always assume i8042 is in XLATE mode Vojtech Pavlik
2004-03-16 14:19 ` [PATCH 27/44] Add DEC LK201/LK401 keyboard support Vojtech Pavlik
2004-03-17 19:08 ` Maciej W. Rozycki
2004-03-16 18:46 ` [PATCH 9/44] Support for scroll wheel on Office keyboards Aubin LaBrosse
2004-03-19 14:00 ` Vojtech Pavlik
2004-03-27 19:55 ` Andries Brouwer
2004-03-30 13:09 ` Pavel Machek
2004-03-30 17:05 ` Paul Wagland
2004-03-30 18:55 ` Vojtech Pavlik
2004-03-30 18:53 ` Vojtech Pavlik
2004-05-29 14:36 ` Vojtech Pavlik
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=10794467762870@twilight.ucw.cz \
--to=vojtech@suse.cz \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@osdl.org \
--cc=vojtech@ucw.cz \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox