Input: elantech - allow forcing Elantech protocol

Apparently hardware vendors now ship elantech touchpads with different version
magic. This options allows for them to be tested easier with the current driver
in order to add their magic to the whitelist later.

Signed-off-by: Florian Ragwitz <rafl@debian.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
This commit is contained in:
Florian Ragwitz 2010-04-27 00:47:04 -07:00 committed by Dmitry Torokhov
parent 225c61aad3
commit f81bc788ff

View File

@ -24,6 +24,10 @@
printk(KERN_DEBUG format, ##arg); \ printk(KERN_DEBUG format, ##arg); \
} while (0) } while (0)
static bool force_elantech;
module_param_named(force_elantech, force_elantech, bool, 0644);
MODULE_PARM_DESC(force_elantech, "Force the Elantech PS/2 protocol extension to be used, 1 = enabled, 0 = disabled (default).");
/* /*
* Send a Synaptics style sliced query command * Send a Synaptics style sliced query command
*/ */
@ -595,8 +599,12 @@ int elantech_detect(struct psmouse *psmouse, bool set_properties)
param[0], param[1], param[2]); param[0], param[1], param[2]);
if (param[0] == 0 || param[1] != 0) { if (param[0] == 0 || param[1] != 0) {
pr_debug("elantech.c: Probably not a real Elantech touchpad. Aborting.\n"); if (!force_elantech) {
return -1; pr_debug("elantech.c: Probably not a real Elantech touchpad. Aborting.\n");
return -1;
}
pr_debug("elantech.c: Probably not a real Elantech touchpad. Enabling anyway due to force_elantech.\n");
} }
if (set_properties) { if (set_properties) {