Commit ea9522f5 authored by Simon Ser's avatar Simon Ser Committed by Alex Deucher
Browse files

drm/amd/display: add debug logs for dm_crtc_helper_atomic_check



Instead of silently failing the atomic check, explain what happened via
a debug log. This makes it easier for user-space to figure out why
something failed.

Signed-off-by: default avatarSimon Ser <contact@emersion.fr>
Cc: Alex Deucher <alexander.deucher@amd.com>
Cc: Harry Wentland <hwentlan@amd.com>
Cc: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 22ca75ea
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -6071,8 +6071,10 @@ static int dm_crtc_helper_atomic_check(struct drm_crtc *crtc,
	 * userspace which stops using the HW cursor altogether in response to the resulting EINVAL.
	 */
	if (crtc_state->enable &&
	    !(crtc_state->plane_mask & drm_plane_mask(crtc->primary)))
	    !(crtc_state->plane_mask & drm_plane_mask(crtc->primary))) {
		DRM_DEBUG_ATOMIC("Can't enable a CRTC without enabling the primary plane\n");
		return -EINVAL;
	}

	/* In some use cases, like reset, no stream is attached */
	if (!dm_crtc_state->stream)
@@ -6081,6 +6083,7 @@ static int dm_crtc_helper_atomic_check(struct drm_crtc *crtc,
	if (dc_validate_stream(dc, dm_crtc_state->stream) == DC_OK)
		return 0;

	DRM_DEBUG_ATOMIC("Failed DC stream validation\n");
	return ret;
}