Cannot use external display through USB-C

Hello,

I’ve got a USB-C to VGA adapter (don’t know the model) that I’ve been trying to use as a 2nd external monitor (I’ve got one connected to the hdmi port). I’ve also tried connecting my phone to the laptop’s port through a USB-C to USB-C cable, however the phone does not detect any power.

This is my laptop: https://pcdiga.com/portatil-msi-15-6-modern-15-a5m-284xpt-9s7-155l26-284-4719072947699

From the tech sheet of MSI (https://www.msi.com/Business-Productivity/Modern-15-A5SX/Specification) the laptop does not support PowerDelivery (I think that should not be an issue).

Currently, I don’t know if it is a port issue or if it’s a driver related issue.

Listing of LSPCI:

00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne Root Complex
00:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne IOMMU
00:01.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
00:01.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
00:01.3 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
00:02.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
00:02.4 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
00:08.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
00:08.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir Internal PCIe GPP Bridge to Bus
00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller (rev 51)
00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge (rev 51)
00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 0
00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 1
00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 2
00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 3
00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 4
00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 5
00:18.6 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 6
00:18.7 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 7
01:00.0 Network controller: MEDIATEK Corp. MT7921K (RZ608) Wi-Fi 6E 80MHz
02:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS525A PCI Express Card Reader (rev 01)
03:00.0 Non-Volatile memory controller: Sandisk Corp Device 5014
04:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Lucienne (rev c1)
04:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Renoir Radeon High Definition Audio Controller
04:00.2 Encryption controller: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) Platform Security Processor
04:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne USB 3.1
04:00.4 USB controller: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne USB 3.1
04:00.5 Multimedia controller: Advanced Micro Devices, Inc. [AMD] ACP/ACP3X/ACP6x Audio Coprocessor (rev 01)
04:00.6 Audio device: Advanced Micro Devices, Inc. [AMD] Family 17h/19h HD Audio Controller

As gpu drivers, I have the following packages installed:

  • amdgpu-dkms
  • xf86-video-amdgpu
  • lib32-vulkan-radeon
  • vulkan-radeon

Thanks in advance.

amdgpu-dkms is outdated. Is there a reason why you have it?

Might have installed by mistake when I was selecting the packages on the aur when I was setting up the OS for the first time. I’ll remove it. Should I install anything to replace? (if required ofc)

As far as I know, you already have xf86-video-amdgpu which should replace amdgpu-dkms.
Then again, I’m not using AMD graphics…

Here’s some info about AMG graphics: https://wiki.archlinux.org/title/AMDGPU

I had followed the ArchWiki before, I most likely had forgotten to remove the amdgpu-dkms after following that guide.

About the USB-C, could this be related to the amd driver / any driver in specific?

Have you tested in windoze? (Yes, it’s a waste of time and torture as well)
Video output on C- type usb is optional.
Edit: Reread:

(I’ve got one connected to the hdmi port)
I’m not sure that Super+P works on BIOS level:

USB-C is optional display port function and supports 5V/3A portable charging power when AC power
is connected only. This is as far as i know if i have the right model but i think this is pretty standard on most usb-c ports. Some laptops have multi usb-c and only one is available for charging purposes.

Edit: As @eso has posted this should be correct on a Windows platform for the Win Key + P. Also F11 I think changes display output from lcd to external monitor or both.

Thanks for the info.

I’ve tested on both battery and AC Power but it didn’t work. I’m currently setting up a harddrive to boot my laptop into Windows ToGo (shouldn’t make any difference from the normal windows install as, on their docs, it says the difference is the lack of tpm, system resotore utilities and major/yearly/feature updates).

So you are saying it’s not charging? Are you able to see your phone connected in a file manager?

Nope, I cannot. My phone asks me to change if I want to charge (only) or to allow the other device to see my phone’s file, which didn’t show up. Also my phone does not set itself as charging.

That is normally how it works when you plug a phone into usb. It asks if you want to charge or browse files. You can set those to one or other permanent also. I’m not sure why it’s not charging also. I just know you have to have the laptop plugged in or the charge function does not work from my understanding.

Well, the laptop is plugged in, so this can be either a driver issue or a port issue.

I will install windows to an external drive and see if the usb c works.

If it does you’ll have to start looking at some logs such as:

lsusb
dmesg

Probably boot logs etc.

lsusb:

Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 0e8d:0608 MediaTek Inc. Wireless_Device
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 003: ID 0b95:1790 ASIX Electronics Corp. AX88179 Gigabit Ethernet
Bus 002 Device 002: ID 2109:0817 VIA Labs, Inc. USB3.0 Hub             
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 0c76:161f JMTek, LLC. FANTECH OCTANE 7.1
Bus 001 Device 003: ID 046d:c33c Logitech, Inc. G512 RGB MECHANICAL GAMING KEYBOARD
Bus 001 Device 002: ID 2109:2817 VIA Labs, Inc. USB2.0 Hub             
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

dmesg:

From the MSI site it just lists it as optional? So i wonder if it actually has that feature?

Edit: It could mean also that usb-c port is optional so if you have it then this should work.

Screenshot_20230121_161650

What does this show?

lspci

Output of lspci:

00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne Root Complex
00:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne IOMMU
00:01.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
00:01.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
00:01.3 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
00:02.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
00:02.4 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
00:08.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
00:08.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir Internal PCIe GPP Bridge to Bus
00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller (rev 51)
00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge (rev 51)
00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 0
00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 1
00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 2
00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 3
00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 4
00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 5
00:18.6 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 6
00:18.7 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir Device 24: Function 7
01:00.0 Network controller: MEDIATEK Corp. MT7921K (RZ608) Wi-Fi 6E 80MHz
02:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS525A PCI Express Card Reader (rev 01)
03:00.0 Non-Volatile memory controller: Sandisk Corp Device 5014
04:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Lucienne (rev c1)
04:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Renoir Radeon High Definition Audio Controller
04:00.2 Encryption controller: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) Platform Security Processor
04:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne USB 3.1
04:00.4 USB controller: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne USB 3.1
04:00.5 Multimedia controller: Advanced Micro Devices, Inc. [AMD] ACP/ACP3X/ACP6x Audio Coprocessor (rev 01)
04:00.6 Audio device: Advanced Micro Devices, Inc. [AMD] Family 17h/19h HD Audio Controller

Your UEFI firmware looks fairly recent but i would still see if there are any updates.

Edit: Looks like there is one for the first month of this year. E155LAMS.114

What does it show for modules?

lsmod | grep typec

You could also try the linux-firmware-git package.