You are not logged in.
I'm having some really strange issues with monitor detection that only happen on Arch.
I recently bought a cheap, unbranded USB-C to HDMI adapter to connect my Thinkpad T480 (no discrete graphics) to a monitor (I also have another monitor connected through HDMI, same model). It has a HDMI output, but is detected as a DisplayPort output (when it works).
The thing worked for a couple of days, and then - stopped. I was trying to write an udev rule + script to detect the monitor being plugged and in the middle of writing and testing it - the adapter just stopped working. I unplugged it and re-plugged it a couple of times and it just didn't work. I removed the udev rule and script but nothing changed, it just doesn't work. Since I also applied some updates that day, I reverted all of the updates since 2020-03-25, which didn't help at all. I usually use linux-zen, but I also tried linux-lts and it didn't work either.
I then tried the adaper-monitor combo on another up-to-date computer with Arch (Dell XPS 13 9350 w/ latest linux-lts), and it works flawlessly. Maybe I screwed up something in my install on T480, I thought. I live-booted the only thing I had lying around, Solus Linux 4.1 (it also has the lts 5.4 kernel), on my T480 - and everything works. I then downloaded the only graphics-enabled Arch-based repo I could think of - Manjaro Xfce, live-booted, it doesn't work. Same issue as with my own install of Arch. How does this make any sense? It works on Arch on XPS13, it doesn't work on any Arch-derivate on T480 (but it used to), it works on Solus on T480.
Here are some logs from my regular install:
xorg.0.log
dmesg
lsusb -v
lspci -v
udevadm monitor when [un]plugging the adapter
journalctl -b0
Let me tell you that the logs AND ls{pci,usb} outputs are very similar among my regular Arch install on T480 (where the adapter doesn't work), live booted Manjaro on T480 (where it also doesn't work), the Arch install on XPS13 (where it works) and liveboot Solus Budgie on T480 (where it works). There isn't some glaring difference or error reported anywhere.
The only difference is that
udevadm monitor
used to output this while it was working, and you [un]plugged the HDMI, while it now does nothing. This still works on Solus and on Arch on the XPS13.
# adapter unplugged
KERNEL[28996.323832] change /devices/pci0000:00/0000:00:02.0/drm/card0 (drm)
UDEV [28996.329849] change /devices/pci0000:00/0000:00:02.0/drm/card0 (drm)
#adapter plug
KERNEL[29000.415774] change /devices/pci0000:00/0000:00:02.0/drm/card0 (drm)
UDEV [29000.421580] change /devices/pci0000:00/0000:00:02.0/drm/card0 (drm)
Now, when I say that the adapter doesn't work, I mean it doesn't show up in xrandr (shows as disconnected) and I can't force it to some resolution in xrandr. I also tried writing 'detect'/'on'/'on-digital' to the sysfs status file of the card, like this:
echo on | sudo tee /sys/class/drm/card0-DP-1/status
Still, even if the output is forced on, I can't enable it w/ xrandr and it doesn't recognize the right resolutions or read the EDID at all.
I have absolutely no idea what to try next. Please help me make this adapter work, since it's certainly a software issue. My choice of adapters is slim (this 15eur POS adapter I bought and another 75eur Chinese USB-C dock I'd rather not buy) and I can't order them online, because I'm stuck in a country that has stopped all nonessential imports. I work as a programmer remotely, so using only one monitor like this is quite a pain.
The adapter is described by lsusb as this:
Bus 003 Device 006: ID 0bda:2171 Realtek Semiconductor Corp. BillBoard Device
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.01
bDeviceClass 17
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x0bda Realtek Semiconductor Corp.
idProduct 0x2171
bcdDevice 1.11
iManufacturer 17 Realtek
iProduct 18 BillBoard Device
iSerial 19 123456789ABCDEFGH
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 0x0012
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 18 BillBoard Device
bmAttributes 0xc0
Self Powered
MaxPower 0mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 17
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 18 BillBoard Device
Binary Object Store Descriptor:
bLength 5
bDescriptorType 15
wTotalLength 0x005a
bNumDeviceCaps 4
USB 2.0 Extension Device Capability:
bLength 7
bDescriptorType 16
bDevCapabilityType 2
bmAttributes 0x00000000
(Missing must-be-set LPM bit!)
SuperSpeed USB Device Capability:
bLength 10
bDescriptorType 16
bDevCapabilityType 3
bmAttributes 0x00
wSpeedsSupported 0x000e
Device can operate at Full Speed (12Mbps)
Device can operate at High Speed (480Mbps)
Device can operate at SuperSpeed (5Gbps)
bFunctionalitySupport 1
Lowest fully-functional device speed is Full Speed (12Mbps)
bU1DevExitLat 10 micro seconds
bU2DevExitLat 1023 micro seconds
Container ID Device Capability:
bLength 20
bDescriptorType 16
bDevCapabilityType 4
bReserved 0
ContainerID {0dac4faf-8700-ee40-b758-26a107d76c6b}
Billboard Capability:
bLength 48
bDescriptorType 16
bDevCapabilityType 13
iAddtionalInfoURL 1 Generic
bNumberOfAlternateModes 1
bPreferredAlternateMode 0
VCONN Power 0 1W
bmConfigured 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
bcdVersion 1.10
bAdditionalFailureInfo 0
bReserved 0
Alternate Modes supported by Device Container:
Alternate Mode 0 : Alternate Mode configuration successful
wSVID[0] 0xFF01
bAlternateMode[0] 1
iAlternateModeString[0] 1 Generic
Device Status: 0x0001
Self Powered
Last edited by andrejr (2020-04-04 22:14:13)
Offline
This problem may be related:
Offline
Has nobody figured this out yet? The links on these two posts from a cycle!
Offline
Is it possible it is just black screen, although working? There is a backlight bug on latest kernel.
Verify using backlight/brightness shortcut keys.
Try linux-lts which is not affected from this.
Just guessing.
Offline
Possibly port or cable issue (or loose connection) ?
Last edited by euromatlox (2020-10-02 16:15:50)
Offline
The solution mentioned at https://www.reddit.com/r/System76/comme … c_to_hdmi/ worked for me, though I did not try it on a Lenovo laptop: Go to the BIOS (F2 on boot), and change 'DDI to mDP' to 'DDI to TBT' in the advanced chipset settings.
Offline