From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 4/4] drm/dp/mst: Check peer device type before attempting EDID read Date: Wed, 26 Oct 2016 16:05:31 +0300 Message-ID: <20161026130531.GD4617@intel.com> References: <1477472755-15288-1-git-send-email-ville.syrjala@linux.intel.com> <1477472755-15288-5-git-send-email-ville.syrjala@linux.intel.com> <20161026125514.32jyrl44kiywuoz7@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id A42D86E891 for ; Wed, 26 Oct 2016 13:05:36 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20161026125514.32jyrl44kiywuoz7@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Daniel Vetter Cc: "Kirill A . Shutemov" , stable@vger.kernel.org, Carlos Santa , dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gV2VkLCBPY3QgMjYsIDIwMTYgYXQgMDI6NTU6MTRQTSArMDIwMCwgRGFuaWVsIFZldHRlciB3 cm90ZToKPiBPbiBXZWQsIE9jdCAyNiwgMjAxNiBhdCAxMjowNTo1NVBNICswMzAwLCB2aWxsZS5z eXJqYWxhQGxpbnV4LmludGVsLmNvbSB3cm90ZToKPiA+IEZyb206IFZpbGxlIFN5cmrDpGzDpCA8 dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+Cj4gPiAKPiA+IE9ubHkgY2VydGFpbiB0eXBl cyBvZiBwZHRzIGhhdmUgdGhlIEREQyBidXMgcmVnaXN0ZXJlZCwgc28gY2hlY2sgZm9yCj4gPiB0 aGF0IGJlZm9yZSB3ZSBhdHRlbXB0IHRoZSBFRElEIHJlYWQuIE90aHdld2lzZSB3ZSByaXNrIHBs YXlpbmcgYXJvdW5kCj4gPiB3aXRoIGFuIGkyYyBhZGFwdGVyIHRoYXQgZG9lc24ndCBhY3R1YWxs eSBleGlzdC4KPiA+IAo+ID4gQ2M6IHN0YWJsZUB2Z2VyLmtlcm5lbC5vcmcKPiA+IENjOiBDYXJs b3MgU2FudGEgPGNhcmxvcy5zYW50YUBpbnRlbC5jb20+Cj4gPiBDYzogS2lyaWxsIEEuIFNodXRl bW92IDxraXJpbGxAc2h1dGVtb3YubmFtZT4KPiA+IFRlc3RlZC1ieTogQ2FybG9zIFNhbnRhIDxj YXJsb3Muc2FudGFAaW50ZWwuY29tPgo+ID4gVGVzdGVkLWJ5OiBLaXJpbGwgQS4gU2h1dGVtb3Yg PGtpcmlsbEBzaHV0ZW1vdi5uYW1lPgo+ID4gQnVnemlsbGE6IGh0dHBzOi8vYnVncy5mcmVlZGVz a3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTk3NjY2Cj4gPiBTaWduZWQtb2ZmLWJ5OiBWaWxsZSBT eXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgo+ID4gLS0tCj4gPiAgZHJp dmVycy9ncHUvZHJtL2RybV9kcF9tc3RfdG9wb2xvZ3kuYyB8IDQgKysrLQo+ID4gIDEgZmlsZSBj aGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKPiA+IAo+ID4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZHBfbXN0X3RvcG9sb2d5LmMgYi9kcml2ZXJzL2dwdS9k cm0vZHJtX2RwX21zdF90b3BvbG9neS5jCj4gPiBpbmRleCA5NTZiYWJjMTYxZTUuLjY5MGQxYjQw N2E5MCAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZHBfbXN0X3RvcG9sb2d5 LmMKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZHBfbXN0X3RvcG9sb2d5LmMKPiA+IEBA IC0xMTYyLDcgKzExNjIsOSBAQCBzdGF0aWMgdm9pZCBkcm1fZHBfYWRkX3BvcnQoc3RydWN0IGRy bV9kcF9tc3RfYnJhbmNoICptc3RiLAo+ID4gIAkJCWRybV9kcF9wdXRfcG9ydChwb3J0KTsKPiA+ ICAJCQlnb3RvIG91dDsKPiA+ICAJCX0KPiA+IC0JCWlmIChwb3J0LT5wb3J0X251bSA+PSBEUF9N U1RfTE9HSUNBTF9QT1JUXzApIHsKPiA+ICsJCWlmICgocG9ydC0+cGR0ID09IERQX1BFRVJfREVW SUNFX0RQX0xFR0FDWV9DT05WIHx8Cj4gPiArCQkgICAgIHBvcnQtPnBkdCA9PSBEUF9QRUVSX0RF VklDRV9TU1RfU0lOSykgJiYKPiA+ICsJCSAgICBwb3J0LT5wb3J0X251bSA+PSBEUF9NU1RfTE9H SUNBTF9QT1JUXzApIHsKPiAKPiBNYXRjaGVzIHdoYXQncyBpbiBkcm1fZHBfcG9ydF9zZXR1cF9w ZHQuIE5vdCBzdXJlIHRoaXMgaXMgdGhlIG1vc3QKPiByZWxpYWJsZSB3YXkgdG8gZG8gdGhpcyB0 aG91Z2gsIGJ1dCBJIGNhbid0IGNvbWUgdXAgd2l0aCBhbnl0aGluZyBiZXR0ZXIuCgpZZWFoLiBJ IGp1c3Qgd2VudCB3aXRoIHdoYXRldmVyIGxvb2tzIHNlbWktY29ycmVjdCBiYXNlZCBvbiB3aGVy ZSB0aGUKdGhpbmcgaXMgc2V0IHVwLiBJJ2QgaGF2ZSB0byBnbyByZWFkIHRoZSBhY3R1YWwgc3Bl YyB0byBmaWd1cmUgb3V0IGlmCnRoaXMgbWFrZXMgYW55IHJlYWwgc2Vuc2UuIEJ1dCBhdCBsZWFz dCBpdCBhdm9pZHMgdGhlIGV4cGxvc2lvbi4KCj4gCj4gUmV2aWV3ZWQtYnk6IERhbmllbCBWZXR0 ZXIgPGRhbmllbC52ZXR0ZXJAZmZ3bGwuY2g+Cj4gCj4gPiAgCQkJcG9ydC0+Y2FjaGVkX2VkaWQg PSBkcm1fZ2V0X2VkaWQocG9ydC0+Y29ubmVjdG9yLCAmcG9ydC0+YXV4LmRkYyk7Cj4gPiAgCQkJ ZHJtX21vZGVfY29ubmVjdG9yX3NldF90aWxlX3Byb3BlcnR5KHBvcnQtPmNvbm5lY3Rvcik7Cj4g PiAgCQl9Cj4gPiAtLSAKPiA+IDIuNy40Cj4gPiAKPiA+IF9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fCj4gPiBkcmktZGV2ZWwgbWFpbGluZyBsaXN0Cj4gPiBk cmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4gPiBodHRwczovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo+IAo+IC0tIAo+IERhbmllbCBWZXR0 ZXIKPiBTb2Z0d2FyZSBFbmdpbmVlciwgSW50ZWwgQ29ycG9yYXRpb24KPiBodHRwOi8vYmxvZy5m ZndsbC5jaAoKLS0gClZpbGxlIFN5cmrDpGzDpApJbnRlbCBPVEMKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmkt ZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga05.intel.com ([192.55.52.43]:16279 "EHLO mga05.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S942675AbcJZNIo (ORCPT ); Wed, 26 Oct 2016 09:08:44 -0400 Date: Wed, 26 Oct 2016 16:05:31 +0300 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= To: Daniel Vetter Cc: dri-devel@lists.freedesktop.org, "Kirill A . Shutemov" , Carlos Santa , stable@vger.kernel.org Subject: Re: [PATCH 4/4] drm/dp/mst: Check peer device type before attempting EDID read Message-ID: <20161026130531.GD4617@intel.com> References: <1477472755-15288-1-git-send-email-ville.syrjala@linux.intel.com> <1477472755-15288-5-git-send-email-ville.syrjala@linux.intel.com> <20161026125514.32jyrl44kiywuoz7@phenom.ffwll.local> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20161026125514.32jyrl44kiywuoz7@phenom.ffwll.local> Sender: stable-owner@vger.kernel.org List-ID: On Wed, Oct 26, 2016 at 02:55:14PM +0200, Daniel Vetter wrote: > On Wed, Oct 26, 2016 at 12:05:55PM +0300, ville.syrjala@linux.intel.com wrote: > > From: Ville Syrj�l� > > > > Only certain types of pdts have the DDC bus registered, so check for > > that before we attempt the EDID read. Othwewise we risk playing around > > with an i2c adapter that doesn't actually exist. > > > > Cc: stable@vger.kernel.org > > Cc: Carlos Santa > > Cc: Kirill A. Shutemov > > Tested-by: Carlos Santa > > Tested-by: Kirill A. Shutemov > > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=97666 > > Signed-off-by: Ville Syrj�l� > > --- > > drivers/gpu/drm/drm_dp_mst_topology.c | 4 +++- > > 1 file changed, 3 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/gpu/drm/drm_dp_mst_topology.c b/drivers/gpu/drm/drm_dp_mst_topology.c > > index 956babc161e5..690d1b407a90 100644 > > --- a/drivers/gpu/drm/drm_dp_mst_topology.c > > +++ b/drivers/gpu/drm/drm_dp_mst_topology.c > > @@ -1162,7 +1162,9 @@ static void drm_dp_add_port(struct drm_dp_mst_branch *mstb, > > drm_dp_put_port(port); > > goto out; > > } > > - if (port->port_num >= DP_MST_LOGICAL_PORT_0) { > > + if ((port->pdt == DP_PEER_DEVICE_DP_LEGACY_CONV || > > + port->pdt == DP_PEER_DEVICE_SST_SINK) && > > + port->port_num >= DP_MST_LOGICAL_PORT_0) { > > Matches what's in drm_dp_port_setup_pdt. Not sure this is the most > reliable way to do this though, but I can't come up with anything better. Yeah. I just went with whatever looks semi-correct based on where the thing is set up. I'd have to go read the actual spec to figure out if this makes any real sense. But at least it avoids the explosion. > > Reviewed-by: Daniel Vetter > > > port->cached_edid = drm_get_edid(port->connector, &port->aux.ddc); > > drm_mode_connector_set_tile_property(port->connector); > > } > > -- > > 2.7.4 > > > > _______________________________________________ > > dri-devel mailing list > > dri-devel@lists.freedesktop.org > > https://lists.freedesktop.org/mailman/listinfo/dri-devel > > -- > Daniel Vetter > Software Engineer, Intel Corporation > http://blog.ffwll.ch -- Ville Syrj�l� Intel OTC