Has anyone successfully enabled Freesync with this kernel?
Brisse89 opened this issue · 7 comments
Has anyone successfully enabled Freesync with this kernel?
I couldn't get it to work despite xrandr saying it's enabled. Monitor still acts as if it was fixed refresh rate.
Ubuntu-GNOME 17.04
R7 1700X
R9 Fury
Asus MG279Q
Mesa 17.1.8
I tried to get this to work last week, but now I'm actually back on vanilla Ubuntu kernel 4.12 becouse I also had a copule of other issues, like:
- Random crashes about once per 24 hour
- Display port audio worked, but somewhat unreliable and didn't seem to work at all for 44,1khz content
- Display mode switching was very buggy. 90 and 144hz refused to work, but 60 and 120hz usually works.
- As I said, I can't seem to get Freesync to work. Does it need some sort of userspace support as well?
Is this experience with the 4.13 or the 4.12 kernel? I got some feedback that 4.13 is instable so I went back to 4.12. Did you build the kernel yourself?
Concerning freesync I got bad news for you: It is currently officially "broken" see commit message here: 2abe49c
At least it pretends to work (yeah!). I could never test it because my monitor doesn't support it. But the vanilla kernel certainly doesn't support it as well. Should I ask the AMD developers what their timeline for freesync support in the DC kernel is?
It was 4.13. I can see you put up 4.12 now. I'll give that a try as well, and I will try vanilla 4.13 to see if the crashes are due to AMDGPU DC or not. I'll probably need a few days to test everything properly.
I did not build myself, but used the Ubuntu binaries provided by you.
Ouch. I've heard about the broken Freesync support before, but I though it would have been fixed by now. Guess I shouldn't assume so much. Surely the developers know, and they will probably want to have it fixed before getting the code into mainline kernel so I see no reason to hassle them with questions right now. I'm sure they have their hands full.
Is FreeSync still broken? Just got a FreeSync monitor...
@Enigma0 Not necessarily broken, but not working either. The kernel bits alone aren't enough to get it working. It also needs user-space implementation which isn't done yet. See https://www.phoronix.com/scan.php?page=article&item=amd-freesync-linux&num=1 for more details.
Bummer. Hopefully soon...
Besides the kernel bits with AMDGPU DC, FreeSync also needs a bit in user-space. Libdrm and DDX driver patches are needed to basically inform the Direct Rendering Manager (DRM) kernel driver when to turn on/off FreeSync. Those are the bits that are not yet upstreamed in their respective code repositories and thus why it's easier just deploying the AMDGPU-PRO hybrid driver. There's also an experimental patch for RadeonSI Gallium3D in Mesa that would expose a DriConf option to easily have FreeSync turned on/off when entering full-screen Linux games.
It hopefully won't be too much longer before those user-space bits are upstreamed. It's taking some time as among other reasons they are trying to come up with good open-source FreeSync/Adaptive-Sync plans that would suit the multiple open-source Linux driver parties so they could support the same interfaces.
So if you don't want to be tracking down patches / non-mainline repositories, for now it's easiest just deploying AMDGPU-PRO while in 2018 everything should hopefully be settled and of course you'll be able to read about it on Phoronix at that time.
Any idea how reliable the bolded part is and where/how?
@Brisse89 is right: This kernel (and most likely the future 4.15) DOES support freesync. But mesa/X is not yet ready for it because there is nothing as adaptive sync in the linux systems yet.
I think this is the patch once proposed: https://patchwork.freedesktop.org/patch/183117/
But I am not sure if it still integrates into the system. Unfortunately I dont have a freesync monitor otherwise I would have tried to build a special debian package that adds freesync support.
Good news is: The kernel hackers and mesa developers are working on it. But they do not want to make it AMD specific but a generic framework for adaptive sync. With the usual pace of open source software, freesync support will come in the next 0.5 to 1 year.
Still in discussion: https://www.phoronix.com/scan.php?page=news_item&px=VRR-AS-API-Discussion