Re: [PATCH] drm: Call sysfs_notify after changing drm_connector::dpms

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

 



On Tue, 19 Sep 2017, Karsten Wiese <fzuuzf@xxxxxxxxxxxxxx> wrote:
> This makes poll work for the
> /sys/class/drm/cardX/connectorY/dpms attributes.

I guess the question is, what are you trying to achieve? What is the
problem that this solves?

We have zero sysfs_notify in all of drm AFAICT.

BR,
Jani.


>
> Tested with i915 suspended by XScreenServer and
> suspend to RAM.
>
> Signed-off-by: Karsten Wiese <fzuuzf@xxxxxxxxxxxxxx>
> ---
>  drivers/gpu/drm/drm_atomic.c        | 4 ++++
>  drivers/gpu/drm/drm_atomic_helper.c | 6 +++++-
>  2 files changed, 9 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c
> index 2fd383d..b6fa87b 100644
> --- a/drivers/gpu/drm/drm_atomic.c
> +++ b/drivers/gpu/drm/drm_atomic.c
> @@ -1880,6 +1880,10 @@ int drm_atomic_connector_commit_dpms(struct drm_atomic_state *state,
>  out:
>  	if (ret != 0)
>  		connector->dpms = old_mode;
> +	else
> +		if (connector->dpms != old_mode)
> +			sysfs_notify(&connector->kdev->kobj, NULL, "dpms");
> +
>  	return ret;
>  }
>  
> diff --git a/drivers/gpu/drm/drm_atomic_helper.c b/drivers/gpu/drm/drm_atomic_helper.c
> index 4e53aae..6198772 100644
> --- a/drivers/gpu/drm/drm_atomic_helper.c
> +++ b/drivers/gpu/drm/drm_atomic_helper.c
> @@ -921,12 +921,16 @@ drm_atomic_helper_update_legacy_modeset_state(struct drm_device *dev,
>  		crtc = new_conn_state->crtc;
>  		if ((!crtc && old_conn_state->crtc) ||
>  		    (crtc && drm_atomic_crtc_needs_modeset(crtc->state))) {
> -			int mode = DRM_MODE_DPMS_OFF;
> +			int old_mode, mode = DRM_MODE_DPMS_OFF;
>  
>  			if (crtc && crtc->state->active)
>  				mode = DRM_MODE_DPMS_ON;
>  
> +			old_mode = connector->dpms;
>  			connector->dpms = mode;
> +			if (old_mode != mode)
> +				sysfs_notify(&connector->kdev->kobj,
> +						NULL, "dpms");
>  		}
>  	}

-- 
Jani Nikula, Intel Open Source Technology Center
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/dri-devel




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux