[RFC v1 11/20] drm/hdcp: Registering for connector state change

Ramalingam C ramalingam.c at intel.com
Wed Jul 12 08:28:55 UTC 2017


On connector state change detection, HDCP handler for connector
state change notified.

Signed-off-by: Ramalingam C <ramalingam.c at intel.com>
---
 drivers/gpu/drm/drm_probe_helper.c   | 3 +++
 drivers/gpu/drm/i915/intel_hotplug.c | 6 +++++-
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/drm_probe_helper.c b/drivers/gpu/drm/drm_probe_helper.c
index 00e6832..5545f51 100644
--- a/drivers/gpu/drm/drm_probe_helper.c
+++ b/drivers/gpu/drm/drm_probe_helper.c
@@ -467,6 +467,9 @@ int drm_helper_probe_single_connector_modes(struct drm_connector *connector,
 		if (dev->mode_config.poll_enabled)
 			schedule_delayed_work(&dev->mode_config.output_poll_work,
 					      0);
+
+		/* Signaling connector state change to the HDCP module */
+		drm_hdcp_connector_state_change_handler(connector);
 	}
 
 	/* Re-enable polling in case the global poll config changed. */
diff --git a/drivers/gpu/drm/i915/intel_hotplug.c b/drivers/gpu/drm/i915/intel_hotplug.c
index f120027..891898e 100644
--- a/drivers/gpu/drm/i915/intel_hotplug.c
+++ b/drivers/gpu/drm/i915/intel_hotplug.c
@@ -25,6 +25,7 @@
 
 #include <drm/drmP.h>
 #include <drm/i915_drm.h>
+#include <drm/drm_hdcp.h>
 
 #include "i915_drv.h"
 #include "intel_drv.h"
@@ -344,8 +345,11 @@ static void i915_hotplug_work_func(struct work_struct *work)
 				      connector->name, intel_encoder->hpd_pin);
 			if (intel_encoder->hot_plug)
 				intel_encoder->hot_plug(intel_encoder);
-			if (intel_hpd_irq_event(dev, connector))
+			if (intel_hpd_irq_event(dev, connector)) {
 				changed = true;
+				drm_hdcp_connector_state_change_handler(
+								connector);
+			}
 		}
 	}
 	drm_connector_list_iter_end(&conn_iter);
-- 
2.7.4



More information about the dri-devel mailing list