I’ve been trying to get the HDMI output to work properly with switchable graphics activated. I posted a question in the Arch Linux forum on Reddit, and I got the feedback that is caused by the HDMI port being attached to the discrete GPU and the integrated GPU does not know how to access it without unless reverse PRIME is configured properly. Based on the Arch Wiki’s entry on the topic and feedback on Reddit, I’ve tried configuring it as following. However, it is not working as it should. I was hoping someone in this forum with had had luck setting it up correctly.
Example setup:
% xrandr --listproviders
Providers: number : 2
Provider 0: id: 0x43 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 4 outputs: 1 associated providers: 1 name:modesetting
Provider 1: id: 0x275 cap: 0x2, Sink Output crtcs: 4 outputs: 6 associated providers: 1 name:NVIDIA-G0
% lspci | grep VGA
01:00.0 VGA compatible controller: NVIDIA Corporation GA104M [GeForce RTX 3070 Mobile / Max-Q] (rev a1)
05:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Cezanne [Radeon Vega Series / Radeon Vega Mobile Series] (rev c5)
% nano /etc/X11/xorg.conf
Section "ServerLayout"
Identifier "layout"
Screen 0 "amdgpu"
Inactive "nvidia"
Option "AllowNVIDIAGPUScreens"
EndSection
Section "Device"
Identifier "nvidia"
Driver "nvidia"
BusID "PCI:1:0:0"
EndSection
Section "Screen"
Identifier "nvidia"
Device "nvidia"
EndSection
Section "Device"
Identifier "amdgpu"
Driver "modesetting"
BusID "PCI:5:0:0"
EndSection
Section "Screen"
Identifier "amdgpu"
Device "amdgpu"
EndSection
% xrandr --setprovideroutputsource NVIDIA-G0 modesetting
% xrandr --auto
xrandr: Configure crtc 4 failed
% xrandr --setprovideroffloadsink modesetting NVIDIA-G0
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 140 (RANDR)
Minor opcode of failed request: 34 (RRSetProviderOffloadSink)
Value in failed request: 0x43
Serial number of failed request: 16
Current serial number in output stream: 17
Tech specs:
Host: 82JY Legion 5 17ACH6H
Kernel: 6.1.11-arch1-1
DE: GNOME 43.2
CPU: AMD Ryzen 7 5800H with Radeon Graphics (16) @ 3.200GHz [44.2°C]
GPU: NVIDIA GeForce RTX 3070 Mobile / Max-Q
GPU: AMD ATI Radeon Vega Series / Radeon Vega Mobile Series
Memory: 4.57GiB / 29.24GiB
GPU Driver: NVIDIA 525.89.02