[Intel-gfx] [PATCH 7/8] drm/i915: Move toggling planes out of crtc enable/disable.
Ander Conselvan De Oliveira
conselvan2 at gmail.com
Thu Apr 16 00:32:42 PDT 2015
On Wed, 2015-04-15 at 16:34 +0200, Maarten Lankhorst wrote:
> This makes disabling planes more explicit.
>
> Signed-off-by: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
> ---
> drivers/gpu/drm/i915/i915_debugfs.c | 4 ++++
> drivers/gpu/drm/i915/intel_display.c | 36 ++++++++++++++++++------------------
> drivers/gpu/drm/i915/intel_drv.h | 2 ++
> 3 files changed, 24 insertions(+), 18 deletions(-)
[...]
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index 47fbdb5c71cb..cb677aff4245 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -4711,10 +4711,13 @@ intel_pre_disable_primary(struct drm_crtc *crtc)
> hsw_disable_ips(intel_crtc);
> }
>
> -static void intel_crtc_enable_planes(struct drm_crtc *crtc)
> +void intel_crtc_enable_planes(struct drm_crtc *crtc)
> {
> struct intel_crtc *intel_crtc = to_intel_crtc(crtc);
>
> + if (intel_crtc->active)
> + return;
> +
> intel_enable_primary_hw_plane(crtc->primary, crtc);
> intel_enable_sprite_planes(crtc);
> intel_crtc_update_cursor(crtc, true);
[...]
> @@ -12040,6 +12038,7 @@ static int __intel_set_mode(struct drm_crtc *crtc,
> update_scanline_offset(intel_crtc);
>
> dev_priv->display.crtc_enable(&intel_crtc->base);
> + intel_crtc_enable_planes(&intel_crtc->base);
> }
The crtc_enable hooks set intel_crtc->active, so the call to
intel_crtc_enable_planes() doesn't actually do anything because of the
new check in the hunk above.
Ander
More information about the Intel-gfx
mailing list