<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_ASSIGNED "
   title="ASSIGNED --- - [snb] Driver not emitting event when unplugging enabled HDMI output"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=58405#c19">Comment # 19</a>
              on <a class="bz_bug_link 
          bz_status_ASSIGNED "
   title="ASSIGNED --- - [snb] Driver not emitting event when unplugging enabled HDMI output"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=58405">bug 58405</a>
              from <span class="vcard"><a class="email" href="mailto:afiestas@kde.org" title="Alex Fiestas <afiestas@kde.org>"> <span class="fn">Alex Fiestas</span></a>
</span></b>
        <pre>I have been doing some digging to try to figure out this bug. I have found
something that perhaps will help you to find where the error is.

In i915_hpd_irq_setup when the encoder_list is iterated  none of the encoders
has HPD_SDVO_B which apparently is where my HDMI port is hooked.

If I add:
hotplug_en |= SDVOB_HOTPLUG_INT_EN;

Then at least I can see some reaction from the drm driver in dmesg:
[drm:i965_irq_handler], hotplug event received, stat 0x00008040

Then, If in: i965_irq_handler I force hotplug_trigger
if (hotplug_trigger) {

I get this dmesg:
[drm:i965_irq_handler], not triggered
[drm:i915_hotplug_work_func], running encoder hotplug functions
[drm:intel_sdvo_debug_write], SDVOB: W: 0D 01 00                  
(SDVO_CMD_SET_ACTIVE_HOT_PLUG)
[drm:intel_crt_detect], CRT not detected via hotplug
[drm:gmbus_xfer], GMBUS [i915 gmbus vga] NAK for addr: 0050 r(1)
[drm:drm_do_probe_ddc_edid], drm: skipping non-existent adapter i915 gmbus vga
[drm:intel_crt_get_edid], CRT GMBUS EDID read failed, retry using GPIO
bit-banging
[drm:intel_gmbus_force_bit], enabling bit-banging on i915 gmbus vga. force bit
now 1
[drm:drm_do_probe_ddc_edid], drm: skipping non-existent adapter i915 gmbus vga
[drm:intel_gmbus_force_bit], disabling bit-banging on i915 gmbus vga. force bit
now 0
[drm:intel_crt_detect_ddc], CRT not detected via DDC:0x50 [no valid EDID found]
[drm:drm_helper_hpd_irq_event], [CONNECTOR:11:VGA-1] status updated from
disconnected to disconnected.

Then in intel_setup_outputs I'm getting in:
if (I915_READ(GEN3_SDVOB) & SDVO_DETECTED) {
    DRM_DEBUG_KMS("probing SDVOB\n");
    found = intel_sdvo_init(dev, GEN3_SDVOB, true);
    found = false;
    if (!found && SUPPORTS_INTEGRATED_HDMI(dev)) {
        DRM_DEBUG_KMS("probing HDMI on SDVOB\n");
    intel_hdmi_init(dev, GEN4_HDMIB, PORT_B);
    }
}

If I force found to false, I'm getting an extra encoder with port HPD_PORT_B,
but still it is not working.

Any pointers?

Thanks.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the QA Contact for the bug.</li>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>