Commit a0e70104 authored by Ville Syrjälä's avatar Ville Syrjälä

drm/i915: Move state dump to the end of atomic_check()

Currently we're dumping the crtc states before they have
been fully calculated. Move the dumping to the end of
.atomic_check() so we get a fully up to date dump.

Let's also do the dump for fully disabled pipes, but we'll
limit that to just saying that the pipe is disabled since
the rest of the state is going to be nonsense in that case.
Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190517193132.8140-10-ville.syrjala@linux.intel.comReviewed-by: default avatarMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
parent 9a86a07c
...@@ -11805,8 +11805,9 @@ static void intel_dump_pipe_config(struct intel_crtc_state *pipe_config, ...@@ -11805,8 +11805,9 @@ static void intel_dump_pipe_config(struct intel_crtc_state *pipe_config,
struct drm_framebuffer *fb; struct drm_framebuffer *fb;
char buf[64]; char buf[64];
DRM_DEBUG_KMS("[CRTC:%d:%s]%s\n", DRM_DEBUG_KMS("[CRTC:%d:%s] enable: %s %s\n",
crtc->base.base.id, crtc->base.name, context); crtc->base.base.id, crtc->base.name,
yesno(pipe_config->base.enable), context);
snprintf_output_types(buf, sizeof(buf), pipe_config->output_types); snprintf_output_types(buf, sizeof(buf), pipe_config->output_types);
DRM_DEBUG_KMS("output_types: %s (0x%x)\n", DRM_DEBUG_KMS("output_types: %s (0x%x)\n",
...@@ -13399,10 +13400,6 @@ static int intel_atomic_check(struct drm_device *dev, ...@@ -13399,10 +13400,6 @@ static int intel_atomic_check(struct drm_device *dev,
if (needs_modeset(&new_crtc_state->base)) if (needs_modeset(&new_crtc_state->base))
any_ms = true; any_ms = true;
intel_dump_pipe_config(new_crtc_state,
needs_modeset(&new_crtc_state->base) ?
"[modeset]" : "[fastset]");
} }
ret = drm_dp_mst_atomic_check(&state->base); ret = drm_dp_mst_atomic_check(&state->base);
...@@ -13434,6 +13431,17 @@ static int intel_atomic_check(struct drm_device *dev, ...@@ -13434,6 +13431,17 @@ static int intel_atomic_check(struct drm_device *dev,
if (ret) if (ret)
return ret; return ret;
for_each_oldnew_intel_crtc_in_state(state, crtc, old_crtc_state,
new_crtc_state, i) {
if (!needs_modeset(&new_crtc_state->base) &&
!new_crtc_state->update_pipe)
continue;
intel_dump_pipe_config(new_crtc_state,
needs_modeset(&new_crtc_state->base) ?
"[modeset]" : "[fastset]");
}
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment