]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commitdiff
drm/i915: Move hw.active assignment into intel_crtc_get_pipe_config()
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Thu, 12 Nov 2020 19:17:15 +0000 (21:17 +0200)
committerManasi Navare <manasi.d.navare@intel.com>
Fri, 13 Nov 2020 15:40:00 +0000 (07:40 -0800)
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
drivers/gpu/drm/i915/display/intel_display.c

index a8287414937ca306d2d6397cce8c587960693a33..889642bef19230140e4c82bd5d76a9eaef25db3d 100644 (file)
@@ -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;