• Maarten Lankhorst's avatar
    lib/igt_kms: Rework pipe properties to be more atomic, v7. · 66fb466e
    Maarten Lankhorst authored
    In the future I want to allow tests to commit more properties,
    but for this to work I have to fix all properties to work better
    with atomic commit. Instead of special casing each
    property make a bitmask for all property changed flags, and try to
    commit all properties.
    This has been the most involved one, since legacy pipe commit still
    handles a lot of the properties differently from the rest.
    Changes since v1:
    - Dump all changed properties on commit.
    - Fix bug in igt_pipe_refresh().
    Changes since v2:
    - Set pipe ACTIVE property changed flag on init.
    Changes since v3:
    - Add a missing igt_pipe_refresh() to kms_atomic_interruptible.
    Changes since v4:
    - Perform error handling when setting custom crtc properties.
    Changes since v5:
    - Only attempt to commit changes properties.
    Changes since v6:
    - Clear OUT_FENCE_PTR on succesful commit.
    Signed-off-by: default avatarMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
    Reviewed-by: default avatarMika Kahola <mika.kahola@intel.com>
igt_kms.h 17.4 KB