From mboxrd@z Thu Jan 1 00:00:00 1970 From: Imre Deak Subject: Re: [PATCH] drm/i915/crt: Keep the EDID for the whole detect cycle Date: Thu, 29 Sep 2016 15:49:42 +0300 Message-ID: <1475153382.14625.7.camel@intel.com> References: <20160929105245.18617-1-chris@chris-wilson.co.uk> Reply-To: imre.deak@intel.com Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by gabe.freedesktop.org (Postfix) with ESMTPS id 99CC76E27D for ; Thu, 29 Sep 2016 12:49:45 +0000 (UTC) In-Reply-To: <20160929105245.18617-1-chris@chris-wilson.co.uk> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Chris Wilson , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gdG8sIDIwMTYtMDktMjkgYXQgMTE6NTIgKzAxMDAsIENocmlzIFdpbHNvbiB3cm90ZToKPiBP dGhlciB0aGFuIHJlZHVjaW5nIHRoZSBudW1iZXIgb2YgRURJRCByZWFkcyByZXF1aXJlZCBmb3Ig cHJvYmluZyB0aGUKPiBtb2RlcyBvbiBhIGNvbm5lY3RvciwgdGhpcyByZWZhY3RvciBoYXMgdGhl IGltcG9ydGFuY2Ugb2YgY2VudHJhbGlzaW5nCj4gdGhlIGxvZ2ljIGZvciBkZWNpZGluZyB3aGVu IHdlIG5lZWQgdG8gcHJvYmUgZm9yIGFuIGFuYWxvZ3VlIG91dHB1dCB2aWEKPiBEVkktSSBhbmQg dGhlbiBjb25zaXN0ZW50bHkgdXNpbmcgdGhhdCBpbmZvcm1hdGlvbiBiZXR3ZWVuIGRldGVjdGlv biBhbmQKPiBtb2RlIGNvbXB1dGF0aW9uLgo+IAo+IFJlZmVyZW5jZXM6IGh0dHBzOi8vYnVncy5m cmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTk3OTcxCj4gU2lnbmVkLW9mZi1ieTogQ2hy aXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+Cj4gQ2M6IEltcmUgRGVhayA8aW1y ZS5kZWFrQGludGVsLmNvbT4KPiBDYzogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxp bnV4LmludGVsLmNvbT4KCmtmcmVlKGRldGVjdF9lZGlkKSBkdXJpbmcgY29ubmVjdG9yIGRlc3Ry b3kuCkFsc28gc2hvdWxkbid0IGNvbm5lY3RvciBmb3JjaW5nIGFsc28gZm9yY2UgcmVyZWFkaW5n IHRoZSBFRElEPwoKT3RoZXJ3aXNlIGxvb2tzIG9rIHRvIG1lLgoKPiAtLS0KPiDCoGRyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2NydC5jIHwgOTggKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQo+IMKgMSBmaWxlIGNoYW5nZWQsIDM2IGluc2VydGlvbnMoKyksIDYyIGRl bGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9j cnQuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2NydC5jCj4gaW5kZXggODhlYmJkZGUx ODVhLi5iOWI4OGIwYjczZTcgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfY3J0LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jcnQuYwo+IEBAIC00 NTksOCArNDU5LDggQEAgc3RhdGljIGJvb2wgaW50ZWxfY3J0X2RldGVjdF9ob3RwbHVnKHN0cnVj dCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCj4gwqAJcmV0dXJuIHJldDsKPiDCoH0KPiDCoAo+ IC1zdGF0aWMgc3RydWN0IGVkaWQgKmludGVsX2NydF9nZXRfZWRpZChzdHJ1Y3QgZHJtX2Nvbm5l Y3RvciAqY29ubmVjdG9yLAo+IC0JCQkJc3RydWN0IGkyY19hZGFwdGVyICppMmMpCj4gK3N0YXRp YyBzdHJ1Y3QgZWRpZCAqX19pbnRlbF9jcnRfZ2V0X2VkaWQoc3RydWN0IGRybV9jb25uZWN0b3Ig KmNvbm5lY3RvciwKPiArCQkJCQnCoHN0cnVjdCBpMmNfYWRhcHRlciAqaTJjKQo+IMKgewo+IMKg CXN0cnVjdCBlZGlkICplZGlkOwo+IMKgCj4gQEAgLTQ3Myw1OSArNDczLDUwIEBAIHN0YXRpYyBz dHJ1Y3QgZWRpZCAqaW50ZWxfY3J0X2dldF9lZGlkKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25u ZWN0b3IsCj4gwqAJCWludGVsX2dtYnVzX2ZvcmNlX2JpdChpMmMsIGZhbHNlKTsKPiDCoAl9Cj4g wqAKPiAtCXJldHVybiBlZGlkOwo+IC19Cj4gLQo+IC0vKiBsb2NhbCB2ZXJzaW9uIG9mIGludGVs X2RkY19nZXRfbW9kZXMoKSB0byB1c2UgaW50ZWxfY3J0X2dldF9lZGlkKCkgKi8KPiAtc3RhdGlj IGludCBpbnRlbF9jcnRfZGRjX2dldF9tb2RlcyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVj dG9yLAo+IC0JCQkJc3RydWN0IGkyY19hZGFwdGVyICphZGFwdGVyKQo+IC17Cj4gLQlzdHJ1Y3Qg ZWRpZCAqZWRpZDsKPiAtCWludCByZXQ7Cj4gLQo+IC0JZWRpZCA9IGludGVsX2NydF9nZXRfZWRp ZChjb25uZWN0b3IsIGFkYXB0ZXIpOwo+IC0JaWYgKCFlZGlkKQo+IC0JCXJldHVybiAwOwo+IC0K PiAtCXJldCA9IGludGVsX2Nvbm5lY3Rvcl91cGRhdGVfbW9kZXMoY29ubmVjdG9yLCBlZGlkKTsK PiAtCWtmcmVlKGVkaWQpOwo+ICsJaWYgKGVkaWQgJiYgZWRpZC0+aW5wdXQgJiBEUk1fRURJRF9J TlBVVF9ESUdJVEFMKSB7Cj4gKwkJRFJNX0RFQlVHX0tNUygiRURJRCByZXBvcnRzIGEgZGlnaXRh bCBvdXRwdXQsIGlnbm9yaW5nIGZvciB0aGlzIFZHQSBjb25uZWN0b3JcbiIpOwo+ICsJCWtmcmVl KGVkaWQpOwo+ICsJCWVkaWQgPSBOVUxMOwo+ICsJfQo+IMKgCj4gLQlyZXR1cm4gcmV0Owo+ICsJ cmV0dXJuIGVkaWQ7Cj4gwqB9Cj4gwqAKPiAtc3RhdGljIGJvb2wgaW50ZWxfY3J0X2RldGVjdF9k ZGMoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKPiArc3RhdGljIHN0cnVjdCBlZGlk ICppbnRlbF9jcnRfZ2V0X2VkaWQoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKPiDC oHsKPiAtCXN0cnVjdCBpbnRlbF9jcnQgKmNydCA9IGludGVsX2F0dGFjaGVkX2NydChjb25uZWN0 b3IpOwo+IC0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShjcnQt PmJhc2UuYmFzZS5kZXYpOwo+IC0Jc3RydWN0IGVkaWQgKmVkaWQ7Cj4gKyNkZWZpbmUgSEFTX0RW SV9JKHApIDEgLyogWFhYIGFueXRoaW5nIHdpdGggSERNSSwgaS5lLiBnMzMrICovCj4gKwlzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNvbm5lY3Rvci0+ZGV2KTsK PiDCoAlzdHJ1Y3QgaTJjX2FkYXB0ZXIgKmkyYzsKPiAtCj4gLQlCVUdfT04oY3J0LT5iYXNlLnR5 cGUgIT0gSU5URUxfT1VUUFVUX0FOQUxPRyk7Cj4gKwlzdHJ1Y3QgZWRpZCAqZWRpZDsKPiDCoAo+ IMKgCWkyYyA9IGludGVsX2dtYnVzX2dldF9hZGFwdGVyKGRldl9wcml2LCBkZXZfcHJpdi0+dmJ0 LmNydF9kZGNfcGluKTsKPiAtCWVkaWQgPSBpbnRlbF9jcnRfZ2V0X2VkaWQoY29ubmVjdG9yLCBp MmMpOwo+IC0KPiAtCWlmIChlZGlkKSB7Cj4gLQkJYm9vbCBpc19kaWdpdGFsID0gZWRpZC0+aW5w dXQgJiBEUk1fRURJRF9JTlBVVF9ESUdJVEFMOwo+IC0KPiArCWVkaWQgPSBfX2ludGVsX2NydF9n ZXRfZWRpZChjb25uZWN0b3IsIGkyYyk7Cj4gKwlpZiAoIWVkaWQgJiYgSEFTX0RWSV9JKGRldl9w cml2KSkgewo+IMKgCQkvKgo+IMKgCQnCoCogVGhpcyBtYXkgYmUgYSBEVkktSSBjb25uZWN0b3Ig d2l0aCBhIHNoYXJlZCBEREMKPiDCoAkJwqAqIGxpbmsgYmV0d2VlbiBhbmFsb2cgYW5kIGRpZ2l0 YWwgb3V0cHV0cywgc28gd2UKPiDCoAkJwqAqIGhhdmUgdG8gY2hlY2sgdGhlIEVESUQgaW5wdXQg c3BlYyBvZiB0aGUgYXR0YWNoZWQgZGV2aWNlLgo+IMKgCQnCoCovCj4gLQkJaWYgKCFpc19kaWdp dGFsKSB7Cj4gLQkJCURSTV9ERUJVR19LTVMoIkNSVCBkZXRlY3RlZCB2aWEgRERDOjB4NTAgW0VE SURdXG4iKTsKPiAtCQkJcmV0dXJuIHRydWU7Cj4gLQkJfQo+IC0KPiAtCQlEUk1fREVCVUdfS01T KCJDUlQgbm90IGRldGVjdGVkIHZpYSBEREM6MHg1MCBbRURJRCByZXBvcnRzIGEgZGlnaXRhbCBw YW5lbF1cbiIpOwo+IC0JfSBlbHNlIHsKPiAtCQlEUk1fREVCVUdfS01TKCJDUlQgbm90IGRldGVj dGVkIHZpYSBEREM6MHg1MCBbbm8gdmFsaWQgRURJRCBmb3VuZF1cbiIpOwo+ICsJCWkyYyA9IGlu dGVsX2dtYnVzX2dldF9hZGFwdGVyKGRldl9wcml2LCBHTUJVU19QSU5fRFBCKTsKPiArCQllZGlk ID0gX19pbnRlbF9jcnRfZ2V0X2VkaWQoY29ubmVjdG9yLCBpMmMpOwo+IMKgCX0KPiDCoAo+IC0J a2ZyZWUoZWRpZCk7Cj4gKwlyZXR1cm4gZWRpZDsKPiArfQo+ICsKPiArc3RhdGljIGJvb2wgaW50 ZWxfY3J0X2RldGVjdF9kZGMoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKPiArewo+ ICsJc3RydWN0IGVkaWQgKmVkaWQ7Cj4gKwo+ICsJa2ZyZWUodG9faW50ZWxfY29ubmVjdG9yKGNv bm5lY3RvciktPmRldGVjdF9lZGlkKTsKPiArCXRvX2ludGVsX2Nvbm5lY3Rvcihjb25uZWN0b3Ip LT5kZXRlY3RfZWRpZCA9IE5VTEw7Cj4gwqAKPiAtCXJldHVybiBmYWxzZTsKPiArCWVkaWQgPSBp bnRlbF9jcnRfZ2V0X2VkaWQoY29ubmVjdG9yKTsKPiArCWlmICghZWRpZCkKPiArCQlyZXR1cm4g ZmFsc2U7Cj4gKwo+ICsJdG9faW50ZWxfY29ubmVjdG9yKGNvbm5lY3RvciktPmRldGVjdF9lZGlk ID0gZWRpZDsKPiArCXJldHVybiB0cnVlOwo+IMKgfQo+IMKgCj4gwqBzdGF0aWMgZW51bSBkcm1f Y29ubmVjdG9yX3N0YXR1cwo+IEBAIC03MjcsMzAgKzcxOCwxMyBAQCBzdGF0aWMgdm9pZCBpbnRl bF9jcnRfZGVzdHJveShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+IMKgCj4gwqBz dGF0aWMgaW50IGludGVsX2NydF9nZXRfbW9kZXMoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5l Y3RvcikKPiDCoHsKPiAtCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjb25uZWN0b3ItPmRldjsK PiAtCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZGV2KTsKPiAt CXN0cnVjdCBpbnRlbF9jcnQgKmNydCA9IGludGVsX2F0dGFjaGVkX2NydChjb25uZWN0b3IpOwo+ IC0Jc3RydWN0IGludGVsX2VuY29kZXIgKmludGVsX2VuY29kZXIgPSAmY3J0LT5iYXNlOwo+IC0J ZW51bSBpbnRlbF9kaXNwbGF5X3Bvd2VyX2RvbWFpbiBwb3dlcl9kb21haW47Cj4gLQlpbnQgcmV0 Owo+IC0Jc3RydWN0IGkyY19hZGFwdGVyICppMmM7Cj4gLQo+IC0JcG93ZXJfZG9tYWluID0gaW50 ZWxfZGlzcGxheV9wb3J0X3Bvd2VyX2RvbWFpbihpbnRlbF9lbmNvZGVyKTsKPiAtCWludGVsX2Rp c3BsYXlfcG93ZXJfZ2V0KGRldl9wcml2LCBwb3dlcl9kb21haW4pOwo+IC0KPiAtCWkyYyA9IGlu dGVsX2dtYnVzX2dldF9hZGFwdGVyKGRldl9wcml2LCBkZXZfcHJpdi0+dmJ0LmNydF9kZGNfcGlu KTsKPiAtCXJldCA9IGludGVsX2NydF9kZGNfZ2V0X21vZGVzKGNvbm5lY3RvciwgaTJjKTsKPiAt CWlmIChyZXQgfHwgIUlTX0c0WChkZXYpKQo+IC0JCWdvdG8gb3V0Owo+IC0KPiAtCS8qIFRyeSB0 byBwcm9iZSBkaWdpdGFsIHBvcnQgZm9yIG91dHB1dCBpbiBEVkktSSAtPiBWR0EgbW9kZS4gKi8K PiAtCWkyYyA9IGludGVsX2dtYnVzX2dldF9hZGFwdGVyKGRldl9wcml2LCBHTUJVU19QSU5fRFBC KTsKPiAtCXJldCA9IGludGVsX2NydF9kZGNfZ2V0X21vZGVzKGNvbm5lY3RvciwgaTJjKTsKPiAr CXN0cnVjdCBlZGlkICplZGlkOwo+IMKgCj4gLW91dDoKPiAtCWludGVsX2Rpc3BsYXlfcG93ZXJf cHV0KGRldl9wcml2LCBwb3dlcl9kb21haW4pOwo+ICsJZWRpZCA9IHRvX2ludGVsX2Nvbm5lY3Rv cihjb25uZWN0b3IpLT5kZXRlY3RfZWRpZDsKPiArCWlmICghZWRpZCkKPiArCQlyZXR1cm4gMDsK PiDCoAo+IC0JcmV0dXJuIHJldDsKPiArCXJldHVybiBpbnRlbF9jb25uZWN0b3JfdXBkYXRlX21v ZGVzKGNvbm5lY3RvciwgZWRpZCk7Cj4gwqB9Cj4gwqAKPiDCoHN0YXRpYyBpbnQgaW50ZWxfY3J0 X3NldF9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLApfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBs aXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK