drm/i915: update the hdcp state with uevent
authorRamalingam C <ramalingam.c@intel.com>
Thu, 1 Aug 2019 11:41:18 +0000 (17:11 +0530)
committerRamalingam C <ramalingam.c@intel.com>
Tue, 6 Aug 2019 07:48:07 +0000 (13:18 +0530)
drm function to update the content protection property state and to
generate a uevent is invoked from the intel hdcp property work.

Hence whenever kernel changes the property state, userspace will be
updated with a uevent.

v2:
  state update is moved into drm function [daniel]

Signed-off-by: Ramalingam C <ramalingam.c@intel.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Acked-by: Pekka Paalanen <pekka.paalanen@collabora.com>
Acked-by: Jani Nikula <jani.nikula@intel.com>
Link: https://patchwork.freedesktop.org/patch/320965/?series=57232&rev=14
drivers/gpu/drm/i915/display/intel_hdcp.c

index 4580af57bddbbfedd216c2cb599f2c6036961aca..e56969ebdd25f194734741f35fd96f5c746687d3 100644 (file)
@@ -865,7 +865,6 @@ static void intel_hdcp_prop_work(struct work_struct *work)
                                               prop_work);
        struct intel_connector *connector = intel_hdcp_to_connector(hdcp);
        struct drm_device *dev = connector->base.dev;
-       struct drm_connector_state *state;
 
        drm_modeset_lock(&dev->mode_config.connection_mutex, NULL);
        mutex_lock(&hdcp->mutex);
@@ -875,10 +874,9 @@ static void intel_hdcp_prop_work(struct work_struct *work)
         * those to UNDESIRED is handled by core. If value == UNDESIRED,
         * we're running just after hdcp has been disabled, so just exit
         */
-       if (hdcp->value != DRM_MODE_CONTENT_PROTECTION_UNDESIRED) {
-               state = connector->base.state;
-               state->content_protection = hdcp->value;
-       }
+       if (hdcp->value != DRM_MODE_CONTENT_PROTECTION_UNDESIRED)
+               drm_hdcp_update_content_protection(&connector->base,
+                                                  hdcp->value);
 
        mutex_unlock(&hdcp->mutex);
        drm_modeset_unlock(&dev->mode_config.connection_mutex);