Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Inspiron 8200 Touchpad Driver - Advanced Features now work!!
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware
View previous topic :: View next topic  
Author Message
count_zero
Guru
Guru


Joined: 17 May 2004
Posts: 460
Location: Little Rock, Arkansas, USA

PostPosted: Sat Jul 31, 2004 8:28 pm    Post subject: Inspiron 8200 Touchpad Driver - Advanced Features now work!! Reply with quote

I know lots of people like myself have been attempting to get the Dell I8200 touchpad edge scrolling to work correctly with the synaptics driver at http://w1.894.telia.com/~u89404340/touchpad/. Good news, Peter Österlund, the current maintainer, just emailed me to let me know that the driver should now work with the I8200 alps touchpad.

Just apply the alps.patch to your 2.6 kernel, build the new synaptics_drv.o and put it in the right path for your X modules. Follow the readme for a decent XF86Config and tweak it a bit to your liking.

It's still beta, but I have tested it and the driver does enable the special features in this touchpad. The tap/double-tap needs a bit of tweaking (let me know if you get it to work to your satisfaction), but this is a big improvement over previous tries! Kudos to the people who have worked so hard on this driver.

Anyway, here's the driver:
http://w1.894.telia.com/~u89404340/syn.tar.bz2
_________________
"We must all hang together, or assuredly we shall all hang separately."
-Ben Franklin


Last edited by count_zero on Sun Aug 01, 2004 1:55 am; edited 1 time in total
Back to top
View user's profile Send private message
count_zero
Guru
Guru


Joined: 17 May 2004
Posts: 460
Location: Little Rock, Arkansas, USA

PostPosted: Sun Aug 01, 2004 1:53 am    Post subject: Reply with quote

Okay, after applying another patch on top of the alps.patch, the tapping and double-tap work perfectly. I had to apply the patch by hand as I got 5 failed hunks while trying to patch it. Here's the patch (alps-hwtaps.patch):
Code:
---

 linux-petero/drivers/input/mouse/alps.c |   22 +++++++++++++++++++---
 1 files changed, 19 insertions(+), 3 deletions(-)

diff -puN drivers/input/mouse/alps.c~alps-hwtaps drivers/input/mouse/alps.c
--- linux/drivers/input/mouse/alps.c~alps-hwtaps        2004-07-31 18:03:28.929030248 +0200
+++ linux-petero/drivers/input/mouse/alps.c     2004-07-31 18:03:28.931029944 +0200
@@ -80,6 +80,8 @@ static void alps_process_packet(struct p
        struct input_dev *dev = &psmouse->dev;
        int x, y, z;
        int left = 0, right = 0, middle = 0;
+       int ges, fin;
+       static int prev_fin;

        input_regs(dev, regs);

@@ -121,6 +123,21 @@ static void alps_process_packet(struct p
                return;
        }

+       ges = packet[2] & 1;
+       fin = packet[2] & 2;
+
+       if (ges && !fin)
+               z = 40;
+
+       if (ges && fin && !prev_fin) {
+               input_report_abs(dev, ABS_X, x);
+               input_report_abs(dev, ABS_Y, y);
+               input_report_abs(dev, ABS_PRESSURE, 0);
+               input_report_key(dev, BTN_TOOL_FINGER, 0);
+               input_sync(dev);
+       }
+       prev_fin = fin;
+
        if (z > 30) input_report_key(dev, BTN_TOUCH, 1);
        if (z < 25) input_report_key(dev, BTN_TOUCH, 0);

@@ -131,7 +148,6 @@ static void alps_process_packet(struct p
        input_report_abs(dev, ABS_PRESSURE, z);
        input_report_key(dev, BTN_TOOL_FINGER, z > 0);

-       left  |= (packet[2]     ) & 1;
        left  |= (packet[3]     ) & 1;
        right |= (packet[3] >> 1) & 1;
        if (packet[0] == 0xff) {
@@ -350,7 +366,7 @@ static int alps_reconnect(struct psmouse
                return -1;

        if ((model == ALPS_MODEL_DUALPOINT ? param[2] : param[0]) & 0x04)
-               alps_tap_mode(psmouse, model, 0);
+               alps_tap_mode(psmouse, model, 1);

        if (alps_absolute_mode(psmouse)) {
                printk(KERN_ERR "alps.c: Failed to enable absolute mode\n");
@@ -383,7 +399,7 @@ int alps_init(struct psmouse *psmouse)

        if ((model == ALPS_MODEL_DUALPOINT ? param[2] : param[0]) & 0x04) {
                printk(KERN_INFO "  Disabling hardware tapping\n");
-               if (alps_tap_mode(psmouse, model, 0))
+               if (alps_tap_mode(psmouse, model, 1))
                        printk(KERN_WARNING "alps.c: Failed to disable hardware tapping\n");
        }

_

Check out this page for info about the patch:
http://marc.theaimsgroup.com/?l=linux-kernel&m=109104309904873&w=2

I've also included my configuration from the XFConfig file:
Code:
Section "InputDevice"
        Identifier    "AlpsTouchpad"
        Driver        "synaptics"
        Option        "Device"                "/dev/input/event0"
        Option        "Protocol"              "event"
        Option        "LeftEdge"              "120"
        Option        "RightEdge"             "830"
        Option        "TopEdge"               "120"
        Option        "BottomEdge"            "650"
        Option        "FingerLow"             "14"
        Option        "FingerHigh"            "15"
        Option        "ClickTime"             "1"
        Option        "MaxTapTime"            "160"
        Option        "MaxDoubleTapTime"      "100"
        Option        "MaxTapMove"            "110"
        Option        "EmulateMidButtonTime"  "75"
        Option        "VertScrollDelta"       "50"
        Option        "HorizScrollDelta"      "20"
        Option        "MinSpeed"              "0.6"
        Option        "MaxSpeed"              "0.9"
        Option        "AccelFactor"           "0.15"
        Option        "EdgeMotionMinSpeed"    "115"
        Option        "EdgeMotionMaxSpeed"    "115"
        Option        "UpDownScrolling"       "1"
        Option        "CircularScrolling"     "0"
        Option        "CircScrollDelta"       "0.1"
        Option        "CircScrollTrigger"     "2"
        Option        "SHMConfig"             "on"
EndSection

See the README.alps file included with the syn.tar.bz2 archive for more info on installing.
_________________
"We must all hang together, or assuredly we shall all hang separately."
-Ben Franklin
Back to top
View user's profile Send private message
-=LeXuS=-
n00b
n00b


Joined: 04 Nov 2003
Posts: 56

PostPosted: Thu Aug 05, 2004 6:45 pm    Post subject: Reply with quote

Hi count_zero,

i've tried the alps patch again, and .. tada, some problems.

First of all, it seems to work, i can move the cursor, tapping and buttons are working. But, the keyboard does not work anymore.

After the first try i've got "out of sync" messages, to solve this i loaded the psmouse module with proto=bare. This prevent the above messages, but as i sayd, the keyboard isn't working anymore....

And another small thing ive wonder is, ive got no "alps" or "synaptics" in kernel output at startup. Is this normal?

Bye and thanks for the tip!
Dan
Back to top
View user's profile Send private message
Corpse2
n00b
n00b


Joined: 14 Jan 2004
Posts: 60

PostPosted: Thu Aug 05, 2004 7:55 pm    Post subject: Reply with quote

does this also work for other touchpads?
I mean the tapping, because this doesn't work on my notebook.
Back to top
View user's profile Send private message
Corpse2
n00b
n00b


Joined: 14 Jan 2004
Posts: 60

PostPosted: Thu Aug 05, 2004 8:02 pm    Post subject: Reply with quote

never mind, i found a list at the homepage. I will just have to try :roll:
Back to top
View user's profile Send private message
count_zero
Guru
Guru


Joined: 17 May 2004
Posts: 460
Location: Little Rock, Arkansas, USA

PostPosted: Thu Aug 05, 2004 9:54 pm    Post subject: Reply with quote

-=LeXuS=- wrote:
Hi count_zero,

i've tried the alps patch again, and .. tada, some problems.

First of all, it seems to work, i can move the cursor, tapping and buttons are working. But, the keyboard does not work anymore.

After the first try i've got "out of sync" messages, to solve this i loaded the psmouse module with proto=bare. This prevent the above messages, but as i sayd, the keyboard isn't working anymore....

And another small thing ive wonder is, ive got no "alps" or "synaptics" in kernel output at startup. Is this normal?

Bye and thanks for the tip!
Dan


What does (as root)
Code:
dmesg | grep input

give you? Mine gives me:
Code:
input: AlpsPS/2 ALPS TouchPad on isa0060/serio1
input: AT Translated Set 2 keyboard on isa0060/serio0


Did the new alps.patch and alps-hwtaps.patch apply cleanly? If so, the kernel should recognize your touchpad as an alps pad (if it truly is one). You're running an I8200?
_________________
"We must all hang together, or assuredly we shall all hang separately."
-Ben Franklin
Back to top
View user's profile Send private message
-=LeXuS=-
n00b
n00b


Joined: 04 Nov 2003
Posts: 56

PostPosted: Fri Aug 06, 2004 5:12 am    Post subject: Reply with quote

@count_zero: Yes I'm running a I8200 (and it runs good) and the patch applied without error. I will try dmesg output again after work :( but if i remember, there are no output like this .... more to come, over and out
Back to top
View user's profile Send private message
-=LeXuS=-
n00b
n00b


Joined: 04 Nov 2003
Posts: 56

PostPosted: Thu Aug 12, 2004 5:18 pm    Post subject: Reply with quote

Today i tried 0.13.5 and, juhuuu, it works! Ok, tapping is disabled by default, but edge scrolling works. Does anybody knows who to enable tapping?
Back to top
View user's profile Send private message
iverson0881
Apprentice
Apprentice


Joined: 08 Jan 2004
Posts: 285
Location: CA

PostPosted: Sun Aug 15, 2004 9:28 pm    Post subject: Reply with quote

Sorry to be a bit of a newb here but how would I go about patching these two patches so they apply cleany. I'm currently running gentoo-dev-sources-2.6.7-r13 on a Inspiron 8200. I haven't tried these patches yet cuz I don't know how :oops:

Thanks
Back to top
View user's profile Send private message
-=LeXuS=-
n00b
n00b


Joined: 04 Nov 2003
Posts: 56

PostPosted: Mon Aug 16, 2004 1:12 pm    Post subject: Reply with quote

copy the patchfile alps.patch to your kernel source directory (/usr/src/linux-2.6.7-gentoo-r13) and do a

Code:
patch -p1 < alps.patch


The -pX tells patch to cut the first part of the filenames listed in the patchfile from this path. I dont know from where the alps patch was created. Maybe you have to use -p0, just try, i've got no prompt or error during patching, if you got something, just try -p0...

bye[/code]
Back to top
View user's profile Send private message
iverson0881
Apprentice
Apprentice


Joined: 08 Jan 2004
Posts: 285
Location: CA

PostPosted: Mon Aug 16, 2004 11:49 pm    Post subject: Reply with quote

Ok i did this and it suceeded. I rebooted and then looked for the module or something to enable in the kernel menu to build the support but I couldn't find anything. I've applied the alps.patch. Should I apply the second patch that was posted up and above? second poster i believe
Back to top
View user's profile Send private message
-=LeXuS=-
n00b
n00b


Joined: 04 Nov 2003
Posts: 56

PostPosted: Tue Aug 17, 2004 6:09 am    Post subject: Reply with quote

The second patch need to be applied by hand... so i would leave it. Read the README file. There is written down what needs to be activated. There is no "Synaptics" or something in the kernel config, if i remember right you have to activate PS2 Mouse support, input core event support and maybe something else...

read the README!
Back to top
View user's profile Send private message
iverson0881
Apprentice
Apprentice


Joined: 08 Jan 2004
Posts: 285
Location: CA

PostPosted: Fri Sep 10, 2004 4:19 pm    Post subject: Reply with quote

I have the first patch applied but it doesn't get read by xorg.conf. But when i run cat /dev/mice the mouse brings up random characters meaning its working.

What else could I try to get the touchpad working?
Back to top
View user's profile Send private message
count_zero
Guru
Guru


Joined: 17 May 2004
Posts: 460
Location: Little Rock, Arkansas, USA

PostPosted: Sat Sep 11, 2004 2:14 pm    Post subject: Reply with quote

The patch is for the kernel and xorg really shouldn't matter. Make sure that your synaptics_drv.o is in the right spot: /usr/X11R6/lib/modules/drivers and that this path is set in your xorg.conf file (it should be by default, but if not, just add the line
Code:
ModulePath    "/usr/X11R6/lib/modules/drivers"

You also have to load the module in your xorg.conf file, in your "Module" section:
Code:
Load   "synaptics"

Finally, make sure that your "InputDevice" mouse section contains something like I listed above.
_________________
"We must all hang together, or assuredly we shall all hang separately."
-Ben Franklin
Back to top
View user's profile Send private message
iverson0881
Apprentice
Apprentice


Joined: 08 Jan 2004
Posts: 285
Location: CA

PostPosted: Mon Sep 13, 2004 3:41 am    Post subject: Reply with quote

Yeah I didn't need to patch all I had to do was emerge synaptics and then add that modulepath since it was commented and then insert the load in xorg.conf

And it works great =)

thank you so much
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum