]> git.proxmox.com Git - mirror_ubuntu-kernels.git/blobdiff - drivers/gpu/drm/i915/display/intel_hotplug.c
Merge tag 'drm-misc-next-2020-06-19' of git://anongit.freedesktop.org/drm/drm-misc...
[mirror_ubuntu-kernels.git] / drivers / gpu / drm / i915 / display / intel_hotplug.c
index 21445e5afbc216eeb1b1d3411ceb836c503bfe44..664f883541018c7bf76ca22a695b296bc946dfe0 100644 (file)
@@ -270,8 +270,7 @@ static void intel_hpd_irq_storm_reenable_work(struct work_struct *work)
 
 enum intel_hotplug_state
 intel_encoder_hotplug(struct intel_encoder *encoder,
-                     struct intel_connector *connector,
-                     bool irq_received)
+                     struct intel_connector *connector)
 {
        struct drm_device *dev = connector->base.dev;
        enum drm_connector_status old_status;
@@ -410,12 +409,17 @@ static void i915_hotplug_work_func(struct work_struct *work)
                        struct intel_encoder *encoder =
                                intel_attached_encoder(connector);
 
+                       if (hpd_event_bits & hpd_bit)
+                               connector->hotplug_retries = 0;
+                       else
+                               connector->hotplug_retries++;
+
                        drm_dbg_kms(&dev_priv->drm,
-                                   "Connector %s (pin %i) received hotplug event.\n",
-                                   connector->base.name, pin);
+                                   "Connector %s (pin %i) received hotplug event. (retry %d)\n",
+                                   connector->base.name, pin,
+                                   connector->hotplug_retries);
 
-                       switch (encoder->hotplug(encoder, connector,
-                                                hpd_event_bits & hpd_bit)) {
+                       switch (encoder->hotplug(encoder, connector)) {
                        case INTEL_HOTPLUG_UNCHANGED:
                                break;
                        case INTEL_HOTPLUG_CHANGED: