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 | 40 ++++++++---------------------------- 2 files changed, 13 insertions(+), 34 deletions(-) diff -puN Documentation/kernel-parameters.txt~input-04-atkbd-option-parsing Documentation/kernel-parameters.txt --- 25/Documentation/kernel-parameters.txt~input-04-atkbd-option-parsing 2004-01-03 01:13:46.000000000 -0800 +++ 25-akpm/Documentation/kernel-parameters.txt 2004-01-03 01:13:46.000000000 -0800 @@ -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 -puN drivers/input/keyboard/atkbd.c~input-04-atkbd-option-parsing drivers/input/keyboard/atkbd.c --- 25/drivers/input/keyboard/atkbd.c~input-04-atkbd-option-parsing 2004-01-03 01:13:46.000000000 -0800 +++ 25-akpm/drivers/input/keyboard/atkbd.c 2004-01-03 01:13:46.000000000 -0800 @@ -19,6 +19,7 @@ #include #include +#include #include #include #include @@ -29,18 +30,23 @@ MODULE_AUTHOR("Vojtech Pavlik "); MODULE_DESCRIPTION("AT and PS/2 keyboard driver"); -MODULE_PARM(atkbd_set, "1i"); -MODULE_PARM(atkbd_reset, "1i"); -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 static int atkbd_reset = 1; #endif +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 @@ -760,34 +766,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); _