Re: X configuration changes for synaptics - please test

2011-07-06 Thread Alexandr Shadchin
On Sat, Jun 18, 2011 at 01:40:56AM +0600, Alexandr Shadchin wrote:
 On Wed, Jun 15, 2011 at 09:11:43AM +0200, Matthieu Herrb wrote:
  Hi,
  
  here are a set of patches being worked on to add native synaptics
  touch pad support to OpenBSD and Xenocara.
  
  The xf86-input-synaptics driver itself is already committed and built
  in Xenocara.
  
  http://xenocara.org/wscons_config.2.diff is a diff that uses the X
  hot-plug mechanism to configure you input drivers. It will setup
  the xf86-input-synaptics driver for you if you have one, together with
  a regular mouse driver that will handle any external PS/2 or USB mouse
  attached in addition. Touchscreens will also be auto-configured this
  way if one is detected.
  
  This new code also takes care of the configuration of the keyboard
  layout from the wscons layout. Thus a second diff:
  http://xenocara.org/xf86-input-keyboard.diff removes that code from
  the keyboard driver.
  
  To apply those patches:
  
  cd /usr/xenocara/xserver
  patch -p0 -E  /path/to/wscons_config.2.diff
  make -f Makefile.bsd-wrapper obj
  make -f Makefile.bsd-wrapper build
  cd /usr/xenocara/driver/xf86-input-keyboard
  patch -p0 -E  /path/to/xf86-input-keyboard.diff
  make -f Makefile.bsd-wrapper obj
  make -f Makefile.bsd-wrapper build
  
  Once X is ready, apply the kernel patch, and build a new kernel with
  the synaptics support in pms(4):
  http://xenocara.org/sys-synaptics.diff
  
  cd /sys
  patch -p0 -E  /path/to/sys-synaptics.diff
  
  the new kernel will detect your synaptics touch pad if any, and  X
  will be configured with the xf86-input-synaptics. Read the
  synaptics(4) manual page to discover all its features.
  
  You can check how the input drivers were configured by running the
  command:
  
 xinput list
  
  If you are configuring input devices manually in xorg,conf you need to
  add this to the ServerFlags section (but may be you should give a try
  at auto-configuration and remove your InputDevice sections all together):
  
  Section ServerFlags
  Option AutoAddDevices false
  EndSection
  
  Please test, comment and report failures. Make sure to include
  /var/log/Xorg.0.log and dmesg outputs in your reports.
  
  Thanks to Alexandr Shadchin (shadchin@) for his work on this driver and
  to all people who already tested these patches and suggested
  enhancements.
  
  -- 
  Matthieu Herrb
  
 
 New sys-synaptics.diff (http://koba.devio.us/distfiles/synaptics.v2.diff)
 * fix wrong detect clickpad
 * fix ignore buttons if no fingers on touchpad
 * if open directly /dev/wsmouseX, then remove this device from mux
   (close device - get back in mux)
 
 Thanks all for your feedback.
 

New patches
kernel - http://koba.devio.us/distfiles/synaptics.v5.diff
xenocara - http://koba.devio.us/distfiles/xf86-input-synaptics.diff
 cd /usr/xenocara/driver/xf86-input-synaptics
 patch /foo/bar/xf86-input-synaptics.diff
 make -f Makefile.bsd-wrapper obj build

Changes
* small rework and simplify
* enable advanced gesture mode if supported
  (for multitouch toucpads - return correct number of fingers on touchpad)
* fix bug lock up touchpad ( not allowing to move the pointer, or click )
  Thanks Andrew Fresh, for assistance in testing.

-- 
Alexandr Shadchin



Re: X configuration changes for synaptics - please test

2011-07-06 Thread Aaron
This seems to resolve my issues on the T410. No lockups yet!

On Wed, Jul 6, 2011 at 1:05 AM, Alexandr Shadchin 
alexandr.shadc...@gmail.com wrote:

 On Sat, Jun 18, 2011 at 01:40:56AM +0600, Alexandr Shadchin wrote:
  On Wed, Jun 15, 2011 at 09:11:43AM +0200, Matthieu Herrb wrote:
   Hi,
  
   here are a set of patches being worked on to add native synaptics
   touch pad support to OpenBSD and Xenocara.
  
   The xf86-input-synaptics driver itself is already committed and built
   in Xenocara.
  
   http://xenocara.org/wscons_config.2.diff is a diff that uses the X
   hot-plug mechanism to configure you input drivers. It will setup
   the xf86-input-synaptics driver for you if you have one, together with
   a regular mouse driver that will handle any external PS/2 or USB mouse
   attached in addition. Touchscreens will also be auto-configured this
   way if one is detected.
  
   This new code also takes care of the configuration of the keyboard
   layout from the wscons layout. Thus a second diff:
   http://xenocara.org/xf86-input-keyboard.diff removes that code from
   the keyboard driver.
  
   To apply those patches:
  
   cd /usr/xenocara/xserver
   patch -p0 -E  /path/to/wscons_config.2.diff
   make -f Makefile.bsd-wrapper obj
   make -f Makefile.bsd-wrapper build
   cd /usr/xenocara/driver/xf86-input-keyboard
   patch -p0 -E  /path/to/xf86-input-keyboard.diff
   make -f Makefile.bsd-wrapper obj
   make -f Makefile.bsd-wrapper build
  
   Once X is ready, apply the kernel patch, and build a new kernel with
   the synaptics support in pms(4):
   http://xenocara.org/sys-synaptics.diff
  
   cd /sys
   patch -p0 -E  /path/to/sys-synaptics.diff
  
   the new kernel will detect your synaptics touch pad if any, and  X
   will be configured with the xf86-input-synaptics. Read the
   synaptics(4) manual page to discover all its features.
  
   You can check how the input drivers were configured by running the
   command:
  
  xinput list
  
   If you are configuring input devices manually in xorg,conf you need to
   add this to the ServerFlags section (but may be you should give a try
   at auto-configuration and remove your InputDevice sections all
 together):
  
   Section ServerFlags
   Option AutoAddDevices false
   EndSection
  
   Please test, comment and report failures. Make sure to include
   /var/log/Xorg.0.log and dmesg outputs in your reports.
  
   Thanks to Alexandr Shadchin (shadchin@) for his work on this driver
 and
   to all people who already tested these patches and suggested
   enhancements.
  
   --
   Matthieu Herrb
  
 
  New sys-synaptics.diff (http://koba.devio.us/distfiles/synaptics.v2.diff
 )
  * fix wrong detect clickpad
  * fix ignore buttons if no fingers on touchpad
  * if open directly /dev/wsmouseX, then remove this device from mux
(close device - get back in mux)
 
  Thanks all for your feedback.
 

 New patches
 kernel - http://koba.devio.us/distfiles/synaptics.v5.diff
 xenocara - http://koba.devio.us/distfiles/xf86-input-synaptics.diff
  cd /usr/xenocara/driver/xf86-input-synaptics
  patch /foo/bar/xf86-input-synaptics.diff
  make -f Makefile.bsd-wrapper obj build

 Changes
 * small rework and simplify
 * enable advanced gesture mode if supported
  (for multitouch toucpads - return correct number of fingers on touchpad)
 * fix bug lock up touchpad ( not allowing to move the pointer, or click )
  Thanks Andrew Fresh, for assistance in testing.

 --
 Alexandr Shadchin



Re: X configuration changes for synaptics - please test

2011-06-20 Thread Bryan Vyhmeister
Attached is my dmesg output and Xorg.0.log from my Dell Vostro A90. My
primary motivation for testing this was to see if I could disable
tapping and by default, that is how it works. I am now also able to
scroll with the touchpad. All of this works seamlessly without an
xorg.conf. Everything has been working as expected since yesterday
when I installed everything. Great work guys!

I used the two initial patches (wscons_config.2.diff and
xf86-input-keyboard.diff) along with synaptics.v2.diff.

Bryan

[demime 1.01d removed an attachment of type application/octet-stream which had 
a name of mini9-dmesg]

[demime 1.01d removed an attachment of type text/x-log which had a name of 
mini9-Xorg.0.log]



Re: X configuration changes for synaptics - please test

2011-06-20 Thread Bryan Vyhmeister
Sorry about that. Attached instead of inline. My dmesg and Xorg.0.log
are now inline.

Bryan


OpenBSD 4.9-current (GENERIC.MP) #0: Sun Jun 19 17:02:51 PDT 2011
r...@nine.dsvc.net:/usr/src/sys/arch/i386/compile/GENERIC.MP
cpu0: Intel(R) Atom(TM) CPU N270 @ 1.60GHz (GenuineIntel 686-class) 1.60 GHz
cpu0: 
FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,SBF,SSE3,MWAIT,DS-CPL,EST,TM2,SSSE3,xTPR,PDCM,MOVBE
real mem  = 2137387008 (2038MB)
avail mem = 2092212224 (1995MB)
mainbus0 at root
bios0 at mainbus0: AT/286+ BIOS, date 03/05/09, BIOS32 rev. 0 @
0xfdc40, SMBIOS rev. 2.5 @ 0xf2350 (34 entries)
bios0: vendor Dell Inc. version A04 date 03/05/2009
bios0: Dell Inc. Vostro A90
acpi0 at bios0: rev 2
acpi0: sleep states S0 S3 S4 S5
acpi0: tables DSDT FACP APIC HPET MCFG TCPA TMOR APIC BOOT SSDT
acpi0: wakeup devices LID0(S3) HDEF(S4) PXS1(S4) PXS2(S4) PXS3(S3)
PXS4(S4) PXS5(S4) PXS6(S4) USB1(S0) USB2(S0) USB3(S0) USB4(S0)
USB7(S0) SLT0(S4) SLT1(S4) SLT2(S4) SL
T3(S4) SLT6(S4)
acpitimer0 at acpi0: 3579545 Hz, 24 bits
acpimadt0 at acpi0 addr 0xfee0: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: apic clock running at 133MHz
cpu1 at mainbus0: apid 1 (application processor)
cpu1: Intel(R) Atom(TM) CPU N270 @ 1.60GHz (GenuineIntel 686-class) 1.60 GHz
cpu1: 
FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,SBF,SSE3,MWAIT,DS-CPL,EST,TM2,SSSE3,xTPR,PDCM,MOVBE
ioapic0 at mainbus0: apid 1 pa 0xfec0, version 20, 24 pins
ioapic0: misconfigured as apic 2, remapped to apid 1
acpihpet0 at acpi0: 14318179 Hz
acpimcfg0 at acpi0 addr 0xe000, bus 0-255
acpiprt0 at acpi0: bus 0 (PCI0)
acpiprt1 at acpi0: bus 2 (RP01)
acpiprt2 at acpi0: bus 3 (RP02)
acpiprt3 at acpi0: bus 4 (RP03)
acpiprt4 at acpi0: bus -1 (RP04)
acpiprt5 at acpi0: bus -1 (RP05)
acpiprt6 at acpi0: bus -1 (RP06)
acpiprt7 at acpi0: bus 5 (PCIB)
acpiec0 at acpi0
acpicpu0 at acpi0: C3, C2, C1, PSS
acpicpu1 at acpi0: C3, C2, C1, PSS
acpitz0 at acpi0: critical temperature is 102 degC
acpibtn0 at acpi0: LID0
acpibtn1 at acpi0: PWRB
acpibtn2 at acpi0: SLPB
acpiac0 at acpi0: AC unit online
acpibat0 at acpi0: BAT1 serial 11 type Lion oem DELL
acpivideo0 at acpi0: GFX0
acpivout0 at acpivideo0: LCD_
bios0: ROM list: 0xc/0xec00! 0xcf000/0x1000 0xe/0x1800!
cpu0: Enhanced SpeedStep 1597 MHz: speeds: 1600, 1333, 1067, 800 MHz
pci0 at mainbus0 bus 0: configuration mode 1 (bios)
pchb0 at pci0 dev 0 function 0 Intel 82945GME Host rev 0x03
vga1 at pci0 dev 2 function 0 Intel 82945GME Video rev 0x03
wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
intagp0 at vga1
agp0 at intagp0: aperture at 0xd000, size 0x1000
inteldrm0 at vga1: apic 1 int 16
drm0 at inteldrm0
Intel 82945GM Video rev 0x03 at pci0 dev 2 function 1 not configured
azalia0 at pci0 dev 27 function 0 Intel 82801GB HD Audio rev 0x02: msi
azalia0: codecs: Realtek ALC268
audio0 at azalia0
ppb0 at pci0 dev 28 function 0 Intel 82801GB PCIE rev 0x02: apic 1 int 17
pci1 at ppb0 bus 2
JMicron SD/MMC rev 0x00 at pci1 dev 0 function 0 not configured
sdhc0 at pci1 dev 0 function 2 JMicron SD Host Controller rev 0x00:
apic 1 int 16
sdmmc0 at sdhc0
JMicron Memory Stick rev 0x00 at pci1 dev 0 function 3 not configured
ppb1 at pci0 dev 28 function 1 Intel 82801GB PCIE rev 0x02: apic 1 int 16
pci2 at ppb1 bus 3
iwn0 at pci2 dev 0 function 0 Intel WiFi Link 5100 rev 0x00: msi,
MIMO 1T2R, MoW, address 00:21:6b:94:12:fa
ppb2 at pci0 dev 28 function 2 Intel 82801GB PCIE rev 0x02: apic 1 int 18
pci3 at ppb2 bus 4
re0 at pci3 dev 0 function 0 Realtek 8101E rev 0x02: RTL8102EL
(0x2480), apic 1 int 18, address 00:24:e8:a6:6a:d3
rlphy0 at re0 phy 7: RTL8201L 10/100 PHY, rev. 1
uhci0 at pci0 dev 29 function 0 Intel 82801GB USB rev 0x02: apic 1 int 23
uhci1 at pci0 dev 29 function 1 Intel 82801GB USB rev 0x02: apic 1 int 19
uhci2 at pci0 dev 29 function 2 Intel 82801GB USB rev 0x02: apic 1 int 18
uhci3 at pci0 dev 29 function 3 Intel 82801GB USB rev 0x02: apic 1 int 16
ehci0 at pci0 dev 29 function 7 Intel 82801GB USB rev 0x02: apic 1 int 23
usb0 at ehci0: USB revision 2.0
uhub0 at usb0 Intel EHCI root hub rev 2.00/1.00 addr 1
ppb3 at pci0 dev 30 function 0 Intel 82801BAM Hub-to-PCI rev 0xe2
pci4 at ppb3 bus 5
ichpcib0 at pci0 dev 31 function 0 Intel 82801GBM LPC rev 0x02: PM disabled
pciide0 at pci0 dev 31 function 1 Intel 82801GB IDE rev 0x02: DMA,
channel 0 configured to compatibility, channel 1 configured to
compatibility
wd0 at pciide0 channel 0 drive 0: STT_FEM16GFDL
wd0: 1-sector PIO, LBA, 14559MB, 29818656 sectors
wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 5
pciide0: channel 1 ignored (disabled)
ichiic0 at pci0 dev 31 function 3 Intel 82801GB SMBus rev 0x02: apic 1 int 19
iic0 at ichiic0
spdmem0 at iic0 addr 0x50: 2GB DDR2 SDRAM non-parity PC2-5300CL5 SO-DIMM
usb1 at uhci0: USB revision 1.0
uhub1 at usb1 Intel 

Re: X configuration changes for synaptics - please test

2011-06-19 Thread Dawe
On Jun 18, 2011 01:40, Alexandr Shadchin wrote:
 On Wed, Jun 15, 2011 at 09:11:43AM +0200, Matthieu Herrb wrote:
  Hi,
  
  here are a set of patches being worked on to add native synaptics
  touch pad support to OpenBSD and Xenocara.
  
  The xf86-input-synaptics driver itself is already committed and built
  in Xenocara.
  
  http://xenocara.org/wscons_config.2.diff is a diff that uses the X
  hot-plug mechanism to configure you input drivers. It will setup
  the xf86-input-synaptics driver for you if you have one, together with
  a regular mouse driver that will handle any external PS/2 or USB mouse
  attached in addition. Touchscreens will also be auto-configured this
  way if one is detected.
  
  This new code also takes care of the configuration of the keyboard
  layout from the wscons layout. Thus a second diff:
  http://xenocara.org/xf86-input-keyboard.diff removes that code from
  the keyboard driver.
  
  To apply those patches:
  
  cd /usr/xenocara/xserver
  patch -p0 -E  /path/to/wscons_config.2.diff
  make -f Makefile.bsd-wrapper obj
  make -f Makefile.bsd-wrapper build
  cd /usr/xenocara/driver/xf86-input-keyboard
  patch -p0 -E  /path/to/xf86-input-keyboard.diff
  make -f Makefile.bsd-wrapper obj
  make -f Makefile.bsd-wrapper build
  
  Once X is ready, apply the kernel patch, and build a new kernel with
  the synaptics support in pms(4):
  http://xenocara.org/sys-synaptics.diff
  
  cd /sys
  patch -p0 -E  /path/to/sys-synaptics.diff
  
  the new kernel will detect your synaptics touch pad if any, and  X
  will be configured with the xf86-input-synaptics. Read the
  synaptics(4) manual page to discover all its features.
  
  You can check how the input drivers were configured by running the
  command:
  
 xinput list
  
  If you are configuring input devices manually in xorg,conf you need to
  add this to the ServerFlags section (but may be you should give a try
  at auto-configuration and remove your InputDevice sections all together):
  
  Section ServerFlags
  Option AutoAddDevices false
  EndSection
  
  Please test, comment and report failures. Make sure to include
  /var/log/Xorg.0.log and dmesg outputs in your reports.
  
  Thanks to Alexandr Shadchin (shadchin@) for his work on this driver and
  to all people who already tested these patches and suggested
  enhancements.
  
  -- 
  Matthieu Herrb
  
 
 New sys-synaptics.diff (http://koba.devio.us/distfiles/synaptics.v2.diff)
 * fix wrong detect clickpad
 * fix ignore buttons if no fingers on touchpad
 * if open directly /dev/wsmouseX, then remove this device from mux
   (close device - get back in mux)
 
 Thanks all for your feedback.
 
 -- 
 Alexandr Shadchin
 
This breaks tapping for me on my T410i running amd64.
The more advanced features like scrolling also don't work.
Hitting the real buttons still works.

xinput list   
b! Virtual core pointerid=2[master pointer  (3)]
b   b3 Virtual core XTEST pointerid=4[slave  pointer
(2)]
b   b3 /dev/wsmouse0 id=7[slave  pointer
(2)]
b   b3 /dev/wsmouse  id=8[slave  pointer
(2)]
b# Virtual core keyboard   id=3[master keyboard (2)]
b3 Virtual core XTEST keyboard id=5[slave  keyboard
(3)]
b3 /dev/wskbd  id=6[slave  keyboard
(3)]


OpenBSD 4.9-current (GENERIC.MP) #7: Sun Jun 19 19:32:32 CEST 2011
d...@padtree.my.domain:/usr/src/sys/arch/amd64/compile/GENERIC.MP
real mem = 1998045184 (1905MB)
avail mem = 1930715136 (1841MB)
mainbus0 at root
bios0 at mainbus0: SMBIOS rev. 2.6 @ 0xe0010 (78 entries)
bios0: vendor LENOVO version 6IET68WW (1.28 ) date 07/12/2010
bios0: LENOVO 25184QG
acpi0 at bios0: rev 2
acpi0: sleep states S0 S3 S4 S5
acpi0: tables DSDT FACP SSDT ECDT APIC MCFG HPET ASF! SLIC BOOT SSDT TCPA SSDT
SSDT SSDT
acpi0: wakeup devices LID_(S3) SLPB(S3) UART(S3) IGBE(S4) EXP1(S4) EXP2(S4)
EXP3(S4) EXP4(S4) EXP5(S4) EHC1(S3) EHC2(S3) HDEF(S4)
acpitimer0 at acpi0: 3579545 Hz, 24 bits
acpiec0 at acpi0
acpimadt0 at acpi0 addr 0xfee0: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: Intel(R) Core(TM) i5 CPU M 430 @ 2.27GHz, 2261.41 MHz
cpu0:
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,SBF,SSE3,MWAIT,DS-CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,SSE4.1,SSE4.2,POPCNT,NXE,LONG
cpu0: 256KB 64b/line 8-way L2 cache
cpu0: apic clock running at 132MHz
cpu1 at mainbus0: apid 1 (application processor)
cpu1: Intel(R) Core(TM) i5 CPU M 430 @ 2.27GHz, 2261.00 MHz
cpu1:
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,SBF,SSE3,MWAIT,DS-CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,SSE4.1,SSE4.2,POPCNT,NXE,LONG
cpu1: 256KB 64b/line 8-way L2 cache
cpu2 at mainbus0: apid 4 

Re: X configuration changes for synaptics - please test

2011-06-19 Thread Alexandr Shadchin
On Sun, Jun 19, 2011 at 08:16:12PM +0200, Dawe wrote:
 On Jun 18, 2011 01:40, Alexandr Shadchin wrote:
  On Wed, Jun 15, 2011 at 09:11:43AM +0200, Matthieu Herrb wrote:
   Hi,
   
   here are a set of patches being worked on to add native synaptics
   touch pad support to OpenBSD and Xenocara.
   
   The xf86-input-synaptics driver itself is already committed and built
   in Xenocara.
   
   http://xenocara.org/wscons_config.2.diff is a diff that uses the X
   hot-plug mechanism to configure you input drivers. It will setup
   the xf86-input-synaptics driver for you if you have one, together with
   a regular mouse driver that will handle any external PS/2 or USB mouse
   attached in addition. Touchscreens will also be auto-configured this
   way if one is detected.
   
   This new code also takes care of the configuration of the keyboard
   layout from the wscons layout. Thus a second diff:
   http://xenocara.org/xf86-input-keyboard.diff removes that code from
   the keyboard driver.
   
   To apply those patches:
   
   cd /usr/xenocara/xserver
   patch -p0 -E  /path/to/wscons_config.2.diff
   make -f Makefile.bsd-wrapper obj
   make -f Makefile.bsd-wrapper build
   cd /usr/xenocara/driver/xf86-input-keyboard
   patch -p0 -E  /path/to/xf86-input-keyboard.diff
   make -f Makefile.bsd-wrapper obj
   make -f Makefile.bsd-wrapper build
   
   Once X is ready, apply the kernel patch, and build a new kernel with
   the synaptics support in pms(4):
   http://xenocara.org/sys-synaptics.diff
   
   cd /sys
   patch -p0 -E  /path/to/sys-synaptics.diff
   
   the new kernel will detect your synaptics touch pad if any, and  X
   will be configured with the xf86-input-synaptics. Read the
   synaptics(4) manual page to discover all its features.
   
   You can check how the input drivers were configured by running the
   command:
   
  xinput list
   
   If you are configuring input devices manually in xorg,conf you need to
   add this to the ServerFlags section (but may be you should give a try
   at auto-configuration and remove your InputDevice sections all together):
   
   Section ServerFlags
 Option AutoAddDevices false
   EndSection
   
   Please test, comment and report failures. Make sure to include
   /var/log/Xorg.0.log and dmesg outputs in your reports.
   
   Thanks to Alexandr Shadchin (shadchin@) for his work on this driver and
   to all people who already tested these patches and suggested
   enhancements.
   
   -- 
   Matthieu Herrb
   
  
  New sys-synaptics.diff (http://koba.devio.us/distfiles/synaptics.v2.diff)
  * fix wrong detect clickpad
  * fix ignore buttons if no fingers on touchpad
  * if open directly /dev/wsmouseX, then remove this device from mux
(close device - get back in mux)
  
  Thanks all for your feedback.
  
  -- 
  Alexandr Shadchin
  
 This breaks tapping for me on my T410i running amd64.
 The more advanced features like scrolling also don't work.
 Hitting the real buttons still works.
 

Defaults tap and scrolling disabled.

Add in /etc/X11/xorg.conf:

Section InputClass
Identifier  Touchpad defaults
MatchIsTouchpad on
Option  VertEdgeScroll true
Option  HorizEdgeScroll true
Option  TapButton1 1
EndSection

-- 
Alexandr Shadchin



Re: X configuration changes for synaptics - please test

2011-06-19 Thread Dawe
On Jun 20, 2011 00:48, Alexandr Shadchin wrote:
 On Sun, Jun 19, 2011 at 08:16:12PM +0200, Dawe wrote:
  On Jun 18, 2011 01:40, Alexandr Shadchin wrote:
   On Wed, Jun 15, 2011 at 09:11:43AM +0200, Matthieu Herrb wrote:
Hi,

here are a set of patches being worked on to add native synaptics
touch pad support to OpenBSD and Xenocara.

The xf86-input-synaptics driver itself is already committed and built
in Xenocara.

http://xenocara.org/wscons_config.2.diff is a diff that uses the X
hot-plug mechanism to configure you input drivers. It will setup
the xf86-input-synaptics driver for you if you have one, together with
a regular mouse driver that will handle any external PS/2 or USB mouse
attached in addition. Touchscreens will also be auto-configured this
way if one is detected.

This new code also takes care of the configuration of the keyboard
layout from the wscons layout. Thus a second diff:
http://xenocara.org/xf86-input-keyboard.diff removes that code from
the keyboard driver.

To apply those patches:

cd /usr/xenocara/xserver
patch -p0 -E  /path/to/wscons_config.2.diff
make -f Makefile.bsd-wrapper obj
make -f Makefile.bsd-wrapper build
cd /usr/xenocara/driver/xf86-input-keyboard
patch -p0 -E  /path/to/xf86-input-keyboard.diff
make -f Makefile.bsd-wrapper obj
make -f Makefile.bsd-wrapper build

Once X is ready, apply the kernel patch, and build a new kernel with
the synaptics support in pms(4):
http://xenocara.org/sys-synaptics.diff

cd /sys
patch -p0 -E  /path/to/sys-synaptics.diff

the new kernel will detect your synaptics touch pad if any, and  X
will be configured with the xf86-input-synaptics. Read the
synaptics(4) manual page to discover all its features.

You can check how the input drivers were configured by running the
command:

   xinput list

If you are configuring input devices manually in xorg,conf you need to
add this to the ServerFlags section (but may be you should give a try
at auto-configuration and remove your InputDevice sections all 
together):

Section ServerFlags
Option AutoAddDevices false
EndSection

Please test, comment and report failures. Make sure to include
/var/log/Xorg.0.log and dmesg outputs in your reports.

Thanks to Alexandr Shadchin (shadchin@) for his work on this driver and
to all people who already tested these patches and suggested
enhancements.

-- 
Matthieu Herrb

   
   New sys-synaptics.diff (http://koba.devio.us/distfiles/synaptics.v2.diff)
   * fix wrong detect clickpad
   * fix ignore buttons if no fingers on touchpad
   * if open directly /dev/wsmouseX, then remove this device from mux
 (close device - get back in mux)
   
   Thanks all for your feedback.
   
   -- 
   Alexandr Shadchin
   
  This breaks tapping for me on my T410i running amd64.
  The more advanced features like scrolling also don't work.
  Hitting the real buttons still works.
  
 
 Defaults tap and scrolling disabled.
 
 Add in /etc/X11/xorg.conf:
 
 Section InputClass
 Identifier  Touchpad defaults
 MatchIsTouchpad on
 Option  VertEdgeScroll true
 Option  HorizEdgeScroll true
 Option  TapButton1 1
 EndSection
 
 -- 
 Alexandr Shadchin
 

Oh sorry, I thought there was no need for an xorg.conf.
Now tapping and scrolling work just fine.



Re: X configuration changes for synaptics - please test

2011-06-19 Thread Dawe
On Jun 19, 2011 22:01, Dawe wrote:
 On Jun 20, 2011 00:48, Alexandr Shadchin wrote:
  On Sun, Jun 19, 2011 at 08:16:12PM +0200, Dawe wrote:
   On Jun 18, 2011 01:40, Alexandr Shadchin wrote:
On Wed, Jun 15, 2011 at 09:11:43AM +0200, Matthieu Herrb wrote:
 Hi,
 
 here are a set of patches being worked on to add native synaptics
 touch pad support to OpenBSD and Xenocara.
 
 The xf86-input-synaptics driver itself is already committed and built
 in Xenocara.
 
 http://xenocara.org/wscons_config.2.diff is a diff that uses the X
 hot-plug mechanism to configure you input drivers. It will setup
 the xf86-input-synaptics driver for you if you have one, together with
 a regular mouse driver that will handle any external PS/2 or USB mouse
 attached in addition. Touchscreens will also be auto-configured this
 way if one is detected.
 
 This new code also takes care of the configuration of the keyboard
 layout from the wscons layout. Thus a second diff:
 http://xenocara.org/xf86-input-keyboard.diff removes that code from
 the keyboard driver.
 
 To apply those patches:
 
 cd /usr/xenocara/xserver
 patch -p0 -E  /path/to/wscons_config.2.diff
 make -f Makefile.bsd-wrapper obj
 make -f Makefile.bsd-wrapper build
 cd /usr/xenocara/driver/xf86-input-keyboard
 patch -p0 -E  /path/to/xf86-input-keyboard.diff
 make -f Makefile.bsd-wrapper obj
 make -f Makefile.bsd-wrapper build
 
 Once X is ready, apply the kernel patch, and build a new kernel with
 the synaptics support in pms(4):
 http://xenocara.org/sys-synaptics.diff
 
 cd /sys
 patch -p0 -E  /path/to/sys-synaptics.diff
 
 the new kernel will detect your synaptics touch pad if any, and  X
 will be configured with the xf86-input-synaptics. Read the
 synaptics(4) manual page to discover all its features.
 
 You can check how the input drivers were configured by running the
 command:
 
xinput list
 
 If you are configuring input devices manually in xorg,conf you need to
 add this to the ServerFlags section (but may be you should give a try
 at auto-configuration and remove your InputDevice sections all 
 together):
 
 Section ServerFlags
   Option AutoAddDevices false
 EndSection
 
 Please test, comment and report failures. Make sure to include
 /var/log/Xorg.0.log and dmesg outputs in your reports.
 
 Thanks to Alexandr Shadchin (shadchin@) for his work on this driver 
 and
 to all people who already tested these patches and suggested
 enhancements.
 
 -- 
 Matthieu Herrb
 

New sys-synaptics.diff 
(http://koba.devio.us/distfiles/synaptics.v2.diff)
* fix wrong detect clickpad
* fix ignore buttons if no fingers on touchpad
* if open directly /dev/wsmouseX, then remove this device from mux
  (close device - get back in mux)

Thanks all for your feedback.

-- 
Alexandr Shadchin

   This breaks tapping for me on my T410i running amd64.
   The more advanced features like scrolling also don't work.
   Hitting the real buttons still works.
   
  
  Defaults tap and scrolling disabled.
  
  Add in /etc/X11/xorg.conf:
  
  Section InputClass
  Identifier  Touchpad defaults
  MatchIsTouchpad on
  Option  VertEdgeScroll true
  Option  HorizEdgeScroll true
  Option  TapButton1 1
  EndSection
  
  -- 
  Alexandr Shadchin
  
 
 Oh sorry, I thought there was no need for an xorg.conf.
 Now tapping and scrolling work just fine.
 
Well, after some time I'm experiencing the same behaviour like Aaron.
No dmesg output and nothing in the Xorg.0.log after the touchpad stops working.



Re: X configuration changes for synaptics - please test

2011-06-19 Thread Landry Breuil
On Sat, Jun 18, 2011 at 08:25:19AM -0600, Aaron Bieber wrote:
 Hi,
 
 I applied these patches to -current on my lenovo t410.  
 
 The trackpad works as expected for for a few minutes, and then seems to
 lock up ( not allowing me to move the pointer, or click the two
 buttons under it ).

I've experienced it twice on my msi wind u100, with the very latest
synaptics.v2.diff.. vt switching 'fixes it'.
Alas, nothing special in Xorg.0.log nor dmesg.

Landry



Re: X configuration changes for synaptics - please test

2011-06-19 Thread Dawe
On Jun 19, 2011 23:51, Landry Breuil wrote:
 On Sat, Jun 18, 2011 at 08:25:19AM -0600, Aaron Bieber wrote:
  Hi,
  
  I applied these patches to -current on my lenovo t410.  
  
  The trackpad works as expected for for a few minutes, and then seems to
  lock up ( not allowing me to move the pointer, or click the two
  buttons under it ).
 
 I've experienced it twice on my msi wind u100, with the very latest
 synaptics.v2.diff.. vt switching 'fixes it'.
 Alas, nothing special in Xorg.0.log nor dmesg.
 
 Landry
 
For me, it just came back to life all on its own, without vt switching or any
other special interaction.



Re: X configuration changes for synaptics - please test

2011-06-17 Thread Alexandr Shadchin
On Wed, Jun 15, 2011 at 09:11:43AM +0200, Matthieu Herrb wrote:
 Hi,
 
 here are a set of patches being worked on to add native synaptics
 touch pad support to OpenBSD and Xenocara.
 
 The xf86-input-synaptics driver itself is already committed and built
 in Xenocara.
 
 http://xenocara.org/wscons_config.2.diff is a diff that uses the X
 hot-plug mechanism to configure you input drivers. It will setup
 the xf86-input-synaptics driver for you if you have one, together with
 a regular mouse driver that will handle any external PS/2 or USB mouse
 attached in addition. Touchscreens will also be auto-configured this
 way if one is detected.
 
 This new code also takes care of the configuration of the keyboard
 layout from the wscons layout. Thus a second diff:
 http://xenocara.org/xf86-input-keyboard.diff removes that code from
 the keyboard driver.
 
 To apply those patches:
 
 cd /usr/xenocara/xserver
 patch -p0 -E  /path/to/wscons_config.2.diff
 make -f Makefile.bsd-wrapper obj
 make -f Makefile.bsd-wrapper build
 cd /usr/xenocara/driver/xf86-input-keyboard
 patch -p0 -E  /path/to/xf86-input-keyboard.diff
 make -f Makefile.bsd-wrapper obj
 make -f Makefile.bsd-wrapper build
 
 Once X is ready, apply the kernel patch, and build a new kernel with
 the synaptics support in pms(4):
 http://xenocara.org/sys-synaptics.diff
 
 cd /sys
 patch -p0 -E  /path/to/sys-synaptics.diff
 
 the new kernel will detect your synaptics touch pad if any, and  X
 will be configured with the xf86-input-synaptics. Read the
 synaptics(4) manual page to discover all its features.
 
 You can check how the input drivers were configured by running the
 command:
 
xinput list
 
 If you are configuring input devices manually in xorg,conf you need to
 add this to the ServerFlags section (but may be you should give a try
 at auto-configuration and remove your InputDevice sections all together):
 
 Section ServerFlags
   Option AutoAddDevices false
 EndSection
 
 Please test, comment and report failures. Make sure to include
 /var/log/Xorg.0.log and dmesg outputs in your reports.
 
 Thanks to Alexandr Shadchin (shadchin@) for his work on this driver and
 to all people who already tested these patches and suggested
 enhancements.
 
 -- 
 Matthieu Herrb
 

New sys-synaptics.diff (http://koba.devio.us/distfiles/synaptics.v2.diff)
* fix wrong detect clickpad
* fix ignore buttons if no fingers on touchpad
* if open directly /dev/wsmouseX, then remove this device from mux
  (close device - get back in mux)

Thanks all for your feedback.

-- 
Alexandr Shadchin

Index: dev/pckbc/pms.c
===
RCS file: /cvs/src/sys/dev/pckbc/pms.c,v
retrieving revision 1.18
diff -u -p -r1.18 pms.c
--- dev/pckbc/pms.c 3 Jan 2011 19:46:34 -   1.18
+++ dev/pckbc/pms.c 17 Jun 2011 19:18:55 -
@@ -28,6 +28,7 @@
 #include sys/systm.h
 #include sys/device.h
 #include sys/ioctl.h
+#include sys/malloc.h
 
 #include machine/bus.h
 
@@ -40,12 +41,15 @@
 
 #define DEVNAME(sc)((sc)-sc_dev.dv_xname)
 
+#define WSMOUSE_BUTTON(x)  (1  ((x) - 1))
+
 struct pms_softc;
 
 struct pms_protocol {
int type;
 #define PMS_STANDARD   0
 #define PMS_INTELLI1
+#define PMS_SYNAPTICS  2
u_int packetsize;
int (*enable)(struct pms_softc *);
int (*ioctl)(struct pms_softc *, u_long, caddr_t, int, struct proc *);
@@ -54,6 +58,29 @@ struct pms_protocol {
void (*disable)(struct pms_softc *);
 };
 
+struct synaptics_softc {
+   int identify;
+   int capabilities, ext_capabilities;
+   int model, ext_model;
+   int resolution, dimension;
+
+   int mode;
+
+   int res_x, res_y;
+   int min_x, min_y;
+   int max_x, max_y;
+
+   /* Compat mode */
+   int wsmode;
+   int old_x, old_y;
+   u_int old_buttons;
+   int count;
+#define SYNAPTICS_SCALE4
+#define SYNAPTICS_PRESSURE 30
+
+   int dev_pt_attach;
+};
+
 struct pms_softc { /* driver status information */
struct device sc_dev;
 
@@ -64,56 +91,48 @@ struct pms_softc {  /* driver status inf
 #define PMS_STATE_ENABLED  1
 #define PMS_STATE_SUSPENDED2
 
+   int sc_dev_enable;
+#define PMS_DEV_IGNORE 0x00
+#define PMS_DEV_PRIMARY0x01
+#define PMS_DEV_SECONDARY  0x02
+
int poll;
int inputstate;
+   int is_touchpad;
 
const struct pms_protocol *protocol;
+   struct synaptics_softc *synaptics;
 
u_char packet[8];
 
struct device *sc_wsmousedev;
+   struct device *sc_pt_wsmousedev;
 };
 
-#define PMS_BUTTON1DOWN0x0001  /* left */
-#define PMS_BUTTON2DOWN0x0002  /* middle */
-#define PMS_BUTTON3DOWN0x0004  /* right */
-
 static const u_int butmap[8] = {
0,
-   PMS_BUTTON1DOWN,
-   PMS_BUTTON3DOWN,
-   PMS_BUTTON1DOWN | 

X configuration changes for synaptics - please test

2011-06-15 Thread Matthieu Herrb
Hi,

here are a set of patches being worked on to add native synaptics
touch pad support to OpenBSD and Xenocara.

The xf86-input-synaptics driver itself is already committed and built
in Xenocara.

http://xenocara.org/wscons_config.2.diff is a diff that uses the X
hot-plug mechanism to configure you input drivers. It will setup
the xf86-input-synaptics driver for you if you have one, together with
a regular mouse driver that will handle any external PS/2 or USB mouse
attached in addition. Touchscreens will also be auto-configured this
way if one is detected.

This new code also takes care of the configuration of the keyboard
layout from the wscons layout. Thus a second diff:
http://xenocara.org/xf86-input-keyboard.diff removes that code from
the keyboard driver.

To apply those patches:

cd /usr/xenocara/xserver
patch -p0 -E  /path/to/wscons_config.2.diff
make -f Makefile.bsd-wrapper obj
make -f Makefile.bsd-wrapper build
cd /usr/xenocara/driver/xf86-input-keyboard
patch -p0 -E  /path/to/xf86-input-keyboard.diff
make -f Makefile.bsd-wrapper obj
make -f Makefile.bsd-wrapper build

Once X is ready, apply the kernel patch, and build a new kernel with
the synaptics support in pms(4):
http://xenocara.org/sys-synaptics.diff

cd /sys
patch -p0 -E  /path/to/sys-synaptics.diff

the new kernel will detect your synaptics touch pad if any, and  X
will be configured with the xf86-input-synaptics. Read the
synaptics(4) manual page to discover all its features.

You can check how the input drivers were configured by running the
command:

   xinput list

If you are configuring input devices manually in xorg,conf you need to
add this to the ServerFlags section (but may be you should give a try
at auto-configuration and remove your InputDevice sections all together):

Section ServerFlags
Option AutoAddDevices false
EndSection

Please test, comment and report failures. Make sure to include
/var/log/Xorg.0.log and dmesg outputs in your reports.

Thanks to Alexandr Shadchin (shadchin@) for his work on this driver and
to all people who already tested these patches and suggested
enhancements.

-- 
Matthieu Herrb