diff options
Diffstat (limited to 'kernel/drivers/input/mouse/synaptics.c')
-rw-r--r-- | kernel/drivers/input/mouse/synaptics.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/kernel/drivers/input/mouse/synaptics.c b/kernel/drivers/input/mouse/synaptics.c index 6025eb430..a41d8328c 100644 --- a/kernel/drivers/input/mouse/synaptics.c +++ b/kernel/drivers/input/mouse/synaptics.c @@ -862,8 +862,9 @@ static void synaptics_report_ext_buttons(struct psmouse *psmouse, if (!SYN_CAP_MULTI_BUTTON_NO(priv->ext_cap)) return; - /* Bug in FW 8.1, buttons are reported only when ExtBit is 1 */ - if (SYN_ID_FULL(priv->identity) == 0x801 && + /* Bug in FW 8.1 & 8.2, buttons are reported only when ExtBit is 1 */ + if ((SYN_ID_FULL(priv->identity) == 0x801 || + SYN_ID_FULL(priv->identity) == 0x802) && !((psmouse->packet[0] ^ psmouse->packet[3]) & 0x02)) return; |