[Intel-gfx] [PATCH v2] drm/i915/eDP: When enabling panel VDD cancel pending disable worker

Daniel Vetter daniel at ffwll.ch
Tue Nov 25 14:07:35 CET 2014


On Tue, Nov 25, 2014 at 12:54:57PM +0100, Egbert Eich wrote:
> Before testing if the panel VDD is enabled on eDP cancel any pending
> disable worker. This makes sure the worker will be triggered with a
> delay from the last time edp_panel_vdd_schedule_off() is called, not
> the first time. This avoids unnecessary overhead.
> 
> https://bugs.freedesktop.org/show_bug.cgi?id=86201
> 
> v2: use cancel_delayed_work() instead of cancel_delayed_work_sync()
> as the pps_mutexes will provide the required serialization with
> edp_panel_vdd_work() while the sync variant may deadlock. Suggested
> by Ville Syrjälä <ville.syrjala at linux.intel.com>.
> Made commit message a bit clearer.
> 
> Signed-off-by: Egbert Eich <eich at suse.de>

Yeah makes sense now to me with the updated commit message and all ;-)

Queued for -next, thanks for the patch.
-Daniel

> ---
>  drivers/gpu/drm/i915/intel_dp.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
> index 70bb8d0b..7ab39d4 100644
> --- a/drivers/gpu/drm/i915/intel_dp.c
> +++ b/drivers/gpu/drm/i915/intel_dp.c
> @@ -1503,6 +1503,7 @@ static bool edp_panel_vdd_on(struct intel_dp *intel_dp)
>  	if (!is_edp(intel_dp))
>  		return false;
>  
> +	cancel_delayed_work(&intel_dp->panel_vdd_work);
>  	intel_dp->want_panel_vdd = true;
>  
>  	if (edp_have_panel_vdd(intel_dp))
> -- 
> 1.8.4.5
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch



More information about the Intel-gfx mailing list