Index: Kconfig =================================================================== --- Kconfig (revision 13674) +++ Kconfig (working copy) @@ -28,6 +28,13 @@ To compile this driver as a module, choose M here: the module will be called psmouse. +config MOUSE_PS2_FORCE_RATE + bool "Force rate of PS/2 mouse" + default n + depends on MOUSE_PS2 + ---help--- + Say Y if you experiment slowness problems with your PS/2 mouse. + config MOUSE_PS2_SYNAPTICS bool "Synaptics TouchPad" default n Index: psmouse-base.c =================================================================== --- psmouse-base.c (revision 14241) +++ psmouse-base.c (working copy) @@ -40,7 +40,13 @@ static int psmouse_noext; int psmouse_resolution; + +#ifdef CONFIG_MOUSE_PS2_FORCE_RATE +unsigned int psmouse_rate = 60; +#else unsigned int psmouse_rate; +#endif + int psmouse_smartscroll = PSMOUSE_LOGITECH_SMARTSCROLL; unsigned int psmouse_resetafter; @@ -471,16 +477,23 @@ * We set the mouse report rate. */ +#ifdef CONFIG_MOUSE_PS2_FORCE_RATE + psmouse_set_rate(psmouse); +#else if (psmouse_rate) psmouse_set_rate(psmouse); +#endif /* * We also set the resolution and scaling. */ +#ifdef CONFIG_MOUSE_PS2_FORCE_RATE + psmouse_set_resolution(psmouse); +#else if (psmouse_resolution) psmouse_set_resolution(psmouse); - +#endif psmouse_command(psmouse, NULL, PSMOUSE_CMD_SETSCALE11); /* @@ -654,17 +667,22 @@ return 1; } +#ifndef CONFIG_MOUSE_PS2_FORCE_RATE static int __init psmouse_rate_setup(char *str) { get_option(&str, &psmouse_rate); return 1; } +#endif __setup("psmouse_noext", psmouse_noext_setup); __setup("psmouse_resolution=", psmouse_resolution_setup); __setup("psmouse_smartscroll=", psmouse_smartscroll_setup); __setup("psmouse_resetafter=", psmouse_resetafter_setup); + +#ifndef CONFIG_MOUSE_PS2_FORCE_RATE __setup("psmouse_rate=", psmouse_rate_setup); +#endif #endif