[Intel-gfx] [PATCH v2.1 03/11] drm/i915/gen9+: Use for_each_intel_plane_on_crtc in skl_print_wm_changes, v2.
Paulo Zanoni
paulo.r.zanoni at intel.com
Tue Nov 1 12:33:12 UTC 2016
Em Ter, 2016-11-01 às 12:04 +0100, Maarten Lankhorst escreveu:
> Using for_each_intel_plane_on_crtc will allow us to find all
> allocations
> that may have changed, not just the one added by the atomic state.
>
> This will print changes to plane allocations for crtc's when some
> planes are not added to the atomic state.
>
> Changes since v1:
> - Rephrase commit message. (Ville)
> - Use plane->base.id and plane->name to kill off cursor special
> case. (Matt)
Wasn't this Ville's suggestion? :)
> - Add intel_crtc to prevent a line wrap. (Paulo)
Reviewed-by: Paulo Zanoni <paulo.r.zanoni at intel.com>
>
> Signed-off-by: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
> ---
> Could I get a quick ack this version is good? Then I'll commit it.
>
> diff --git a/drivers/gpu/drm/i915/intel_pm.c
> b/drivers/gpu/drm/i915/intel_pm.c
> index e6e9cc563484..84db162cd30a 100644
> --- a/drivers/gpu/drm/i915/intel_pm.c
> +++ b/drivers/gpu/drm/i915/intel_pm.c
> @@ -4090,45 +4090,31 @@ skl_print_wm_changes(const struct
> drm_atomic_state *state)
> to_intel_atomic_state(state);
> const struct drm_crtc *crtc;
> const struct drm_crtc_state *cstate;
> - const struct drm_plane *plane;
> const struct intel_plane *intel_plane;
> - const struct drm_plane_state *pstate;
> const struct skl_ddb_allocation *old_ddb = &dev_priv-
> >wm.skl_hw.ddb;
> const struct skl_ddb_allocation *new_ddb = &intel_state-
> >wm_results.ddb;
> enum pipe pipe;
> int id;
> - int i, j;
> + int i;
>
> for_each_crtc_in_state(state, crtc, cstate, i) {
> - pipe = to_intel_crtc(crtc)->pipe;
> + const struct intel_crtc *intel_crtc =
> to_intel_crtc(crtc);
> + pipe = intel_crtc->pipe;
>
> - for_each_plane_in_state(state, plane, pstate, j) {
> + for_each_intel_plane_on_crtc(dev, intel_crtc,
> intel_plane) {
> const struct skl_ddb_entry *old, *new;
>
> - intel_plane = to_intel_plane(plane);
> id = skl_wm_plane_id(intel_plane);
> old = &old_ddb->plane[pipe][id];
> new = &new_ddb->plane[pipe][id];
>
> - if (intel_plane->pipe != pipe)
> - continue;
> -
> if (skl_ddb_entry_equal(old, new))
> continue;
>
> - if (id != PLANE_CURSOR) {
> - DRM_DEBUG_ATOMIC("[PLANE:%d:plane
> %d%c] ddb (%d - %d) -> (%d - %d)\n",
> - plane->base.id, id
> + 1,
> - pipe_name(pipe),
> - old->start, old-
> >end,
> - new->start, new-
> >end);
> - } else {
> - DRM_DEBUG_ATOMIC("[PLANE:%d:cursor
> %c] ddb (%d - %d) -> (%d - %d)\n",
> - plane->base.id,
> - pipe_name(pipe),
> - old->start, old-
> >end,
> - new->start, new-
> >end);
> - }
> + DRM_DEBUG_ATOMIC("[PLANE:%d:%s] ddb (%d -
> %d) -> (%d - %d)\n",
> + intel_plane->base.base.id,
> intel_plane->base.name,
> + old->start, old->end,
> + new->start, new->end);
> }
> }
> }
>
More information about the Intel-gfx
mailing list