Input: Workaround for Sunrex K8561 IR Keyboard/Mouse. The mouse
authorVojtech Pavlik <vojtech@suse.cz>
Sat, 28 May 2005 07:11:42 +0000 (02:11 -0500)
committerDmitry Torokhov <dtor_core@ameritech.net>
Sat, 28 May 2005 07:11:42 +0000 (02:11 -0500)
       sends an incorrect ID and wasn't recognized.

Reported-by: Stefan Seyfried <seife@suse.de>
Signed-off-by: Vojtech Pavlik <vojtech@suse.cz>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
drivers/input/mouse/psmouse-base.c

index c9f8e16ca57885829bed905ed4efeb758e9f97c3..019034b21a0bc91d3f0f941b05e7e495b6b69a08 100644 (file)
@@ -518,13 +518,16 @@ static int psmouse_probe(struct psmouse *psmouse)
 /*
  * First, we check if it's a mouse. It should send 0x00 or 0x03
  * in case of an IntelliMouse in 4-byte mode or 0x04 for IM Explorer.
+ * Sunrex K8561 IR Keyboard/Mouse reports 0xff on second and subsequent
+ * ID queries, probably due to a firmware bug.
  */
 
        param[0] = 0xa5;
        if (ps2_command(ps2dev, param, PSMOUSE_CMD_GETID))
                return -1;
 
-       if (param[0] != 0x00 && param[0] != 0x03 && param[0] != 0x04)
+       if (param[0] != 0x00 && param[0] != 0x03 &&
+           param[0] != 0x04 && param[0] != 0xff)
                return -1;
 
 /*