From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 2/4] drm/i915: Respect DP++ adaptor TMDS clock limit Date: Wed, 24 Feb 2016 19:09:44 +0200 Message-ID: <20160224170944.GE15993@intel.com> References: <1456245988-19442-1-git-send-email-ville.syrjala@linux.intel.com> <1456245988-19442-3-git-send-email-ville.syrjala@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <1456245988-19442-3-git-send-email-ville.syrjala@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: dri-devel@lists.freedesktop.org Cc: intel-gfx@lists.freedesktop.org, Tore Anderson List-Id: intel-gfx@lists.freedesktop.org T24gVHVlLCBGZWIgMjMsIDIwMTYgYXQgMDY6NDY6MjZQTSArMDIwMCwgdmlsbGUuc3lyamFsYUBs aW51eC5pbnRlbC5jb20gd3JvdGU6Cj4gRnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJq YWxhQGxpbnV4LmludGVsLmNvbT4KPiAKPiBUcnkgdG8gZGV0ZWN0IHRoZSBtYXggVE1EUyBjbG9j ayBsaW1pdCBmb3IgdGhlIERQKysgYWRhcHRvciAoaWYgYW55KQo+IGFuZCB0YWtlIGl0IGludG8g YWNjb3VudCB3aGVuIGNoZWNraW5nIHRoZSBwb3J0IGNsb2NrLgo+IAo+IE5vdGUgdGhhdCBhcyB3 aXRoIHRoZSBzaW5rIChIRE1JIHZzLiBEVkkpIFRNRFMgY2xvY2sgbGltaXQgd2UnbGwgaWdub3Jl Cj4gdGhlIGFkYXB0b3IgVE1EUyBjbG9jayBsaW1pdCBpbiB0aGUgbW9kZXNldCBwYXRoLCBpbiBj YXNlIHVzZXJzIGFyZQo+IGFscmVhZHkgIm92ZXJjbG9ja2luZyIgdGhlaXIgVE1EUyBsaW5rcy4g T25lIHN1YnRsZSBjaGFuZ2UgaGVyZSBpcyB0aGF0Cj4gd2UnbGwgaGF2ZSB0byByZXNwZWN0IHRo ZSBhZGFwdG9yIFRNRFMgY2xvY2sgbGltaXQgd2hlbiB3ZSBkZWNpZGUgd2hldGhlcgo+IHRvIGRv IDEyYnBjIG9yIDhicGMsIG90aGVyd2lzZSB3ZSBtaWdodCBlbmQgdXAgcGlja2luZyAxMmJwYyBh bmQKPiBhY2NpZGVudGFsbHkgZHJpdmluZyB0aGUgVE1EUyBsaW5rIG91dCBvZiBzcGVjIGV2ZW4g d2hlbiB0aGUgdXNlciBjaG9zZQo+IGEgbW9kZSB0aGF0IGZpdHMgd2lodGluZyB0aGUgbGltaXRz IGF0IDhicGMuIFRoaXMgbWVhbnMgeW91IGNhbid0Cj4gIm92ZXJjbG9jayIgeW91ciBEUCsrIGRv bmdsZSBhdCAxMmJwYyBhbnltb3JlLCBidXQgeW91IGNhbiBjb250aW51ZSB0bwo+IGRvIHNvIGF0 IDhicGMuCj4gCj4gTm90ZSB0aGF0IGZvciBzaW1wbGljaXR5IHdlJ2xsIHVzZSB0aGUgSTJDIGFj Y2VzcyBtZXRob2QgZm9yIGFsbCBkdWFsCj4gbW9kZSBhZGFwdG9ycyBpbmNsdWRpbmcgdHlwZSAy LiBPdGhlcndpc2Ugd2UnZCBoYXZlIHRvIHN0YXJ0IG1peGluZwo+IERQIEFVWCBhbmQgSERNSSB0 b2dldGhlci4gSW4gdGhlIGZ1dHVyZSB3ZSBtYXkgbmVlZCB0byBkbyB0aGF0IGlmIHdlCj4gY29t ZSBhY3Jvc3MgYW55IGJvYXJkIGRlc2lnbnMgdGhhdCBkb24ndCBob29rIHVwIHRoZSBEREMgcGlu cyB0byB0aGUKPiBEUCsrIGNvbm5lY3RvcnMuIFN1Y2ggYm9hcmRzIHdvdWxkIG9idmlvdXNseSBv bmx5IHdvcmsgd2l0aCB0eXBlIDIKPiBkdWFsIG1vZGUgYWRhcHRvcnMsIGFuZCBub3QgdHlwZSAx Lgo+IAo+IFNpZ25lZC1vZmYtYnk6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51 eC5pbnRlbC5jb20+CgpSZXBvcnRlZC1ieTogVG9yZSBBbmRlcnNvbiA8dG9yZUBmdWQubm8+ClRl c3RlZC1ieTogVG9yZSBBbmRlcnNvbiA8dG9yZUBmdWQubm8+CkZpeGVzOiA3YTBiYWE2MjM0NDYg KCJSZXZlcnQgImRybS9pOTE1OiBEaXNhYmxlIDEyYnBjIGhkbWkgZm9yIG5vdyIiKQpSZWZlcmVu Y2VzOiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9hcmNoaXZlcy9pbnRlbC1nZngvMjAx Ni1GZWJydWFyeS8wODgzMzYuaHRtbAoKPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfZHJ2LmggIHwgIDMgKysKPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRtaS5jIHwg NjUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tCj4gIDIgZmlsZXMgY2hh bmdlZCwgNjAgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kcnYuaAo+IGluZGV4IDQ4NTIwNDljOWFiMy4uOTQ0ZWFjYmZiNmE5IDEwMDY0NAo+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiBAQCAtNzA0LDYgKzcwNCw5IEBAIHN0cnVjdCBjeHNyX2xh dGVuY3kgewo+ICBzdHJ1Y3QgaW50ZWxfaGRtaSB7Cj4gIAlpOTE1X3JlZ190IGhkbWlfcmVnOwo+ ICAJaW50IGRkY19idXM7Cj4gKwlzdHJ1Y3Qgewo+ICsJCWludCBtYXhfdG1kc19jbG9jazsKPiAr CX0gZHBfZHVhbF9tb2RlOwo+ICAJYm9vbCBsaW1pdGVkX2NvbG9yX3JhbmdlOwo+ICAJYm9vbCBj b2xvcl9yYW5nZV9hdXRvOwo+ICAJYm9vbCBoYXNfaGRtaV9zaW5rOwo+IGRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9oZG1pLmMKPiBpbmRleCA4MGI0NGMwNTQwODcuLjFlOGNmZGIxOGRjNyAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMKPiArKysgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMKPiBAQCAtMzQsNiArMzQsNyBAQAo+ICAjaW5jbHVkZSA8 ZHJtL2RybV9hdG9taWNfaGVscGVyLmg+Cj4gICNpbmNsdWRlIDxkcm0vZHJtX2NydGMuaD4KPiAg I2luY2x1ZGUgPGRybS9kcm1fZWRpZC5oPgo+ICsjaW5jbHVkZSA8ZHJtL2RybV9kcF9kdWFsX21v ZGVfaGVscGVyLmg+Cj4gICNpbmNsdWRlICJpbnRlbF9kcnYuaCIKPiAgI2luY2x1ZGUgPGRybS9p OTE1X2RybS5oPgo+ICAjaW5jbHVkZSAiaTkxNV9kcnYuaCIKPiBAQCAtMTE2OCwyNyArMTE2OSw0 MiBAQCBzdGF0aWMgdm9pZCBwY2hfcG9zdF9kaXNhYmxlX2hkbWkoc3RydWN0IGludGVsX2VuY29k ZXIgKmVuY29kZXIpCj4gIAlpbnRlbF9kaXNhYmxlX2hkbWkoZW5jb2Rlcik7Cj4gIH0KPiAgCj4g LXN0YXRpYyBpbnQgaGRtaV9wb3J0X2Nsb2NrX2xpbWl0KHN0cnVjdCBpbnRlbF9oZG1pICpoZG1p LCBib29sIHJlc3BlY3RfZHZpX2xpbWl0KQo+ICtzdGF0aWMgaW50IGludGVsX2hkbWlfc291cmNl X21heF90bWRzX2Nsb2NrKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKPiAgewo+ IC0Jc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGludGVsX2hkbWlfdG9fZGV2KGhkbWkpOwo+IC0K PiAtCWlmICgocmVzcGVjdF9kdmlfbGltaXQgJiYgIWhkbWktPmhhc19oZG1pX3NpbmspIHx8IElT X0c0WChkZXYpKQo+ICsJaWYgKElTX0c0WChkZXZfcHJpdikpCj4gIAkJcmV0dXJuIDE2NTAwMDsK PiAtCWVsc2UgaWYgKElTX0hBU1dFTEwoZGV2KSB8fCBJTlRFTF9JTkZPKGRldiktPmdlbiA+PSA4 KQo+ICsJZWxzZSBpZiAoSVNfSEFTV0VMTChkZXZfcHJpdikgfHwgSU5URUxfSU5GTyhkZXZfcHJp diktPmdlbiA+PSA4KQo+ICAJCXJldHVybiAzMDAwMDA7Cj4gIAllbHNlCj4gIAkJcmV0dXJuIDIy NTAwMDsKPiAgfQo+ICAKPiArc3RhdGljIGludCBoZG1pX3BvcnRfY2xvY2tfbGltaXQoc3RydWN0 IGludGVsX2hkbWkgKmhkbWksCj4gKwkJCQkgYm9vbCByZXNwZWN0X2Rvd25zdHJlYW1fbGltaXRz KQo+ICt7Cj4gKwlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gaW50ZWxfaGRtaV90b19kZXYoaGRt aSk7Cj4gKwlpbnQgbWF4X3RtZHNfY2xvY2sgPSBpbnRlbF9oZG1pX3NvdXJjZV9tYXhfdG1kc19j bG9jayh0b19pOTE1KGRldikpOwo+ICsKPiArCWlmIChyZXNwZWN0X2Rvd25zdHJlYW1fbGltaXRz KSB7Cj4gKwkJaWYgKGhkbWktPmRwX2R1YWxfbW9kZS5tYXhfdG1kc19jbG9jaykKPiArCQkJbWF4 X3RtZHNfY2xvY2sgPSBtaW4obWF4X3RtZHNfY2xvY2ssCj4gKwkJCQkJICAgICBoZG1pLT5kcF9k dWFsX21vZGUubWF4X3RtZHNfY2xvY2spOwo+ICsJCWlmICghaGRtaS0+aGFzX2hkbWlfc2luaykK PiArCQkJbWF4X3RtZHNfY2xvY2sgPSBtaW4obWF4X3RtZHNfY2xvY2ssIDE2NTAwMCk7Cj4gKwl9 Cj4gKwo+ICsJcmV0dXJuIG1heF90bWRzX2Nsb2NrOwo+ICt9Cj4gKwo+ICBzdGF0aWMgZW51bSBk cm1fbW9kZV9zdGF0dXMKPiAgaGRtaV9wb3J0X2Nsb2NrX3ZhbGlkKHN0cnVjdCBpbnRlbF9oZG1p ICpoZG1pLAo+IC0JCSAgICAgIGludCBjbG9jaywgYm9vbCByZXNwZWN0X2R2aV9saW1pdCkKPiAr CQkgICAgICBpbnQgY2xvY2ssIGJvb2wgcmVzcGVjdF9kb3duc3RyZWFtX2xpbWl0cykKPiAgewo+ ICAJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGludGVsX2hkbWlfdG9fZGV2KGhkbWkpOwo+ICAK PiAgCWlmIChjbG9jayA8IDI1MDAwKQo+ICAJCXJldHVybiBNT0RFX0NMT0NLX0xPVzsKPiAtCWlm IChjbG9jayA+IGhkbWlfcG9ydF9jbG9ja19saW1pdChoZG1pLCByZXNwZWN0X2R2aV9saW1pdCkp Cj4gKwlpZiAoY2xvY2sgPiBoZG1pX3BvcnRfY2xvY2tfbGltaXQoaGRtaSwgcmVzcGVjdF9kb3du c3RyZWFtX2xpbWl0cykpCj4gIAkJcmV0dXJuIE1PREVfQ0xPQ0tfSElHSDsKPiAgCj4gIAkvKiBC WFQgRFBMTCBjYW4ndCBnZW5lcmF0ZSAyMjMtMjQwIE1IeiAqLwo+IEBAIC0xMzEyLDcgKzEzMjgs NyBAQCBib29sIGludGVsX2hkbWlfY29tcHV0ZV9jb25maWcoc3RydWN0IGludGVsX2VuY29kZXIg KmVuY29kZXIsCj4gIAkgKiB3aXRoaW4gbGltaXRzLgo+ICAJICovCj4gIAlpZiAocGlwZV9jb25m aWctPnBpcGVfYnBwID4gOCozICYmIHBpcGVfY29uZmlnLT5oYXNfaGRtaV9zaW5rICYmCj4gLQkg ICAgaGRtaV9wb3J0X2Nsb2NrX3ZhbGlkKGludGVsX2hkbWksIGNsb2NrXzEyYnBjLCBmYWxzZSkg PT0gTU9ERV9PSyAmJgo+ICsJICAgIGhkbWlfcG9ydF9jbG9ja192YWxpZChpbnRlbF9oZG1pLCBj bG9ja18xMmJwYywgdHJ1ZSkgPT0gTU9ERV9PSyAmJgo+ICAJICAgIGhkbWlfMTJicGNfcG9zc2li bGUocGlwZV9jb25maWcpKSB7Cj4gIAkJRFJNX0RFQlVHX0tNUygicGlja2luZyBicGMgdG8gMTIg Zm9yIEhETUkgb3V0cHV0XG4iKTsKPiAgCQlkZXNpcmVkX2JwcCA9IDEyKjM7Cj4gQEAgLTEzNTIs MTAgKzEzNjgsNDEgQEAgaW50ZWxfaGRtaV91bnNldF9lZGlkKHN0cnVjdCBkcm1fY29ubmVjdG9y ICpjb25uZWN0b3IpCj4gIAlpbnRlbF9oZG1pLT5oYXNfYXVkaW8gPSBmYWxzZTsKPiAgCWludGVs X2hkbWktPnJnYl9xdWFudF9yYW5nZV9zZWxlY3RhYmxlID0gZmFsc2U7Cj4gIAo+ICsJaW50ZWxf aGRtaS0+ZHBfZHVhbF9tb2RlLm1heF90bWRzX2Nsb2NrID0gMDsKPiArCj4gIAlrZnJlZSh0b19p bnRlbF9jb25uZWN0b3IoY29ubmVjdG9yKS0+ZGV0ZWN0X2VkaWQpOwo+ICAJdG9faW50ZWxfY29u bmVjdG9yKGNvbm5lY3RvciktPmRldGVjdF9lZGlkID0gTlVMTDsKPiAgfQo+ICAKPiArc3RhdGlj IHZvaWQKPiAraW50ZWxfaGRtaV9kcF9kdWFsX21vZGVfZGV0ZWN0KHN0cnVjdCBkcm1fY29ubmVj dG9yICpjb25uZWN0b3IpCj4gK3sKPiArCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp diA9IHRvX2k5MTUoY29ubmVjdG9yLT5kZXYpOwo+ICsJc3RydWN0IGludGVsX2hkbWkgKmhkbWkg PSBpbnRlbF9hdHRhY2hlZF9oZG1pKGNvbm5lY3Rvcik7Cj4gKwlzdHJ1Y3QgaTJjX2FkYXB0ZXIg KmFkYXB0ZXIgPQo+ICsJCWludGVsX2dtYnVzX2dldF9hZGFwdGVyKGRldl9wcml2LCBoZG1pLT5k ZGNfYnVzKTsKPiArCWVudW0gZHJtX2RwX2R1YWxfbW9kZV90eXBlIHR5cGUgPSBkcm1fZHBfZHVh bF9tb2RlX2RldGVjdChhZGFwdGVyKTsKPiArCj4gKwlpZiAodHlwZSA9PSBEUk1fRFBfRFVBTF9N T0RFX05PTkUpCj4gKwkJcmV0dXJuOwo+ICsKPiArCS8qCj4gKwkgKiBUeXBlIDEgYWRhcHRvcnMg Y2FuIGJlIGJyb2tlbiB1bmZvcnR1bmF0ZWx5LCBzbyBsZXQncwo+ICsJICogbm90IHRydXN0IGFu eXRoaW5nIHRoZXkgc2F5IGJleW9uZCB0aGUgdHlwZSBpZGVudGlmaWNhdGlvbi4KPiArCSAqLwo+ ICsJaWYgKHR5cGUgPT0gRFJNX0RQX0RVQUxfTU9ERV9UWVBFMl9EVkkgfHwKPiArCSAgICB0eXBl ID09IERSTV9EUF9EVUFMX01PREVfVFlQRTJfSERNSSkgewo+ICsJCWhkbWktPmRwX2R1YWxfbW9k ZS5tYXhfdG1kc19jbG9jayA9Cj4gKwkJCWRybV9kcF9kdWFsX21vZGVfbWF4X3RtZHNfY2xvY2so YWRhcHRlcik7Cj4gKwl9IGVsc2Ugewo+ICsJCWhkbWktPmRwX2R1YWxfbW9kZS5tYXhfdG1kc19j bG9jayA9IDE2NTAwMDsKPiArCX0KPiArCj4gKwlEUk1fREVCVUdfS01TKCJEUCBkdWFsIG1vZGUg YWRhcHRvciAoJXMpIGRldGVjdGVkIChtYXggVE1EUyBjbG9jazogJWQga0h6KVxuIiwKPiArCQkg ICAgICBkcm1fZHBfZ2V0X2R1YWxfbW9kZV90eXBlX25hbWUodHlwZSksCj4gKwkJICAgICAgaGRt aS0+ZHBfZHVhbF9tb2RlLm1heF90bWRzX2Nsb2NrKTsKPiArfQo+ICsKPiAgc3RhdGljIGJvb2wK PiAgaW50ZWxfaGRtaV9zZXRfZWRpZChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBi b29sIGZvcmNlKQo+ICB7Cj4gQEAgLTEzNzEsNiArMTQxOCw4IEBAIGludGVsX2hkbWlfc2V0X2Vk aWQoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwgYm9vbCBmb3JjZSkKPiAgCQkJCSAg ICBpbnRlbF9nbWJ1c19nZXRfYWRhcHRlcihkZXZfcHJpdiwKPiAgCQkJCSAgICBpbnRlbF9oZG1p LT5kZGNfYnVzKSk7Cj4gIAo+ICsJCWludGVsX2hkbWlfZHBfZHVhbF9tb2RlX2RldGVjdChjb25u ZWN0b3IpOwo+ICsKPiAgCQlpbnRlbF9kaXNwbGF5X3Bvd2VyX3B1dChkZXZfcHJpdiwgUE9XRVJf RE9NQUlOX0dNQlVTKTsKPiAgCX0KPiAgCj4gLS0gCj4gMi40LjEwCj4gCj4gX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiBJbnRlbC1nZnggbWFpbGluZyBs aXN0Cj4gSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+IGh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4CgotLSAKVmlsbGUgU3lyasOk bMOkCkludGVsIE9UQwpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5v cmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1n ZngK