aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Vetter <daniel.vetter@ffwll.ch>2016-05-09 03:31:25 -0400
committerDaniel Vetter <daniel.vetter@ffwll.ch>2016-05-17 16:48:45 -0400
commitaf4a879e0cb29b2cf35ff7559d32304783012534 (patch)
tree603abc00f6a1dd725714ee44023718872644b7de
parent1ecc1c6cb7d3549d8854b0d6ac5a86a622ca6fa3 (diff)
drm/i915: Simplify control flow in intel_atomic_check a bit.
- Unconditionally add plane states. Core helpers would have done this in drm_atomic_helper_check_modeset, doing it once more won't cause harm and is less fragile. - Simplify the continue logic when disabling a pipe. Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> Link: http://patchwork.freedesktop.org/patch/msgid/1462779085-2458-1-git-send-email-daniel.vetter@ffwll.ch
-rw-r--r--drivers/gpu/drm/i915/intel_display.c18
1 files changed, 8 insertions, 10 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index b8a0abaed325..bcf7cfcc7685 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -13351,14 +13351,13 @@ static int intel_atomic_check(struct drm_device *dev,
13351 if (crtc_state->mode.private_flags != crtc->state->mode.private_flags) 13351 if (crtc_state->mode.private_flags != crtc->state->mode.private_flags)
13352 crtc_state->mode_changed = true; 13352 crtc_state->mode_changed = true;
13353 13353
13354 if (!crtc_state->enable) { 13354 if (!needs_modeset(crtc_state))
13355 if (needs_modeset(crtc_state))
13356 any_ms = true;
13357 continue; 13355 continue;
13358 }
13359 13356
13360 if (!needs_modeset(crtc_state)) 13357 if (!crtc_state->enable) {
13358 any_ms = true;
13361 continue; 13359 continue;
13360 }
13362 13361
13363 /* FIXME: For only active_changed we shouldn't need to do any 13362 /* FIXME: For only active_changed we shouldn't need to do any
13364 * state recomputation at all. */ 13363 * state recomputation at all. */
@@ -13382,13 +13381,12 @@ static int intel_atomic_check(struct drm_device *dev,
13382 to_intel_crtc_state(crtc_state)->update_pipe = true; 13381 to_intel_crtc_state(crtc_state)->update_pipe = true;
13383 } 13382 }
13384 13383
13385 if (needs_modeset(crtc_state)) { 13384 if (needs_modeset(crtc_state))
13386 any_ms = true; 13385 any_ms = true;
13387 13386
13388 ret = drm_atomic_add_affected_planes(state, crtc); 13387 ret = drm_atomic_add_affected_planes(state, crtc);
13389 if (ret) 13388 if (ret)
13390 return ret; 13389 return ret;
13391 }
13392 13390
13393 intel_dump_pipe_config(to_intel_crtc(crtc), pipe_config, 13391 intel_dump_pipe_config(to_intel_crtc(crtc), pipe_config,
13394 needs_modeset(crtc_state) ? 13392 needs_modeset(crtc_state) ?