From 9b7bd6732143ae2bcf028ba0a5db3f77e6e10c31 Mon Sep 17 00:00:00 2001 From: Andrew Morton Date: Sun, 18 Jan 2004 18:08:24 -0800 Subject: [PATCH] [PATCH] input: atkbd option parsing From: Dmitry Torokhov Convert atkbd to the new style of option parsing. If compiled as a module new option names are: set, softrepeat, reset. If built into the kernel options must be prepended with "atkbd." prefix, like "atkbd.softrepeat" --- Documentation/kernel-parameters.txt | 7 +++--- drivers/input/keyboard/atkbd.c | 38 ++++++++--------------------- 2 files changed, 14 insertions(+), 31 deletions(-) diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt index 75beeeb492a14..87b2beab4b593 100644 --- a/Documentation/kernel-parameters.txt +++ b/Documentation/kernel-parameters.txt @@ -153,10 +153,11 @@ running once the system is up. atascsi= [HW,SCSI] Atari SCSI - atkbd_set= [HW] Select keyboard code set + atkbd.set= [HW] Select keyboard code set Format: - - atkbd_reset [HW] Reset keyboard during initialization + atkbd.softrepeat= + [HW] Use software keyboard repeat + atkbd.reset= [HW] Reset keyboard during initialization autotest [IA64] diff --git a/drivers/input/keyboard/atkbd.c b/drivers/input/keyboard/atkbd.c index 030d75c4ed176..a53159156d792 100644 --- a/drivers/input/keyboard/atkbd.c +++ b/drivers/input/keyboard/atkbd.c @@ -19,6 +19,7 @@ #include #include +#include #include #include #include @@ -35,6 +36,8 @@ MODULE_PARM(atkbd_softrepeat, "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)"); #if defined(__i386__) || defined (__x86_64__) static int atkbd_reset; #else @@ -42,6 +45,13 @@ static int atkbd_reset = 1; #endif static int atkbd_softrepeat; +module_param_named(reset, atkbd_reset, bool, 0); +MODULE_PARM_DESC(reset, "Reset keyboard during initialization"); + +static int atkbd_softrepeat; +module_param_named(softrepeat, atkbd_softrepeat, bool, 0); +MODULE_PARM_DESC(softrepeat, "Use software keyboard repeat"); + /* * Scancode to keycode tables. These are just the default setting, and * are loadable via an userland utility. @@ -760,34 +770,6 @@ static struct serio_dev atkbd_dev = { .cleanup = atkbd_cleanup, }; -#ifndef MODULE -static int __init atkbd_setup_set(char *str) -{ - int ints[4]; - str = get_options(str, ARRAY_SIZE(ints), ints); - if (ints[0] > 0) atkbd_set = ints[1]; - return 1; -} -static int __init atkbd_setup_reset(char *str) -{ - int ints[4]; - str = get_options(str, ARRAY_SIZE(ints), ints); - if (ints[0] > 0) atkbd_reset = ints[1]; - return 1; -} -static int __init atkbd_setup_softrepeat(char *str) -{ - int ints[4]; - str = get_options(str, ARRAY_SIZE(ints), ints); - if (ints[0] > 0) atkbd_softrepeat = ints[1]; - return 1; -} - -__setup("atkbd_set=", atkbd_setup_set); -__setup("atkbd_reset", atkbd_setup_reset); -__setup("atkbd_softrepeat=", atkbd_setup_softrepeat); -#endif - int __init atkbd_init(void) { serio_register_device(&atkbd_dev); -- 2.53.0