Re: [PATCH 1/2] drm/i915: Add primary plane to mask if it's visible

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

 



On Wed, 23 Sep 2015, Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx> wrote:
> This fixes the warnings like
>
> "plane A assertion failure, should be disabled but not"
>
> that on the initial modeset during boot. This can happen if
> the primary plane is enabled by the firmware, but inheriting
> it fails because the DMAR is active or for other reasons.
>
> Most likely caused by
>
> commit 36750f284b3a4f19b304fda1bb7d6e9e1275ea8d
> Author: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
> Date:   Mon Jun 1 12:49:54 2015 +0200
>
>     drm/i915: update plane state during init
>
> Reported-by: Andreas Reis <andreas.reis@xxxxxxxxx>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91429
> Reported-and-tested-by: Emil Renner Berthing <kernel@xxxxxxxx>
> Tested-by: Andreas Reis <andreas.reis@xxxxxxxxx>
> Reviewed-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
> Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

Daniel, this one is for you. Another version of this is already
upstream:

commit 721a09f7393de6c28a07516dccd654c6e995944a
Author: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
Date:   Tue Sep 15 14:28:54 2015 +0200

    drm/i915: Add primary plane to mask if it's visible



> ---
>  drivers/gpu/drm/i915/intel_display.c | 8 ++++++--
>  1 file changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index c5366b9ff809..854896e4794e 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -15103,11 +15103,15 @@ static bool primary_get_hw_state(struct intel_plane *plane)
>  /* FIXME read out full plane state for all planes */
>  static void readout_plane_state(struct intel_crtc *crtc)
>  {
> +	struct drm_plane *primary = crtc->base.primary;
>  	struct intel_plane_state *plane_state =
> -		to_intel_plane_state(crtc->base.primary->state);
> +		to_intel_plane_state(primary->state);
>  
>  	plane_state->visible =
> -		primary_get_hw_state(to_intel_plane(crtc->base.primary));
> +		primary_get_hw_state(to_intel_plane(primary));
> +
> +	if (plane_state->visible)
> +		crtc->base.state->plane_mask |= 1 << drm_plane_index(primary);
>  }
>  
>  static void intel_modeset_readout_hw_state(struct drm_device *dev)
> -- 
> 2.1.0
>

-- 
Jani Nikula, Intel Open Source Technology Center
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/intel-gfx




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