From: Hans de Goede <hdegoede@redhat.com>
To: "Pali Rohár" <pali.rohar@gmail.com>
Cc: Larry Finger <Larry.Finger@lwfinger.net>,
Dmitry Torokhov <dmitry.torokhov@gmail.com>,
Masaki Ota <masaki.ota@jp.alps.com>,
linux-input@vger.kernel.org, LKML <linux-kernel@vger.kernel.org>
Subject: Re: Regression since commit 92bac83
Date: Wed, 21 Oct 2015 10:30:47 +0200 [thread overview]
Message-ID: <56274D37.8050009@redhat.com> (raw)
In-Reply-To: <20151021081936.GB15219@pali>
Hi,
On 21-10-15 10:19, Pali Rohár wrote:
> On Tuesday 20 October 2015 13:39:05 Hans de Goede wrote:
>> From 5d21a8004260c3e6287bde81c2a9e8f80144e77c Mon Sep 17 00:00:00 2001
>> From: Hans de Goede <hdegoede@redhat.com>
>> Date: Tue, 20 Oct 2015 11:12:07 +0200
>> Subject: [PATCH] alps: Only the Dell Latitude D420/430/620/630 have separate
>> stick button bits
>>
>> commit 92bac83dd79e ("Input: alps - non interleaved V2 dualpoint has
>> separate stick button bits") assumes that all alps v2 non-interleaved
>> dual point setups have the separate stick button bits.
>>
>> Later we limited this to Dell laptops only because of reports that this
>> broke things on non Dell laptops. Now it turns out that this breaks things
>> on the Dell Latitude D600 too. So it seems that only the Dell Latitude
>> D420/430/620/630, which all share the same touchpad / stick combo,
>> have these separate bits.
>>
>> This patch limits the checking of the separate bits to only these models
>> fixing regressions with other models.
>>
>> Reported-and-tested-by: Larry Finger <Larry.Finger@lwfinger.net>
>> Cc: stable@vger.kernel.org
>> Tested-by: Hans de Goede <hdegoede@redhat.com>
>> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
>> ---
>> drivers/input/mouse/alps.c | 48 ++++++++++++++++++++++++++++++++++++++++------
>> 1 file changed, 42 insertions(+), 6 deletions(-)
>>
>> diff --git a/drivers/input/mouse/alps.c b/drivers/input/mouse/alps.c
>> index 4d24686..41e6cb5 100644
>> --- a/drivers/input/mouse/alps.c
>> +++ b/drivers/input/mouse/alps.c
>> @@ -100,7 +100,7 @@ static const struct alps_nibble_commands alps_v6_nibble_commands[] = {
>> #define ALPS_FOUR_BUTTONS 0x40 /* 4 direction button present */
>> #define ALPS_PS2_INTERLEAVED 0x80 /* 3-byte PS/2 packet interleaved with
>> 6-byte ALPS packet */
>> -#define ALPS_DELL 0x100 /* device is a Dell laptop */
>> +#define ALPS_STICK_BITS 0x100 /* separate stick button bits */
>> #define ALPS_BUTTONPAD 0x200 /* device is a clickpad */
>>
>> static const struct alps_model_info alps_model_data[] = {
>> @@ -159,6 +159,43 @@ static const struct alps_protocol_info alps_v8_protocol_data = {
>> ALPS_PROTO_V8, 0x18, 0x18, 0
>> };
>>
>> +/*
>> + * Some v2 models report the stick buttons in separate bits
>> + */
>> +static const struct dmi_system_id alps_dmi_has_separate_stick_buttons[] = {
>> +#if defined(CONFIG_DMI) && defined(CONFIG_X86)
>> + {
>> + /* Extrapolated from other entries */
>> + .matches = {
>> + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
>> + DMI_MATCH(DMI_PRODUCT_NAME, "Latitude D420"),
>> + },
>> + },
>> + {
>> + /* Reported-by: Hans de Bruin <jmdebruin@xmsnet.nl> */
>> + .matches = {
>> + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
>> + DMI_MATCH(DMI_PRODUCT_NAME, "Latitude D430"),
>> + },
>> + },
>> + {
>> + /* Reported-by: Hans de Goede <hdegoede@redhat.com> */
>> + .matches = {
>> + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
>> + DMI_MATCH(DMI_PRODUCT_NAME, "Latitude D620"),
>> + },
>> + },
>> + {
>> + /* Extrapolated from other entries */
>> + .matches = {
>> + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
>> + DMI_MATCH(DMI_PRODUCT_NAME, "Latitude D630"),
>> + },
>> + },
>> +#endif
>> + { }
>> +};
>> +
>
> Hi! Are you sure that above machines do not have variants without
> ALPS_DUALPOINT or without ALPS_PASS? Because if yes, then we could see
> another break.
Yes I'm sure that these machines always come with a dualpoint setup
with pass-through support. The 20/30 models are in essence the same
with just a newer version core2duo dropped in (they changed the model
now since the newer core2duo-s where the first x86_64 cpu-s from Intel,
and the 4x0 / 6x0 models have the exact same dualpoint setup, which is
why both Hans de Bruin and me were seeing the same bug.
Regards,
Hans
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
WARNING: multiple messages have this Message-ID (diff)
From: Hans de Goede <hdegoede@redhat.com>
To: "Pali Rohár" <pali.rohar@gmail.com>
Cc: Larry Finger <Larry.Finger@lwfinger.net>,
Dmitry Torokhov <dmitry.torokhov@gmail.com>,
Masaki Ota <masaki.ota@jp.alps.com>,
linux-input@vger.kernel.org, LKML <linux-kernel@vger.kernel.org>
Subject: Re: Regression since commit 92bac83
Date: Wed, 21 Oct 2015 10:30:47 +0200 [thread overview]
Message-ID: <56274D37.8050009@redhat.com> (raw)
In-Reply-To: <20151021081936.GB15219@pali>
Hi,
On 21-10-15 10:19, Pali Rohár wrote:
> On Tuesday 20 October 2015 13:39:05 Hans de Goede wrote:
>> From 5d21a8004260c3e6287bde81c2a9e8f80144e77c Mon Sep 17 00:00:00 2001
>> From: Hans de Goede <hdegoede@redhat.com>
>> Date: Tue, 20 Oct 2015 11:12:07 +0200
>> Subject: [PATCH] alps: Only the Dell Latitude D420/430/620/630 have separate
>> stick button bits
>>
>> commit 92bac83dd79e ("Input: alps - non interleaved V2 dualpoint has
>> separate stick button bits") assumes that all alps v2 non-interleaved
>> dual point setups have the separate stick button bits.
>>
>> Later we limited this to Dell laptops only because of reports that this
>> broke things on non Dell laptops. Now it turns out that this breaks things
>> on the Dell Latitude D600 too. So it seems that only the Dell Latitude
>> D420/430/620/630, which all share the same touchpad / stick combo,
>> have these separate bits.
>>
>> This patch limits the checking of the separate bits to only these models
>> fixing regressions with other models.
>>
>> Reported-and-tested-by: Larry Finger <Larry.Finger@lwfinger.net>
>> Cc: stable@vger.kernel.org
>> Tested-by: Hans de Goede <hdegoede@redhat.com>
>> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
>> ---
>> drivers/input/mouse/alps.c | 48 ++++++++++++++++++++++++++++++++++++++++------
>> 1 file changed, 42 insertions(+), 6 deletions(-)
>>
>> diff --git a/drivers/input/mouse/alps.c b/drivers/input/mouse/alps.c
>> index 4d24686..41e6cb5 100644
>> --- a/drivers/input/mouse/alps.c
>> +++ b/drivers/input/mouse/alps.c
>> @@ -100,7 +100,7 @@ static const struct alps_nibble_commands alps_v6_nibble_commands[] = {
>> #define ALPS_FOUR_BUTTONS 0x40 /* 4 direction button present */
>> #define ALPS_PS2_INTERLEAVED 0x80 /* 3-byte PS/2 packet interleaved with
>> 6-byte ALPS packet */
>> -#define ALPS_DELL 0x100 /* device is a Dell laptop */
>> +#define ALPS_STICK_BITS 0x100 /* separate stick button bits */
>> #define ALPS_BUTTONPAD 0x200 /* device is a clickpad */
>>
>> static const struct alps_model_info alps_model_data[] = {
>> @@ -159,6 +159,43 @@ static const struct alps_protocol_info alps_v8_protocol_data = {
>> ALPS_PROTO_V8, 0x18, 0x18, 0
>> };
>>
>> +/*
>> + * Some v2 models report the stick buttons in separate bits
>> + */
>> +static const struct dmi_system_id alps_dmi_has_separate_stick_buttons[] = {
>> +#if defined(CONFIG_DMI) && defined(CONFIG_X86)
>> + {
>> + /* Extrapolated from other entries */
>> + .matches = {
>> + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
>> + DMI_MATCH(DMI_PRODUCT_NAME, "Latitude D420"),
>> + },
>> + },
>> + {
>> + /* Reported-by: Hans de Bruin <jmdebruin@xmsnet.nl> */
>> + .matches = {
>> + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
>> + DMI_MATCH(DMI_PRODUCT_NAME, "Latitude D430"),
>> + },
>> + },
>> + {
>> + /* Reported-by: Hans de Goede <hdegoede@redhat.com> */
>> + .matches = {
>> + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
>> + DMI_MATCH(DMI_PRODUCT_NAME, "Latitude D620"),
>> + },
>> + },
>> + {
>> + /* Extrapolated from other entries */
>> + .matches = {
>> + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
>> + DMI_MATCH(DMI_PRODUCT_NAME, "Latitude D630"),
>> + },
>> + },
>> +#endif
>> + { }
>> +};
>> +
>
> Hi! Are you sure that above machines do not have variants without
> ALPS_DUALPOINT or without ALPS_PASS? Because if yes, then we could see
> another break.
Yes I'm sure that these machines always come with a dualpoint setup
with pass-through support. The 20/30 models are in essence the same
with just a newer version core2duo dropped in (they changed the model
now since the newer core2duo-s where the first x86_64 cpu-s from Intel,
and the 4x0 / 6x0 models have the exact same dualpoint setup, which is
why both Hans de Bruin and me were seeing the same bug.
Regards,
Hans
next prev parent reply other threads:[~2015-10-21 8:30 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-18 23:59 Regression since commit 92bac83 Larry Finger
2015-10-19 8:08 ` Hans de Goede
2015-10-19 15:55 ` Larry Finger
2015-10-19 16:51 ` Dmitry Torokhov
2015-10-19 17:21 ` Hans de Goede
2015-10-20 7:22 ` Pali Rohár
2015-10-20 7:22 ` Pali Rohár
2015-10-20 11:39 ` Hans de Goede
2015-10-20 17:33 ` Larry Finger
2015-10-21 8:19 ` Pali Rohár
2015-10-21 8:19 ` Pali Rohár
2015-10-21 8:30 ` Hans de Goede [this message]
2015-10-21 8:30 ` Hans de Goede
2015-10-21 8:37 ` Pali Rohár
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=56274D37.8050009@redhat.com \
--to=hdegoede@redhat.com \
--cc=Larry.Finger@lwfinger.net \
--cc=dmitry.torokhov@gmail.com \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=masaki.ota@jp.alps.com \
--cc=pali.rohar@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.