diff options
author | Ville Syrjälä <ville.syrjala@linux.intel.com> | 2020-11-12 21:17:15 +0200 |
---|---|---|
committer | Manasi Navare <manasi.d.navare@intel.com> | 2020-11-13 07:40:00 -0800 |
commit | 291106cbd6fa5f8daef55f2fbfa905c33ccc03a2 (patch) | |
tree | 7aef5191602d702a49c71687cb12ab67b13e7577 /drivers/gpu | |
parent | 11f9af1657b167035fee35ef3317ff2fb0406410 (diff) | |
download | linux-291106cbd6fa5f8daef55f2fbfa905c33ccc03a2.tar.bz2 |
drm/i915: Move hw.active assignment into intel_crtc_get_pipe_config()
No reason to make the callers of intel_crtc_get_pipe_config()
populate hw.active. Let's do it in intel_crtc_get_pipe_config()
itself. hw.enable we leave up to the callers since it's slightly
different for readout vs. state check.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Manasi Navare <manasi.d.navare@intel.com>
Signed-off-by: Manasi Navare <manasi.d.navare@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20201112191718.16683-4-ville.syrjala@linux.intel.com
Diffstat (limited to 'drivers/gpu')
-rw-r--r-- | drivers/gpu/drm/i915/display/intel_display.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c index a8287414937c..889642bef192 100644 --- a/drivers/gpu/drm/i915/display/intel_display.c +++ b/drivers/gpu/drm/i915/display/intel_display.c @@ -11412,7 +11412,12 @@ static bool intel_crtc_get_pipe_config(struct intel_crtc_state *crtc_state) struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); struct drm_i915_private *i915 = to_i915(crtc->base.dev); - return i915->display.get_pipe_config(crtc, crtc_state); + if (!i915->display.get_pipe_config(crtc, crtc_state)) + return false; + + crtc_state->hw.active = true; + + return true; } static u32 intel_cursor_base(const struct intel_plane_state *plane_state) @@ -14430,7 +14435,7 @@ verify_crtc_state(struct intel_crtc *crtc, pipe_config->hw.enable = new_crtc_state->hw.enable; - pipe_config->hw.active = intel_crtc_get_pipe_config(pipe_config); + intel_crtc_get_pipe_config(pipe_config); /* we keep both pipes enabled on 830 */ if (IS_I830(dev_priv) && pipe_config->hw.active) @@ -18742,8 +18747,9 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev) intel_crtc_free_hw_state(crtc_state); intel_crtc_state_reset(crtc_state, crtc); - crtc_state->hw.active = crtc_state->hw.enable = - intel_crtc_get_pipe_config(crtc_state); + intel_crtc_get_pipe_config(crtc_state); + + crtc_state->hw.enable = crtc_state->hw.active; crtc->base.enabled = crtc_state->hw.enable; crtc->active = crtc_state->hw.active; |