Skip to contentSkip to conversation

Treat ALPS mouse buttons as mouse buttons

PATCH In review Micheal Marineau 2 participants 7 messages Mar 7, 2005

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Treat ALPS mouse buttons as mouse buttons

The following patch changes the ALPS touchpad driver to treat some mouse buttons as mouse buttons rather than what appears to be joystick buttons. This is needed for the Dell Inspiron 8500's DualPoint stick buttons. Without this patch only the touchpad buttons behave properly.

drivers/input/mouse/alps.c 2005-03-06 16:45:07.000000000 -0800 renamed from drivers/input/mouse/alps.c 2005-03-01 23:38:13.000000000 -0800 +2 -4
@@ -97,8 +97,8 @@
 
                input_report_rel(dev, REL_X, x);
                input_report_rel(dev, REL_Y, -y);
-               input_report_key(dev, BTN_A, left);
-               input_report_key(dev, BTN_B, right);
+               input_report_key(dev, BTN_LEFT, left);
+               input_report_key(dev, BTN_RIGHT, right);
                input_sync(dev);
                return;
        }
@@ -389,8 +389,6 @@
        psmouse->dev.evbit[LONG(EV_REL)] |= BIT(EV_REL);
        psmouse->dev.relbit[LONG(REL_X)] |= BIT(REL_X);
        psmouse->dev.relbit[LONG(REL_Y)] |= BIT(REL_Y);
-       psmouse->dev.keybit[LONG(BTN_A)] |= BIT(BTN_A);
-       psmouse->dev.keybit[LONG(BTN_B)] |= BIT(BTN_B);
 
        psmouse->dev.evbit[LONG(EV_ABS)] |= BIT(EV_ABS);
        input_set_abs_params(&psmouse->dev, ABS_X, 0, 1023, 0, 0);
Signature · 3 lines
Michael Marineau
[email protected]
Oregon State University
#1 lore raw
Quoted 4 lines · Micheal Marineau

The following patch changes the ALPS touchpad driver to treat some mouse buttons as mouse buttons rather than what appears to be joystick buttons. This is needed for the Dell Inspiron 8500's DualPoint stick buttons. Without this patch only the touchpad buttons behave properly.

Thanks for the patch. I'll try to put this change into my the latest version of the ALPS driver, which, unfortunately, has been reworked significantly.

Can you send me the output of /proc/bus/input/devices on your machine? I'd like to know the ID of your ALPS dualpoint.

Quoted 22 lines
drivers/input/mouse/alps.c 2005-03-06 16:45:07.000000000 -0800 renamed from drivers/input/mouse/alps.c 2005-03-01 23:38:13.000000000 -0800 +2 -4
@@ -97,8 +97,8 @@
 
                input_report_rel(dev, REL_X, x);
                input_report_rel(dev, REL_Y, -y);
-               input_report_key(dev, BTN_A, left);
-               input_report_key(dev, BTN_B, right);
+               input_report_key(dev, BTN_LEFT, left);
+               input_report_key(dev, BTN_RIGHT, right);
                input_sync(dev);
                return;
        }
@@ -389,8 +389,6 @@
        psmouse->dev.evbit[LONG(EV_REL)] |= BIT(EV_REL);
        psmouse->dev.relbit[LONG(REL_X)] |= BIT(REL_X);
        psmouse->dev.relbit[LONG(REL_Y)] |= BIT(REL_Y);
-       psmouse->dev.keybit[LONG(BTN_A)] |= BIT(BTN_A);
-       psmouse->dev.keybit[LONG(BTN_B)] |= BIT(BTN_B);
 
        psmouse->dev.evbit[LONG(EV_ABS)] |= BIT(EV_ABS);
        input_set_abs_params(&psmouse->dev, ABS_X, 0, 1023, 0, 0);
Signature · 2 lines
Vojtech Pavlik
SuSE Labs, SuSE CR
#2 lore raw
Quoted 9 lines · Vojtech Pavlik
Quoted 4 lines · Micheal Marineau

The following patch changes the ALPS touchpad driver to treat some mouse buttons as mouse buttons rather than what appears to be joystick buttons. This is needed for the Dell Inspiron 8500's DualPoint stick buttons. Without this patch only the touchpad buttons behave properly.

Quoted 7 lines

Thanks for the patch. I'll try to put this change into my the latest version of the ALPS driver, which, unfortunately, has been reworked significantly.

Can you send me the output of /proc/bus/input/devices on your machine? I'd like to know the ID of your ALPS dualpoint.

I just looked at the new version in 2.6.11-mm1 and it appears that my change as already been covered in different ways and I'm not having any problem with the buttons on mm1. Just in case you still want to know, the following is the ouptput if /proc/bus/input/devices.

I: Bus=0011 Vendor=0001 Product=0001 Version=ab41
N: Name="AT Translated Set 2 keyboard"
P: Phys=isa0060/serio0/input0
H: Handlers=kbd
B: EV=120013
B: KEY=4 2000000 3802078 f840d001 f2ffffdf ffefffff ffffffff fffffffe
B: MSC=10
B: LED=7

I: Bus=0011 Vendor=0002 Product=0008 Version=0000
N: Name="AlpsPS/2 ALPS TouchPad"
P: Phys=isa0060/serio1/input0
H: Handlers=mouse0
B: EV=f
B: KEY=420 0 670000 0 0 0 0 0 0 0 0
B: REL=3
B: ABS=1000003

Signature · 3 lines
Michael Marineau
[email protected]
Oregon State University
#3 lore raw
Quoted 10 lines · Micheal Marineau
Quoted 10 lines
Quoted 4 lines

The following patch changes the ALPS touchpad driver to treat some mouse buttons as mouse buttons rather than what appears to be joystick buttons. This is needed for the Dell Inspiron 8500's DualPoint stick buttons. Without this patch only the touchpad buttons behave properly.

Thanks for the patch. I'll try to put this change into my the latest version of the ALPS driver, which, unfortunately, has been reworked significantly.

Quoted 6 lines
Quoted 2 lines

Can you send me the output of /proc/bus/input/devices on your machine? I'd like to know the ID of your ALPS dualpoint.

I just looked at the new version in 2.6.11-mm1 and it appears that my change as already been covered in different ways and I'm not having any problem with the buttons on mm1.

Good. I just noticed the same. :)

Quoted 12 lines

Just in case you still want to know,
the following is the ouptput if /proc/bus/input/devices.

I: Bus=0011 Vendor=0001 Product=0001 Version=ab41
N: Name="AT Translated Set 2 keyboard"
P: Phys=isa0060/serio0/input0
H: Handlers=kbd
B: EV=120013
B: KEY=4 2000000 3802078 f840d001 f2ffffdf ffefffff ffffffff fffffffe
B: MSC=10
B: LED=7

Quoted 8 lines

I: Bus=0011 Vendor=0002 Product=0008 Version=0000
N: Name="AlpsPS/2 ALPS TouchPad"
P: Phys=isa0060/serio1/input0
H: Handlers=mouse0
B: EV=f
B: KEY=420 0 670000 0 0 0 0 0 0 0 0
B: REL=3
B: ABS=1000003

Thanks. Could you also attach the one from -mm1? It's a bit different.

Signature · 2 lines
Vojtech Pavlik
SuSE Labs, SuSE CR
#4 lore raw
Quoted 46 lines · Vojtech Pavlik
Quoted 10 lines · Micheal Marineau
Quoted 10 lines
Quoted 4 lines

The following patch changes the ALPS touchpad driver to treat some mouse buttons as mouse buttons rather than what appears to be joystick buttons. This is needed for the Dell Inspiron 8500's DualPoint stick buttons. Without this patch only the touchpad buttons behave properly.

Thanks for the patch. I'll try to put this change into my the latest version of the ALPS driver, which, unfortunately, has been reworked significantly.

Quoted 6 lines
Quoted 2 lines

Can you send me the output of /proc/bus/input/devices on your machine? I'd like to know the ID of your ALPS dualpoint.

I just looked at the new version in 2.6.11-mm1 and it appears that my change as already been covered in different ways and I'm not having any problem with the buttons on mm1.

Good. I just noticed the same. :)

Quoted 12 lines

Just in case you still want to know,
the following is the ouptput if /proc/bus/input/devices.

I: Bus=0011 Vendor=0001 Product=0001 Version=ab41
N: Name="AT Translated Set 2 keyboard"
P: Phys=isa0060/serio0/input0
H: Handlers=kbd
B: EV=120013
B: KEY=4 2000000 3802078 f840d001 f2ffffdf ffefffff ffffffff fffffffe
B: MSC=10
B: LED=7

Quoted 8 lines

I: Bus=0011 Vendor=0002 Product=0008 Version=0000
N: Name="AlpsPS/2 ALPS TouchPad"
P: Phys=isa0060/serio1/input0
H: Handlers=mouse0
B: EV=f
B: KEY=420 0 670000 0 0 0 0 0 0 0 0
B: REL=3
B: ABS=1000003

Quoted 2 lines

Thanks. Could you also attach the one from -mm1? It's a bit different.

here is the mm1 version:
I: Bus=0011 Vendor=0001 Product=0001 Version=ab41
N: Name="AT Translated Set 2 keyboard"
P: Phys=isa0060/serio0/input0
H: Handlers=kbd mouse0
B: EV=120017
B: KEY=40000 4 2000000 3802078 f840d001 b2ffffdf ffefffff ffffffff fffffffe
B: REL=140
B: MSC=10
B: LED=7

I: Bus=0011 Vendor=0002 Product=0008 Version=0000
N: Name="PS/2 Mouse"
P: Phys=isa0060/serio1/input1
H: Handlers=mouse1
B: EV=7
B: KEY=70000 0 0 0 0 0 0 0 0
B: REL=3

I: Bus=0011 Vendor=0002 Product=0008 Version=6337
N: Name="AlpsPS/2 ALPS GlidePoint"
P: Phys=isa0060/serio1/input0
H: Handlers=mouse2
B: EV=f
B: KEY=420 0 70000 0 0 0 0 0 0 0 0
B: REL=3
B: ABS=1000003

Signature · 3 lines
Michael Marineau
[email protected]
Oregon State University
#5 lore raw
Quoted 21 lines · Micheal Marineau
Quoted 2 lines

Thanks. Could you also attach the one from -mm1? It's a bit different.

here is the mm1 version:
I: Bus=0011 Vendor=0001 Product=0001 Version=ab41
N: Name="AT Translated Set 2 keyboard"
P: Phys=isa0060/serio0/input0
H: Handlers=kbd mouse0
B: EV=120017
B: KEY=40000 4 2000000 3802078 f840d001 b2ffffdf ffefffff ffffffff fffffffe
B: REL=140
B: MSC=10
B: LED=7

I: Bus=0011 Vendor=0002 Product=0008 Version=0000
N: Name="PS/2 Mouse"
P: Phys=isa0060/serio1/input1
H: Handlers=mouse1
B: EV=7
B: KEY=70000 0 0 0 0 0 0 0 0
B: REL=3

Quoted 8 lines

I: Bus=0011 Vendor=0002 Product=0008 Version=6337
N: Name="AlpsPS/2 ALPS GlidePoint"
P: Phys=isa0060/serio1/input0
H: Handlers=mouse2
B: EV=f
B: KEY=420 0 70000 0 0 0 0 0 0 0 0
B: REL=3
B: ABS=1000003

Thanks!

Signature · 2 lines
Vojtech Pavlik
SuSE Labs, SuSE CR
#6 lore raw
In reply to Micheal Marineau
Quoted 4 lines · Micheal Marineau

The following patch changes the ALPS touchpad driver to treat some mouse buttons as mouse buttons rather than what appears to be joystick buttons. This is needed for the Dell Inspiron 8500's DualPoint stick buttons. Without this patch only the touchpad buttons behave properly.

After investigating the problem deeper it looks like this should already be fixed in Andrew Morton's -mm tree. Can you try it?

Quoted 22 lines
drivers/input/mouse/alps.c 2005-03-06 16:45:07.000000000 -0800 renamed from drivers/input/mouse/alps.c 2005-03-01 23:38:13.000000000 -0800 +2 -4
@@ -97,8 +97,8 @@
 
                input_report_rel(dev, REL_X, x);
                input_report_rel(dev, REL_Y, -y);
-               input_report_key(dev, BTN_A, left);
-               input_report_key(dev, BTN_B, right);
+               input_report_key(dev, BTN_LEFT, left);
+               input_report_key(dev, BTN_RIGHT, right);
                input_sync(dev);
                return;
        }
@@ -389,8 +389,6 @@
        psmouse->dev.evbit[LONG(EV_REL)] |= BIT(EV_REL);
        psmouse->dev.relbit[LONG(REL_X)] |= BIT(REL_X);
        psmouse->dev.relbit[LONG(REL_Y)] |= BIT(REL_Y);
-       psmouse->dev.keybit[LONG(BTN_A)] |= BIT(BTN_A);
-       psmouse->dev.keybit[LONG(BTN_B)] |= BIT(BTN_B);
 
        psmouse->dev.evbit[LONG(EV_ABS)] |= BIT(EV_ABS);
        input_set_abs_params(&psmouse->dev, ABS_X, 0, 1023, 0, 0);
Signature · 2 lines
Vojtech Pavlik
SuSE Labs, SuSE CR