DisplayLink / evdi

Extensible Virtual Display Interface
MIT License
705 stars 184 forks source link

Possible regression: "Disable of device-initiated U* failed." + individual scaling for external and Hi-DPI screens #356

Closed astromatt42 closed 2 years ago

astromatt42 commented 2 years ago

After getting my dock to work with the latest kernel, it now has resorted to dropping out randomly every 15min or so. Kernel messages below. This seems to be related to issue #160 .

[Thu Apr 14 18:13:55 2022] usb 4-1.1: Disable of device-initiated U1 failed. [Thu Apr 14 18:13:55 2022] usb 4-1.1: Disable of device-initiated U2 failed. [Thu Apr 14 18:13:55 2022] cdc_ncm 4-1.1:1.5 enx9cebe8f1c296: unregister 'cdc_ncm' usb-0000:3b:00.0-1.1, CDC NCM [Thu Apr 14 18:13:56 2022] usb 4-1.1: Set SEL for device-initiated U1 failed. [Thu Apr 14 18:13:56 2022] usb 4-1.1: Set SEL for device-initiated U2 failed. [Thu Apr 14 18:13:56 2022] usb 4-1.1: reset SuperSpeed USB device number 3 using xhci_hcd [Thu Apr 14 18:13:56 2022] usb 4-1.1: Warning! Unlikely big volume range (=767), cval->res is probably wrong. [Thu Apr 14 18:13:56 2022] usb 4-1.1: [4] FU [Mic Capture Volume] ch = 2, val = -4592/7680/16 [Thu Apr 14 18:13:56 2022] usb 4-1.1: Warning! Unlikely big volume range (=672), cval->res is probably wrong. [Thu Apr 14 18:13:56 2022] usb 4-1.1: [7] FU [Dell USB Audio Playback Volume] ch = 6, val = -10752/0/16 [Thu Apr 14 18:13:56 2022] cdc_ncm 4-1.1:1.5: MAC-Address: 9c:eb:e8:f1:c2:96 [Thu Apr 14 18:13:56 2022] cdc_ncm 4-1.1:1.5: setting rx_max = 16384 [Thu Apr 14 18:13:56 2022] cdc_ncm 4-1.1:1.5: setting tx_max = 16384 [Thu Apr 14 18:13:56 2022] cdc_ncm 4-1.1:1.5 eth0: register 'cdc_ncm' at usb-0000:3b:00.0-1.1, CDC NCM, 9c:eb:e8:f1:c2:96 [Thu Apr 14 18:13:56 2022] usb 4-1.1: usbfs: process 1767 (ActiveCommandQu) did not claim interface 0 before use [Thu Apr 14 18:13:56 2022] cdc_ncm 4-1.1:1.5 enx9cebe8f1c296: renamed from eth0 [Thu Apr 14 18:13:58 2022] evdi: [W] evdi_painter_connect:882 (card2) Double connect - replacing 00000000088ebb2a with 00000000088ebb2a [Thu Apr 14 18:13:58 2022] evdi: [I] (card2) Connected with Task 1603 (DesktopManagerE) of process 1580 (DisplayLinkMana) [Thu Apr 14 18:13:58 2022] evdi: [I] (card2) Connector state: connected [Thu Apr 14 18:13:58 2022] evdi: [I] (card2) Notifying mode changed: 1920x1200@60; bpp 32; pixel format XR24 little-endian (0x34325258) [Thu Apr 14 18:13:58 2022] evdi: [I] (card2) Notifying display power state: on [Thu Apr 14 18:13:59 2022] evdi: [W] evdi_painter_connect:882 (card3) Double connect - replacing 00000000041f5d1a with 00000000041f5d1a [Thu Apr 14 18:13:59 2022] evdi: [I] (card3) Connected with Task 1603 (DesktopManagerE) of process 1580 (DisplayLinkMana) [Thu Apr 14 18:13:59 2022] evdi: [I] (card3) Connector state: connected [Thu Apr 14 18:13:59 2022] evdi: [I] (card3) Notifying mode changed: 1920x1080@60; bpp 32; pixel format XR24 little-endian (0x34325258) [Thu Apr 14 18:13:59 2022] evdi: [I] (card3) Notifying display power state: on [Thu Apr 14 18:13:59 2022] IPv6: ADDRCONF(NETDEV_CHANGE): enx9cebe8f1c296: link becomes ready

Linux Mint 20.3

uname -r 5.13.0-39-generic

Xorg -version X.Org X Server 1.20.13 X Protocol Version 11, Revision 0

Displaylink 5.5 | Mar 9, 2022

Tested with both the nouveau open-source graphics driver and the latest recommended Nvidia driver for the card, happens with both. Additionally, the scaling used to be automatically determined for each of the three screens separately when using the 5.4 kernel line (2x external + 1x laptop screen). Unfortunately this is no longer the case and I cannot set different scalings for each screen which is necessary as the laptop screen is Hi-DPI, so comes out way too small when set to the same scaling as the two external screens.

Edit: I should mention I am just checking if disabling audio suspend in pulse audio fixes this as it has done in the past, however this really is a poor workaround and should have been fixed by now.

astromatt42 commented 2 years ago

Some more info: On this occasion it led to a full system freeze that could be recovered by physically disconnecting from the docking station, kernel log attached. dmesg.txt

synaptics-lspintzyk commented 2 years ago

Can you check if that udev rules file in /etc/udev/rules.d/99-displaylink.rules will solve that issue for you? 99-displaylink.rules.txt

Just please rename 99-displaylink.rules.txt to 99-displaylink.rules

astromatt42 commented 2 years ago

Hi Lukasz, I have updated the udev rules, so far so good. Will report back in a little while whether this worked. I have also managed to get the fractional scaling to work eventually - it was a settings issue - so problem no. 2 is resolved. Cheers!

astromatt42 commented 2 years ago

After about a week of testing, this seems to have resolved the issue, many thanks! Out of curiosity, could you explain what the new rules actually do?