Description of problem:
The touchscreen (driven by hid-multitouch) used to work in Fedora 24 through 26. Then it stopped working at some point during the Fedora 26 updates. It no longer works with Fedora 27 or 28.
The module required a hack to avoid crashing the machine on older Fedora 26: https://bugzilla.redhat.com/show_bug.cgi?id=1297188#c13
Now it just doesn't work and it fails with error -71:
[ 2.972062] usb 2-6: new full-speed USB device number 5 using xhci_hcd
[ 2.972286] usb 2-6: Device not responding to setup address.
[ 3.176284] usb 2-6: Device not responding to setup address.
[ 3.384068] usb 2-6: device not accepting address 5, error -71
[ 3.498080] usb 2-6: new full-speed USB device number 6 using xhci_hcd
[ 3.498316] usb 2-6: Device not responding to setup address.
[ 3.704307] usb 2-6: Device not responding to setup address.
[ 3.912076] usb 2-6: device not accepting address 6, error -71
[ 3.912132] usb usb2-port6: unable to enumerate USB device
I tried to add the following two options to the kernel command line:
This^^^ had no effect. The failure was still the same.
There are *no* USB devices (apart from the built-in webcam and hubs) and the machine is exactly in the configuration in which the touchscreen used to work with Fedora 26.
Version-Release number of selected component (if applicable):
(Multiple other kernels from Fedora 26, 27 and 28 failed the same way.)
Steps to Reproduce:
1. Try to use the touchscreen on Dell Inspiron 7548.
USB device initialization fails.
The touchscreen should work, just like it did in early Fedora 26.
FTR, here's some interesting stuff. https://www.spinics.net/lists/linux-usb/msg103619.html But it looks like the quirks mentioned there are already enabled for all elan touchscreens anyway.
The problem is that the quirks can't really take effect when the device doesn't get initialized at all, i.e., its vendor and model IDs aren't known to the HID driver at all at the point when it fails to initialize.
I've just tried this on the kernel command line: usbcore.use_both_schemes=1 usbcore.old_scheme_first=1 usbcore.initial_descriptor_timeout=60000 Sadly, still no touchscreen.
This turned out to be a real hardware problem. The power wire is broken and contact can be restored temporarily by pressing against the rear side of the laptop lid, leading to a successful initialization of the ELAN touchscreen (until the next laptop lid position change). So it's a case for a repair shop, not a software issue.