[PATCH] input: ALPS - Invert the Y axis and adjust scaling on SS5 tracksticks

Subsystems: alps ps/2 touchpad driver, input (keyboard, mouse, joystick, touchscreen) drivers, the rest

STALE3485d

2 messages, 1 author, 2017-01-16 · open the first message on its own page

[PATCH] input: ALPS - Invert the Y axis and adjust scaling on SS5 tracksticks

From: Dima Ryazanov <hidden>
Date: 2017-01-10 07:36:07

This patch fixes the trackstick on my Dell Latitude E7470. Currently, it's
upside down and too fast (that is, much faster than when using the generic
PS/2 driver).

It also matches the trackpoint logic in alps_process_packet_v6.
---
(I'm aware that scaling in the driver is not ideal - but at least the vertical
orientation should be fixed.)

Signed-off-by: Dima Ryazanov <redacted>
---
 drivers/input/mouse/alps.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/input/mouse/alps.c b/drivers/input/mouse/alps.c
index 328edc8..5fa7a15 100644
--- a/drivers/input/mouse/alps.c
+++ b/drivers/input/mouse/alps.c
@@ -1346,8 +1346,8 @@ static void alps_process_packet_ss4_v2(struct psmouse *psmouse)
 			return;
 		}
 
-		input_report_rel(dev2, REL_X, SS4_TS_X_V2(packet));
-		input_report_rel(dev2, REL_Y, SS4_TS_Y_V2(packet));
+		input_report_rel(dev2, REL_X, SS4_TS_X_V2(packet) / 4);
+		input_report_rel(dev2, REL_Y, -SS4_TS_Y_V2(packet) / 4);
 		input_report_abs(dev2, ABS_PRESSURE, SS4_TS_Z_V2(packet));
 
 		input_report_key(dev2, BTN_LEFT, f->ts_left);
-- 
2.9.3

Re: [PATCH] input: ALPS - Invert the Y axis and adjust scaling on SS5 tracksticks

From: Dima Ryazanov <hidden>
Date: 2017-01-16 20:24:02

Actually, sorry, disregard this patch.

The Y axis has already been fixed by
47e3a5edc6538d66e470aaed3b7c57255cb37ca1, and the sensitivity should
probably be adjusted in hwdb rather than the driver.

On Mon, Jan 9, 2017 at 11:35 PM, Dima Ryazanov [off-list ref] wrote:
quoted hunk
This patch fixes the trackstick on my Dell Latitude E7470. Currently, it's
upside down and too fast (that is, much faster than when using the generic
PS/2 driver).

It also matches the trackpoint logic in alps_process_packet_v6.
---
(I'm aware that scaling in the driver is not ideal - but at least the vertical
orientation should be fixed.)

Signed-off-by: Dima Ryazanov <redacted>
---
 drivers/input/mouse/alps.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/input/mouse/alps.c b/drivers/input/mouse/alps.c
index 328edc8..5fa7a15 100644
--- a/drivers/input/mouse/alps.c
+++ b/drivers/input/mouse/alps.c
@@ -1346,8 +1346,8 @@ static void alps_process_packet_ss4_v2(struct psmouse *psmouse)
                        return;
                }

-               input_report_rel(dev2, REL_X, SS4_TS_X_V2(packet));
-               input_report_rel(dev2, REL_Y, SS4_TS_Y_V2(packet));
+               input_report_rel(dev2, REL_X, SS4_TS_X_V2(packet) / 4);
+               input_report_rel(dev2, REL_Y, -SS4_TS_Y_V2(packet) / 4);
                input_report_abs(dev2, ABS_PRESSURE, SS4_TS_Z_V2(packet));

                input_report_key(dev2, BTN_LEFT, f->ts_left);
--
2.9.3
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help