[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#576211: xserver-xorg-input-synaptics: ValuatorAxis limits are set from device limits



Package: xserver-xorg-input-synaptics
Version: 1.2.1-1
Severity: important
Tags: upstream patch

Hello,
the synaptics driver set the ValuatorAxis limits to the device limits (like an
absolute axis device - synaptics driver sends relative events) and the X
pointer position can obtain only discrete values. The cursor moves by stairs.
Example:
  X-resolution: 1920
  Touchpad: x-axis range 32 - 544
    Only every  1920 / (544 - 32) = 3.75  column can be hit


Next simple patch disables setup of the ValuatorAxis limits and after applying
the patch the cursor moves smoothly with a pixel precision.

Regards,
	Tibor Zenis



--- xserver-xorg-input-synaptics-1.2.1/src/synaptics.c  2010-04-01 16:32:13.000000000 +0200
+++ xserver-xorg-input-synaptics-1.2.1_fix/src/synaptics.c      2010-04-01 16:17:47.000000000 +0200
@@ -922,7 +922,8 @@ DeviceInit(DeviceIntPtr dev)
 #if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
             axes_labels[0],
 #endif
-            min, max, priv->resx * 1000, 0, priv->resx * 1000);
+//            min, max, priv->resx * 1000, 0, priv->resx * 1000);
+            -1, -1, 1, 0, 1);
     xf86InitValuatorDefaults(dev, 0);
 
     /* Y valuator */
@@ -940,7 +941,8 @@ DeviceInit(DeviceIntPtr dev)
 #if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
             axes_labels[1],
 #endif
-            min, max, priv->resy * 1000, 0, priv->resy * 1000);
+//            min, max, priv->resy * 1000, 0, priv->resy * 1000);
+            -1, -1, 1, 0, 1);
     xf86InitValuatorDefaults(dev, 1);
 
 #if GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0






-- Package-specific info:
/var/lib/x11/X.roster does not exist.

/var/lib/x11/X.md5sum does not exist.

X server symlink status:
lrwxrwxrwx 1 root root 13 Aug 29  2009 /etc/X11/X -> /usr/bin/Xorg
-rwxr-xr-x 1 root root 1866784 Mar 23 17:10 /usr/bin/Xorg

/var/lib/x11/xorg.conf.roster does not exist.

VGA-compatible devices on PCI bus:
01:05.0 VGA compatible controller: ATI Technologies Inc RS482 [Radeon Xpress 200M]

/var/lib/x11/xorg.conf.md5sum does not exist.

Xorg X server configuration file status:
-rw-r--r-- 1 root root 5257 Apr  1 16:26 /etc/X11/xorg.conf

Contents of /etc/X11/xorg.conf:
# /etc/X11/xorg.conf (xorg X Window System server configuration file)
#
# This file was generated by dexconf, the Debian X Configuration tool, using
# values from the debconf database.
#
# Edit this file with caution, and see the /etc/X11/xorg.conf manual page.
# (Type "man /etc/X11/xorg.conf" at the shell prompt.)
#
# This file is automatically updated on xserver-xorg package upgrades *only*
# if it has not been modified since the last upgrade of the xserver-xorg
# package.
#
# If you have edited this file but would like it to be automatically updated
# again, run the following command:
#   sudo dpkg-reconfigure -phigh xserver-xorg

Section "Files"
	FontPath	"/usr/share/fonts/X11/misc"
	FontPath	"/usr/share/fonts/X11/cyrillic"
	FontPath	"/usr/share/fonts/X11/100dpi/:unscaled"
	FontPath	"/usr/share/fonts/X11/75dpi/:unscaled"
	FontPath	"/usr/share/fonts/X11/Type1"
	FontPath	"/usr/share/fonts/X11/100dpi"
	FontPath	"/usr/share/fonts/X11/75dpi"
	# path to defoma fonts
	FontPath	"/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType"
EndSection

Section "Module"
	Load	"bitmap"
	Load	"dbe"
	Load	"ddc"
	Load	"dri"
	Load	"extmod"
	Load	"freetype"
	Load	"glx"
	Load	"int10"
	Load	"record"
	Load	"type1"
	Load	"v4l"
	Load	"vbe"
EndSection

Section "ServerFlags"
	Option "HandleSpecialKeys" "Always"
	Option "DontZap"	"False"
EndSection

Section "InputDevice"
	Identifier	"Generic Keyboard"
	Driver		"kbd"
	Option		"CoreKeyboard"
	Option		"XkbRules"	"xorg"
	Option		"XkbModel"	"pc105"
	Option		"XkbLayout"	"us"
#	Option		"XkbLayout"	"sk_tz"
	Option      "XkbOptions" "ctrl:nocaps"
EndSection

Section "InputDevice"
	Identifier	"Configured Mouse"
	Driver		"mouse"
	Option		"CorePointer"
	Option		"Device"		"/dev/input/mice"
	Option		"Protocol"		"ImPS/2"
	Option		"Emulate3Buttons"	"true"
EndSection

Section "InputDevice"
	Identifier	"Synaptics Touchpad"
	Driver		"synaptics"
	Option		"SendCoreEvents"	"true"
	Option		"Device"		"/dev/psaux"
	Option		"Protocol"		"auto-dev"
#	Option		"HorizScrollDelta"	"0"
EndSection

Section "InputDevice"
        Identifier      "Touchpad"
        Driver          "synaptics"
        Option          "Device"                "/dev/input/mouse0"
        Option          "Protocol"              "auto-dev"
        Option          "VertTwoFingerScroll"   "0"
        Option          "HorizTwoFingerScroll"  "0"
	Option		"VertEdgeScroll"	"1"
	Option		"HorizEdgeScroll"	"1"
	Option		"CornerCoasting"	"1"
	Option		"EdgeMotionUseAlways"	"1"
#	Option		"MinSpeed"		"0.15"
#	Option		"MaxSpeed"		"0.35"
	Option		"MinSpeed"		"0.50"
	Option		"MaxSpeed"		"1.00"
#	Option		"AccelFactor"		".55"
	Option		"EdgeMotionMinSpeed"	"100"
	Option		"EdgeMotionMaxSpeed"	"100"
#	Option		"VertResolution"	"800"
#	Option		"HorizResolution"	"1024"
        Option          "TapButton1"            "1"
        Option          "TapButton2"            "2"
        Option          "TapButton3"            "3"
	Option		"MaxTapTime"		"180"
	Option		"EmulateMidButtonTime"	"75"
#	Option		"SHMConfig"		"Yes"
EndSection

#Section "Device"
#	Identifier	"fb"
#	Driver		"fbdev"
#	BusID		"PCI:1:5:0"
#	Option		"ShadowFB"	"false"
#EndSection

Section "Device"
	Identifier	"ATI Technologies Inc RS482 [Radeon Xpress 200M]"
	Driver		"radeon"
#	Driver		"fglrx"
	BusID		"PCI:1:5:0"
#	Option		"AGPFastWrite"	"true"
#	Option		"EnablePageFlip"	"true"
#	Option		"DynamicClocks"	"true"
	Option		"DRI"	"true"
	Option		"VideoOverlay"	"true"
	Option		"OpenGLOverlay"	"false"
	Option		"BackingStore"	"on"
	Option		"SaveUnder"	"on"
#	Option		"SWCursor"	"on"
#	Option "Monitor-LVDS" "Internal Panel"
#	Option "Monitor-VGA-0" "External VGA Monitor"
EndSection

Section "Monitor"
	Identifier	"External VGA Monitor"
	Option		"DPMS"
	Option		"Enable"	"True"
#	Modeline "1280x1024_75.00"  138.54  1280 1368 1504 1728  1024 1025 1028 1069  -HSync +Vsync
#	Option "PreferredMode" "1280x1024_75.00"
EndSection

Section "ServerFlags"
	Option		"StandbyTime" "0"
	Option		"SuspendTime" "0"
	Option		"OffTime" "5"
EndSection

Section "Screen"
	Identifier	"Default Screen"
	Device		"ATI Technologies Inc RS482 [Radeon Xpress 200M]"
#	Monitor		"Generic Monitor"
	DefaultDepth	24
	SubSection "Display"
		Depth		1
#		Modes		"1280x800" "1280x768" "1200x800" "1152x864" "1152x768" "1024x768" "800x600" "640x480"
	EndSubSection
	SubSection "Display"
		Depth		4
#		Modes		"1280x800" "1280x768" "1200x800" "1152x864" "1152x768" "1024x768" "800x600" "640x480"
	EndSubSection
	SubSection "Display"
		Depth		8
#		Modes		"1280x800" "1280x768" "1200x800" "1152x864" "1152x768" "1024x768" "800x600" "640x480"
	EndSubSection
	SubSection "Display"
		Depth		15
#		Modes		"1280x800" "1280x768" "1200x800" "1152x864" "1152x768" "1024x768" "800x600" "640x480"
	EndSubSection
	SubSection "Display"
		Depth		16
#		Modes		"1280x800" "1280x768" "1200x800" "1152x864" "1152x768" "1024x768" "800x600" "640x480"
	EndSubSection
	SubSection "Display"
		Depth		24
#		Modes		"1280x800" "1280x768" "1200x800" "1152x864" "1152x768" "1024x768" "800x600" "640x480"
		Virtual		2048 2048
	EndSubSection
EndSection

Section "ServerLayout"
	Identifier	"Default Layout"
	Screen		"Default Screen"
#	InputDevice	"Generic Keyboard"
#	InputDevice	"Configured Mouse"
	InputDevice	"Touchpad"
EndSection

Section "DRI"
	Mode	0666
EndSection


Xorg X server log files on system:
-rw-r--r-- 1 root root 49162 Dec 22  2006 /var/log/Xorg.1.log
-rw-r--r-- 1 root root 59517 Apr  1 16:26 /var/log/Xorg.0.log

Contents of most recent Xorg X server log file
/var/log/Xorg.0.log:

X.Org X Server 1.7.6
Release Date: 2010-03-17
X Protocol Version 11, Revision 0
Build Operating System: Linux 2.6.26-2-amd64 x86_64 Debian
Current Operating System: Linux via2 2.6.33-2-amd64 #1 SMP Wed Mar 17 18:41:49 UTC 2010 x86_64
Kernel command line: root=/dev/sda2 ro resume=/dev/sda1 nolapic_timer 
Build Date: 23 March 2010  04:00:24PM
xorg-server 2:1.7.6-1 (Cyril Brulebois <kibi@debian.org>) 
Current version of pixman: 0.16.4
	Before reporting problems, check http://wiki.x.org
	to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
	(++) from command line, (!!) notice, (II) informational,
	(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Thu Apr  1 16:26:25 2010
(==) Using config file: "/etc/X11/xorg.conf"
(==) ServerLayout "Default Layout"
(**) |-->Screen "Default Screen" (0)
(**) |   |-->Monitor "<default monitor>"
(**) |   |-->Device "ATI Technologies Inc RS482 [Radeon Xpress 200M]"
(==) No monitor specified for screen "Default Screen".
	Using a default monitor configuration.
(**) |-->Input Device "Touchpad"
(**) Option "StandbyTime" "0"
(**) Option "SuspendTime" "0"
(**) Option "OffTime" "5"

....

(II) RADEON(0): Setting screen physical size to 270 x 203
(II) Synaptics touchpad driver version 1.2.1
(--) Touchpad auto-dev sets device to /dev/input/event11
(**) Option "Device" "/dev/input/event11"
(II) Touchpad: x-axis range 32 - 544
(II) Touchpad: y-axis range 32 - 352
(II) Touchpad: device does not report pressure, will use touch data.
(II) Touchpad: finger width range 0 - 0
(II) Touchpad: buttons: left right double triple
(**) Option "MaxTapTime" "180"
(**) Option "EmulateMidButtonTime" "75"
(**) Option "VertEdgeScroll" "1"
(**) Option "HorizEdgeScroll" "1"
(**) Option "CornerCoasting" "1"
(**) Option "VertTwoFingerScroll" "0"
(**) Option "HorizTwoFingerScroll" "0"
(**) Option "EdgeMotionMinSpeed" "100"
(**) Option "EdgeMotionMaxSpeed" "100"
(**) Option "EdgeMotionUseAlways" "1"
(**) Option "TapButton1" "1"
(**) Option "TapButton2" "2"
(**) Option "TapButton3" "3"
(**) Option "MinSpeed" "0.50"
(**) Option "MaxSpeed" "1.00"
(--) Touchpad: touchpad found
(**) Touchpad: always reports core events
(II) XINPUT: Adding extended input device "Touchpad" (type: TOUCHPAD)
(**) Touchpad: (accel) keeping acceleration scheme 1
(**) Touchpad: (accel) acceleration profile 0
(--) Touchpad: touchpad found
(II) config/udev: Adding input device "Power Button" (/dev/input/event5)
(II) LoadModule: "evdev"
(II) Loading /usr/lib/xorg/modules/input/evdev_drv.so

....

(II) config/udev: Adding input device "ETPS/2 Elantech Touchpad" (/dev/input/event11)
(II) Synaptics touchpad driver version 1.2.1
(**) Option "Device" "/dev/input/event11"
(--) "ETPS/2 Elantech Touchpad": no supported touchpad found
(EE) "ETPS/2 Elantech Touchpad" Unable to query/initialize Synaptics hardware.
(EE) PreInit failed for input device ""ETPS/2 Elantech Touchpad""
(II) UnloadModule: "synaptics"

....


udev information:

....

P: /devices/platform/i8042/serio2/input/input11/event11
N: input/event11
S: char/13:75
S: input/by-path/platform-i8042-serio-2-event-mouse
E: UDEV_LOG=3
E: DEVPATH=/devices/platform/i8042/serio2/input/input11/event11
E: MAJOR=13
E: MINOR=75
E: DEVNAME=/dev/input/event11
E: SUBSYSTEM=input
E: ID_INPUT=1
E: ID_INPUT_TOUCHPAD=1
E: ID_SERIAL=noserial
E: ID_PATH=platform-i8042-serio-2
E: x11_driver=synaptics
E: DMI_VENDOR=Micro-Star International
E: DEVLINKS=/dev/char/13:75 /dev/input/by-path/platform-i8042-serio-2-event-mouse

....


DRM Information from dmesg:
[    0.000000] No AGP bridge found
[    0.000000] No AGP bridge found
[    0.567150] Linux agpgart interface v0.103
[  104.822147] [drm] Initialized drm 1.1.0 20060810
[  104.960746] [drm] radeon kernel modesetting enabled.
[21535.988883] [drm] Module unloaded
[21574.795752] [drm] Initialized drm 1.1.0 20060810
[21612.488046] [drm] radeon kernel modesetting enabled.
[21612.488126] [drm:drm_init], 
[22072.521742] [drm:drm_stub_open], 
[22072.521783] [drm:drm_stub_open], 
[22301.193141] [drm:drm_stub_open], 
[22307.784723] [drm:drm_stub_open], 
[22335.577100] [drm:drm_stub_open], 
[22335.577187] [drm:drm_stub_open], 


-- System Information:
Debian Release: squeeze/sid
  APT prefers unstable
  APT policy: (990, 'unstable'), (600, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.33-2-amd64 (SMP w/2 CPU cores)
Locale: LANG=C, LC_CTYPE=sk_SK (charmap=ISO-8859-2)
Shell: /bin/sh linked to /bin/bash

Versions of packages xserver-xorg-input-synaptics depends on:
ii  libc6                         2.10.2-6   Embedded GNU C Library: Shared lib
ii  libpciaccess0                 0.11.0-2   Generic PCI access library for X
ii  libpixman-1-0                 0.16.4-1   pixel-manipulation library for X a
ii  libx11-6                      2:1.3.3-2  X11 client-side library
ii  libxi6                        2:1.3-4    X11 Input extension library
ii  libxtst6                      2:1.1.0-2  X11 Testing -- Resource extension 
ii  xserver-xorg-core             2:1.7.6-1  Xorg X server - core server

xserver-xorg-input-synaptics recommends no packages.

Versions of packages xserver-xorg-input-synaptics suggests:
pn  gpointing-device-settings     <none>     (no description available)
pn  touchfreeze                   <none>     (no description available)

-- no debconf information



Reply to: