Cannot boot with 20-amdgpu.conf present in /etc/X11/xorg.conf.d/

I am new to linux and I want to enable VRR. This has worked in the past but lately linux hangs on boot if the 20-amdgpu.conf file is present. Contents are:

Section “Device”
Identifier “AMD”
MatchDriver “amdgpu”
Driver “amdgpu”
Option “VariableRefresh” “true”
Option “TearFree” “true”
EndSection

If I change “Device” to “OutputClass”, I can boot but it seems the settings are not applied.

xrandr --props shows all video ports as not vrr-capable.

I will gladly provide any needed logs, but I need guidance on how to pull them.

Thanks in advance!

Should be like this according to AMDGPU - ArchWiki :

Section "OutputClass"
     Identifier "AMD"
     MatchDriver "amdgpu"
     Driver "amdgpu"
     Option "TearFree" "true"
     Option "VariableRefresh" "true"
     Option "AsyncFlipSecondaries" "true" #multimonitor setup, but at least one is not FreeSync capable
EndSection

But, do you have a monitor that is in this list https://www.amd.com/en/products/freesync-monitors
What kernel are you using?

Hi Bogdan!

I have a Samsung QN90A TV which has previously worked using VRR with this exact PC using manjaro. Back then, it was 4K@120 VRR via HDMI, and it looked bad because the AMD drivers don’t support HDMI 2.1 in linux - but it worked. This was last October, I don’t remember which kernel I was on, but generally I was always on the latest recommended kernel.

Now I am using kernel 6.1.25-1.

I changed my file to match your text and rebooted, but running xrandr --props still returns all display outs of my GPU as “vrr_capable 0”. I believe this indicates merely the capabilities of the GPU and not the TV, correct? So somehow my linux thinks my GPU can’t handle VRR. How can I change that?

Hey,

Not very knowledgeable about AMD GPU’s, but did you tried to add with the amdgpu.freesync_video=1 kernel parameter and see next reboot? Have you tried different kernel also?

I guess you know you have to run sudo update-grub after modifying kernel boot parameters in the grub file …

Yes, this is in my grub file:

GRUB_CMDLINE_LINUX_DEFAULT=“udev.log_priority=3 amdgpu.ppfeaturemask=0xffffffff”
GRUB_CMDLINE_LINUX=“amdgpu.freesync_video=1”

I ran the sudo update-grub afterwards.

Is there a way to change the EDID to force linux to use freesync?

This might help to edit the EDID - if you did not see it already - Variable refresh rate - ArchWiki

But not sure how AMD gets an edited EDID …

I got it to work again with the old HDMI cable I was using before. Sadly, as soon as I switch to the Displayport-to-HDMI 8K cable with VRR, I cannot enable VRR anymore, even though picture quality is better. In both cases, the memory clocks to 1000 MHz even in idle desktop mode for some reason. Such a shame.

Thanks for linking the EDID article. I will see if I can get it to work this way using the displayport to hdmi cable.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.