From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([208.92.234.80] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from ) id 1QYsAw-0001Uc-SX for garchives@archives.gentoo.org; Tue, 21 Jun 2011 04:02:55 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id D27D41C149 for ; Tue, 21 Jun 2011 04:02:53 +0000 (UTC) Received: from lo.gmane.org (lo.gmane.org [80.91.229.12]) by pigeon.gentoo.org (Postfix) with ESMTP id 7F1C61C0A5 for ; Tue, 21 Jun 2011 03:49:50 +0000 (UTC) Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1QYryH-00045e-Gd for gentoo-amd64@lists.gentoo.org; Tue, 21 Jun 2011 05:49:49 +0200 Received: from ip68-231-22-224.ph.ph.cox.net ([68.231.22.224]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 21 Jun 2011 05:49:49 +0200 Received: from 1i5t5.duncan by ip68-231-22-224.ph.ph.cox.net with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 21 Jun 2011 05:49:49 +0200 X-Injected-Via-Gmane: http://gmane.org/ To: gentoo-amd64@lists.gentoo.org From: Duncan <1i5t5.duncan@cox.net> Subject: [gentoo-amd64] Re: Lost synaptics touchpad scrolling after kernel upgrade Date: Tue, 21 Jun 2011 03:49:39 +0000 (UTC) Message-ID: References: <20110618021110.GA14222@localhost> Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-amd64@lists.gentoo.org Reply-to: gentoo-amd64@lists.gentoo.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 X-Complaints-To: usenet@dough.gmane.org X-Gmane-NNTP-Posting-Host: ip68-231-22-224.ph.ph.cox.net User-Agent: Pan/0.134 (Wait for Me; GIT 2acef4c branch-testing) Content-Transfer-Encoding: quoted-printable X-Archives-Salt: X-Archives-Hash: e91cf3a95be789656f80920402a4b552 Mansour Al Akeel posted on Fri, 17 Jun 2011 22:11:10 -0400 as excerpted: > Hello all, > =20 > I upgraded from 2.6.37-gentoo-r4 to 2.6.38-gentoo-r6. I didn't change > anything in the config file, and used the old kernel config to compile > the new kernel. However, when I booted into the new kernel, I found the > scrolling in the touch pad is not working ! I was hoping someone with a bit more direct laptop-with-touchpad=20 experience would reply, but no one has. Oh well, I have a netbook that=20 runs a touchpad and run live-git upstream kernels, so between the two,=20 hopefully I can help. But I run ~arch and while I don't typically update= =20 it as often as my main machine, it has been running 2.6.38 for some time,= =20 now and I'm forgetting the details. (Hey, 2.6.39 is out and the new 3.0=20 kernel already has multiple -rcs out, 2.6.38 was months ago, for me!) I=20 don't recall having any of this sort of problems, but I may not use the=20 scrolling you're using. My touch-pad is small and I don't use the edge- scrolling, instead choosing two-finger scrolling. In fact, that works much better now than it did, as AFAIK, the device now= =20 supports real two-finger detection while before, it only emulated it,=20 often causing problems on the one side when my fingers were too moist and= =20 it triggered scrolling when I wanted just normal mouse movement, while on= =20 the other, if my fingers were too dry, I couldn't get it to scroll when I= =20 wanted it to! Now, it works *MUCH* better, because it actually detects=20 the two separate touch-points and that's FAR more reliable than the=20 emulation it was using before. FWIW, I don't run full xorg.confs on either my netbook or workstation. =20 Instead, I rely on the built-in defaults for as much as I can, and only=20 have files in /etc/X11/xorg.conf.d/ that reflect any changes from what=20 xorg would normally run. My netbook has two files in that dir, the 20- synaptics.conf that the synaptics driver drops there, but I've commented=20 all its settings out, and a file of my own, with only the following=20 section -- everything else is xorg-standard built-in defaults. (FWIW,=20 it's running xorg-server-1.10.1, xf86-input-synaptics-1.4.0): Section "InputClass" Identifier "syntouch" MatchIsTouchpad "on" MatchDevicePath "/dev/input/event*" Driver "synaptics" Option "SHMConfig" Option "VertTwoFingerScroll" Option "HorizTwoFingerScroll" Option "TapButton1" "1" Option "TapButton2" "2" Option "EmulateTwoFingerMinW" "10" Option "EmulateTwoFingerMinZ" "47" Option "EmulateMidButtonTime" "500" Option "FingerHigh" "35" Option "FingerLow" "28" Option "FingerPress" "255" Option "MaxTapMove" "442" Option "TrackstickSpeed" "5" Option "EdgeMotionMinZ" "35" Option "EdgeMotionMaxZ" "68" Option "EdgeMotionMinSpeed" "1" Option "EdgeMotionMaxSpeed" "201" Option "EdgeMotionUseAlways" EndSection The synaptics device is /dev/input/event8, according to the xorg log. It= =20 also detects mouse0, but doesn't detect the syntouch there so unloads the= =20 driver for it. > If I boot into the older kernel it works fine. I recompiled the > following Xorg drivers under the new kernel : >=20 > xf86-input-evdev-2.6.0 xf86-input-mouse-1.7.0 xf86-input-synaptics-1.3.= 0 > xf86-video-fbdev-0.4.2 xf86-video-intel-2.14.0 xf86-video-vesa-2.3.0 FWIW, you can probably unmerge video-vesa and video-fbdev, assuming your=20 system's running the intel driver. Similarly, input-mouse is seriously=20 legacy and probably unneeded. input-evdev should work fine for external=20 plugin mice if necessary, as well as keyboard, and input-synaptics should= =20 take over the touchpad. > I tried to check the correct mouse device using: > cat /dev/input/* >=20 > For all the devices, but none produced the expected output of unreadabl= e > characters. Note that here, both /dev/input/event8 and /dev/input/mice produce=20 garbage when the mouse moves, but *ONLY* if I cat them from a real VT (as= =20 root), *NOT* if I try to do it from a konsole window inside X, where the=20 cat produces absolutely nothing. > For some reason, TouchPad is not found, as per /var/log/Xorg.0.log >=20 > [ 37.976] (II) No input driver/identifier specified (ignoring) > [ 37.976] (II) config/udev: Adding input device HDA Intel Headphone > (/dev/input/event7) > [ 37.976] (II) No input driver/identifier specified (ignoring) > [ 37.984] (II) config/udev: Adding input device AT Translated Set 2 > keyboard (/dev/input/event3) > [ 37.984] (**) AT Translated Set 2 keyboard: Applying InputClass > "evdev keyboard catchall" > [ 37.984] (**) AT Translated Set 2 keyboard: always reports core > events [ 37.984] (**) AT Translated Set 2 keyboard: Device: > "/dev/input/event3" > [ 37.990] (--) AT Translated Set 2 keyboard: Found keys [ 37.990] > (II) AT Translated Set 2 keyboard: Configuring as keyboard [ 37.990] > (II) XINPUT: Adding extended input device "AT Translated Set 2 keyboard= " > (type: KEYBOARD) > [ 37.990] (**) Option "xkb_rules" "evdev" > [ 37.990] (**) Option "xkb_model" "evdev" > [ 37.990] (**) Option "xkb_layout" "us" > [ 37.990] (II) config/udev: Adding input device SynPS/2 Synaptics > TouchPad (/dev/input/event4) > [ 37.990] (**) SynPS/2 Synaptics TouchPad: Applying InputClass "evde= v > touchpad catchall" > [ 37.990] (**) SynPS/2 Synaptics TouchPad: Applying InputClass > "touchpad catchall" > [ 37.990] (II) Synaptics touchpad driver version 1.3.0 [ 37.990] > (**) Option "Device" "/dev/input/event4" > [ 37.994] (--) SynPS/2 Synaptics TouchPad: invalid x-axis range.=20 > defaulting to 1615 - 5685=20 > [ 37.994] (--) SynPS/2 Synaptics TouchPad: invalid y-axis range.=20 > defaulting to 1729 - 4171=20 > [ 37.994] (--) SynPS/2 Synaptics TouchPad: invalid pressure range.=20 > defaulting to 0 - 256 > [ 37.994] (--) SynPS/2 Synaptics TouchPad: invalid finger width > range. defaulting to 0 - 16 > [ 37.994] (--) SynPS/2 Synaptics TouchPad: no supported touchpad > found > [ 37.994] (EE) SynPS/2 Synaptics TouchPad Unable to query/initialize > Synaptics hardware. > [ 37.999] (EE) PreInit failed for input device "SynPS/2 Synaptics > TouchPad" > [ 37.999] (II) UnloadModule: "synaptics" > [ 37.999] (II) config/udev: Adding input device SynPS/2 Synaptics > TouchPad (/dev/input/mouse0) > [ 37.999] (**) SynPS/2 Synaptics TouchPad: Applying InputClass > "touchpad catchall" > [ 37.999] (II) Synaptics touchpad driver version 1.3.0 [ 38.236] > (EE) SynPS/2 Synaptics TouchPad no synaptics event device found [ =20 > 38.236] (**) Option "Device" "/dev/input/mouse0" > [ 38.240] (--) SynPS/2 Synaptics TouchPad: invalid x-axis range.=20 > defaulting to 1615 - 5685 > [ 38.240] (--) SynPS/2 Synaptics TouchPad: invalid y-axis range.=20 > defaulting to 1729 - 4171 > [ 38.240] (--) SynPS/2 Synaptics TouchPad: invalid pressure range.=20 > defaulting to 0 - > 256 [ 38.240] (--) SynPS/2 Synaptics TouchPad: invalid finger width > range. defaulting to 0 - 16 > [ 38.261] (EE) Query no Synaptics: 6003C8 > [ 38.261] (--) SynPS/2 Synaptics TouchPad: no supported > touchpad found > [ 38.261] (EE) SynPS/2 Synaptics TouchPad Unable to query/initialize > Synaptics hardware. > [ 38.268] (EE) PreInit failed for input device "SynPS/2 Synaptics > TouchPad" > [ 38.268] (II) UnloadModule: "synaptics" It's trying to load it, but can't... > my Xorg: >=20 > Section "ServerLayout" > Identifier "X.org Configured" > Screen "Screen0" 0 0 InputDevice "Mouse0" > "CorePointer" > InputDevice "usb_mouse" "CorePointer" > InputDevice "Keyboard0" "CoreKeyboard" > EndSection As I mentioned above, that whole serverlayout section is pretty much all=20 default now (from xorg-server 1.8) and you should be able to delete it. =20 Once you get this issue fixed, you can try commenting the above and=20 restarting X, just to be sure. If it works fine with it all commented as= =20 it should, you can delete. > Section "Files" > ModulePath "/usr/lib64/xorg/modules" > FontPath "/usr/share/fonts/misc/" > FontPath "/usr/share/fonts/TTF/" > FontPath "/usr/share/fonts/OTF" > FontPath "/usr/share/fonts/Type1/" > FontPath "/usr/share/fonts/100dpi/" > FontPath "/usr/share/fonts/75dpi/" > FontPath "/usr/share/fonts/mono/" > EndSection Same with this files section. I looks default to me, so should be=20 deletable. > Section "Module" > Load "dri2" > Load "extmod" > Load "dbe" > Load "record" > Load "dri" > Load "glx" > Load "synaptics" > EndSection This really is too. Synaptics isn't an absolute default, but it is with=20 the proper InputClass section. > Section "InputDevice" > Identifier "Keyboard0" > Driver "kbd" > EndSection >=20 > Section "InputDevice" > Identifier "Mouse0" > Driver "synaptics" > Option "Protocol" "auto-dev" > Option "Device" "/dev/input/mice" > Option "ZAxisMapping" "4 5 6 7" > Option "TapButton1" "1" > Option "TapButton2" "2" > Option "TapButton3" "3" > Option "SendCoreEvents" > Option "SHMConfig" "on" > EndSection >=20 > Section "InputDevice" > Identifier "usb_mouse" > Driver "mouse" > Option "Device" "/dev/input/mice" > Option "ZAxisMapping" "4 5" > Option "Buttons" "5" > EndSection These three inputdevice sections are entirely ignored by xorg server now,= =20 unless you set some special flags in the ServerFlags section. It's all=20 hotplugged and has been for quite some time, first with hal, now with=20 udev. (That's what the "no input driver/identifier specified" in the xor= g=20 log is all about, despite these, as they are ignored without those=20 serverflags settings, which you aren't using. It's ALL hotplugged now!) The inputclass sections can be used to configure hotplugged devices. See= =20 the xorg.conf manpage and my example above. It's worth noting that the=20 synaptics driver drops a default inputclass for its driver in /etc/X11/ xorg.conf.d, which is why you see it trying to detect, altho it's=20 failing, for reasons apparently unrelated to xorg (probably kernel) > Section "Monitor" > Identifier "Monitor0" > VendorName "Monitor Vendor" > ModelName "Monitor Model" > EndSection Defaults, delete. Only if you had custom modelines, or if you had custom= =20 monitor positioning for when you plugged in a second monitor, or the=20 like, is a monitor section really useful, any more. Otherwise, the=20 defaults are normally pretty good. > Section "Device" > Identifier "Card0" > Driver "intel" > VendorName "Intel Corporation" > BoardName "Arrandale Integrated Graphics Controller" > BusID "PCI:0:2:0" > EndSection More defaults. If you had some card-specific settings here,=20 > Section "Screen" > Identifier "Screen0" > Device "Card0" > Monitor "Monitor0" > SubSection "Display" > Viewport 0 0 Depth 1 > EndSubSection SubSection "Display" > Viewport 0 0 Depth 4 > EndSubSection SubSection "Display" > Viewport 0 0 Depth 8 > EndSubSection SubSection "Display" > Viewport 0 0 Depth 15 > EndSubSection SubSection "Display" > Viewport 0 0 Depth 16 > EndSubSection SubSection "Display" > Viewport 0 0 Depth 24 > EndSubSection > EndSection More defaults that can be deleted. IOW, your entire xorg.conf as it is, can be scrapped. If you want some=20 custom settings for one or more sections, drop files for those sections=20 in the /etc/X11/xorg.conf.d directory. As mentioned, you'll probably=20 already see one for the synaptics driver. You can modify it if you wish,= =20 or do what I did and simply comment everything out in it (if you delete=20 it, the next time you update, it'll be replaced, but if you leave it in=20 place but with everything commented, config-protection should kick in and= =20 let you delete the new one, or check to see if anything changed and then=20 delete it), creating your own alternative file in the same dir, with your= =20 custom settings, that won't be affected by a config update. If you have custom monitor positioning or other sections/settings, you=20 can drop files for them in the same place. But most folks won't need=20 much. >=20 > lsmod | sort : [I deleted these as pan screwed the wrapping up and I didn't want to=20 bother fixing it manually.] The kernel synaptics driver doesn't show up here. However, I believe it=20 can't be compiled as a module anyway, only built-in, so it not showing up= =20 in a list of modules is no surprise. But still, based on the fact that you lost the touchpad functionality=20 over a kernel upgrade *AND* on the fact that the xorg log shows the xorg=20 synaptics driver trying to load but finding no hardware to attach to, so=20 the touchpad fell back to the normal evdev driver, I'm guessing you=20 somehow lost the kernel config for it over the upgrade. Actually, I think I know how it happened, too. The kernel folks renamed=20 one of the dependencies for the synaptics driver, so it no longer shows=20 up as an option unless you enable the new name of that dependency. I'm=20 not sure this was over the 2.6.38 cycle, but it was recently... In your kernel config, under general setup, make sure either Embedded=20 system or Expert is set. The old name was Embedded. The new one is=20 Expert. (The label still appears to say embedded here, but the option it= =20 configures is EXPERT.) Once you've verified that is set, look under device drivers, input device= =20 support. Verify that event interface is set (that's the new evdev=20 keyboard and fallback mouse driver), as it probably will be. If you use=20 a console mouse (gpm), you'll still want mouse interface set as well,=20 because AFAIK, gpm doesn't handle evdev, only legacy mouse devices. If=20 you don't use gpm/text-console-mouse, you can probably disable mouse=20 interface without issue. Then make sure mice is enabled, and enter that submenu. Make sure ps/2=20 mouse is enabled, then verify synaptics ps/2 mouse protocol extension=20 underneath it. This last one, the synaptics protocol extension, is the=20 one affected by that new expert setting, formerly embedded, that may=20 possibly have triggered this whole thing. Of course, rebuild the kernel if you need to. Hopefully that's what it=20 was, and a rebuild and reboot onto the new kernel with those options set,= =20 will get you working touchpad extensions again. =3D:^) --=20 Duncan - List replies preferred. No HTML msgs. "Every nonfree program has a lord, a master -- and if you use the program, he is your master." Richard Stallman