You are not logged in.

#1 2022-06-12 17:13:32

From: Odessa, Ukraine
Registered: 2022-04-30
Posts: 2

Doesn't show image on external monitor, AMD + Nvidia

Hi all.
I have a laptop Asus ROG Zephyrus Duo 15 with two internal monitors. It is equipped with a Ryzen 9 5980HX processor with an integrated graphics card, as well as a discrete GeForce RTX 3060.

My problem is that the external monitor does not see the signal. I used two HDMI cables for testing, and two different monitors that work from other sources.
In xrander, the external monitor is visible.

└> xrandr                                         
Screen 0: minimum 320 x 200, current 7680 x 3260, maximum 16384 x 16384
eDP connected primary 3840x2160+0+0 (normal left inverted right x axis y axis) 344mm x 194mm
   3840x2160    120.02*+  60.03 +  96.03    72.02    60.01    50.01    48.01  
   1920x1200    120.02  
DisplayPort-1 connected 3840x1100+0+2160 (normal left inverted right x axis y axis) 340mm x 100mm
   3840x1100     60.02*+  48.02  
   1920x1080     60.02  
DP-1-0 disconnected (normal left inverted right x axis y axis)
DP-1-1 disconnected (normal left inverted right x axis y axis)
HDMI-1-0 connected 3840x2160+3840+0 (normal left inverted right x axis y axis) 621mm x 341mm
   3840x2160     60.00*+  59.94    50.00  
   2560x1440     59.95  
   1920x1080     60.00    59.94    50.00  

Next, I will describe everything that I did, as well as the current configs. If you need additional information, I will gladly provide it.

With the help of archinstall, I installed Arch on it, and then, following the instructions from this site, I performed the following steps:

  1. Add repo

  2. Install asusctl and supergfxctl

  3. Install custom kerner linux-g14

What my config files look like now

└> cat /boot/loader/entries/2022-05-10_20-32-46_linux.conf 
# Created by: archinstall
# Created on: 2022-05-10_20-32-46
title Arch Linux (linux)
linux /vmlinuz-linux-g14
initrd /amd-ucode.img
initrd /initramfs-linux-g14.img
options root=PARTUUID=7f09e983-ccf9-464b-b9b7-0e29a79b520c rw intel_pstate=no_hwp rootfstype=ext4 nvidia-drm.modeset=1
└> cat  /etc/X11/xorg.conf.d/90-nvidia-primary.conf 
# Automatically generated by supergfxd
Section "OutputClass"
    Identifier "nvidia"
    MatchDriver "nvidia-drm"
    Driver "nvidia"
    Option "AllowEmptyInitialConfiguration" "true"
    Option "AllowExternalGpus" "true"
└> cat /etc/modprobe.d/supergfxd.conf                 
# Automatically generated by supergfxd
blacklist nouveau
alias nouveau off
options nvidia NVreg_DynamicPowerManagement=0x02
options nvidia-drm modeset=1


As well as information on drivers.

└> lspci -v 
01:00.0 VGA compatible controller: NVIDIA Corporation GA106M [GeForce RTX 3060 Mobile / Max-Q] (rev a1) (prog-if 00 [VGA controller])
   Subsystem: ASUSTeK Computer Inc. Device 11ac
   Physical Slot: 0
   Flags: bus master, fast devsel, latency 0, IRQ 39, IOMMU group 10
   Memory at fb000000 (32-bit, non-prefetchable) [size=16M]
   Memory at fc00000000 (64-bit, prefetchable) [size=8G]
   Memory at fe00000000 (64-bit, prefetchable) [size=32M]
   I/O ports at e000 [size=128]
   Expansion ROM at fc000000 [virtual] [disabled] [size=512K]
   Kernel driver in use: nvidia
   Kernel modules: nvidia_drm, nvidia
06:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Cezanne (rev c7) (prog-if 00 [VGA controller])
   Subsystem: ASUSTeK Computer Inc. Device 11ac
   Flags: bus master, fast devsel, latency 0, IRQ 49, IOMMU group 7
   Memory at fe10000000 (64-bit, prefetchable) [size=256M]
   Memory at fe20000000 (64-bit, prefetchable) [size=2M]
   I/O ports at c000 [size=256]
   Memory at fc500000 (32-bit, non-prefetchable) [size=512K]
   Kernel driver in use: amdgpu
   Kernel modules: amdgpu
└> lsmod |grep nvidia                 
nvidia_drm             73728  4
nvidia_uvm           2719744  0
nvidia_modeset       1146880  3 nvidia_drm
nvidia              40841216  114 nvidia_uvm,nvidia_modeset

On the ASUS NoteBook Linux  website, I found a section (Why did nvidia mode give me black screen with xorg?) related to my problem.

I am trying to follow these steps but I am getting an error.

└> xrandr --listproviders                         
Providers: number : 2
Provider 0: id: 0x54 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 4 outputs: 2 associated providers: 1 name:Unknown AMD Radeon GPU @ pci:0000:06:00.0
Provider 1: id: 0x20b cap: 0x2, Sink Output crtcs: 4 outputs: 3 associated providers: 1 name:NVIDIA-G0
└> xrandr --setprovideroutputsource 00.0 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:  35 (RRSetProviderOutputSource)
  Value in failed request:  0x20b
  Serial number of failed request:  16
  Current serial number in output stream:  17

00.0 and NVIDIA-G0 offers me autocompletion

With provider number I get the same error

xrandr --setprovideroutputsource 0 1

I would be grateful for your help, I have been trying to figure this out for over a month now sad

From the comments, when you turn on the computer with an external monitor connected, the built-in monitors do not work for the first time, the external monitor at this time writes twice that there is no signal, and after that the built-in monitors start working.
I think that I could find useful logs about this, but I don't know where to look for them.

Lenovo Thinkpad T430s (i7-3520M, Arch Linux)
Asus ROG Zephyrus Duo 15 (Ryzen 9 5980HX, GeForce RTX 3060,
3840 x 2160 (Ultra HD 4K), Arch Linux)


#2 2022-06-15 19:52:02

Registered: 2011-10-10
Posts: 59

Re: Doesn't show image on external monitor, AMD + Nvidia

I had a similar issue and adding the following options to your 90-nvidia-primary.conf  might solve the issue:

Option "PrimaryGPU" "yes"
Option "metamodes" "nvidia-auto-select +0+0 { ForceFullCompositionPipeline = On }"


Board footer

Powered by FluxBB