From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [RFC PATCH xserver] modesetting: re-set the crtc's mode when link-status goes BAD Date: Thu, 26 Jan 2017 18:21:20 +0100 Message-ID: <20170126172120.iflf5b5l4m4wsuus@phenom.ffwll.local> References: <20170126123728.5680-1-martin.peres@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-x244.google.com (mail-wm0-x244.google.com [IPv6:2a00:1450:400c:c09::244]) by gabe.freedesktop.org (Postfix) with ESMTPS id A88866E2A0 for ; Thu, 26 Jan 2017 17:21:24 +0000 (UTC) Received: by mail-wm0-x244.google.com with SMTP id r126so51795002wmr.3 for ; Thu, 26 Jan 2017 09:21:24 -0800 (PST) Content-Disposition: inline In-Reply-To: <20170126123728.5680-1-martin.peres@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Martin Peres Cc: Manasi Navare , xorg-devel@lists.x.org, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gVGh1LCBKYW4gMjYsIDIwMTcgYXQgMDI6Mzc6MjhQTSArMDIwMCwgTWFydGluIFBlcmVzIHdy b3RlOgo+IERlc3BpdGUgYWxsIHRoZSBjYXJlZnVsIHBsYW5pbmcgb2YgdGhlIGtlcm5lbCwgYSBs aW5rIG1heSBiZWNvbWUKPiBpbnN1ZmZpY2llbnQgdG8gaGFuZGxlIHRoZSBjdXJyZW50bHktc2V0 IG1vZGUuIEF0IHRoaXMgcG9pbnQsIHRoZQo+IGtlcm5lbCBzaG91bGQgbWFyayB0aGlzIHBhcnRp Y3VsYXIgY29uZmlndXJhdGlvbiBhcyBiZWluZyBicm9rZW4KPiBhbmQgcG90ZW50aWFsbHkgcHJ1 bmUgdGhlIG1vZGUgYmVmb3JlIHNldHRpbmcgdGhlIG9mZmVuZGluZyBjb25uZWN0b3Incwo+IGxp bmstc3RhdHVzIHRvIEJBRCBhbmQgc2VuZCB0aGUgdXNlcnNwYWNlIGEgaG90cGx1ZyBldmVudC4g VGhpcyBtYXkKPiBoYXBwZW4gcmlnaHQgYWZ0ZXIgYSBtb2Rlc2V0IG9yIGxhdGVyIG9uLgo+IAo+ IFdoZW4gYXZhaWxhYmxlLCB3ZSBzaG91bGQgdXNlIHRoZSBsaW5rLXN0YXR1cyBpbmZvcm1hdGlv biB0byByZXNldAo+IHRoZSB3YW50ZWQgbW9kZS4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBNYXJ0aW4g UGVyZXMgPG1hcnRpbi5wZXJlc0BsaW51eC5pbnRlbC5jb20+Cj4gLS0tCj4gCj4gV0FSTklORzog VGhlIHBhdGNoZXMgaGF2ZSBub3QgYmVlbiBtZXJnZWQgaW4gdGhlIGtlcm5lbCB5ZXQsIHNvIHRo aXMgcGF0Y2ggaXMKPiBtZXJlbHkgYW4gUkZDLgoKVGhhdCdzIGhvdyBpdCdzIHN1cHBvc2VkIHRv IGhhcHBlbiwgYmVmb3JlIHdlIGNhbiBtZXJnZSB0aGUga2VybmVsIHNpZGUsCndlIG5lZWQgYWNj ZXB0YW5jZSAoPXJldmlld2VkKSBieSB0aGUgdXNlcnNwYWNlIHNpZGUuIFdoaWNoIGlzIHdoeSB0 aGlzCnBhdGNoIGhlcmUuCi1EYW5pZWwKCj4gCj4gVGhpcyBwYXRjaCBpcyB0aGUgcmVzdWx0IG9m IGRpc2N1c3Npb25zIGhhcHBlbmluZyBtb3N0bHkgaW4gRFJJLWRldmVsIGFuZAo+IEludGVsLUdG WCBvbiBob3cgdG8gaGFuZGxlIGxpbmsgdHJhaW5pbmcgZmFpbHVyZXMuIEkgd291bGQgYWR2aXNl IHJlYWRpbmcgdGhlCj4gdGhyZWFkIFswXSBmaXJzdCBhbmQgdGhlbiB0aGlzIHRocmVhZCBbMV0g d2hpY2ggZXhwbGFpbiBpbiBncmVhdCBsZW5ndGggd2h5IHRoaXMKPiBpcyBuZWVkZWQgYW5kIHdo eSB0aGUgc2VsZWN0ZWQgYXBwcm9hY2ggc2VlbXMgdG8gYmUgdGhlIGJlc3QuCj4gCj4gVGhlIHJl bGV2YW50IGtlcm5lbCBwYXRjaGVzICsgdGhpcyBwYXRjaCBhcmUgZW5vdWdoIHRvIHBhc3MgdGhl IHJlbGV2YW50Cj4gRGlzcGxheVBvcnQgY29tcGxpYW5jZSB0ZXN0cywgcHJvdmlkZWQgdGhhdCB0 aGUgRGVza3RvcCBFbnZpcm9ubWVudCBvciBhbm90aGVyCj4gcHJvZ3JhbSAoWzJdPykgcHJvdmlk ZXMgdGhlIGluaXRpYWwgbW9kZXNldHRpbmcgb24gaG90cGx1Zy4KPiAKPiBXb3VsZCB0aGlzIHBh dGNoIGJlIGFjY2VwdGFibGUgdG8geW91PyBBbnkgY29tbWVudHMgb3Igc3VnZ2VzdGlvbnM/Cj4g Cj4gWzBdIGh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL2FyY2hpdmVzL2RyaS1kZXZlbC8y MDE2LU5vdmVtYmVyLzEyMzM2Ni5odG1sCj4gWzFdIGh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Au b3JnL2FyY2hpdmVzL2RyaS1kZXZlbC8yMDE2LU5vdmVtYmVyLzEyNDczNi5odG1sCj4gWzJdIGh0 dHBzOi8vY2dpdC5mcmVlZGVza3RvcC5vcmcvfm1wZXJlcy9hdXRvLXJhbmRyLwo+IAo+IAo+ICBo dy94ZnJlZTg2L2RyaXZlcnMvbW9kZXNldHRpbmcvZHJtbW9kZV9kaXNwbGF5LmMgfCA1MSArKysr KysrKysrKysrKysrKysrKysrKysKPiAgMSBmaWxlIGNoYW5nZWQsIDUxIGluc2VydGlvbnMoKykK PiAKPiBkaWZmIC0tZ2l0IGEvaHcveGZyZWU4Ni9kcml2ZXJzL21vZGVzZXR0aW5nL2RybW1vZGVf ZGlzcGxheS5jIGIvaHcveGZyZWU4Ni9kcml2ZXJzL21vZGVzZXR0aW5nL2RybW1vZGVfZGlzcGxh eS5jCj4gaW5kZXggNmU3NTVlOTQ4Mi4uMzE0NDYyMGM2NyAxMDA2NDQKPiAtLS0gYS9ody94ZnJl ZTg2L2RyaXZlcnMvbW9kZXNldHRpbmcvZHJtbW9kZV9kaXNwbGF5LmMKPiArKysgYi9ody94ZnJl ZTg2L2RyaXZlcnMvbW9kZXNldHRpbmcvZHJtbW9kZV9kaXNwbGF5LmMKPiBAQCAtMjI2Miw2ICsy MjYyLDEwIEBAIGRybW1vZGVfc2V0dXBfY29sb3JtYXAoU2NyZWVuUHRyIHBTY3JlZW4sIFNjcm5J bmZvUHRyIHBTY3JuKQo+ICB9Cj4gIAo+ICAjaWZkZWYgQ09ORklHX1VERVZfS01TCj4gKwo+ICsj ZGVmaW5lIERSTV9NT0RFX0xJTktfU1RBVFVTX0dPT0QgICAgICAgMAo+ICsjZGVmaW5lIERSTV9N T0RFX0xJTktfU1RBVFVTX0JBRCAgICAgICAgMQo+ICsKPiAgc3RhdGljIHZvaWQKPiAgZHJtbW9k ZV9oYW5kbGVfdWV2ZW50cyhpbnQgZmQsIHZvaWQgKmNsb3N1cmUpCj4gIHsKPiBAQCAtMjI4MSw2 ICsyMjg1LDQ5IEBAIGRybW1vZGVfaGFuZGxlX3VldmVudHMoaW50IGZkLCB2b2lkICpjbG9zdXJl KQo+ICAgICAgaWYgKCFmb3VuZCkKPiAgICAgICAgICByZXR1cm47Cj4gIAo+ICsgICAgLyogVHJ5 IHRvIHJlLXNldCB0aGUgbW9kZSBvbiBhbGwgdGhlIGNvbm5lY3RvcnMgd2l0aCBhIEJBRCBsaW5r LXN0YXRlOgo+ICsgICAgICogVGhpcyBtYXkgaGFwcGVuIGlmIGEgbGluayBkZWdyYWRlcyBhbmQg YSBuZXcgbW9kZXNldCBpcyBuZWNlc3NhcnksIHVzaW5nCj4gKyAgICAgKiBkaWZmZXJlbnQgbGlu ay10cmFpbmluZyBwYXJhbWV0ZXJzLiBJZiB0aGUga2VybmVsIGZvdW5kIHRoYXQgdGhlIGN1cnJl bnQKPiArICAgICAqIG1vZGUgaXMgbm90IGFjaGlldmFibGUgYW55bW9yZSwgaXQgc2hvdWxkIGhh dmUgcHJ1bmVkIHRoZSBtb2RlIGJlZm9yZQo+ICsgICAgICogc2VuZGluZyB0aGUgaG90cGx1ZyBl dmVudC4gVHJ5IHRvIHJlLXNldCB0aGUgY3VycmVudGx5LXNldCBtb2RlIHRvIGtlZXAKPiArICAg ICAqIHRoZSBkaXNwbGF5IGFsaXZlLCB0aGlzIHdpbGwgZmFpbCBpZiB0aGUgbW9kZSBoYXMgYmVl biBwcnVuZWQuCj4gKyAgICAgKiBJbiBhbnkgY2FzZSwgd2Ugd2lsbCBzZW5kIHJhbmRyIGV2ZW50 cyBmb3IgdGhlIERlc2t0b3AgRW52aXJvbm1lbnQgdG8KPiArICAgICAqIGRlYWwgd2l0aCBpdCwg aWYgaXQgd2FudHMgdG8uCj4gKyAgICAgKi8KPiArICAgIGZvciAoaSA9IDA7IGkgPCBjb25maWct Pm51bV9vdXRwdXQ7IGkrKykgewo+ICsgICAgICAgIHhmODZPdXRwdXRQdHIgb3V0cHV0ID0gY29u ZmlnLT5vdXRwdXRbaV07Cj4gKyAgICAgICAgZHJtbW9kZV9vdXRwdXRfcHJpdmF0ZV9wdHIgZHJt bW9kZV9vdXRwdXQgPSBvdXRwdXQtPmRyaXZlcl9wcml2YXRlOwo+ICsgICAgICAgIHVpbnQzMl90 IGNvbl9pZCA9IGRybW1vZGVfb3V0cHV0LT5tb2RlX291dHB1dC0+Y29ubmVjdG9yX2lkOwo+ICsg ICAgICAgIGRybU1vZGVDb25uZWN0b3JQdHIga291dHB1dDsKPiArCj4gKyAgICAgICAgLyogR2V0 IGFuIHVwZGF0ZWQgdmlldyBvZiB0aGUgcHJvcGVydGllcyBmb3IgdGhlIGN1cnJlbnQgY29ubmVj dG9yIGFuZAo+ICsgICAgICAgICAqIGxvb2sgZm9yIHRoZSBsaW5rLXN0YXR1cyBwcm9wZXJ0eQo+ ICsgICAgICAgICAqLwo+ICsgICAgICAgIGtvdXRwdXQgPSBkcm1Nb2RlR2V0Q29ubmVjdG9yQ3Vy cmVudChkcm1tb2RlLT5mZCwgY29uX2lkKTsKPiArICAgICAgICBmb3IgKGogPSAwOyBrb3V0cHV0 ICYmIGogPCBrb3V0cHV0LT5jb3VudF9wcm9wczsgaisrKSB7Cj4gKyAgICAgICAgICAgIGRybU1v ZGVQcm9wZXJ0eVB0ciBwcm9wczsKPiArICAgICAgICAgICAgcHJvcHMgPSBkcm1Nb2RlR2V0UHJv cGVydHkoZHJtbW9kZS0+ZmQsIGtvdXRwdXQtPnByb3BzW2pdKTsKPiArICAgICAgICAgICAgaWYg KHByb3BzICYmIHByb3BzLT5mbGFncyAmIERSTV9NT0RFX1BST1BfRU5VTSAmJgo+ICsgICAgICAg ICAgICAgICAgIXN0cmNtcChwcm9wcy0+bmFtZSwgImxpbmstc3RhdHVzIikgJiYKPiArICAgICAg ICAgICAgICAgIGtvdXRwdXQtPnByb3BfdmFsdWVzW2pdID09IERSTV9NT0RFX0xJTktfU1RBVFVT X0JBRCkgewo+ICsgICAgICAgICAgICAgICAgeGY4NkNydGNQdHIgY3J0YyA9IG91dHB1dC0+Y3J0 YzsKPiArICAgICAgICAgICAgICAgIGlmICghY3J0YykKPiArICAgICAgICAgICAgICAgICAgICBj b250aW51ZTsKPiArCj4gKyAgICAgICAgICAgICAgICAvKiB0aGUgY29ubmVjdG9yIGdvdCBhIGxp bmsgZmFpbHVyZSwgcmUtc2V0IHRoZSBjdXJyZW50IG1vZGUgKi8KPiArICAgICAgICAgICAgICAg IGRybW1vZGVfc2V0X21vZGVfbWFqb3IoY3J0YywgJmNydGMtPm1vZGUsIGNydGMtPnJvdGF0aW9u LAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjcnRjLT54LCBjcnRj LT55KTsKPiArCj4gKyAgICAgICAgICAgICAgICB4Zjg2RHJ2TXNnKHNjcm4tPnNjcm5JbmRleCwg WF9XQVJOSU5HLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAiaG90cGx1ZyBldmVudDog Y29ubmVjdG9yICV1J3MgbGluay1zdGF0ZSBpcyBCQUQsICIKPiArICAgICAgICAgICAgICAgICAg ICAgICAgICAgInRyaWVkIHJlc2V0dGluZyB0aGUgY3VycmVudCBtb2RlLiBZb3UgbWF5IGJlIGxl ZnQiCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICJ3aXRoIGEgYmxhY2sgc2NyZWVuIGlm IHRoaXMgZmFpbHMuLi5cbiIsIGNvbl9pZCk7Cj4gKyAgICAgICAgICAgIH0KPiArICAgICAgICAg ICAgZHJtTW9kZUZyZWVQcm9wZXJ0eShwcm9wcyk7Cj4gKyAgICAgICAgfQo+ICsgICAgICAgIGRy bU1vZGVGcmVlQ29ubmVjdG9yKGtvdXRwdXQpOwo+ICsgICAgfQo+ICsKPiAgICAgIG1vZGVfcmVz ID0gZHJtTW9kZUdldFJlc291cmNlcyhkcm1tb2RlLT5mZCk7Cj4gICAgICBpZiAoIW1vZGVfcmVz KQo+ICAgICAgICAgIGdvdG8gb3V0Owo+IEBAIC0yMzQ1LDYgKzIzOTIsMTAgQEAgb3V0X2ZyZWVf cmVzOgo+ICBvdXQ6Cj4gICAgICBSUkdldEluZm8oeGY4NlNjcm5Ub1NjcmVlbihzY3JuKSwgVFJV RSk7Cj4gIH0KPiArCj4gKyN1bmRlZiBEUk1fTU9ERV9MSU5LX1NUQVRVU19CQUQKPiArI3VuZGVm IERSTV9NT0RFX0xJTktfU1RBVFVTX0dPT0QKPiArCj4gICNlbmRpZgo+ICAKPiAgdm9pZAo+IC0t IAo+IDIuMTEuMAo+IAo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCj4gZHJpLWRldmVsIG1haWxpbmcgbGlzdAo+IGRyaS1kZXZlbEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKPiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2RyaS1kZXZlbAoKLS0gCkRhbmllbCBWZXR0ZXIKU29mdHdhcmUgRW5naW5lZXIsIEludGVsIENv cnBvcmF0aW9uCmh0dHA6Ly9ibG9nLmZmd2xsLmNoCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2RyaS1kZXZlbAo=