* Description: My Synaptic touchpad is not recognised by the kernel 4.19.2 on a HP Spectre x360 df0709nz. * Keywords kernel, drivers, input, touchpad, synaptics * Kernel Version 4.19.2-301.fc29.x86_64 (Fedora 29) Note: I tested kernel 4.20 using fedoraproject.org/wiki/Kernel_Vanilla_Repositories with the same outcome. * Full output https://pastebin.com/QeJhTwvQ dmesg https://pastebin.com/BDQPGn9w hwinfo https://pastebin.com/RcndGyW7 cat /proc/bus/input/devices https://pastebin.com/51xwat5g libinput list-devices https://pastebin.com/3pTYhWSC lsusb -v * Relevant output (I think) ** device not found in: /proc/bus/input/devices libinput list-devices ** hwinfo 54: USB 00.0: 0000 Unclassified device [Created at usb.122] Unique ID: POWV.OXxrJ9G95ZB Parent ID: k4bc.2DFUsyrieMD SysFS ID: /devices/pci0000:00/0000:00:14.0/usb1/1-9/1-9:1.0 SysFS BusID: 1-9:1.0 Hardware Class: unknown Model: "Synaptics Unclassified device" Hotplug: USB Vendor: usb 0x06cb "Synaptics, Inc." Device: usb 0x00bb Revision: "1.64" Serial ID: "fe8ba407f5c7" Speed: 12 Mbps Module Alias: "usb:v06CBp00BBd0164dcFFdsc10dpFFicFFisc00ip00in00" Config Status: cfg=new, avail=yes, need=no, active=unknown Attached to: #61 (Hub) ** dmesg [ 1.561973] usb 1-9: New USB device found, idVendor=06cb, idProduct=00bb, bcdDevice= 1.64 [ 1.561975] usb 1-9: New USB device strings: Mfr=0, Product=0, SerialNumber=1 [ 1.561976] usb 1-9: SerialNumber: fe8ba407f5c7 ** lsusb -v Bus 001 Device 003: ID 06cb:00bb Synaptics, Inc. Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 255 Vendor Specific Class bDeviceSubClass 16 bDeviceProtocol 255 bMaxPacketSize0 8 idVendor 0x06cb Synaptics, Inc. idProduct 0x00bb bcdDevice 1.64 iManufacturer 0 iProduct 0 iSerial 1 fe8ba407f5c7 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 0x0035 bNumInterfaces 1 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xa0 (Bus Powered) Remote Wakeup MaxPower 100mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 5 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 0 bInterfaceProtocol 0 iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x01 EP 1 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x82 EP 2 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x83 EP 3 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0008 1x 8 bytes bInterval 4 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x84 EP 4 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0010 1x 16 bytes bInterval 10 Device Status: 0x0000 (Bus Powered) * Environment ** About the environment: https://pastebin.com/iduMtse4 lscpu https://pastebin.com/P5dJx0gD lshw https://pastebin.com/f9gDrQ81 lspci ** ver_linux: Linux localhost.localdomain 4.19.2-301.fc29.x86_64 #1 SMP Sat Nov 17 17:58:01 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux GNU Make 4.2.1 Binutils 2.31.1 Util-linux 2.32.1 Mount 2.32.1 Module-init-tools 25 E2fsprogs 1.44.3 Xfsprogs 4.17.0 Quota-tools 4.04 PPP 2.4.7 Nfs-utils 2.3.3 Linux C Library 2.28 Dynamic linker (ldd) 2.28 Linux C++ Library 6.0.25 Procps 3.3.15 Net-tools 2.10 Kbd 2.0.4 Console-tools 2.0.4 Sh-utils 8.30 Udev 239 Wireless-tools 29 Modules Loaded ac97_bus acpi_pad acpi_thermal_rel arc4 bluetooth bnep bridge btbcm btintel btrtl btusb ccm cfg80211 cmac coretemp crc32c_intel crc32_pclmul crct10dif_pclmul devlink drm drm_kms_helper ebtable_filter ebtable_nat ebtables ecdh_generic fat fuse ghash_clmulni_intel hp_wireless hp_wmi i2c_algo_bit i2c_hid i2c_i801 i915 int3400_thermal int3403_thermal int340x_thermal_zone intel_cstate intel_hid intel_ish_ipc intel_ishtp intel_lpss intel_lpss_pci intel_pch_thermal intel_powerclamp intel_rapl intel_rapl_perf intel_soc_dts_iosf intel_uncore intel_wmi_thunderbolt ip6table_filter ip6table_mangle ip6table_nat ip6table_raw ip6_tables ip6table_security ip6t_REJECT ip6t_rpfilter ipmi_devintf ipmi_msghandler ip_set iptable_mangle iptable_nat iptable_raw iptable_security ipt_MASQUERADE irqbypass iTCO_vendor_support iTCO_wdt iwlmvm iwlwifi joydev kvm libcrc32c llc lp mac80211 media mei mei_me memstick mmc_core mxm_wmi nf_conntrack nf_conntrack_broadcast nf_conntrack_netbios_ns nf_defrag_ipv4 nf_defrag_ipv6 nf_nat nf_nat_ipv4 nf_nat_ipv6 nfnetlink nf_reject_ipv6 nvidia nvidia_drm nvidia_modeset nvme nvme_core parport parport_pc pcc_cpufreq pinctrl_cannonlake pinctrl_intel ppdev processor_thermal_device rfcomm rfkill rtsx_pci rtsx_pci_ms rtsx_pci_sdmmc serio_raw snd snd_compress snd_hda_codec snd_hda_codec_generic snd_hda_codec_hdmi snd_hda_codec_realtek snd_hda_core snd_hda_ext_core snd_hda_intel snd_hwdep snd_pcm snd_pcm_dmaengine snd_seq snd_seq_device snd_soc_acpi snd_soc_acpi_intel_match snd_soc_core snd_soc_skl snd_soc_skl_ipc snd_soc_sst_dsp snd_soc_sst_ipc snd_timer soundcore sparse_keymap st stp sunrpc thunderbolt tun typec typec_ucsi ucsi_acpi uhid uvcvideo vfat video videobuf2_common videobuf2_memops videobuf2_v4l2 videobuf2_vmalloc videodev wmi wmi_bmof x86_pkg_temp_thermal xt_CHECKSUM xt_conntrack xt_CT
I added logs for kernel 4.20.0.rc4 to a dropbox folder: https://www.dropbox.com/sh/mgg06hjiiilww8t/AAB4WqauCAmcw4X8OfIQK6K1a?dl=0
After having a closer look, I realized that the unclassified USB device 06cb:00bb isn't the touchpad but the fingerprint reader, also made by Synaptics. The touchpad's type is SYNA327F. This is also the ID that is written in the corresponding driver's readme: https://support.hp.com/soar-attachment/903/col88070-ob-219568-1-ob-219568-1_sp92064_releasedoc.html P: /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:80/SYNA327F:00 E: DEVPATH=/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:80/SYNA327F:00 E: ID_VENDOR_FROM_DATABASE=Synaptics Inc E: MODALIAS=acpi:SYNA327F:PNP0C50: E: SUBSYSTEM=acpi E: USEC_INITIALIZED=4108359 Also, I should mention that I can only boot the laptop with `noapic` boot option! Sorry for the confusion, I'm a noob.
I have found a workaround: Adding the boot-parameter "i8042.nopnp"! Logs are in the dropbox folder. (https://www.dropbox.com/sh/mgg06hjiiilww8t/AAB4WqauCAmcw4X8OfIQK6K1a)
> I can only boot the laptop with `noapic` boot option! I also had a problem with booting and ACPI on 15-df0850nz: it needed the option `acpi=noirq` to boot. Turns out that if I enable "legacy boot support" in BIOS, it boots for me without any ACPI options. I don't even boot in legacy mode, just having it enabled helps. However, make sure to have the nvidia driver installed, or add the boot option `nouveau.modeset=0` following [this thread](https://www.reddit.com/r/spectrex360/comments/abib5y/installing_ubuntu_on_the_x360_gemcut_15_inch/). With a newer kernel (4.19.13 or 4.20), the touchpad, touchscreen and pen are recognized. The remaining problem is that if the pen comes close to the screen, it stops accepting touch inputs - moving the pen away does not reactivate them.
Thanks for the hint! After updating to kernel 4.19.13 and enabling "legacy boot support" in df0709nz BIOS, I don't require 'i8042.nopnp' and 'noapic' anymore AND the touchscreen works! How lovely! (I don't have a pen so I can't comment on that point.)