linux-tegra.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/2] staging: nvec: ps2: fix touchpad operation
@ 2016-10-27 14:22 Paul Fertser
  2016-10-27 14:22 ` [PATCH v2 1/2] drivers: staging: nvec: remove bogus reset command for PS/2 interface Paul Fertser
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Paul Fertser @ 2016-10-27 14:22 UTC (permalink / raw)
  To: devel; +Cc: Paul Fertser, Greg Kroah-Hartman, linux-tegra, ac100

Status quo on Toshiba ac100 (paz00) is that the integrated elantech touchpad is
detected as an ImPS/2 mouse and so it's kind of functional but advanced
synaptics configuration isn't available.

When only serio type is changed it leads to atkbd misdetecting the touchpad as
a keyboard. So first goes the commit that fixes this bug, then the serio type
change.

Paul Fertser (2):
  drivers: staging: nvec: remove bogus reset command for PS/2 interface
  Revert "staging: nvec: ps2: change serio type to passthrough"

 drivers/staging/nvec/nvec_ps2.c | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

-- 
2.7.0

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH v2 1/2] drivers: staging: nvec: remove bogus reset command for PS/2 interface
  2016-10-27 14:22 [PATCH v2 0/2] staging: nvec: ps2: fix touchpad operation Paul Fertser
@ 2016-10-27 14:22 ` Paul Fertser
  2016-10-27 14:22 ` [PATCH v2 2/2] Revert "staging: nvec: ps2: change serio type to passthrough" Paul Fertser
       [not found] ` <1477578154-21199-1-git-send-email-fercerpav-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  2 siblings, 0 replies; 4+ messages in thread
From: Paul Fertser @ 2016-10-27 14:22 UTC (permalink / raw)
  To: devel; +Cc: Paul Fertser, Greg Kroah-Hartman, linux-tegra, ac100

This command was sent behind serio's back and the answer to it was
confusing atkbd probe function which lead to the elantech touchpad
getting detected as a keyboard.

To prevent this from happening just let every party do its part of the
job.

Signed-off-by: Paul Fertser <fercerpav@gmail.com>
---
 drivers/staging/nvec/nvec_ps2.c | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/drivers/staging/nvec/nvec_ps2.c b/drivers/staging/nvec/nvec_ps2.c
index a324322..d63c4ef 100644
--- a/drivers/staging/nvec/nvec_ps2.c
+++ b/drivers/staging/nvec/nvec_ps2.c
@@ -106,7 +106,6 @@ static int nvec_mouse_probe(struct platform_device *pdev)
 {
 	struct nvec_chip *nvec = dev_get_drvdata(pdev->dev.parent);
 	struct serio *ser_dev;
-	char mouse_reset[] = { NVEC_PS2, SEND_COMMAND, PSMOUSE_RST, 3 };
 
 	ser_dev = devm_kzalloc(&pdev->dev, sizeof(struct serio), GFP_KERNEL);
 	if (!ser_dev)
@@ -127,9 +126,6 @@ static int nvec_mouse_probe(struct platform_device *pdev)
 
 	serio_register_port(ser_dev);
 
-	/* mouse reset */
-	nvec_write_async(nvec, mouse_reset, sizeof(mouse_reset));
-
 	return 0;
 }
 
-- 
2.7.0

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [PATCH v2 2/2] Revert "staging: nvec: ps2: change serio type to passthrough"
  2016-10-27 14:22 [PATCH v2 0/2] staging: nvec: ps2: fix touchpad operation Paul Fertser
  2016-10-27 14:22 ` [PATCH v2 1/2] drivers: staging: nvec: remove bogus reset command for PS/2 interface Paul Fertser
@ 2016-10-27 14:22 ` Paul Fertser
       [not found] ` <1477578154-21199-1-git-send-email-fercerpav-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  2 siblings, 0 replies; 4+ messages in thread
From: Paul Fertser @ 2016-10-27 14:22 UTC (permalink / raw)
  To: devel; +Cc: Paul Fertser, Greg Kroah-Hartman, linux-tegra, ac100

This reverts commit 36b30d6138f4677514aca35ab76c20c1604baaad.

This is necessary to detect paz00 (ac100) touchpad properly as one
speaking ETPS/2 protocol. Without it X.org's synaptics driver doesn't
work as the touchpad is detected as an ImPS/2 mouse instead.

Commit ec6184b1c717b8768122e25fe6d312f609cc1bb4 changed the way
auto-detection is performed on ports marked as pass through and made the
issue apparent.

A pass through port is an additional PS/2 port used to connect a slave
device to a master device that is using PS/2 to communicate with the
host (so slave's PS/2 communication is tunneled over master's PS/2
link). "Synaptics PS/2 TouchPad Interfacing Guide" describes such a
setup (PS/2 PASS-THROUGH OPTION section).

Since paz00's embedded controller is not connected to a PS/2 port
itself, the PS/2 interface it exposes is not a pass-through one.

Signed-off-by: Paul Fertser <fercerpav@gmail.com>
---
 drivers/staging/nvec/nvec_ps2.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/staging/nvec/nvec_ps2.c b/drivers/staging/nvec/nvec_ps2.c
index d63c4ef..910e87b 100644
--- a/drivers/staging/nvec/nvec_ps2.c
+++ b/drivers/staging/nvec/nvec_ps2.c
@@ -111,7 +111,7 @@ static int nvec_mouse_probe(struct platform_device *pdev)
 	if (!ser_dev)
 		return -ENOMEM;
 
-	ser_dev->id.type = SERIO_PS_PSTHRU;
+	ser_dev->id.type = SERIO_8042;
 	ser_dev->write = ps2_sendcommand;
 	ser_dev->start = ps2_startstreaming;
 	ser_dev->stop = ps2_stopstreaming;
-- 
2.7.0

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH v2 0/2] staging: nvec: ps2: fix touchpad operation
       [not found] ` <1477578154-21199-1-git-send-email-fercerpav-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
@ 2016-10-27 15:46   ` Marc Dietrich
  0 siblings, 0 replies; 4+ messages in thread
From: Marc Dietrich @ 2016-10-27 15:46 UTC (permalink / raw)
  To: Paul Fertser
  Cc: devel-gWbeCf7V1WCQmaza687I9mD2FQJk+8+b, Greg Kroah-Hartman,
	ac100-oU9gvf+ajcQ97yFScArB1dHuzzzSOjJt,
	linux-tegra-u79uwXL29TY76Z2rM5mHXA

[-- Attachment #1: Type: text/plain, Size: 811 bytes --]

Am Donnerstag, 27. Oktober 2016, 17:22:07 CEST schrieb Paul Fertser:
> Status quo on Toshiba ac100 (paz00) is that the integrated elantech touchpad
> is detected as an ImPS/2 mouse and so it's kind of functional but advanced
> synaptics configuration isn't available.
> 
> When only serio type is changed it leads to atkbd misdetecting the touchpad
> as a keyboard. So first goes the commit that fixes this bug, then the serio
> type change.
> 
> Paul Fertser (2):
>   drivers: staging: nvec: remove bogus reset command for PS/2 interface
>   Revert "staging: nvec: ps2: change serio type to passthrough"
> 
>  drivers/staging/nvec/nvec_ps2.c | 6 +-----
>  1 file changed, 1 insertion(+), 5 deletions(-)

Works fine now. Thanks!

The series is 

Acked-by: Marc Dietrich <marvin24-Mmb7MZpHnFY@public.gmane.org>


[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 455 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2016-10-27 15:46 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-10-27 14:22 [PATCH v2 0/2] staging: nvec: ps2: fix touchpad operation Paul Fertser
2016-10-27 14:22 ` [PATCH v2 1/2] drivers: staging: nvec: remove bogus reset command for PS/2 interface Paul Fertser
2016-10-27 14:22 ` [PATCH v2 2/2] Revert "staging: nvec: ps2: change serio type to passthrough" Paul Fertser
     [not found] ` <1477578154-21199-1-git-send-email-fercerpav-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2016-10-27 15:46   ` [PATCH v2 0/2] staging: nvec: ps2: fix touchpad operation Marc Dietrich

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).