* [PATCH v2] Input: ALPS - Fix ALPS touchpad detection
@ 2012-02-16 13:11 Akio Idehara
2012-02-16 14:32 ` Seth Forshee
0 siblings, 1 reply; 5+ messages in thread
From: Akio Idehara @ 2012-02-16 13:11 UTC (permalink / raw)
To: dmitry.torokhov; +Cc: rubini, seth.forshee, linux-input, inux-kernel
ALPS touchpad detection fails if some buttons of ALPS are pressed.
The reason is that the "E6" query response byte is different from
what is expected.
This was tested on a Toshiba Portege R500.
Cc: stable <stable@vger.kernel.org>
Signed-off-by: Akio Idehara <zbe64533@gmail.com>
---
Documentation/input/alps.txt | 3 ++-
drivers/input/mouse/alps.c | 7 +++++--
2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/Documentation/input/alps.txt b/Documentation/input/alps.txt
index f274c28..2f95308 100644
--- a/Documentation/input/alps.txt
+++ b/Documentation/input/alps.txt
@@ -13,7 +13,8 @@ Detection
All ALPS touchpads should respond to the "E6 report" command sequence:
E8-E6-E6-E6-E9. An ALPS touchpad should respond with either 00-00-0A or
-00-00-64.
+00-00-64 if no buttons are pressed. The bits 0-2 of the first byte will be 1s
+if some buttons are pressed.
If the E6 report is successful, the touchpad model is identified using the "E7
report" sequence: E8-E7-E7-E7-E9. The response is the model signature and is
diff --git a/drivers/input/mouse/alps.c b/drivers/input/mouse/alps.c
index bd87380..4c6a72d 100644
--- a/drivers/input/mouse/alps.c
+++ b/drivers/input/mouse/alps.c
@@ -952,7 +952,9 @@ static const struct alps_model_info *alps_get_model(struct psmouse *psmouse, int
/*
* First try "E6 report".
- * ALPS should return 0,0,10 or 0,0,100
+ * ALPS should return 0,0,10 or 0,0,100 if no buttons are pressed.
+ * The bits 0-2 of the first byte will be 1s if some buttons are
+ * pressed.
*/
param[0] = 0;
if (ps2_command(ps2dev, param, PSMOUSE_CMD_SETRES) ||
@@ -968,7 +970,8 @@ static const struct alps_model_info *alps_get_model(struct psmouse *psmouse, int
psmouse_dbg(psmouse, "E6 report: %2.2x %2.2x %2.2x",
param[0], param[1], param[2]);
- if (param[0] != 0 || param[1] != 0 || (param[2] != 10 && param[2] != 100))
+ if ((param[0] & 0xf8) != 0 || param[1] != 0 ||
+ (param[2] != 10 && param[2] != 100))
return NULL;
/*
--
1.7.9
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH v2] Input: ALPS - Fix ALPS touchpad detection
2012-02-16 13:11 [PATCH v2] Input: ALPS - Fix ALPS touchpad detection Akio Idehara
@ 2012-02-16 14:32 ` Seth Forshee
2012-02-23 14:41 ` Akio Idehara
0 siblings, 1 reply; 5+ messages in thread
From: Seth Forshee @ 2012-02-16 14:32 UTC (permalink / raw)
To: Akio Idehara; +Cc: dmitry.torokhov, rubini, linux-input, inux-kernel
On Thu, Feb 16, 2012 at 10:11:55PM +0900, Akio Idehara wrote:
> ALPS touchpad detection fails if some buttons of ALPS are pressed.
> The reason is that the "E6" query response byte is different from
> what is expected.
> This was tested on a Toshiba Portege R500.
>
> Cc: stable <stable@vger.kernel.org>
> Signed-off-by: Akio Idehara <zbe64533@gmail.com>
This version is working fine for me. Thanks!
Tested-by: Seth Forshee <seth.forshee@canonical.com>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v2] Input: ALPS - Fix ALPS touchpad detection
2012-02-16 14:32 ` Seth Forshee
@ 2012-02-23 14:41 ` Akio Idehara
2012-02-24 8:17 ` Dmitry Torokhov
0 siblings, 1 reply; 5+ messages in thread
From: Akio Idehara @ 2012-02-23 14:41 UTC (permalink / raw)
To: dmitry.torokhov, dtor
Cc: seth.forshee, rubini, linux-input, linux-kernel, linux-doc,
rdunlap, gregkh, torvalds
This is definitely a bug which isn't fixed for nine years.
Why this patch isn't applied to the input sub-system (or mainline)?
Seth Forshee wrote:
> On Thu, Feb 16, 2012 at 10:11:55PM +0900, Akio Idehara wrote:
>> ALPS touchpad detection fails if some buttons of ALPS are pressed.
>> The reason is that the "E6" query response byte is different from
>> what is expected.
>> This was tested on a Toshiba Portege R500.
>>
>> Cc: stable<stable@vger.kernel.org>
>> Signed-off-by: Akio Idehara<zbe64533@gmail.com>
>
> This version is working fine for me. Thanks!
>
> Tested-by: Seth Forshee<seth.forshee@canonical.com>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
ALPS touchpad detection fails if some buttons of ALPS are pressed.
The reason is that the "E6" query response byte is different from
what is expected.
This was tested on a Toshiba Portege R500.
Cc: stable <stable@vger.kernel.org>
Signed-off-by: Akio Idehara <zbe64533@gmail.com>
Tested-by: Seth Forshee<seth.forshee@canonical.com>
---
Documentation/input/alps.txt | 3 ++-
drivers/input/mouse/alps.c | 7 +++++--
2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/Documentation/input/alps.txt b/Documentation/input/alps.txt
index f274c28..2f95308 100644
--- a/Documentation/input/alps.txt
+++ b/Documentation/input/alps.txt
@@ -13,7 +13,8 @@ Detection
All ALPS touchpads should respond to the "E6 report" command sequence:
E8-E6-E6-E6-E9. An ALPS touchpad should respond with either 00-00-0A or
-00-00-64.
+00-00-64 if no buttons are pressed. The bits 0-2 of the first byte will be 1s
+if some buttons are pressed.
If the E6 report is successful, the touchpad model is identified using the "E7
report" sequence: E8-E7-E7-E7-E9. The response is the model signature and is
diff --git a/drivers/input/mouse/alps.c b/drivers/input/mouse/alps.c
index bd87380..4c6a72d 100644
--- a/drivers/input/mouse/alps.c
+++ b/drivers/input/mouse/alps.c
@@ -952,7 +952,9 @@ static const struct alps_model_info *alps_get_model(struct psmouse *psmouse, int
/*
* First try "E6 report".
- * ALPS should return 0,0,10 or 0,0,100
+ * ALPS should return 0,0,10 or 0,0,100 if no buttons are pressed.
+ * The bits 0-2 of the first byte will be 1s if some buttons are
+ * pressed.
*/
param[0] = 0;
if (ps2_command(ps2dev, param, PSMOUSE_CMD_SETRES) ||
@@ -968,7 +970,8 @@ static const struct alps_model_info *alps_get_model(struct psmouse *psmouse, int
psmouse_dbg(psmouse, "E6 report: %2.2x %2.2x %2.2x",
param[0], param[1], param[2]);
- if (param[0] != 0 || param[1] != 0 || (param[2] != 10 && param[2] != 100))
+ if ((param[0] & 0xf8) != 0 || param[1] != 0 ||
+ (param[2] != 10 && param[2] != 100))
return NULL;
/*
-- 1.7.9
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH v2] Input: ALPS - Fix ALPS touchpad detection
2012-02-23 14:41 ` Akio Idehara
@ 2012-02-24 8:17 ` Dmitry Torokhov
2012-02-24 10:19 ` Akio Idehara
0 siblings, 1 reply; 5+ messages in thread
From: Dmitry Torokhov @ 2012-02-24 8:17 UTC (permalink / raw)
To: Akio Idehara
Cc: seth.forshee, rubini, linux-input, linux-kernel, linux-doc,
rdunlap, gregkh, torvalds
Hi Akio,
On Thu, Feb 23, 2012 at 11:41:11PM +0900, Akio Idehara wrote:
> This is definitely a bug which isn't fixed for nine years.
> Why this patch isn't applied to the input sub-system (or mainline)?
>
Well, if we waited for 9 years, we could wait for couple more days...
Also, please make sure you do not send patches as:
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
as this requires fixing up the patch manually before it can be applied.
Anyway, applied, thank you.
--
Dmitry
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v2] Input: ALPS - Fix ALPS touchpad detection
2012-02-24 8:17 ` Dmitry Torokhov
@ 2012-02-24 10:19 ` Akio Idehara
0 siblings, 0 replies; 5+ messages in thread
From: Akio Idehara @ 2012-02-24 10:19 UTC (permalink / raw)
To: dmitry.torokhov
Cc: seth.forshee, rubini, linux-input, linux-kernel, linux-doc,
rdunlap, gregkh, torvalds
Hi Dmitry,
I'm sorry that I hurry you and make you trouble with email setting.
Regards, Akio.
Dmitry Torokhov wrote:
> Hi Akio,
>
> On Thu, Feb 23, 2012 at 11:41:11PM +0900, Akio Idehara wrote:
>> This is definitely a bug which isn't fixed for nine years.
>> Why this patch isn't applied to the input sub-system (or mainline)?
>>
>
> Well, if we waited for 9 years, we could wait for couple more days...
>
> Also, please make sure you do not send patches as:
>
> Content-Type: text/plain; charset=ISO-8859-1; format=flowed
>
> as this requires fixing up the patch manually before it can be applied.
>
> Anyway, applied, thank you.
>
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2012-02-24 10:19 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-02-16 13:11 [PATCH v2] Input: ALPS - Fix ALPS touchpad detection Akio Idehara
2012-02-16 14:32 ` Seth Forshee
2012-02-23 14:41 ` Akio Idehara
2012-02-24 8:17 ` Dmitry Torokhov
2012-02-24 10:19 ` Akio Idehara
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).