[PATCH] drm: allow changing DPMS mode for non-CRTC displays

Chris Wilson chris at chris-wilson.co.uk
Thu Dec 1 14:15:05 UTC 2016


On Thu, Dec 01, 2016 at 03:30:01PM +0200, Marta Lofstedt wrote:
> For non-CRTC displays,

A connector not attached to a CRTC works. It is the active connectors
that were broken.

> the drm_atomic_helper_connector_dpms
> will always set the connector back the old DPMS state
> before returning. This makes it impossible to change
> DPMS state.
> 
> fixes: 0853695c3ba46f97dfc0b5885f7b7e640ca212dd
> 
> Signed-off-by: Marta Lofstedt <marta.lofstedt at intel.com>
> ---
>  drivers/gpu/drm/drm_atomic_helper.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/drm_atomic_helper.c b/drivers/gpu/drm/drm_atomic_helper.c
> index 494680c..6a5acb9 100644
> --- a/drivers/gpu/drm/drm_atomic_helper.c
> +++ b/drivers/gpu/drm/drm_atomic_helper.c
> @@ -2885,8 +2885,8 @@ int drm_atomic_helper_connector_dpms(struct drm_connector *connector,
>  fail:
>  	if (ret == -EDEADLK)
>  		goto backoff;
> -
> -	connector->dpms = old_mode;
> +	if (ret != 0)
> +		connector->dpms = old_mode;

Patch however is correct.

Fix the subject line to reflect the impact correctly, amend the fixes
tag and add the appropriate CCs

Fixes: 0853695c3ba4 ("drm: Add reference counting to drm_atomic_state")
Cc: Chris Wilson <chris at chris-wilson.co.uk>
Cc: Daniel Vetter <daniel.vetter at ffwll.ch>
Cc: Eric Engestrom <eric.engestrom at imgtec.com>
Cc: Sean Paul <seanpaul at chromium.org>
Cc: dri-devel at lists.freedesktop.org
Cc: <drm-intel-fixes at lists.freedesktop.org>

And mention if there was a testcase exercising the failure. If not
please suggest one.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre


More information about the dri-devel mailing list