Hi, I am having an issue with using DP over my USB-C port and hoping this report can help solve this gap in support. I believe this is my first bug report, although I do look foward to someday being on the maintainer side of things when I can dedicate more time to this and have more overall experience beyond novice. I currently use linux as my daily driver for work/hobbies and can navigate the terminal good enough to be of assistance.
I use chatGPT frequently when I just need something to work on my primary system to help speed up the process, I apologize if this is considered bad form. Below is mostly copy/pasted information from one of my chats, but should have most of the base information. I have reviewed it to verify it is accurate. Also, I have attached to this email 5 .txt output files that should be relevant.
Please advise with any additional information I can provide. Thank you
Summary
USB-C DisplayPort Alt-Mode does not work on MSI Cyborg 15 A12VE under Linux.
The USB-C port functions as USB only; DP Alt-Mode is never negotiated.
No Type-C ports appear in /sys/class/typec, and no DP connector ever reports connected.
OS: Garuda Linux "Broadwing" (250308)
Hardware
Laptop: MSI Cyborg 15 A12VE
CPU: Intel Alder Lake-P
iGPU: Intel UHD Graphics
dGPU: NVIDIA RTX 4050 Mobile (AD107M)
USB-C Port: USB 3.2 Gen1 with DP Alt-Mode (per MSI specs, non-Thunderbolt)
Kernel versions tested
6.17.8-zen1-1-zen [this was my default, I updated to 6.18.2-zen2-1-zen and repeated the process of troubleshooting before switching to vanilla arch kernel for final attempts]
6.18.2-arch2-1 (vanilla Arch kernel) [this was my 2nd attempt]
Same behavior on both.
Expected behavior
USB-C DP Alt-Mode should negotiate when a DP-capable monitor is connected
A Type-C port (e.g. /sys/class/typec/port0) should appear
A DP connector (e.g. card1-DP-1) should switch to connected
Actual behavior
/sys/class/typec does not exist by default
After modprobe typec, /sys/class/typec appears but is empty (no ports)
Plugging in a USB-C DP monitor does not create a partner or altmode
/sys/class/drm/card1-DP-1/status always remains disconnected
Only a generic USB device is detected from the monitor: ... usb 1-5: New USB device found, idVendor=0bda, idProduct=5411
Relevant command output
Kernel
GPUs
# lspci | grep -E "VGA|3D"
"VGA compatible controller: Intel Corporation Alder Lake-P GT1 [UHD Graphics] (rev 0c) VGA compatible controller: NVIDIA Corporation AD107M [GeForce RTX 4050 Mobile] (rev a1)"
Type-C sysfs
# ls /sys/class/typec
dir empty (directory only appears after modprobe)
DRM connector status
/sys/class/drm/card1-DP-1/status -> disconnected
/sys/class/drm/card2-eDP-1/status -> connected
/sys/class/drm/card2-HDMI-A-1/status -> disconnected
Type-C kernel config (enabled)
CONFIG_TYPEC=m
CONFIG_TYPEC_DP_ALTMODE=m
CONFIG_TYPEC_UCSI=m
CONFIG_UCSI_ACPI=m
CONFIG_TYPEC_TBT_ALTMODE=m
Kernel log when plugging in monitor
usb 1-5: New USB device found, idVendor=0bda, idProduct=5411
No ucsi, typec, altmode, or dp messages appear.
Notes
NVIDIA DRM modesetting is enabled (nvidia-drm.modeset=1)
HDMI output works normally
Behavior is identical across kernels and display servers
Appears that the USB-C / UCSI controller is not being bound by any driver
Regression?
Unknown. System is new; USB-C DP Alt-Mode has never worked under Linux on this device.
---------
Misc. commands and print outs:
# xrandr --listmonitors
"0: +*eDP-1 1920/344x1080/193+0+0 eDP-1"
# xrandr --listproviders
"Providers: number : 0"
# zcat /proc/config.gz 2>/dev/null | grep CONFIG_TYPEC
"CONFIG_TYPEC=m
CONFIG_TYPEC_TCPM=m
CONFIG_TYPEC_TCPCI=m
CONFIG_TYPEC_RT1711H=m
CONFIG_TYPEC_MT6360=m
CONFIG_TYPEC_TCPCI_MT6370=m
CONFIG_TYPEC_TCPCI_MAXIM=m
CONFIG_TYPEC_FUSB302=m
CONFIG_TYPEC_WCOVE=m
CONFIG_TYPEC_UCSI=m
CONFIG_TYPEC_TPS6598X=m
CONFIG_TYPEC_ANX7411=m
CONFIG_TYPEC_RT1719=m
CONFIG_TYPEC_HD3SS3220=m
CONFIG_TYPEC_STUSB160X=m
CONFIG_TYPEC_WUSB3801=m
CONFIG_TYPEC_MUX_FSA4480=m
CONFIG_TYPEC_MUX_GPIO_SBU=m
CONFIG_TYPEC_MUX_PI3USB30532=m
CONFIG_TYPEC_MUX_INTEL_PMC=m
CONFIG_TYPEC_MUX_IT5205=m
CONFIG_TYPEC_MUX_NB7VPQ904M=m
CONFIG_TYPEC_MUX_PS883X=m
CONFIG_TYPEC_MUX_PTN36502=m
CONFIG_TYPEC_MUX_TUSB1046=m
CONFIG_TYPEC_MUX_WCD939X_USBSS=m
CONFIG_TYPEC_DP_ALTMODE=m
CONFIG_TYPEC_NVIDIA_ALTMODE=m
CONFIG_TYPEC_TBT_ALTMODE=m"
# zcat /proc/config.gz 2>/dev/null | grep UCSI
"CONFIG_I2C_CCGX_UCSI=y CONFIG_TYPEC_UCSI=m
CONFIG_UCSI_CCG=m
CONFIG_UCSI_ACPI=m
CONFIG_UCSI_STM32G0=m
CONFIG_CROS_EC_UCSI=m"
# lsmod | grep -E "typec|usb|thunder"
"typec_ucsi 77824 2 ucsi_ccg,ucsi_acpi
roles 16384 1 typec_ucsi
typec 114688 1 typec_ucsi
thunderbolt 577536 1 typec
btusb 81920 0
btmtk 32768 1 btusb
btrtl 32768 1 btusb
btbcm 24576 1 btusb
btintel 73728 1 btusb
bluetooth 1118208 34 btrtl,btmtk,btintel,btbcm,bnep,btusb,rfcomm"
# modprobe typec typec_ucsi ucsi_acpi ucsi_ccg
No error returned, but 'modprobe typec' seems to create both directories /sys/class/typec/ & /sys/class/typec_mux/
... Both directories remain empty
--
Secured with Tuta Mail: