[PATCH 4/4] amd/display: indicate support for atomic async page-flips on DCN
Simon Ser
contact at emersion.fr
Tue Aug 30 15:06:30 UTC 2022
On Tuesday, August 30th, 2022 at 16:42, Alex Deucher <alexdeucher at gmail.com> wrote:
> > Hm, can you elaborate on the difference between "immediate flip" (as in
> > UNP_FLIP_CONTROL) and GRPH_SURFACE_UPDATE_H_RETRACE_EN? What are their
> > relationship with KMS's concept of "async flips"?
>
> The display surface registers are double buffered. The default is for
> the swap to take place during vblank. However, you can select
> different behavior via the GRPH_FLIP_CONTROL register. On DCE10 and
> older you can set GRPH_SURFACE_UPDATE_H_RETRACE_EN to select swapping
> at hsync. On DCE11 and newer, you can set
> GRPH_SURFACE_UPDATE_IMMEDIATE_EN which causes the swap to immediately
> (IIRC as soon as GRPH_PRIMARY_SURFACE_ADDRESS is written).
>
> > Also you said earlier:
> >
> > > We don't use hsync flips at all, even in non-atomic, as far as I recall.
> >
> > Is "hsync flip" controlled by GRPH_SURFACE_UPDATE_H_RETRACE_EN, or is it
> > something else entirely?
>
> Yes, GRPH_SURFACE_UPDATE_H_RETRACE_EN. We use hsync swaps on older
> DCE parts that don't support immediate swaps.
Ah, that makes a lot of sense. Thanks for the explanation!
More information about the amd-gfx
mailing list