summaryrefslogtreecommitdiffstats
path: root/drivers/input
diff options
context:
space:
mode:
authorBenjamin Tissoires <benjamin.tissoires@redhat.com>2015-03-08 22:33:36 -0700
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2015-03-08 23:36:52 -0700
commitb57a7128be24062b5b5b26032b7cd58f1651547e (patch)
tree259005279ff39455242470094f2c2c083779034b /drivers/input
parentebc80840b850db72f7ae84fbcf77630ae5409629 (diff)
downloadlinux-b57a7128be24062b5b5b26032b7cd58f1651547e.tar.gz
linux-b57a7128be24062b5b5b26032b7cd58f1651547e.tar.bz2
linux-b57a7128be24062b5b5b26032b7cd58f1651547e.zip
Input: synaptics - do not retrieve the board id on old firmwares
The board id capability has been added in firmware 7.5. Cc: stable@vger.kernel.org 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>
Diffstat (limited to 'drivers/input')
-rw-r--r--drivers/input/mouse/synaptics.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
index 2f42a712f3e0..2176874a41b1 100644
--- a/drivers/input/mouse/synaptics.c
+++ b/drivers/input/mouse/synaptics.c
@@ -250,6 +250,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];