[PATCH 18/58] drm/i915: simplify intel_crtc_prepare_encoders

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, 19 Aug 2012 21:12:35 +0200
Daniel Vetter <daniel.vetter at ffwll.ch> wrote:

> - We don't have the ->get_crtc callback.
> - Call intel_encoder->disable directly.
> 
> Signed-Off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
> ---
>  drivers/gpu/drm/i915/intel_display.c | 25 ++++---------------------
>  1 file changed, 4 insertions(+), 21 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index 3e119a6..343f991 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -6636,31 +6636,14 @@ intel_crtc_helper_disable(struct drm_crtc *crtc)
>  }
>  
>  static void
> -intel_encoder_disable_helper(struct drm_encoder *encoder)
> -{
> -	struct drm_encoder_helper_funcs *encoder_funcs = encoder->helper_private;
> -
> -	if (encoder_funcs->disable)
> -		(*encoder_funcs->disable)(encoder);
> -	else
> -		(*encoder_funcs->dpms)(encoder, DRM_MODE_DPMS_OFF);
> -}
> -
> -static void
>  intel_crtc_prepare_encoders(struct drm_device *dev)
>  {
> -	struct drm_encoder_helper_funcs *encoder_funcs;
> -	struct drm_encoder *encoder;
> +	struct intel_encoder *encoder;
>  
> -	list_for_each_entry(encoder, &dev->mode_config.encoder_list, head) {
> -		encoder_funcs = encoder->helper_private;
> +	list_for_each_entry(encoder, &dev->mode_config.encoder_list, base.head) {
>  		/* Disable unused encoders */
> -		if (encoder->crtc == NULL)
> -			intel_encoder_disable_helper(encoder);
> -		/* Disable encoders whose CRTC is about to change */
> -		if (encoder_funcs->get_crtc &&
> -		    encoder->crtc != (*encoder_funcs->get_crtc)(encoder))
> -			intel_encoder_disable_helper(encoder);
> +		if (encoder->base.crtc == NULL)
> +			encoder->disable(encoder);
>  	}
>  }
>  

Reviewed-by: Jesse Barnes <jbarnes at virtuousgeek.org>

-- 
Jesse Barnes, Intel Open Source Technology Center


[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux