[Intel-gfx] [PATCH 2/2] drm/i915: calculate pfit changes in set_config v3

Daniel Vetter daniel at ffwll.ch
Tue Dec 9 13:59:41 PST 2014


On Tue, Dec 9, 2014 at 10:28 PM, Jesse Barnes <jbarnes at virtuousgeek.org> wrote:
> And yeah the logic needs to be shuffled around a lot more.  I meant to
> grab more stuff from compute_mode_changes; right now it's just a set of
> special cases, and not very complete.  If we add a new pipe config
> compare function, we can just special case the fast paths like you
> mentioned, and add a custom pfit path as well (somewhere in between a
> simple flip and a full mode set, at least for some platforms).

My idea was to repurpose the existing pipe config compare func: With a
new mode enum we only need a few changes I think:
- only print the loud mismatch message when mode == checker
- add two more modes for modeset checks: full_modeset and
fixup_needed. Then we could ignore some pfit mismatches for the
full_modeset mode and only report them for fixup_needed, i.e.

if (mode != full_modeset) /* need to catch both checker and fixup_needed */ {
     /* pfit checks */
}

Or maybe we just have to duplicate the entire function, but that would
be awful. Plain memcmp won't work since some of the values stored in
there (e.g. id of the requested mode) must be ignored.
-Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch


More information about the Intel-gfx mailing list