Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ba67fab0 authored by Paulo Zanoni's avatar Paulo Zanoni
Browse files

drm/i915/fbc: replace a loop with drm_atomic_get_existing_crtc_state()



Much simpler. Thanks to Ville for pointing this.

Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reported-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: default avatarPaulo Zanoni <paulo.r.zanoni@intel.com>
Reviewed-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1478883461-20201-3-git-send-email-paulo.r.zanoni@intel.com
parent 03e39104
Loading
Loading
Loading
Loading
+7 −10
Original line number Diff line number Diff line
@@ -1071,7 +1071,7 @@ void intel_fbc_choose_crtc(struct drm_i915_private *dev_priv,
	struct drm_plane *plane;
	struct drm_plane_state *plane_state;
	bool fbc_crtc_present = false;
	int i, j;
	int i;

	mutex_lock(&fbc->lock);

@@ -1092,6 +1092,7 @@ void intel_fbc_choose_crtc(struct drm_i915_private *dev_priv,
	for_each_plane_in_state(state, plane, plane_state, i) {
		struct intel_plane_state *intel_plane_state =
			to_intel_plane_state(plane_state);
		struct intel_crtc_state *intel_crtc_state;

		if (!intel_plane_state->base.visible)
			continue;
@@ -1099,16 +1100,12 @@ void intel_fbc_choose_crtc(struct drm_i915_private *dev_priv,
		if (!intel_fbc_can_choose(to_intel_crtc(plane_state->crtc)))
			continue;

		for_each_crtc_in_state(state, crtc, crtc_state, j) {
			struct intel_crtc_state *intel_crtc_state =
				to_intel_crtc_state(crtc_state);

			if (plane_state->crtc != crtc)
				continue;
		intel_crtc_state = to_intel_crtc_state(
			drm_atomic_get_existing_crtc_state(state,
							   plane_state->crtc));

		intel_crtc_state->enable_fbc = true;
			goto out;
		}
		break;
	}

out: