Messages in this thread |  | | Date | Sun, 22 Mar 2015 11:48:17 +0100 | | From | Hans de Goede <> | | Subject | Re: [PATCH] Input: ALPS - fix max coordinates for v5 and v7 protocols |
| |
Hi,
On 22-03-15 04:36, Dmitry Torokhov wrote: > Commit 3296f71cd2fde7a2ad52e66a27eae419f6328066 ("Input: ALPS - consolidate > setting protocol parameters") inadvertently moved call to > alps_dolphin_get_device_area() from v5 to v7 protocol, causing both > protocols report incorrect maximum values for X and Y axes which resulted > in crash in Synaptics X driver. > > Reported-by: Santiago Gala <sgala@apache.org> > Reported-by: Pali Rohár <pali.rohar@gmail.com> > Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Fix looks good to me:
Acked-by: Hans de Goede <hdegoede@redhat.com>
Regards,
Hans
> --- > drivers/input/mouse/alps.c | 11 ++++++----- > 1 file changed, 6 insertions(+), 5 deletions(-) > > diff --git a/drivers/input/mouse/alps.c b/drivers/input/mouse/alps.c > index 1bd15eb..33198b9 100644 > --- a/drivers/input/mouse/alps.c > +++ b/drivers/input/mouse/alps.c > @@ -2281,10 +2281,12 @@ static int alps_set_protocol(struct psmouse *psmouse, > priv->set_abs_params = alps_set_abs_params_mt; > priv->nibble_commands = alps_v3_nibble_commands; > priv->addr_command = PSMOUSE_CMD_RESET_WRAP; > - priv->x_max = 1360; > - priv->y_max = 660; > priv->x_bits = 23; > priv->y_bits = 12; > + > + if (alps_dolphin_get_device_area(psmouse, priv)) > + return -EIO; > + > break; > > case ALPS_PROTO_V6: > @@ -2303,9 +2305,8 @@ static int alps_set_protocol(struct psmouse *psmouse, > priv->set_abs_params = alps_set_abs_params_mt; > priv->nibble_commands = alps_v3_nibble_commands; > priv->addr_command = PSMOUSE_CMD_RESET_WRAP; > - > - if (alps_dolphin_get_device_area(psmouse, priv)) > - return -EIO; > + priv->x_max = 0xfff; > + priv->y_max = 0x7ff; > > if (priv->fw_ver[1] != 0xba) > priv->flags |= ALPS_BUTTONPAD; >
|  |