2016-03-15 10:18:31

by Benjamin Tissoires

[permalink] [raw]
Subject: [PATCH] Input: synaptics - handle spurious release of trackstick buttons, again

Looks like the fimware 8.2 stall has the extra buttons spurious release
bug.

Link: https://bugzilla.kernel.org/show_bug.cgi?id=114321
Cc: [email protected]
Signed-off-by: Benjamin Tissoires <[email protected]>
---
drivers/input/mouse/synaptics.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
index 6025eb4..9f3b83f 100644
--- a/drivers/input/mouse/synaptics.c
+++ b/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;

--
2.5.0


2016-03-15 14:25:43

by Benjamin Tissoires

[permalink] [raw]
Subject: Re: [PATCH] Input: synaptics - handle spurious release of trackstick buttons, again

On Tue, Mar 15, 2016 at 11:18 AM, Benjamin Tissoires
<[email protected]> wrote:
> Looks like the fimware 8.2 stall has the extra buttons spurious release

Typo: *still, not stall. (sorry)

Cheers,
Benjamin

> bug.
>
> Link: https://bugzilla.kernel.org/show_bug.cgi?id=114321
> Cc: [email protected]
> Signed-off-by: Benjamin Tissoires <[email protected]>
> ---
> drivers/input/mouse/synaptics.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
> index 6025eb4..9f3b83f 100644
> --- a/drivers/input/mouse/synaptics.c
> +++ b/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;
>
> --
> 2.5.0
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-input" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html

2016-03-18 00:14:32

by Dmitry Torokhov

[permalink] [raw]
Subject: Re: [PATCH] Input: synaptics - handle spurious release of trackstick buttons, again

On Tue, Mar 15, 2016 at 11:18:17AM +0100, Benjamin Tissoires wrote:
> Looks like the fimware 8.2 stall has the extra buttons spurious release
> bug.
>
> Link: https://bugzilla.kernel.org/show_bug.cgi?id=114321
> Cc: [email protected]
> Signed-off-by: Benjamin Tissoires <[email protected]>

Applied, thank you.

> ---
> drivers/input/mouse/synaptics.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
> index 6025eb4..9f3b83f 100644
> --- a/drivers/input/mouse/synaptics.c
> +++ b/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)) &&

but dropped extra parenthesis...

> !((psmouse->packet[0] ^ psmouse->packet[3]) & 0x02))
> return;
>
> --
> 2.5.0
>

--
Dmitry