Bug 1564715

Summary: Touchscreen on Dell Inspiron 7548 stopped working
Product: [Fedora] Fedora Reporter: Andrej Podzimek <andrej>
Component: kernelAssignee: Kernel Maintainer List <kernel-maint>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 28CC: airlied, andrej, bskeggs, ewk, hdegoede, ichavero, itamar, jarodwilson, jglisse, john.j5live, jonathan, josef, kernel-maint, linville, mchehab, mjg59, steved
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-04-10 15:25:06 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Andrej Podzimek 2018-04-07 01:01:23 UTC
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:

    * usbcore.autosuspend=-1
    * use_both_schemes=1

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):
kernel-4.16.0-300.fc28.x86_64
(Multiple other kernels from Fedora 26, 27 and 28 failed the same way.)

How reproducible:
Always.

Steps to Reproduce:
1. Try to use the touchscreen on Dell Inspiron 7548.

Actual results:
USB device initialization fails.

Expected results:
The touchscreen should work, just like it did in early Fedora 26.

Comment 1 Andrej Podzimek 2018-04-07 11:01:41 UTC
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.

Comment 2 Andrej Podzimek 2018-04-10 15:25:06 UTC
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.