Touchpad

From: Andrea Venturoli <ml_at_netfence.it>
Date: Tue, 08 Nov 2022 09:12:57 UTC
Hello.

I'm almost there with my new laptop: one of the last missing thing is 
touchpad properly working.
ATM it doesn't work in terminal (but I can live with that), and it 
partially works in X: movement is ok, two finger vertical scrolling 
works, tapping works, but no right button or double clicking.

Actually I'm finding contrasting info on how to try and configure this; 
also it's hard to tell if info is fresh or stale.
I tried:
_ hw.psm.synaptics_support="1" + moused_enable="YES" + xorg config, as 
suggested on https://wiki.freebsd.org/SynapticsTouchpad;
_ no such changes, but using xf86-input-synaptics;
_ none of the two, just xf86-input-evdev + xf86-input-libinput.

All three seems to give same results.
So before I start digging in more deeply: which is the way to go?



> #dmesg
> ...
> psm0: <PS/2 Mouse> irq 12 on atkbdc0
> psm0: [GIANT-LOCKED]
> WARNING: Device "psm" is Giant locked and may be deleted before FreeBSD 14.0.
> psm0: model Generic PS/2 mouse, device ID 0
> ...
> hmt0: <STAR0001:01 093A:0255 TouchPad> on hidbus0
> hconf0: <STAR0001:01 093A:0255 Configuration> on hidbus0
> hmt0: Multitouch touchpad with 2 external buttons
> hmt0: 5 contacts with [C] properties. Report range [0:0] - [1429:809]
> ...
> hms0: <STAR0001:01 093A:0255 Mouse> on hidbus0
> hms0: 2 buttons and [XYWH] coordinates ID=2



> devinfo -v
> nexus0
> ...
>   acpi0
>     pcib0 pnpinfo _HID=PNP0A08 _UID=0 _CID=PNP0A03 at handle=\_SB_.PCI0
>       pci0
> ...
>         ig4iic1 pnpinfo vendor=0x8086 device=0x31ba subvendor=0x8086 subdevice=0x31ba class=0x118000 at slot=23 function=3 dbsf=pci0:0:23:3 handle=\_SB_.PCI0.I2C7
>           iicbus1
>             iichid0 pnpinfo _HID=STAR0001 _UID=1 _CID=PNP0C50 at addr=0x2c handle=\_SB_.PCI0.I2C7.H02C
>               hidbus0
>                 hms0 pnpinfo page=0x0001 usage=0x0002 bus=0x18 vendor=0x093a product=0x0255 version=0xb002 _HID=STAR0001 at index=0
>                 hmt0 pnpinfo page=0x000d usage=0x0005 bus=0x18 vendor=0x093a product=0x0255 version=0xb002 _HID=STAR0001 at index=1
>                 hconf0 pnpinfo page=0x000d usage=0x000e bus=0x18 vendor=0x093a product=0x0255 version=0xb002 _HID=STAR0001 at index=2
>                 unknown pnpinfo page=0xff00 usage=0x0001 bus=0x18 vendor=0x093a product=0x0255 version=0xb002 _HID=STAR0001 at index=3
> ...
>       psm0
>     psmcpnp0 pnpinfo _HID=PNP0F13 _UID=0 _CID=PNP0F13 at handle=\_SB_.PCI0.PS2M



> 
> libinput list-devices
> Device:           System mouse
> Kernel:           /dev/input/event0
> Group:            1
> Seat:             seat0, default
> Capabilities:     pointer 
> Tap-to-click:     n/a
> Tap-and-drag:     n/a
> Tap drag lock:    n/a
> Left-handed:      disabled
> Nat.scrolling:    disabled
> Middle emulation: disabled
> Calibration:      n/a
> Scroll methods:   button
> Click methods:    none
> Disable-w-typing: n/a
> Accel profiles:   flat *adaptive
> Rotation:         n/a
> ...
> Device:           STAR0001:01 093A:0255 TouchPad
> Kernel:           /dev/input/event6
> Group:            7
> Seat:             seat0, default
> Size:             110x62mm
> Capabilities:     pointer gesture
> Tap-to-click:     disabled
> Tap-and-drag:     enabled
> Tap drag lock:    disabled
> Left-handed:      disabled
> Nat.scrolling:    disabled
> Middle emulation: n/a
> Calibration:      n/a
> Scroll methods:   *two-finger edge 
> Click methods:    none
> Disable-w-typing: enabled
> Accel profiles:   flat *adaptive
> Rotation:         n/a
> 
> Device:           STAR0001:01 093A:0255 Mouse
> Kernel:           /dev/input/event7
> Group:            8
> Seat:             seat0, default
> Capabilities:     pointer 
> Tap-to-click:     n/a
> Tap-and-drag:     n/a
> Tap drag lock:    n/a
> Left-handed:      disabled
> Nat.scrolling:    disabled
> Middle emulation: n/a
> Calibration:      n/a
> Scroll methods:   button
> Click methods:    none
> Disable-w-typing: n/a
> Accel profiles:   flat *adaptive
> Rotation:         n/a



> cat /var/log/Xorg.0.log
> ...
> [    32.278] (II) config/udev: Adding input device System mouse (/dev/input/event0)
> [    32.278] (**) System mouse: Applying InputClass "evdev pointer catchall"
> [    32.278] (**) System mouse: Applying InputClass "libinput pointer catchall"
> [    32.278] (II) LoadModule: "libinput"
> [    32.278] (II) Loading /usr/local/lib/xorg/modules/input/libinput_drv.so
> [    32.282] (II) Module libinput: vendor="X.Org Foundation"
> [    32.282]    compiled for 1.21.1.4, module version = 1.2.0
> [    32.282]    Module class: X.Org XInput Driver
> [    32.283]    ABI class: X.Org XInput driver, version 24.4
> [    32.283] (II) Using input driver 'libinput' for 'System mouse'
> [    32.283] (**) System mouse: always reports core events
> [    32.283] (**) Option "Device" "/dev/input/event0"
> [    32.283] (**) Option "_source" "server/udev"
> [    32.295] (II) event0  - System mouse: is tagged by udev as: Mouse
> [    32.296] (II) event0  - System mouse: device is a pointer
> [    32.297] (II) event0  - System mouse: device removed
> [    32.297] (**) Option "config_info" "udev:/dev/input/event0"
> [    32.297] (II) XINPUT: Adding extended input device "System mouse" (type: MOUSE, id 6)
> [    32.297] (**) Option "AccelerationScheme" "none"
> [    32.297] (**) System mouse: (accel) selected scheme none/0
> [    32.297] (**) System mouse: (accel) acceleration factor: 2.000
> [    32.297] (**) System mouse: (accel) acceleration threshold: 4
> [    32.299] (II) event0  - System mouse: is tagged by udev as: Mouse
> [    32.300] (II) event0  - System mouse: device is a pointer
> ...
> [    32.387] (II) config/udev: Adding input device Generic PS/2 mouse (/dev/input/event4)
> [    32.387] (**) Generic PS/2 mouse: Applying InputClass "evdev pointer catchall"
> [    32.387] (**) Generic PS/2 mouse: Applying InputClass "libinput pointer catchall"
> [    32.387] (II) Using input driver 'libinput' for 'Generic PS/2 mouse'
> [    32.387] (**) Generic PS/2 mouse: always reports core events
> [    32.387] (**) Option "Device" "/dev/input/event4"
> [    32.387] (**) Option "_source" "server/udev"
> [    32.388] (II) event4  - Generic PS/2 mouse: is tagged by udev as: Mouse
> [    32.389] (II) event4  - Generic PS/2 mouse: device is a pointer
> [    32.390] (II) event4  - Generic PS/2 mouse: device removed
> [    32.390] (**) Option "config_info" "udev:/dev/input/event4"
> [    32.390] (II) XINPUT: Adding extended input device "Generic PS/2 mouse" (type: MOUSE, id 10)
> [    32.390] (**) Option "AccelerationScheme" "none"
> [    32.390] (**) Generic PS/2 mouse: (accel) selected scheme none/0
> [    32.391] (**) Generic PS/2 mouse: (accel) acceleration factor: 2.000
> [    32.391] (**) Generic PS/2 mouse: (accel) acceleration threshold: 4
> [    32.392] (II) event4  - Generic PS/2 mouse: is tagged by udev as: Mouse
> [    32.393] (II) event4  - Generic PS/2 mouse: device is a pointer
> [    32.394] (II) config/udev: Adding input device Control Method Lid Switch (/dev/input/event5)
> [    32.394] (II) No input driver specified, ignoring this device.
> [    32.394] (II) This device may have been added with another device file.
> [    32.394] (II) config/udev: Adding input device STAR0001:01 093A:0255 TouchPad (/dev/input/event6)
> [    32.394] (**) STAR0001:01 093A:0255 TouchPad: Applying InputClass "evdev pointer catchall"
> [    32.394] (**) STAR0001:01 093A:0255 TouchPad: Applying InputClass "evdev touchpad catchall"
> [    32.394] (**) STAR0001:01 093A:0255 TouchPad: Applying InputClass "libinput pointer catchall"
> [    32.394] (**) STAR0001:01 093A:0255 TouchPad: Applying InputClass "libinput touchpad catchall"
> [    32.394] (II) Using input driver 'libinput' for 'STAR0001:01 093A:0255 TouchPad'
> [    32.394] (**) STAR0001:01 093A:0255 TouchPad: always reports core events
> [    32.394] (**) Option "Device" "/dev/input/event6"
> [    32.394] (**) Option "_source" "server/udev"
> [    32.396] (II) event6  - STAR0001:01 093A:0255 TouchPad: is tagged by udev as: Mouse Touchpad
> [    32.402] (II) event6  - STAR0001:01 093A:0255 TouchPad: device is a touchpad
> [    32.403] (II) event6  - STAR0001:01 093A:0255 TouchPad: device removed
> [    32.405] (**) Option "config_info" "udev:/dev/input/event6"
> [    32.405] (II) XINPUT: Adding extended input device "STAR0001:01 093A:0255 TouchPad" (type: TOUCHPAD, id 11)
> [    32.408] (**) Option "AccelerationScheme" "none"
> [    32.408] (**) STAR0001:01 093A:0255 TouchPad: (accel) selected scheme none/0
> [    32.408] (**) STAR0001:01 093A:0255 TouchPad: (accel) acceleration factor: 2.000
> [    32.408] (**) STAR0001:01 093A:0255 TouchPad: (accel) acceleration threshold: 4
> [    32.409] (II) event6  - STAR0001:01 093A:0255 TouchPad: is tagged by udev as: Mouse Touchpad
> [    32.415] (II) event6  - STAR0001:01 093A:0255 TouchPad: device is a touchpad
> [    32.417] (II) config/udev: Adding input device STAR0001:01 093A:0255 Mouse (/dev/input/event7)
> [    32.417] (**) STAR0001:01 093A:0255 Mouse: Applying InputClass "evdev pointer catchall"
> [    32.417] (**) STAR0001:01 093A:0255 Mouse: Applying InputClass "libinput pointer catchall"
> [    32.417] (II) Using input driver 'libinput' for 'STAR0001:01 093A:0255 Mouse'
> [    32.417] (**) STAR0001:01 093A:0255 Mouse: always reports core events
> [    32.417] (**) Option "Device" "/dev/input/event7"
> [    32.417] (**) Option "_source" "server/udev"
> [    32.418] (II) event7  - STAR0001:01 093A:0255 Mouse: is tagged by udev as: Mouse
> [    32.419] (II) event7  - STAR0001:01 093A:0255 Mouse: device is a pointer
> [    32.421] (II) event7  - STAR0001:01 093A:0255 Mouse: device removed
> [    32.421] (**) Option "config_info" "udev:/dev/input/event7"
> [    32.421] (II) XINPUT: Adding extended input device "STAR0001:01 093A:0255 Mouse" (type: MOUSE, id 12)
> [    32.421] (**) Option "AccelerationScheme" "none"
> [    32.421] (**) STAR0001:01 093A:0255 Mouse: (accel) selected scheme none/0
> [    32.421] (**) STAR0001:01 093A:0255 Mouse: (accel) acceleration factor: 2.000
> [    32.421] (**) STAR0001:01 093A:0255 Mouse: (accel) acceleration threshold: 4
> [    32.422] (II) event7  - STAR0001:01 093A:0255 Mouse: is tagged by udev as: Mouse
> [    32.423] (II) event7  - STAR0001:01 093A:0255 Mouse: device is a pointer
> [    66.908] (II) event0  - System mouse: device removed
> ...
> [    66.908] (II) event4  - Generic PS/2 mouse: device removed
> [    66.908] (II) event6  - STAR0001:01 093A:0255 TouchPad: device removed
> [    66.909] (II) event7  - STAR0001:01 093A:0255 Mouse: device removed

  bye & Thanks
	av.