Screen flicker while using MUX laptop in dgpu mode

So I have a lenovo legion y740, with an i7-9750h and a 2070 max-q. My laptop has a MUX switch that lets me switch between

Dedicated GPU mode (laptop runs only on the nvidia card for better performance, Intel igpu is turned off )

Hybrid mode (igpu + dgpu is turned on, helps in saving battery life) Now With proprietary drivers installed. I have no problem running on hybrid mode, everything works fine But when I go to my bios and turn on dgpu mode, arch boots, but the second GPU wokload is even slightly strained (like say a 1080p60 video) the screen starts flickering heavily. Even without strain flickering is less frequent but still happens.

I had a look at Hybrid graphics - ArchWiki And only the first part of the page offers any info about laptop that HAVE a MUX switch. I looked at how to solve screen flicker by forcing full composition pipeline and that did nothing: tps://wiki.archlinux.org/title/NVIDIA/Troubleshooting#Avoid_screen_tearing

I also looked at changing DRM modset, and only changed it in the config file ( I didn’t do the latter half) and that too did nothing, but I wasn’t sure if following through with it fully would solve screen tear, and honestly also wasn’t 100℅ sure how to go about it: NVIDIA - ArchWiki … de_setting If anybody could please shed some light on the above, telling me what i did wrong and what I should do, and links to related posts too would be much appreciated!

Which distro are you using? You have posted on the Garuda Linux Forums and the EndeavourOS Forum about this problem as well.

I apologize, for cross posting. I was getting a bit desperate because I didn’t find any sort of help on the arch forums (its still unanswered there) and even after posting it on several telegram channels which led me believe that a solution for this simply doesn’t exist on linux at the moment.
I am currently using endeavour os, not garuda or vanilla arch or manjaro.
I apologize for cross posting once again, was only looking to speed up my process of getting some help.
The topic is currently open on the endeavour forums and isnt yet solved so if you can help please post there, I would really really appreciate it!

(Doesn’t let me post the link to the endeaveour forums for some reason so if you could, please just look up the post)

You may close this post if you want. I apologize for the cross posting once again.

Hey,

I have the exact same laptop & issue, except im not dual booting.
For me, when im on switchable graphics (hybrid driver) my brightness is stuck on 100%,
and when discrete (dedicated only) im having HARD screen/flickering.

From my countless hours of extensive testing i’ve found out that the hard flickering/glitching happends only when all of the followings occur together:

  1. Im on the discrete graphics (dgpu only) option.
  2. Laptop is connected to a power source. (Running on battery the screen behaves normal)
  3. Using nvidia proprietary driver version above 450.

And also
When all of the above occur together, the HIGHER CPU load the HARDER the screen flickers/glitches.
And if under load for some time, id get a black screen (sound and everything else will work except the screen).

I tested on manjaro the switchable graphics with the video-hybrid-intel-nvidia-driver, and everything works fine (except my brightness control).
Also i’ve tried nvidia-optimus with some guide on the forum - same thing, works fine, no screen glitching but cant change brightness either.

So everything led me to the conclusion that higher proprietary nvidia driver than 450 will cause the problem (with the conditions i listed above).
I’m currently testinig on ubuntu 20.04 LTS with nvidia 450 and it seems to be the case.

I tried on ubuntu, pop_os, mint, and manjaro - so its not an os specific problem,
and if the condition i listed are not met, everything work - so its not an hardware problem either.

I’ve tried forever to find a fix, but without any luck, hoping some of the things i’ve found will help you find a solution.

Hey, so glad that somebody else with this laptop could reply. Unfortunate that you haven’t found a solution.
For your brightness being stuck on switchable mode, you need to update your kernel to 5.11 / 5.10 to resolve it(I don’t remember exactly).
If you don’t want to update, you could use the classic xrandr screen brightness trick (binding a brightness script to your shortcut keys)
Also screen flickering does occur on dgpu mode + battery, just that its a lot less (try playing an 4k video at 2x speed and see)

Basically the best we can do rn is to either use the laptop in switchable mode where literally everything works okay.

Or to use it in discrete mode with nouveau drivers. Brightness is stuck here even on the latest kernel. To resolve it one can use the xrandr trick again
Unfortunately the xrandr trick works only on xorg And the drivers to crash sometimes but I think that’s easily resolvable and might be os specific idk.