pt., 25 kwi 2025 o 15:05 Pascal Hambourg <pas...@plouf.fr.eu.org> napisaĆ(a):
> On 25/04/2025 at 13:08, Marcin Owsiany wrote: > > > > I: Bus=0018 Vendor=2c2f Product=002d Version=0100 > > N: Name="SNSL002D:00 2C2F:002D Mouse" > > P: Phys=i2c-SNSL002D:00 > > S: > > > Sysfs=/devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-1/i2c-SNSL002D:00/0018:2C2F:002D.0001/input/input9 > > U: Uniq= > > H: Handlers=mouse1 event5 > > B: PROP=0 > > B: EV=17 > > B: KEY=1f0000 0 0 0 0 > > B: REL=3 > > B: MSC=10 > > > > I: Bus=0018 Vendor=2c2f Product=002d Version=0100 > > N: Name="SNSL002D:00 2C2F:002D Touchpad" > > P: Phys=i2c-SNSL002D:00 > > S: > > > Sysfs=/devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-1/i2c-SNSL002D:00/0018:2C2F:002D.0001/input/input10 > > U: Uniq= > > H: Handlers=mouse2 event6 > > B: PROP=5 > > B: EV=1b > > B: KEY=e520 10000 0 0 0 0 > > B: ABS=2e0800000000003 > > B: MSC=20 > > Weird that there are two pointing devices in the same path. > > > $ realpath > > > /sys/devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-1/i2c-SNSL002D:00/0018:2C2F:002D.0001/driver/module > > /sys/module/hid_multitouch > > $ realpath > > > /sys/devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-1/i2c-SNSL002D:00/0018:2C2F:002D.0001/input/input10/device/driver/module > > /sys/module/hid_multitouch > > The module hid_multitouch is present in the installer, but was not > loaded according to lsmod in the installer hardware-summary. You can try > to load it manually and see it that help. > Last time I needed to load a module manually was at least a decade ago :-) Is it just "modprobe hid_multitouch"? I'll try. According to lspci, pci0000:00/0000:00:15.0 uses module intel_lpss_pci > which is also present in the installer. > > Maybe another driver module in the path is missing. Can you > - check the /driver/module realpath on each element of the path > $ pp=/sys;for p in devices pci0000:00 /0000:00:15.0 i2c_designware.0 i2c-1 i2c-SNSL002D:00 0018:2C2F:002D.0001 input input10;do pp=${pp}/${p};if [ -e $pp -a -e $pp/driver/module ]; then printf "%-120s %s\n" $pp $(realpath $pp/driver/module);fi;done /sys/devices/pci0000:00//0000:00:15.0 /sys/module/intel_lpss_pci /sys/devices/pci0000:00//0000:00:15.0/i2c_designware.0/i2c-1/i2c-SNSL002D:00 /sys/module/i2c_hid_acpi /sys/devices/pci0000:00//0000:00:15.0/i2c_designware.0/i2c-1/i2c-SNSL002D:00/0018:2C2F:002D.0001 /sys/module/hid_multitouch $ pp=/sys;for p in devices pci0000:00 /0000:00:15.0 i2c_designware.0 i2c-1 i2c-SNSL002D:00 0018:2C2F:002D.0001 input input10;do pp=${pp}/${p};if [ -e $pp -a -e $pp/device/driver/module ]; then printf "%-120s %s\n" $pp $(realpath $pp/device/driver/module);fi;done /sys/devices/pci0000:00//0000:00:15.0/i2c_designware.0/i2c-1/i2c-SNSL002D:00/0018:2C2F:002D.0001/input/input10 /sys/module/hid_multitouch > - and post the output of: > > $ udevadm info --attribute-walk > > /sys/devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-1/i2c-SNSL002D:00/0018:2C2F:002D.0001/input/input10 > $ udevadm info --attribute-walk /sys/devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-1/i2c-SNSL002D:00/0018:2C2F:002D.0001/input/input10|cat Udevadm info starts with the device specified by the devpath and then walks up the chain of parent devices. It prints for every device found, all possible attributes in the udev rules key format. A rule to match, can be composed by the attributes of the device and the attributes from one single parent device. looking at device '/devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-1/i2c-SNSL002D:00/0018:2C2F:002D.0001/input/input10': KERNEL=="input10" SUBSYSTEM=="input" DRIVER=="" ATTR{capabilities/abs}=="2e0800000000003" ATTR{capabilities/ev}=="1b" ATTR{capabilities/ff}=="0" ATTR{capabilities/key}=="e520 10000 0 0 0 0" ATTR{capabilities/led}=="0" ATTR{capabilities/msc}=="20" ATTR{capabilities/rel}=="0" ATTR{capabilities/snd}=="0" ATTR{capabilities/sw}=="0" ATTR{id/bustype}=="0018" ATTR{id/product}=="002d" ATTR{id/vendor}=="2c2f" ATTR{id/version}=="0100" ATTR{inhibited}=="0" ATTR{name}=="SNSL002D:00 2C2F:002D Touchpad" ATTR{phys}=="i2c-SNSL002D:00" ATTR{power/async}=="disabled" ATTR{power/control}=="auto" ATTR{power/runtime_active_kids}=="0" ATTR{power/runtime_active_time}=="0" ATTR{power/runtime_enabled}=="disabled" ATTR{power/runtime_status}=="unsupported" ATTR{power/runtime_suspended_time}=="0" ATTR{power/runtime_usage}=="0" ATTR{properties}=="5" ATTR{uniq}=="" looking at parent device '/devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-1/i2c-SNSL002D:00/0018:2C2F:002D.0001': KERNELS=="0018:2C2F:002D.0001" SUBSYSTEMS=="hid" DRIVERS=="hid-multitouch" ATTRS{country}=="00" ATTRS{power/async}=="enabled" ATTRS{power/control}=="auto" ATTRS{power/runtime_active_kids}=="0" ATTRS{power/runtime_active_time}=="0" ATTRS{power/runtime_enabled}=="disabled" ATTRS{power/runtime_status}=="unsupported" ATTRS{power/runtime_suspended_time}=="0" ATTRS{power/runtime_usage}=="0" ATTRS{quirks}=="334864" looking at parent device '/devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-1/i2c-SNSL002D:00': KERNELS=="i2c-SNSL002D:00" SUBSYSTEMS=="i2c" DRIVERS=="i2c_hid_acpi" ATTRS{name}=="SNSL002D:00" ATTRS{power/async}=="enabled" ATTRS{power/control}=="auto" ATTRS{power/runtime_active_kids}=="0" ATTRS{power/runtime_active_time}=="0" ATTRS{power/runtime_enabled}=="disabled" ATTRS{power/runtime_status}=="unsupported" ATTRS{power/runtime_suspended_time}=="0" ATTRS{power/runtime_usage}=="0" ATTRS{power/wakeup}=="enabled" ATTRS{power/wakeup_abort_count}=="0" ATTRS{power/wakeup_active}=="0" ATTRS{power/wakeup_active_count}=="116761" ATTRS{power/wakeup_count}=="0" ATTRS{power/wakeup_expire_count}=="0" ATTRS{power/wakeup_last_time_ms}=="15346576" ATTRS{power/wakeup_max_time_ms}=="0" ATTRS{power/wakeup_total_time_ms}=="14" looking at parent device '/devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-1': KERNELS=="i2c-1" SUBSYSTEMS=="i2c" DRIVERS=="" ATTRS{delete_device}=="(not readable)" ATTRS{name}=="Synopsys DesignWare I2C adapter" ATTRS{new_device}=="(not readable)" ATTRS{power/async}=="enabled" ATTRS{power/runtime_active_kids}=="0" ATTRS{power/runtime_enabled}=="enabled" ATTRS{power/runtime_status}=="suspended" ATTRS{power/runtime_usage}=="0" ATTRS{waiting_for_supplier}=="0" looking at parent device '/devices/pci0000:00/0000:00:15.0/i2c_designware.0': KERNELS=="i2c_designware.0" SUBSYSTEMS=="platform" DRIVERS=="i2c_designware" ATTRS{driver_override}=="(null)" ATTRS{power/async}=="enabled" ATTRS{power/autosuspend_delay_ms}=="1000" ATTRS{power/control}=="auto" ATTRS{power/runtime_active_kids}=="0" ATTRS{power/runtime_active_time}=="1220072" ATTRS{power/runtime_enabled}=="enabled" ATTRS{power/runtime_status}=="suspended" ATTRS{power/runtime_suspended_time}=="14140226" ATTRS{power/runtime_usage}=="0" looking at parent device '/devices/pci0000:00/0000:00:15.0': KERNELS=="0000:00:15.0" SUBSYSTEMS=="pci" DRIVERS=="intel-lpss" ATTRS{ari_enabled}=="0" ATTRS{broken_parity_status}=="0" ATTRS{class}=="0x0c8000" ATTRS{consistent_dma_mask_bits}=="64" ATTRS{d3cold_allowed}=="1" ATTRS{device}=="0x7e78" ATTRS{dma_mask_bits}=="32" ATTRS{driver_override}=="(null)" ATTRS{enable}=="1" ATTRS{irq}=="32" ATTRS{local_cpulist}=="0-21" ATTRS{local_cpus}=="3fffff" ATTRS{msi_bus}=="1" ATTRS{numa_node}=="-1" ATTRS{power/async}=="enabled" ATTRS{power/control}=="auto" ATTRS{power/pm_qos_latency_tolerance_us}=="auto" ATTRS{power/runtime_active_kids}=="0" ATTRS{power/runtime_active_time}=="1225886" ATTRS{power/runtime_enabled}=="enabled" ATTRS{power/runtime_status}=="suspended" ATTRS{power/runtime_suspended_time}=="14136215" ATTRS{power/runtime_usage}=="0" ATTRS{power_state}=="D3hot" ATTRS{remove}=="(not readable)" ATTRS{rescan}=="(not readable)" ATTRS{resource0}=="(not readable)" ATTRS{revision}=="0x20" ATTRS{subsystem_device}=="0x2235" ATTRS{subsystem_vendor}=="0x17aa" ATTRS{vendor}=="0x8086" looking at parent device '/devices/pci0000:00': KERNELS=="pci0000:00" SUBSYSTEMS=="" DRIVERS=="" ATTRS{power/async}=="enabled" ATTRS{power/control}=="auto" ATTRS{power/runtime_active_kids}=="13" ATTRS{power/runtime_active_time}=="0" ATTRS{power/runtime_enabled}=="disabled" ATTRS{power/runtime_status}=="unsupported" ATTRS{power/runtime_suspended_time}=="0" ATTRS{power/runtime_usage}=="0" ATTRS{waiting_for_supplier}=="0"