AMD Renoir + nVidia GeForce GTX 1650 + KDE = No Internal+External Display Output via HDMI

Hello,

I bought Lenovo IdeaPad Gaming 3 15ARH05 (82EY006RCK) which boasts AMD Renoir graphics stack & also dGPU nVidia GeForce GTX 1650 4GB. My goal is to get this laptop working with my external 27" Dell monitor via HDMI, so that I can use both display (internal & external) at the same time “as usual”, meaning extending one desktop to the other and vice versa.

I tried to follow pre-existing tutorials such as this one:

https://9to5linux.com/how-to-connect-your-laptop-to-an-external-monitor-on-linux-fix-for-hdmi-no-signal-issue

… but it only leads to the state when now I have only external Dell’s display working, there is no output on Laptop’s screen whatsoever. It is not even recognized as screen via Display Configuration dialogue, there is only Dell listed and nothing else.

I also tried to follow tutorials here in Manjaro forums recommending using strange stuff such as optimus-manager, nvidia-prime and other tips such as evdi, but it only lead to my system not booting at all and I did not even get to partial functioning, as it really seems that this combination is not supported properly at the moment.

Please, is there anyone who actually understands this terrible mess and is able to navigate me so that I can eventually write down some truly easy-to-follow step-by-step guide on what exactly needs to be done after fresh Manjaro install using this strange combination of hardware? At this moment I have proprietary nVidia drivers installed and only external display working, I ran out of ideas how to get the internal laptop’s one to work as it is simply black and it doesn’t seem to be recognized by Manjaro at all.

To give you the best idea on how things exactly look right now, please see following outputs (of course my system is fully up-to-date with latest stable packages):

[tom@tom-ntb-main ~]$ uname -a
Linux tom-ntb-main 5.11.1-1-MANJARO #1 SMP PREEMPT Tue Feb 23 14:26:47 UTC 2021 x86_64 GNU/Linux

[tom@tom-ntb-main ~]$ inxi -G
Graphics:
  Device-1: NVIDIA TU117M driver: nvidia v: 460.39 
  Device-2: AMD Renoir driver: amdgpu v: kernel 
  Device-3: IMC Networks Integrated Camera type: USB 
  driver: uvcvideo 
  Display: x11 server: X.Org 1.20.10 driver: loaded: nvidia 
  resolution: 2560x1440 
  OpenGL: renderer: GeForce GTX 1650/PCIe/SSE2 
  v: 4.6.0 NVIDIA 460.39 

[tom@tom-ntb-main ~]$ glxinfo | egrep "OpenGL vendor|OpenGL renderer"
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GTX 1650/PCIe/SSE2


[tom@tom-ntb-main ~]$ cd /etc/X11/xorg.conf.d && ls -la
total 8
drwxr-xr-x 2 root root  74  2. bře 14.40 .
drwxr-xr-x 5 root root  52  3. led 09.56 ..
-rw-r--r-- 1 root root 232  1. bře 22.16 00-keyboard.conf
-rw-r--r-- 1 root root 131  3. led 09.58 30-touchpad.conf
lrwxrwxrwx 1 root root  27  2. bře 14.40 90-mhwd.conf -> /etc/X11/mhwd.d/nvidia.conf

[tom@tom-ntb-main ~]$ cat /etc/X11/mhwd.d/nvidia.conf
# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig:  version 460.39

Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0"
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
    Option "PrimaryGPU" "yes"
EndSection

Section "Files"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Unknown"
    Option         "DPMS"
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
        Option "NoLogo" "1"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Extensions"
    Option         "COMPOSITE" "Enable"
EndSection

 
Section "InputClass"
    Identifier          "Keyboard Defaults"
    MatchIsKeyboard        "yes"
    Option              "XkbOptions" "terminate:ctrl_alt_bksp"
EndSection

[tom@tom-ntb-main ~]$ sudo mhwd -li
> Installed PCI configs:
--------------------------------------------------------------------------------
              NAME               VERSION          FREEDRIVER           TYPE
--------------------------------------------------------------------------------
       video-linux            2018.05.04                true            PCI
      video-nvidia            2020.11.30               false            PCI


Warning: No installed USB configs!

Once again apologies for being probably too dumb to get this one to work properly, but I really “only” need to be able to use both displays at once while utilizing nVidia’s dGPU, because I need to have NVENC HW feature available in OBS.

If we can get this to work, be sure to send me DM with your PP account, I will send you some beer/coffee/tea money & then I will write down everything here in forums so that others struggling will have go-to instructions ready to follow. I thought I will get this done by myself, but I spent 3 days struggling with this and all I have is non-booting laptop or only external display working, which is simply not good as I desperately need both screens running & working.

Thank you very much in advance for advice on how to proceed now, let me know if you need any more info about current configuration of my Manjaro KDE!

-Tom

Have you tried just connecting your external monitor after you’ve logged in? As I had a similar issue but on my desktop. If it works, save the session and reboot while the external monitor is connected - fingers crossed. I’m afraid I am unable to help otherwise. Hang in there!

After disconnecting my HDMI cable from port & rebooting, all I can see now is black screen on my laptop. I managed to log-in via tty, but not even “startx” managed to bring back my desktop as it freezes after line:

using system config directory "/usr/share/X11/xorg.conf.d"

So far I am clueless as to what to try next as I tried many things before and none could bring my laptop’s screen back to life.

Could any of these files play a part in this as well?

[tom@tom-ntb-main ~]$ cd /usr/share/X11/xorg.conf.d && ls -la
total 28
drwxr-xr-x 2 root root  206  2. bře 14.40 .
drwxr-xr-x 7 root root  113  1. bře 22.35 ..
-rw-r--r-- 1 root root   92 19. kvě  2020 10-amdgpu.conf
-rw-r--r-- 1 root root  424 12. úno 17.46 10-amdgpu-nvidia-drm-outputclass.conf
-rw-r--r-- 1 root root 1099 16. kvě  2020 10-evdev.conf
-rw-r--r-- 1 root root  426 12. úno 17.46 10-intel-nvidia-drm-outputclass.conf
-rw-r--r-- 1 root root 1350 16. pro 23.33 10-quirks.conf
-rw-r--r-- 1 root root   92 16. kvě  2020 10-radeon.conf
-rw-r--r-- 1 root root 1429 19. kvě  2020 40-libinput.conf

To be honest, I’m not sure about those files - but I’ve been scouring the forums these past few weeks looking to fix a graphic issue of my own. This post
https://forum.manjaro.org/t/plasma-desktop-acting-strange-on-reboot/53356

gave me some direction and sort solved 1 problem - but not everything as I have a 2 monitor setup using 2 identical graphic cards - though as I’m using an APU of yesteryear this also gives me a 3rd graphic output via my mainboard - all AMD radeon - unfortunately since switching to KDE recently both monitors are only willing to work on the one card - on the initial installation they worked on separate cards - after moving my pc a few weeks ago & then reconnecting I started having display issues - so wish me luck - I know the answer is somewhere in the forums & I do hope someone here can help you - my advice is to check out the wiki’s if you have the time or perhaps reboot on the installation usb for manjaro with both screens and make a note of relative config files.

YES!!!

I have made highly significant progress.

Right now, I am able to see my laptop’s screen (sort of - more below) - all I had to do was to switch to “video-hybrid-amd-nvidia-prime” via MHWD and then edit file 10-amdgpu-nvidia-drm-outputclass.conf located in /usr/share/X11/xorg.conf.d - in “nvidia” section I simply added ’ Option “PrimaryGPU” “Yes” ’ and rebooted, after that I was able to “see” my laptop’s screen in Display Configuration GUI and after Enabling it really started to work.

However, there is rather strange issue - even though the laptop’s screen is working and nVidia dGPU is in use as confirmed by glxinfo, I cannot manage its brightness anymore. There is simply no battery tray icon and when I try to go directly into Activity Power Settings, this is what I get back:

Of course I tried to Google for solution and I have tried bunch of them as reinstalling powerdevil, going for “systemctl restart upower” did not work neither. So right now yes the laptop’s screen is receiving signal and all is managed by nVidia which is great, but I can barely see anything due to very low brightness and I cannot seem to be able to do anything about it. Keyboard shortcuts do not work neither and I’ve also noticed that Bluetooth is Disabled with no way of getting it up again. Strange enough WiFi works fine as usual :-/

Any idea how to deal with this strange brightness/power management bug? I’m so close and yet so far from fully working soution :smiley: Thanks a lot in advance!

EDIT: Not even downgrading Kernel to 5.10 helped. Still trying some tricks to deal with this.

I suggest using optimus-manager. You’ll need to remove video-nvidia and install video-hybrid-amd-nvidia-prime in mhwd. Then you’ll need to install optimus-manager. After that remove (back up) all display related configuration files from /etc/X11/xorg.conf.d/ and do the same with /etc/X11/xorg.conf (if it exists). Afterwards do the 6th step (and only that) of this guide. Then run sudo systemctl enable optimus-manager, and then reboot. After logging in run optimus-manager --switch nvidia, and after confirming it, and logging in, both monitors should function.

I am also trying to figure this thing out.
I gopt a laptop with a ryzen 7 5800H and an RTX 3060.

The screen and HDMI port are connected to “hybrid” graphics, which means that the output from Nvidia graphics is routed through AMD’s iGPU.

And the type C port is connected directly to Nvidia Graphics.

If I install Nvidia drivers, then I get output only from the type C port.
And If I install Libre or Hybrid drivers, then i get output from the laptop screen and from the HDMI port, but not from the Type C port.

[OFF TOPIC]
Sry to bother but I guess I have the same system (DELL G15 5515 Ryzen edition) as you do.
Can you share some experience with me? There’s a few issues facing.

[ON TOPIC]
OP, this is my first Hydrid AMD/NVIDIA laptop, but it seems there’s only 1 way of using an external screen which is trough NVIDIA GPU.
Depending on the driver available to your NVIDIA GPU there’s no Xf86-video-amdgpu output to NVIDIA possible unless until driver 470 or so (450 driver documentation, chapter 33, explains that there’s no support)