aboutsummaryrefslogtreecommitdiff
path: root/backend/drm/drm.c
diff options
context:
space:
mode:
Diffstat (limited to 'backend/drm/drm.c')
-rw-r--r--backend/drm/drm.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/backend/drm/drm.c b/backend/drm/drm.c
index 94dd7023..06548ed0 100644
--- a/backend/drm/drm.c
+++ b/backend/drm/drm.c
@@ -36,7 +36,8 @@ static const uint32_t COMMIT_OUTPUT_STATE =
WLR_OUTPUT_STATE_BUFFER |
WLR_OUTPUT_STATE_MODE |
WLR_OUTPUT_STATE_ENABLED |
- WLR_OUTPUT_STATE_GAMMA_LUT;
+ WLR_OUTPUT_STATE_GAMMA_LUT |
+ WLR_OUTPUT_STATE_ADAPTIVE_SYNC_ENABLED;
static const uint32_t SUPPORTED_OUTPUT_STATE =
WLR_OUTPUT_STATE_BACKEND_OPTIONAL | COMMIT_OUTPUT_STATE;
@@ -489,6 +490,12 @@ static bool drm_connector_test(struct wlr_output *output,
}
}
+ if ((state->committed & WLR_OUTPUT_ADAPTIVE_SYNC_ENABLED) &&
+ state->adaptive_sync_enabled &&
+ !drm_connector_supports_vrr(conn)) {
+ return false;
+ }
+
struct wlr_drm_connector_state pending = {0};
drm_connector_state_init(&pending, conn, state);