[PATCH] Input: i8042 - move Dritek quirk so it also gets applied on resume

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This patch moves the quirk from from i8042_probe() to i8042_enable_kbd_port()
which is also called during resume.

I think it is safe to ignore failure to enable dritek. I would also prefer not 
to fail complete keyboard initialisation if the extension fails.

---
The Dritek quirk is also required on resume from S2RAM, doing it only at probe
time is not sufficient.


Signed-off-by: Bruno Prémont <bonbons@xxxxxxxxxxxxxxxxx>
CC: Dmitry Torokhov <dtor@xxxxxxx>

diff -NurpP linux-2.6.25.4-orig/drivers/input/serio/i8042.c 
linux-2.6.25.4/drivers/input/serio/i8042.c
--- linux-2.6.25.4-orig/drivers/input/serio/i8042.c	2008-04-17 
04:49:44.000000000 +0200
+++ linux-2.6.25.4/drivers/input/serio/i8042.c	2008-05-16 21:37:12.000000000 
+0200
@@ -404,6 +404,15 @@ static int i8042_enable_kbd_port(void)
 		printk(KERN_ERR "i8042.c: Failed to enable KBD port.\n");
 		return -EIO;
 	}
+#ifdef CONFIG_X86
+	if (i8042_dritek) {
+		char param = 0x90;
+		int error = i8042_command(&param, 0x1059);
+		if (error)
+			printk(KERN_WARNING "Failed to enable DRITEK "
+			       "extension: %d\n", error);
+	}
+#endif
 
 	return 0;
 }
@@ -1171,14 +1179,6 @@ static int __devinit i8042_probe(struct 
 		if (error)
 			goto out_fail;
 	}
-#ifdef CONFIG_X86
-	if (i8042_dritek) {
-		char param = 0x90;
-		error = i8042_command(&param, 0x1059);
-		if (error)
-			goto out_fail;
-	}
-#endif
 /*
  * Ok, everything is ready, let's register all serio ports
  */

--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux