]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
Input: elantech - allow forcing Elantech protocol
authorFlorian Ragwitz <rafl@debian.org>
Tue, 27 Apr 2010 07:47:04 +0000 (00:47 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 9 May 2011 22:55:06 +0000 (15:55 -0700)
commit f81bc788ff91d4efd4baf88b2c29713838caa8e5 upstream.

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>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/input/mouse/elantech.c

index 28eba48e68fda4ac29cd1f913238147496d73c23..095bd388c6dd954169340f1875ee3ee2562e93fd 100644 (file)
                        printk(KERN_DEBUG format, ##arg);       \
        } 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
  */
@@ -595,8 +599,12 @@ int elantech_detect(struct psmouse *psmouse, bool set_properties)
                 param[0], param[1], param[2]);
 
        if (param[0] == 0 || param[1] != 0) {
-               pr_debug("elantech.c: Probably not a real Elantech touchpad. Aborting.\n");
-               return -1;
+               if (!force_elantech) {
+                       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) {