WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: synaptics driver for Xorg not working in TC16 x64  (Read 4705 times)

Offline nick65go

  • Hero Member
  • *****
  • Posts: 895
Re: synaptics driver for Xorg not working in TC16 x64
« Reply #30 on: May 27, 2025, 02:26:35 PM »
@Rich: You are right, thanks for refreshing my memory. The main problem is that I do not know what to send to kernel and what module is not behaving properly  ;) 
@ Juanito: So I start with assumption that the TC kernel + its modules are OK, because input device (touchpad) was properly detected + its module loaded. Then I could try:

1. Teleport a new firmware from a working OS (CachyoS). If works then OK, if not continue to step2.
2. new Xorg + new synaptics, (or Xorg + new libinput) from a working OS (Archlinux, CachyoS). If works OK, if not continue to step3.
3. TC Wayland + TC libinput; because i tried only Wayland + labwc for now.
It takes time, because proper preparations before hand of tcz and dependencies, multiple re-boots, etc.

BTW; I hope is OK to love many things / persons simultaneous  :)  because I re-discovered a new love, is KDE (last time was in Slitaz, long time ago). It is so modern, more customizable than Gnome. And in CachyOS (no advertise is intended here) I have all I need out-of-the-box: microcode-CPU, compiled for x86-x64-v3, sound analog+HDMI, WiFI, blue-tooth, F1-F12 key working (brightness, mute) etc. The F1-F12 were not working in TC16-x64, but I did no reported because was a minor annoyance versus touchpad.
PS: I hope that the libc & co. will not kill my plans, because symbols not found in lib dependencies. Any plan is perfect until first contact with the enemy...
« Last Edit: May 27, 2025, 02:36:30 PM by nick65go »

Offline GNUser

  • Wiki Author
  • Hero Member
  • *****
  • Posts: 1616
Re: synaptics driver for Xorg not working in TC16 x64
« Reply #31 on: May 27, 2025, 09:43:59 PM »
i tried only Wayland + labwc for now.
...
TC16-x64, but I did no reported because was a minor annoyance versus touchpad.
Hi nick65go. FWIW, I also run labwc on TCL16 x86_64 with my X230 Thinkpad. My touchpad is working fine (cursor movement, clicking, two-finger scrolling) both in wayland-native applications as well as in X applications running in xwayland. I don't remember doing anything special to configure the touchpad.

In case it helps, these are the loaded extensions that have "input" in their name:
Code: [Select]
$ tce-status -i | grep input
input-joystick-6.12.11-tinycore64
libinput
xf86-input-libinput
After running an xwayland application, this is what xinput shows:
Code: [Select]
$ xinput
⎡ Virtual core pointer                    id=2 [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              id=4 [slave  pointer  (2)]
⎜   ↳ xwayland-pointer:15                      id=6 [slave  pointer  (2)]
⎜   ↳ xwayland-relative-pointer:15            id=7 [slave  pointer  (2)]
⎜   ↳ xwayland-pointer-gestures:15            id=8 [slave  pointer  (2)]
⎣ Virtual core keyboard                    id=3 [master keyboard (2)]
    ↳ Virtual core XTEST keyboard              id=5 [slave  keyboard (3)]
    ↳ xwayland-keyboard:15                    id=9 [slave  keyboard (3)]

Offline nick65go

  • Hero Member
  • *****
  • Posts: 895
Re: synaptics driver for Xorg not working in TC16 x64
« Reply #32 on: May 28, 2025, 04:48:06 AM »
Hi GNUser, thanks for your feed-back about Wayland (and Xorg on/over Wayland base). So is not pure xorg-server. My test appl is xfe file manager. Today I am looking in:
https://mirrors.dotsrc.org/tinycorelinux/16.x/x86_64/tcz/libinput.tcz.list  I saw a lot [=48] of /usr/local/share/libinput/??-{vendor|system}-*.quirks ; and opening each of them I saw something interesting, like this:

from /usr/local/share/libinput/30-vendor-synaptics.quirks
Code: [Select]
# SYNA3602:00 0911:5288 touchpad, clickpad pretending it has a right button.
[Synaptics 0911:5288 Touchpad]
MatchUdevType=touchpad
MatchName=* 0911:5288 Touchpad
AttrEventCode=-BTN_RIGHT    <- remove event?

from /usr/local/share/libinput/50-system-hp.quirks
Code: [Select]
# Claims to have double/tripletap but doesn't actually send it
[HP Compaq 6910p]
MatchName=*SynPS/2 Synaptics TouchPad
..
AttrEventCode=-BTN_TOOL_DOUBLETAP;-BTN_TOOL_TRIPLETAP;    <- remove events?
===
# Touchpad is a clickpad but INPUT_PROP_BUTTONPAD is not set, see
[HP Stream 11]
MatchName=SYN1EDE:00 06CB:7442*
MatchDMIModalias=dmi:*svnHewlett-Packard:pnHPStreamNotebookPC11*
AttrInputProp=+INPUT_PROP_BUTTONPAD        <- add property!

and so on from others files:
Code: [Select]
# Logitech Marble Mouse claims to have a middle button
[Logitech Marble Mouse Trackball]
...
AttrEventCode=-BTN_MIDDLE    <- remove event?
====
# Disable the event codes to avoid stuck buttons.
[Madcatz RAT3]
...
# EV_KEY 0x115, 0x116, 0x117
AttrEventCode=-EV_KEY:0x115;-EV_KEY:0x116;-EV_KEY:0x117

Summary: so (-) =delete wrong properties/events, (+) =add missing properties/events. I may need to learn syntax for [un]documented parameters of libinput.
it seams that I may need to Add (+) some events to be reconized by libinput (if they are not by default) for my device, in the form something like:
Code: [Select]
[my HP syanptic]
MatchName=SYNA*
AttrEventCode=+BTN_TOOL_DOUBLETAP;+BTN_TOOL_TRIPLETAP;  <- add event
AttrInputProp=+INPUT_PROP_BUTTONPAD <- add property
« Last Edit: May 28, 2025, 05:12:15 AM by nick65go »

Offline nick65go

  • Hero Member
  • *****
  • Posts: 895
Re: synaptics driver for Xorg not working in TC16 x64
« Reply #33 on: May 28, 2025, 05:24:21 AM »
oh boy, I did not enrolled for this long search/research; anyway this post is for my future reference from another computer...
https://wayland.freedesktop.org/libinput/doc/latest/device-quirks.html

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 15195
Re: synaptics driver for Xorg not working in TC16 x64
« Reply #34 on: May 28, 2025, 05:58:32 AM »
1. Teleport a new firmware from a working OS (CachyoS). If works then OK, if not continue to step2.

What I suggested was to look at dmesg (using either x or wayland) and see what firmware your machine tries to load - it may be that there's a newer version of that firmware the kernel can use.

For example (from an RPi)
Code: [Select]
dmesg | grep -i firmware
[    0.000000] psci: PSCIv1.1 detected in firmware.
[    0.056054] raspberrypi-firmware soc@107c000000:firmware: Attached to firmware from 2025-05-08T14:13:17, variant start_cd
[    0.060055] raspberrypi-firmware soc@107c000000:firmware: Firmware hash is 6947117700000000000000000000000000000000
[   54.647856] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/6 wl0: Aug 29 2023 01:47:08 version 7.45.265 (28bca26 CY) FWID 01-b677b91b

Offline GNUser

  • Wiki Author
  • Hero Member
  • *****
  • Posts: 1616
Re: synaptics driver for Xorg not working in TC16 x64
« Reply #35 on: May 28, 2025, 06:57:36 AM »
Sorry, I missed the fact that his machine requires firmware for the touchpad. That's a more complex situation than my old Thinkpad.

Trying the latest version of the firmware is a good idea.

Offline nick65go

  • Hero Member
  • *****
  • Posts: 895
Re: synaptics driver for Xorg not working in TC16 x64
« Reply #36 on: May 28, 2025, 08:34:22 AM »
OK, reset! I saw that I need firmware for graphic (i915), wifi (rtlw89) and maybe sound-surround ((intel/sof). I do not think sound or WiFi will influence my input touchpad. So when I will have access to my PC I will try new git firmware which I saw in "other working linux" dmsg. About latest firmware
https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/i915

2023-07-26       i915: Update ADLP DMC to v2.20: => /i915/adlp_dmc.bin
2025-04-10        i915: Update GUC to v70.44.1 for i915 platforms: => i915/adlp_guc_70.bin
2022-09-16        i915: Add versionless HuC (no version >7.9.3) files for current platforms: => /i915/tgl_huc.bin
 
TC firmware-i915.tcz ;
2023/02/04 updated has deletions
2024/03/12 updated remove install script - 0 deletions
Current:              2024/09/23 corrected info file only 
 
from https://wiki.gentoo.org/wiki/Intel/en
GuC/HuC firmware: Graphics µController firmware offloads functions from the host driver. HEVC/H.265 µController firmware improves hardware acceleration of media decoding. HuC firmware (and GuC as a dependent) is needed for AVC/HEVC/VP9 low power encoding bitrate control, including CBR, VBR, etc.
GuC firmware for Gen 12+ now only uses major version numbers e.g. tgl_guc_70.bin and HuC firmware does not have a version number e.g. tgl_huc.bin
« Last Edit: May 28, 2025, 08:47:57 AM by nick65go »

Offline nick65go

  • Hero Member
  • *****
  • Posts: 895
Re: synaptics driver for Xorg not working in TC16 x64
« Reply #37 on: May 28, 2025, 03:18:16 PM »
TL:DR Executive Summary: I will give up. The subject was about Xorg Synaptic driver, and it does not work for my device. Also libinput /xinput did not helped me.I assumed that an up to date firmware will help me, but it did not.
My only gain from this adventure was that I tried, for the first time, the wayland, weston, labwc; they are fast/ promising but for now they are too primitive for me. Anyway, soon (in 7 months) will be a new TC (new kernel, new Xorg, new mesa) to try again ;) No rush for me, take your time.

history for posterity:
Booting OEM (just Xfbdev), TC did not see the touchpad.
Code: [Select]
tc@box:~$ dmesg | grep firmware
tc@box:~$ dmesg | grep SYN
tc@box:~$

As soon as I load the i2c bus,  the touchpad is activated.
Code: [Select]
tc@box:~$ tce-load -i i2c-6.12.11-tinycore64.tcz
i2c-6.12.11-tinycore64.tcz: OK

It needs just the modules i2c_hid_acpi to activate, even without a firmware:
Code: [Select]
tc@box:~$ lsmod | grep i2c
tc@box:~$ sudo modprobe  i2c_designware_platform
tc@box:~$ lsmod | grep i2c
i2c_hid_acpi           12288  0
i2c_hid                24576  1 i2c_hid_acpi
drm                   348160  1 i2c_hid
i2c_designware_platform    12288  0
i2c_designware_core    20480  1 i2c_designware_platform
Code: [Select]
tc@box:~$ dmesg | grep SYN
input: SYNA32E0:00 06CB:CE17 Mouse as /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-1/i2c-SYNA32E0:00/0018:06CB:CE17.0002/input/input7
input: SYNA32E0:00 06CB:CE17 Touchpad as /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-1/i2c-SYNA32E0:00/0018:06CB:CE17.0002/input/input8
hid-generic 0018:06CB:CE17.0002: input,hidraw1: I2C HID v1.00 Mouse [SYNA32E0:00 06CB:CE17] on i2c-SYNA32E0:00

Loading the firmware change nothing, regarding the touchpad:

Code: [Select]
tc@box:~$ tce-load -i /mnt/nvme0n1p4/tce/optional/HP17-OEM.tcz
HP17-OEM is already installed!
tc@box:~$ ls -1R /tmp/tcloop/HP17-OEM/usr/local/lib/firmware/
/tmp/tcloop/HP17-OEM/usr/local/lib/firmware/:
i915/
intel/
intel-ucode/
rtl_bt/
rtlwifi/
rtw89/

/tmp/tcloop/HP17-OEM/usr/local/lib/firmware/i915:
adlp_dmc.bin
adlp_guc_70.bin
tgl_huc.bin

/tmp/tcloop/HP17-OEM/usr/local/lib/firmware/intel:
sof/
sof-tplg/

/tmp/tcloop/HP17-OEM/usr/local/lib/firmware/intel/sof:
intel-signed/
sof-rpl.ri

/tmp/tcloop/HP17-OEM/usr/local/lib/firmware/intel/sof/intel-signed:
sof-adl.ri
sof-rpl.ri

/tmp/tcloop/HP17-OEM/usr/local/lib/firmware/intel/sof-tplg:
sof-hda-generic-2ch.tplg

/tmp/tcloop/HP17-OEM/usr/local/lib/firmware/intel-ucode:

/tmp/tcloop/HP17-OEM/usr/local/lib/firmware/rtl_bt:
rtl8852bu_config.bin
rtl8852bu_fw.bin

/tmp/tcloop/HP17-OEM/usr/local/lib/firmware/rtlwifi:
rtl8192eu_nic.bin

/tmp/tcloop/HP17-OEM/usr/local/lib/firmware/rtw89:
rtw8852b_fw-1.bin
tc@box:~$

Firmware only activated the graphic acceleration:

Code: [Select]
tc@box:~$ dmesg | grep firmware
i915 0000:00:02.0: Direct firmware load for i915/adlp_dmc.bin failed with error -2
i915 0000:00:02.0: [drm] Finished loading DMC firmware i915/adlp_dmc.bin (v2.20)
i915 0000:00:02.0: [drm] GT0: GuC firmware i915/adlp_guc_70.bin version 70.44.1
i915 0000:00:02.0: [drm] GT0: HuC firmware i915/tgl_huc.bin version 7.9.3
tc@box:~$ sudo modprobe -r i2c_designware_platform
tc@box:~$ sudo modprobe i2c_designware_platform
tc@box:~$

Code: [Select]
tc@box:~$ dmesg | grep -i not
Secure boot could not be determined
system 00:03: [mem 0xfed20000-0xfed7ffff] could not be reserved
system 00:03: [mem 0xfed45000-0xfed8ffff] could not be reserved
softdog:              soft_reboot_cmd=<not set> soft_active_on_boot=0
ccp_crypto: Cannot load: there are no available CCPs
xe 0000:00:02.0: Your graphics device a7a1 is not officially supported
tc@box:~$ dmesg | grep -i taint
tc@box:~$ dmesg | grep -i error
hp_wmi: query 0x4c returned error 0x6                                                                  <=  F1-F12 not working?
i915 0000:00:02.0: Direct firmware load for i915/adlp_dmc.bin failed with error -2 <= before firmware loaded
tc@box:~$

Original TC xorg-server + libinput was not working.
Code: [Select]
tc@box:~$ tce-load -i /mnt/nvme0n1p4/tce/optional/Xorg-7.7.tcz
..
xorg-server.tcz: OK                    <= OK
xf86-video-fbdev.tcz: OK
...
libinput.tcz: OK                            <= OK
xf86-input-libinput.tcz: OK           <= OK
...
Xorg-7.7.tcz: OK                         <= OK
tc@box:~$

tc@box:~$ ls /var/log/
autologin  wtmp
tc@box:~$
exit in console + back in Xorg instead of Xfbdev.
tc@box:~$ ls -l /var/log/
total 60
-rw-r--r--    1 root     staff        49474 May 28 18:12 Xorg.0.log
-rw-r--r--    1 root     root             0 May 28 17:15 autologin
-rw-rw-r--    1 root     staff         4992 May 28 18:12 wtmp
tc@box:~$

===new, I tried Wayland +weston.
Code: [Select]
tc@box:~$ ls /mnt/nvme0n1p4/tce/optional/wayland*.tcz
/mnt/nvme0n1p4/tce/optional/wayland-protocols.tcz
/mnt/nvme0n1p4/tce/optional/wayland-utils.tcz
/mnt/nvme0n1p4/tce/optional/wayland.tcz
tc@box:~$ tce-load -i /mnt/nvme0n1p4/tce/optional/wayland-protocols.tcz
wayland-protocols is already installed!
tc@box:~$ tce-load -i /mnt/nvme0n1p4/tce/optional/wayland-utils.tcz
wayland-utils is already installed!
tc@box:~$ tce-load -i /mnt/nvme0n1p4/tce/optional/wayland.tcz
wayland is already installed!
tc@box:~$

tc@box:~$ ls /mnt/nvme0n1p4/tce/optional/west*.tcz
/mnt/nvme0n1p4/tce/optional/weston.ini.tcz
/mnt/nvme0n1p4/tce/optional/weston.tcz
tc@box:~$ tce-load -i /mnt/nvme0n1p4/tce/optional/weston.ini.tcz
weston.ini is already installed!
tc@box:~$ tce-load -i /mnt/nvme0n1p4/tce/optional/weston.tcz
weston is already installed!
tc@box:~$

exit in console and run the script:

Code: [Select]
tc@box:~$ cat /mnt/nvme0n1p4/tce/weston.sh
#!/bin/sh
sudo -- seatd -g staff -n /run/seatd.sock & XDG_RUNTIME_DIR=/run/user/$(id -u) weston
tc@box:~$

Code: [Select]
tc@box:~$ xinput list-props 10
Unable to connect to X server
tc@box:~$ sudo libinput debug-events
-event2   DEVICE_ADDED            Power Button                      seat0 default group1  cap:k
-event9   DEVICE_ADDED            Video Bus                         seat0 default group2  cap:k
-event1   DEVICE_ADDED            Power Button                      seat0 default group3  cap:k
-event5   DEVICE_ADDED            Microsoft  Microsoft Basic Optical Mouse v2.0  seat0 default group4  cap:p left scroll-nat scroll-button
-event7   DEVICE_ADDED            SYNA32E0:00 06CB:CE17 Mouse       seat0 default group5  cap:p left scroll-nat scroll-button
-event8   DEVICE_ADDED            SYNA32E0:00 06CB:CE17 Touchpad    seat0 default group5  cap:t  size 111x69mm ntouches 1 calib
-event3   DEVICE_ADDED            AT Translated Set 2 keyboard      seat0 default group6  cap:k
-event6   DEVICE_ADDED            HP WMI hotkeys                    seat0 default group7  cap:k
-event3   KEYBOARD_KEY            +4294967.295s *** (-1) pressed
 event3   KEYBOARD_KEY            +0.284s       *** (-1) pressed
^C
tc@box:~$ editor

back in Xorg here, to report my fail: in weston, with TC editor I made the windows small to allow me to see and try vertical/horizontal scrolls. Not working.


Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 12141
Re: synaptics driver for Xorg not working in TC16 x64
« Reply #38 on: May 28, 2025, 03:43:46 PM »
Hi nick65go
There was a lot in you last post and I got lost trying to
follow it all.

So I'll just mention that firmware needs to be loaded
before modules.

Also, I have an HP G62 and I have hp_wmi blacklisted,
though I don't recall why.

Offline nick65go

  • Hero Member
  • *****
  • Posts: 895
Re: synaptics driver for Xorg not working in TC16 x64
« Reply #39 on: May 28, 2025, 04:28:38 PM »
Hi Rich :) the post shows /follows my sequential TODAY work.I did indeed boot into just OEM (Xfbdev). and with lsmod I saw that no drivers (i2c) was loaded, and so dmesg | input proved. Then I loaded the firmware. And only after firmware I loaded i2c modules. Same as you suggested. Of course I could repeat this order one more time, but I am pretty sure this was the order to load. Maybe I explained wrong in my history, sorry for confusion.
If if worked my intention was to then include firmware in init-ram core.gz...Hm, I may do it anyway, why not :)
I could try also to blacklist hp_wmi modules or Xe module *because I will have already i915, etc.
The TC is functional even without an external mouse, but I just expected to make all my devices work at full capacities.
« Last Edit: May 28, 2025, 04:35:22 PM by nick65go »

Offline nick65go

  • Hero Member
  • *****
  • Posts: 895
Re: synaptics driver for Xorg not working in TC16 x64
« Reply #40 on: May 28, 2025, 05:01:07 PM »
OK, my "facts":1. shell history commands:
Code: [Select]
182 tce-load -i HP17-OEM   183 lsmod  184 lsmod | grep input
 185 date
 186 lsmod | grep input
 187 tce-load -i /mnt/nvme0n1p4/tce/optional/graphics-6.12.11-tinycore64.tcz
 188 startx
 189 lsmod 
 190 history 
tc@box:~$
2. control panel, button "System status", tab filesystem: Xfbvdev, HP17-OEM, graphic-*, wifi, firefox.
Code: [Select]
/dev/loop45             356.0K    356.0K         0 100% /tmp/tcloop/Xfbdev
/dev/loop46               1.4M      1.4M         0 100% /tmp/tcloop/HP17-OEM
/dev/loop47             184.0K    184.0K         0 100% /tmp/tcloop/i2c-6.12.11-tinycore64
/dev/loop48               6.7M      6.7M         0 100% /tmp/tcloop/graphics-6.12.11-tinycore64
/dev/loop49             128.0K    128.0K         0 100% /tmp/tcloop/libiw
/dev/loop50               5.8M      5.8M         0 100% /tmp/tcloop/wireless-6.12.11-tinycore64
/dev/loop51             128.0K    128.0K         0 100% /tmp/tcloop/wireless_tools
dev/loop63             356.0K    356.0K         0 100% /tmp/tcloop/libnl
/dev/loop64               1.2M      1.2M         0 100% /tmp/tcloop/wpa_supplicant-dbus
/dev/loop65               8.0K      8.0K         0 100% /tmp/tcloop/wifi
dev/loop90               3.8M      3.8M         0 100% /tmp/tcloop/gtk3
/dev/loop91             121.6M    121.6M         0 100% /tmp/tcloop/firefox



« Last Edit: May 28, 2025, 05:07:35 PM by nick65go »