From mboxrd@z Thu Jan 1 00:00:00 1970 From: Takashi Iwai Subject: Re: Valid DP connection without EDID? Date: Tue, 18 Sep 2012 13:01:53 +0200 Message-ID: References: <50534C4F.6020607@redhat.com> <1347899076.25266.46.camel@atropine> Mime-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mx2.suse.de (cantor2.suse.de [195.135.220.15]) by gabe.freedesktop.org (Postfix) with ESMTP id 224B39E7EE for ; Tue, 18 Sep 2012 04:01:55 -0700 (PDT) In-Reply-To: <1347899076.25266.46.camel@atropine> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org Errors-To: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org To: Adam Jackson Cc: mmarek@suse.cz, intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org At Mon, 17 Sep 2012 12:24:36 -0400, Adam Jackson wrote: > > On Mon, 2012-09-17 at 11:32 +0200, Takashi Iwai wrote: > > At Mon, 17 Sep 2012 19:11:34 +1000, > > Dave Airlie wrote: > > > On Mon, Sep 17, 2012 at 6:28 PM, Takashi Iwai wrote: > > > > At Mon, 17 Sep 2012 18:21:47 +1000, > > > > Dave Airlie wrote: > > > >> On Mon, Sep 17, 2012 at 6:16 PM, Takashi Iwai wrote: > > > >> > At Fri, 14 Sep 2012 11:25:03 -0400, > > > >> > Adam Jackson wrote: > > > >> >> > > > >> >> Can you be more specific here? What DPCD does it return? > > > >> > > > > >> > It shows "DPCD: 110a820100030181" > > So dpcd[0x5] is 0x03, and drm_dp_helper.h says: > > #define DP_DOWNSTREAMPORT_PRESENT 0x005 > # define DP_DWN_STRM_PORT_PRESENT (1 << 0) > # define DP_DWN_STRM_PORT_TYPE_MASK 0x06 > /* 00b = DisplayPort */ > /* 01b = Analog */ > /* 10b = TMDS or HDMI */ > /* 11b = Other */ > # define DP_FORMAT_CONVERSION (1 << 3) > > So there we go, it's a branch device with VGA downstream of it. We need > to figure out the connectivity of the downstream port. Right. It's indeed a VGA. > > > > Checking DPCD bits might work, but I have no exact spec of DPCD, so no > > > > idea whether the above is really wrong or not. > > > > > > Is there a VGA port on the docking station, it might have a DP->VGA in > > > it, or dual-link DVI port. > > > > Ah, right, that's the missing piece! > > > > It's a DP->VGA conversion indeed. Plugging to a VGA connector appears > > as DP2. Oh well, I didn't think of this possibility at all. > > > > But then this makes me wonder how to solve the problem at best. > > It's obviously a bogus connection status returned from the driver. > > DP2 advertises itself as if connected. > > I wouldn't quite say it's bogus, more that we're describing the > connection status of "the nearest DP device" as if it were the > connection status of the whole wire. True. However, from the end user's perspective, it's not easily understandable why it's DP2 although we know it's a VGA and why it's constantly stated as connected. Or, just think from the user-space POV. The only information it gets so far is it's "DP-2", and it's always connected without EDID. It's a bit too little information to make apps judging the situation correctly. Something should be corrected, or the driver needs to expose more information. > I started a patch series for this a bit ago, I'll send it on > momentarily. Thanks! I evaluated it now (with a typo fix suggested by Jani). Unfortunately, it doesn't improve the situation. The fetch of downstream ports succeeds, and it gets 0x09. So, this indicates again it's a VGA downstream port. But that's all, so far. The 0x09 is reported no matter whether the VGA cable is plugged or not, so this can't be used as the detection of the downstream port plug state. Any alternative way to detect the downstream VGA plug state? thanks, Takashi