]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
Input: synaptics - do not retrieve the board id on old firmwares
authorBenjamin Tissoires <benjamin.tissoires@redhat.com>
Mon, 9 Mar 2015 05:33:36 +0000 (22:33 -0700)
committerLuis Henriques <luis.henriques@canonical.com>
Mon, 30 Mar 2015 10:11:16 +0000 (11:11 +0100)
commit b57a7128be24062b5b5b26032b7cd58f1651547e upstream.

The board id capability has been added in firmware 7.5.

Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
drivers/input/mouse/synaptics.c

index 367a9457547d2821bfa773a64c115f2bfc5a97f0..6d04d199b6be881dd1bc077dd92338d3e1c641a9 100644 (file)
@@ -248,6 +248,10 @@ static int synaptics_board_id(struct psmouse *psmouse)
        struct synaptics_data *priv = psmouse->private;
        unsigned char bid[3];
 
+       /* firmwares prior 7.5 have no board_id encoded */
+       if (SYN_ID_FULL(priv->identity) < 0x705)
+               return 0;
+
        if (synaptics_send_cmd(psmouse, SYN_QUE_MODES, bid))
                return -1;
        priv->board_id = ((bid[0] & 0xfc) << 6) | bid[1];