Re: [REGRESSION] i915: No HDMI output with 4.4

From: Ville Syrjälä
Date: Mon Feb 15 2016 - 09:42:44 EST


On Mon, Feb 15, 2016 at 10:55:33AM +0200, Oleksandr Natalenko wrote:
> 13.02.2016 01:23, Ville SyrjÃlà wrote:
> > - Do you have another monitor to try?
> > - Do you have another cable to try?
>
> More on this.
>
> Computer DVI ââ old DVI-HDMI cable ââ old monitor HDMI == not working
> Computer DVI ââ another DVI-HDMI cable ââ old monitor HDMI == not
> working
> Computer DVI ââ DVI-DVI cable ââ another monitor DVI == works
>
> So
>
> > Shouldn't really matter. HDMI and DVI are identical at this level.
>
> Not quite, as far as I can see.

Well, it seems this particular monitor is just somehow funky. It's a bit
strange that the hpd interrupt still works. It would seem to indicate
that there's two separate voltage thresholds for detection, one for the
hpd generation, and another for the live status. I did see something
similar on another platforms (CHV) where it had two different hpd
detection registers, and those produced different results when the
pullup on the hpd pin was misconfigured.

Anyway, I'm out of ideas now :( Anyone else got something up their
sleeve?

I'm starting to think this is going to be our only option:
- if (intel_hdmi_set_edid(connector, live_status)) {
+ if (intel_hdmi_set_edid(connector, true)) {

It would more or less turn the live status check into a fixed
msleep(80) for the disconnect case. For the connect case it would
still break out sooner when live status works.

The downside is that if the cable is yanked slowly, we'll still succeed
in the ddc communication during unplug and thus fail to notice that the
monitor was actually disconnected. But the delay should make that less
likely.

--
Ville SyrjÃlÃ
Intel OTC