Re: Adaptive Sync/VRR not working in multi-head with a non-freesync monitor

2019-01-08 Thread Michel Dänzer
On 2019-01-08 1:41 p.m., Ilya Trukhanov wrote:
> Tried Unigine Valley with bspwm and Plasma, Freesync does not get
> engaged when second monitor (without Freesync support) is in use.
> If I turn it off with e.g.
> 
> $ xrandr --output HDMI-A-0 --off
> 
> Freesync immediately starts working. Once I turn the monitor back on,
> Freesync is gone.
> 
> 
> Looking through one of the patches at
> https://gitlab.freedesktop.org/xorg/driver/xf86-video-amdgpu/merge_requests/5
> I found this:
> 
>> Per-CRTC support is gone for enabling variable refresh.
>> A window must cover the entire X screen in order to flip
>> so every CRTC must be enabled or disabled at the same time.
> 
> If I understood correctly, in case of multi-head, a window must span
> across all monitors, with all monitors having Freesync support.
> Therefore, my setup won't work in this case. However, it *does* work on
> Windows (albeit only one monitor has Freesync working, obviously).
> 
> Am I missing something obvious?
> Or is this some kind of X design limitation?

Yes, it is. Variable refresh rate can only work with page flipping, and
page flipping can only be used in Xorg when the application window spans
the whole virtual desktop.


-- 
Earthling Michel Dänzer   |   http://www.amd.com
Libre software enthusiast | Mesa and X developer



signature.asc
Description: OpenPGP digital signature
___
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx


Adaptive Sync/VRR not working in multi-head with a non-freesync monitor

2019-01-08 Thread Ilya Trukhanov
Tried Unigine Valley with bspwm and Plasma, Freesync does not get
engaged when second monitor (without Freesync support) is in use.
If I turn it off with e.g.

$ xrandr --output HDMI-A-0 --off

Freesync immediately starts working. Once I turn the monitor back on,
Freesync is gone.


Looking through one of the patches at
https://gitlab.freedesktop.org/xorg/driver/xf86-video-amdgpu/merge_requests/5
I found this:

> Per-CRTC support is gone for enabling variable refresh.
> A window must cover the entire X screen in order to flip
> so every CRTC must be enabled or disabled at the same time.

If I understood correctly, in case of multi-head, a window must span
across all monitors, with all monitors having Freesync support.
Therefore, my setup won't work in this case. However, it *does* work on
Windows (albeit only one monitor has Freesync working, obviously).

Am I missing something obvious?
Or is this some kind of X design limitation?
Are there any possible workarounds to achieve the same functionality as
on Windows?


I would greatly appreciate some clarification on this topic. Thank you!


signature.asc
Description: Digital signature
___
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx