Commit 043c87d7 authored by Timur Kristóf's avatar Timur Kristóf Committed by Alex Deucher
Browse files

drm/amd/display: Disable VRR on DCE 6



DCE 6 was not advertised as being able to support VRR,
so let's mark it as unsupported for now.

The VRR implementation in amdgpu_dm depends on the VUPDATE
interrupt which is not registered for DCE 6.

Signed-off-by: default avatarTimur Kristóf <timur.kristof@gmail.com>
Reviewed-by: default avatarRodrigo Siqueira <siqueira@igalia.com>
Reviewed-by: default avatarAlex Deucher <alexander.deucher@amd.com>
Reviewed-by: default avatarAlex Hung <alex.hung@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 7495962c
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -10834,6 +10834,8 @@ static void get_freesync_config_for_crtc(
		} else {
			config.state = VRR_STATE_INACTIVE;
		}
	} else {
		config.state = VRR_STATE_UNSUPPORTED;
	}
out:
	new_crtc_state->freesync_config = config;
@@ -12735,7 +12737,7 @@ void amdgpu_dm_update_freesync_caps(struct drm_connector *connector,

	dm_con_state = to_dm_connector_state(connector->state);

	if (!adev->dm.freesync_module)
	if (!adev->dm.freesync_module || !dc_supports_vrr(sink->ctx->dce_version))
		goto update;

	edid = drm_edid_raw(drm_edid); // FIXME: Get rid of drm_edid_raw()
+5 −0
Original line number Diff line number Diff line
@@ -755,3 +755,8 @@ char *dce_version_to_string(const int version)
		return "Unknown";
	}
}

bool dc_supports_vrr(const enum dce_version v)
{
	return v >= DCE_VERSION_8_0;
}
+2 −0
Original line number Diff line number Diff line
@@ -311,4 +311,6 @@ void dm_dtn_log_end(struct dc_context *ctx,

char *dce_version_to_string(const int version);

bool dc_supports_vrr(const enum dce_version v);

#endif /* __DM_SERVICES_H__ */