Slackware This Forum is for the discussion of Slackware Linux.
|
| Notices |
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Are you new to LinuxQuestions.org? Visit the following links:
Site Howto |
Site FAQ |
Sitemap |
Register Now
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
 |
GNU/Linux Basic Guide
This 255-page guide will provide you with the keys to understand the philosophy of free software, teach you how to use and handle it, and give you the tools required to move easily in the world of GNU/Linux. Many users and administrators will be taking their first steps with this GNU/Linux Basic guide and it will show you how to approach and solve the problems you encounter.
Click Here to receive this Complete Guide absolutely free. |
|
 |
|
10-17-2007, 11:37 AM
|
#1
|
|
Slackware Contributor
Registered: Oct 2004
Location: Tuscaloosa, Alabama (USA)
Distribution: Slackware
Posts: 1,894
Rep: 
|
Synaptics driver on Xorg 7.3
Now that Slackware -current (post 12.0) is open and has Xorg-7.3 in it, some of you may have discovered that the third-party synaptics driver won't compile. This thread has a brief discussion of the problem, but it's not clear as to whether it's Xorg or synaptics that should change something: http://lists.freedesktop.org/archive...er/028523.html
The latest version of synaptics at http://web.telia.com/~u89404340/touchpad/ won't build at all, regardless of whether you make the needed changes as outlined later in this post, so you'll need to get the latest development version from git:
Code:
git clone http://web.telia.com/~u89404340/touchpad/synaptics/.git
This post was written on 17 October 2007, so later versions may or may not compile correctly.
This will create a 'synaptics' directory in whatever directory from which you executed the above command. Before you can compile it, though, you must do this:
Open /usr/include/xorg/miscstruct.h with an editor (as root).
Line 54 looks like this:
Code:
#include <pixman.h>
Edit it to look like this:
Code:
#include <pixman-1/pixman.h>
Now change directory to the 'synaptics' directory created by the 'git clone' command above. All of the following should also be done as root.
Code:
make
mkdir -p /tmp/synaptics-git
make install PREFIX=/usr DESTDIR=/tmp/synaptics-git
cd /tmp/synaptics-git
strip --strip-unneeded usr/bin/* usr/lib/xorg/modules/input/synaptics_drv.so
gzip -9 usr/man/man?/*.?
mkdir install
cat << EOF > install/slack-desc
synaptics: synaptics (Synaptics touchpad driver for X.org/XFree86)
synaptics:
synaptics: This is a driver for the Synaptics TouchPad for XOrg/XFree86 4.x.
synaptics: A Synaptics touchpad by default operates in compatibility mode by
synaptics: emulating a standard mouse. However, by using a dedicated driver,
synaptics: more advanced features of the touchpad becomes available.
synaptics:
EOF
makepkg -c n -l y ../synaptics-20071017_git-i486-1_rlw.tgz
Edit the last line (makepkg) to use the correct date and BUILD tag (not _rlw).
You can now install that package normally (it will be in /tmp).
Configuration of the synaptics driver (additions to xorg.conf and such) is left as an exercise to the reader :-)
You will probably also need to comment out the options line for the psmouse module in /etc/modprobe.d/psmouse -- it seems that the synaptics driver wants the default kernel options for the psmouse module (at least on my system).
Oh yeah, once you're finished, go change the /usr/include/xorg/miscstruct.h header back to its original version (just in case) :-)
Last edited by rworkman; 10-25-2007 at 11:22 PM.
Reason: Fix 'make install' - thanks, nullboy :)
|
|
|
|
10-17-2007, 01:38 PM
|
#2
|
|
Moderator
Registered: Jan 2005
Location: Midwest USA, Central Illinois
Distribution: SlackwareŽ
Posts: 10,339
|
Hi,
Thanks robby!
|
|
|
|
10-30-2007, 06:17 AM
|
#3
|
|
Member
Registered: Oct 2003
Distribution: slackware
Posts: 36
Rep:
|
pixmap ??
Hi, I tried to do as suggested ....
First the synaptics driver with altered /usr/include/xorg/miscstruct.h did not compile after upgrade to current... pixman not found. This because pixman was not installed as I had forgotten to use the option --install-new with upgradepkg (and thus had bypassed this new package; which I found out later when X did not start....)
Still, before that, I got the synaptics driver compiled, when I edited "#include <pixman.h>" to "#include <pixmap.h>"...
(In /usr/include/xorg/ there is no file pixman.h; only pixmap.h).
Now X is working and my synaptics driver behaves as expected
I also compiled a second driver as advised in above post and behaviour seems indistinguishable from that with the driver compiled against pixmap.....
Did I hit by accident on a (different) typo in the include of miscstruct.h ? Or is this include not needed at all?
By the way, I found another oddity... After upgrade my external USB mouse did no longer work. In the Section "ServerLayout" of my old xorg.conf it was classified as "InputDevice" "AlwaysCore", with the touchpad being "InputDevice" "CorePointer". If I swapped the AlwaysCore/CorePointer labels, only the USB mouse worked and the touchpad was dead. When I omitted the "AlwaysCore" classification for one of these two "InputDevice"s, the other being "CorePointer", both worked happily alongside each other.
Last edited by brobr; 10-31-2007 at 10:01 AM.
Reason: had not installed pixman before, but this repair also works
|
|
|
|
10-31-2007, 09:49 AM
|
#4
|
|
LQ Newbie
Registered: Oct 2007
Location: Luxembourg
Distribution: Slackware-current
Posts: 8
Rep:
|
hello rworkman,
Thanks you for your post.
But, on my slack current, synaptics don't work.
I made compiling synaptics-git with your process, and xorg work with the old xorg.conf.
The modules evdev and psmouse (without option) are loaded.
But, xorg does not want to work with him. See this part of Xorg.log:
Quote:
(II) Synaptics touchpad driver version 0.14.6 (1406)
Mouse0 no synaptics event device found (checked 18 nodes)
(**) Option "Device" "/dev/input/mouse0"
(**) Option "LeftEdge" "1700"
(**) Option "RightEdge" "5300"
(**) Option "TopEdge" "1700"
(**) Option "BottomEdge" "4200"
(**) Option "VertScrollDelta" "100"
(**) Option "FingerLow" "25"
(**) Option "FingerHigh" "30"
(**) Option "MaxTapTime" "180"
(**) Option "MaxTapMove" "220"
Query no Synaptics: 6003C8
(EE) Mouse0 no synaptics touchpad detected and no repeater device
(EE) Mouse0 Unable to query/initialize Synaptics hardware.
(EE) PreInit failed for input device "Mouse0"
(II) UnloadModule: "synaptics"
|
After, the default pointer is loaded.
I worked one day on the problem, and I don't find the solution. 
|
|
|
|
10-31-2007, 11:10 AM
|
#5
|
|
Slackware Contributor
Registered: Oct 2004
Location: Tuscaloosa, Alabama (USA)
Distribution: Slackware
Posts: 1,894
Original Poster
Rep: 
|
brobr:
pixman and pixmap are the same thing - you essentially pointed it at the old header, which is why it worked (at least, I think that's why) :-)
|
|
|
|
10-31-2007, 11:11 AM
|
#6
|
|
Slackware Contributor
Registered: Oct 2004
Location: Tuscaloosa, Alabama (USA)
Distribution: Slackware
Posts: 1,894
Original Poster
Rep: 
|
Quote:
Originally Posted by vlad.askiparek
hello rworkman,
Thanks you for your post.
But, on my slack current, synaptics don't work.
I made compiling synaptics-git with your process, and xorg work with the old xorg.conf.
The modules evdev and psmouse (without option) are loaded.
But, xorg does not want to work with him. See this part of Xorg.log:
After, the default pointer is loaded.
I worked one day on the problem, and I don't find the solution. 
|
I don't know - make *sure* the psmouse module is not loading with imps as the protocol -- the only way I can reproduce the error you're seeing is to load psmouse with that protocol.
|
|
|
|
10-31-2007, 02:14 PM
|
#7
|
|
LQ Newbie
Registered: Oct 2007
Location: Luxembourg
Distribution: Slackware-current
Posts: 8
Rep:
|
OK, it is my fault...
Before the update, I already used kernel-2.6.23.1, compiled myself.
In the update, all the modules were not crushed and there was confusion between kernel.
The kernel of current is compiled for i686 and I had compiled mine for amd-k8.
Mea culpa
The next time, I shall read the fucking logs!  (newbie from 15 years)
thanks
ps: but I don't understand why I had no problems with the other modules?!?
Last edited by vlad.askiparek; 10-31-2007 at 02:25 PM.
|
|
|
|
10-31-2007, 10:40 PM
|
#8
|
|
LQ Newbie
Registered: Sep 2007
Posts: 11
Rep:
|
Quote:
Originally Posted by rworkman
but it's not clear as to whether it's Xorg or synaptics that should change something
|
I'm guessing that it's an xorg issue, as I can't get either the stable or testing driver to configure for linuxwacom. I tried applying the fix for pixman.h (ie, the <pixman-1/pixman.h> as the xorg patch was saying) and I get a new set of errors.
I can get some more info up if you guys think it'd matter, or I can start another thread.
Quote:
Originally Posted by brobr
Still, before that, I got the synaptics driver compiled, when I edited "#include <pixman.h>" to "#include <pixmap.h>"...
(In /usr/include/xorg/ there is no file pixman.h; only pixmap.h).
|
How would I go about trying something like that with the wacom driver?
Last edited by rampire; 10-31-2007 at 10:48 PM.
Reason: forgot to ask about editing wacom driver
|
|
|
|
11-01-2007, 04:34 PM
|
#9
|
|
Member
Registered: May 2004
Location: Rome, Italy
Distribution: slackware-current
Posts: 454
Rep:
|
Nice hacking rworkman. Good job.
Thanks,
Edward
|
|
|
|
02-23-2008, 09:16 PM
|
#10
|
|
LQ Newbie
Registered: Feb 2008
Posts: 5
Rep:
|
Any idea why I tried this and Xorg 7.3 + Synaptics still doesnt work?
I'm SLAMD64 btw, i made sure it used /usr/lib64 - indeed it does. It loads the module fine but says Query No Synaptics. I guess that means no dice.
Any suggestions? /etc/rc.d/rc.modules doesnt say proto=imps2 or anything, but boot pulls it up as an imps2 synaptics touchpad. It's included in the kernel by default.
Im probably just going to downgrade to xorg 7.2!!! Unless of course - someone has a solution?
This is too much hassle to mess with
Hey rworkman - I noticed you said 'newer versions may not compile or work correctly' can you by chance reference a link to the .tgz package you made that worked for you?
I had it working fine in the Xorg that came with v12.0
Quote:
Quote:
Originally Posted by vlad.askiparek View Post
hello rworkman,
Thanks you for your post.
But, on my slack current, synaptics don't work.
I made compiling synaptics-git with your process, and xorg work with the old xorg.conf.
The modules evdev and psmouse (without option) are loaded.
But, xorg does not want to work with him. See this part of Xorg.log:
After, the default pointer is loaded.
I worked one day on the problem, and I don't find the solution.
|
I don't know - make *sure* the psmouse module is not loading with imps as the protocol -- the only way I can reproduce the error you're seeing is to load psmouse with that protocol.
|
This is the default behavior for the psmouse driver, I tried setting the configuration file to NOT include the imps2 module of the mouse, and it forces it to. Theres nothing I can seemingly do to get psmouse to load without it loading as an imps2 device.
Last edited by kinesis1; 02-23-2008 at 09:23 PM.
|
|
|
|
02-23-2008, 09:34 PM
|
#11
|
|
Slackware Contributor
Registered: Oct 2004
Location: Tuscaloosa, Alabama (USA)
Distribution: Slackware
Posts: 1,894
Original Poster
Rep: 
|
Well, Slackware ships an /etc/modprobe.d/psmouse file that looks like this:
Code:
$ cat /etc/modprobe.d/psmouse
# PS/2 mouse support:
# The default options when the psmouse module is loaded will completely
# break the mouse if you change consoles with several models of KVM
# switches. Therefore, we'll have it use the imps protocol here, which
# is a more basic protocol that is less likely to cause problems with
# the mouse. If you'd rather use the kernel default options, just
# comment out the line below. If you'd rather choose your own options,
# then edit the line below as desired.
options psmouse proto=imps
If you haven't done what it says to use the kernel defaults, then there's your problem.
|
|
|
|
02-24-2008, 09:47 PM
|
#12
|
|
LQ Newbie
Registered: Feb 2008
Posts: 5
Rep:
|
omg it works
OMG it works thanks so much
|
|
|
|
04-20-2008, 09:10 PM
|
#13
|
|
Member
Registered: Jan 2008
Location: Richmond, VA USA
Distribution: Slackware
Posts: 144
Rep:
|
Quote:
Originally Posted by rworkman
Now that Slackware -current (post 12.0) is open and has Xorg-7.3 in it, some of you may have discovered that the third-party synaptics driver won't compile.
|
OMG - thank you, Robby Workman. I was about to pull my hair out after upgrading to -current.
|
|
|
|
04-20-2008, 10:21 PM
|
#14
|
|
Slackware Contributor
Registered: Oct 2004
Location: Tuscaloosa, Alabama (USA)
Distribution: Slackware
Posts: 1,894
Original Poster
Rep: 
|
You're welcome.
Since the original post, I've located some patches (thanks to the good folks over at Gentoo) that will make the 0.14.6 stable release of synaptics build and function just fine. I've got a package and sources at my personal site (see link below).
|
|
|
|
04-20-2008, 10:52 PM
|
#15
|
|
Member
Registered: Aug 2007
Distribution: File Server: Ubuntu 10.04
Posts: 56
Rep:
|
subscribed for future reference. Thanks, man  !
|
|
|
|
| Thread Tools |
Search this Thread |
|
|
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -5. The time now is 01:31 PM.
|
|
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.
|
Latest Threads
LQ News
|
|