From mboxrd@z Thu Jan 1 00:00:00 1970 From: Manasi Navare Subject: Re: [PATCH v3 2/5] drm/i915: Add support for DP link training compliance Date: Fri, 9 Dec 2016 16:48:05 -0800 Message-ID: <20161210004805.GA16472@intel.com> References: <1481329980-16423-1-git-send-email-manasi.d.navare@intel.com> <1481329980-16423-3-git-send-email-manasi.d.navare@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTPS id B54E06EB37 for ; Sat, 10 Dec 2016 00:45:08 +0000 (UTC) Content-Disposition: inline In-Reply-To: <1481329980-16423-3-git-send-email-manasi.d.navare@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org Cc: Daniel Vetter List-Id: intel-gfx@lists.freedesktop.org SmFuaSwKCkkgaGF2ZSBhZGRyZXNzZWQgZmV3IGNvbW1lbnRzIHlvdSBoYWQgb24gdGhlIHByZXZp b3VzIHNldCBvZiBwYXRjaGVzCmFib3V0IHZhbGlkYXRpbmcgdGhlIHRlc3QgbGFuZSBjb3VudCBz byBJIGFtIGNoZWNraW5nIGl0IGFnYWluc3QKbWluIGFuZCBtYXggbGFuZSBjb3VudCB2YWx1ZXMu IEFsc28gbWFkZSB0aGUgZGVidWcgcHJpbnRzCmxlc3MgdmVyYm9zZS4KQ291bGQgeW91IHBsZWFz ZSByZXZpZXcgdGhpcyBwYXRjaD8KClJlZ2FyZHMKTWFuYXNpCgpPbiBGcmksIERlYyAwOSwgMjAx NiBhdCAwNDozMjo1N1BNIC0wODAwLCBNYW5hc2kgTmF2YXJlIHdyb3RlOgo+IFRoaXMgcGF0Y2gg YWRkcyBzdXBwb3J0IHRvIGhhbmRsZSBhdXRvbWF0ZWQgRFAgY29tcGxpYW5jZQo+IGxpbmsgdHJh aW5pbmcgdGVzdCByZXF1ZXN0cy4gVGhpcyBwYXRjaCBoYXMgYmVlbiB0ZXN0ZWQgd2l0aAo+IFVu aWdyYWYgRFBSLTEyMCBEUCBDb21wbGlhbmNlIGRldmljZSBmb3IgdGVzdGluZyBMaW5rCj4gVHJh aW5pbmcgQ29tcGxpYW5jZS4KPiBBZnRlciB3ZSBnZXQgYSBzaG9ydCBwdWxzZSBDb21wbGlhbmNl IHRlc3QgcmVxdWVzdCwgdGVzdAo+IHJlcXVlc3QgdmFsdWVzIGFyZSByZWFkIGFuZCBob3RwbHVn IHVldmVudCBpcyBzZW50IGluIG9yZGVyCj4gdG8gdHJpZ2dlciBhbm90aGVyIG1vZGVzZXQgZHVy aW5nIHdoaWNoIHRoZSBwaXBlIGlzIGNvbmZpZ3VyZWQKPiBhbmQgbGluayBpcyByZXRyYWluZWQg YW5kIGVuYWJsZWQgZm9yIGxpbmsgcGFyYW1ldGVycyByZXF1ZXN0ZWQKPiBieSB0aGUgdGVzdC4K PiAKPiB2MjoKPiAqIFZhbGlkYXRlIHRoZSB0ZXN0IGxhbmUgY291bnQgYmVmb3JlIHVzaW5nIGl0 IGluCj4gaW50ZWxfZHBfY29tcHV0ZV9jb25maWcgKEphbmkgTmlrdWxhKQo+IFNpZ25lZC1vZmYt Ynk6IE1hbmFzaSBOYXZhcmUgPG1hbmFzaS5kLm5hdmFyZUBpbnRlbC5jb20+Cj4gQ2M6IEphbmkg TmlrdWxhIDxqYW5pLm5pa3VsYUBsaW51eC5pbnRlbC5jb20+Cj4gQ2M6IERhbmllbCBWZXR0ZXIg PGRhbmllbC52ZXR0ZXJAaW50ZWwuY29tPgo+IENjOiBWaWxsZSBTeXJqYWxhIDx2aWxsZS5zeXJq YWxhQGxpbnV4LmludGVsLmNvbT4KPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZHAuYyAgfCA2MiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tCj4gIGRy aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIHwgIDIgKysKPiAgMiBmaWxlcyBjaGFuZ2Vk LCA2MCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZHAuYwo+IGluZGV4IGMxZTEwN2MuLmJiZjhjZGMgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZHAuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rw LmMKPiBAQCAtMjc4LDYgKzI3OCwyMSBAQCBzdGF0aWMgaW50IGludGVsX2RwX2NvbW1vbl9yYXRl cyhzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwLAo+ICAJCQkgICAgICAgY29tbW9uX3JhdGVzKTsK PiAgfQo+ICAKPiArc3RhdGljIGludCBpbnRlbF9kcF9saW5rX3JhdGVfaW5kZXgoc3RydWN0IGlu dGVsX2RwICppbnRlbF9kcCwKPiArCQkJCSAgICBpbnQgKmNvbW1vbl9yYXRlcywgaW50IGxpbmtf cmF0ZSkKPiArewo+ICsJaW50IGNvbW1vbl9sZW47Cj4gKwlpbnQgaW5kZXg7Cj4gKwo+ICsJY29t bW9uX2xlbiA9IGludGVsX2RwX2NvbW1vbl9yYXRlcyhpbnRlbF9kcCwgY29tbW9uX3JhdGVzKTsK PiArCWZvciAoaW5kZXggPSAwOyBpbmRleCA8IGNvbW1vbl9sZW47IGluZGV4KyspIHsKPiArCQlp ZiAobGlua19yYXRlID09IGNvbW1vbl9yYXRlc1tjb21tb25fbGVuIC0gaW5kZXggLSAxXSkKPiAr CQkJcmV0dXJuIGNvbW1vbl9sZW4gLSBpbmRleCAtIDE7Cj4gKwl9Cj4gKwo+ICsJcmV0dXJuIC0x Owo+ICt9Cj4gKwo+ICBzdGF0aWMgZW51bSBkcm1fbW9kZV9zdGF0dXMKPiAgaW50ZWxfZHBfbW9k ZV92YWxpZChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+ICAJCSAgICBzdHJ1Y3Qg ZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSkKPiBAQCAtMTU0NCw2ICsxNTU5LDcgQEAgc3RhdGljIGlu dCBpbnRlbF9kcF9jb21wdXRlX2JwcChzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwLAo+ICAJLyog Q29udmVuaWVudGx5LCB0aGUgbGluayBCVyBjb25zdGFudHMgYmVjb21lIGluZGljZXMgd2l0aCBh IHNoaWZ0Li4uKi8KPiAgCWludCBtaW5fY2xvY2sgPSAwOwo+ICAJaW50IG1heF9jbG9jazsKPiAr CWludCBsaW5rX3JhdGVfaW5kZXg7Cj4gIAlpbnQgYnBwLCBtb2RlX3JhdGU7Cj4gIAlpbnQgbGlu a19hdmFpbCwgbGlua19jbG9jazsKPiAgCWludCBjb21tb25fcmF0ZXNbRFBfTUFYX1NVUFBPUlRF RF9SQVRFU10gPSB7fTsKPiBAQCAtMTU4NSw2ICsxNjAxLDE3IEBAIHN0YXRpYyBpbnQgaW50ZWxf ZHBfY29tcHV0ZV9icHAoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCwKPiAgCWlmIChhZGp1c3Rl ZF9tb2RlLT5mbGFncyAmIERSTV9NT0RFX0ZMQUdfREJMQ0xLKQo+ICAJCXJldHVybiBmYWxzZTsK PiAgCj4gKwkvKiBVc2UgdmFsdWVzIHJlcXVlc3RlZCBieSBDb21wbGlhbmNlIFRlc3QgUmVxdWVz dCAqLwo+ICsJaWYgKGludGVsX2RwLT5jb21wbGlhbmNlLnRlc3RfdHlwZSA9PSBEUF9URVNUX0xJ TktfVFJBSU5JTkcpIHsKPiArCQlsaW5rX3JhdGVfaW5kZXggPSBpbnRlbF9kcF9saW5rX3JhdGVf aW5kZXgoaW50ZWxfZHAsCj4gKwkJCQkJCQkgICBjb21tb25fcmF0ZXMsCj4gKwkJCQkJCQkgICBk cm1fZHBfYndfY29kZV90b19saW5rX3JhdGUoaW50ZWxfZHAtPmNvbXBsaWFuY2UudGVzdF9saW5r X3JhdGUpKTsKPiArCQlpZiAobGlua19yYXRlX2luZGV4ID49IDApCj4gKwkJCW1pbl9jbG9jayA9 IG1heF9jbG9jayA9IGxpbmtfcmF0ZV9pbmRleDsKPiArCQlpZiAobWluX2xhbmVfY291bnQgPD0g aW50ZWxfZHAtPmNvbXBsaWFuY2UudGVzdF9sYW5lX2NvdW50Cj4gKwkJICAgICYmIGludGVsX2Rw LT5jb21wbGlhbmNlLnRlc3RfbGFuZV9jb3VudCA+PSBtYXhfbGFuZV9jb3VudCkKPiArCQkJbWlu X2xhbmVfY291bnQgPSBtYXhfbGFuZV9jb3VudCA9IGludGVsX2RwLT5jb21wbGlhbmNlLnRlc3Rf bGFuZV9jb3VudDsKPiArCX0KPiAgCURSTV9ERUJVR19LTVMoIkRQIGxpbmsgY29tcHV0YXRpb24g d2l0aCBtYXggbGFuZSBjb3VudCAlaSAiCj4gIAkJICAgICAgIm1heCBidyAlZCBwaXhlbCBjbG9j ayAlaUtIelxuIiwKPiAgCQkgICAgICBtYXhfbGFuZV9jb3VudCwgY29tbW9uX3JhdGVzW21heF9j bG9ja10sCj4gQEAgLTE2MzIsNiArMTY1OSw3IEBAIHN0YXRpYyBpbnQgaW50ZWxfZHBfY29tcHV0 ZV9icHAoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCwKPiAgCQkJCX0KPiAgCQkJfQo+ICAJCX0K PiArCj4gIAl9Cj4gIAo+ICAJcmV0dXJuIGZhbHNlOwo+IEBAIC0zODA0LDYgKzM4MzIsMjcgQEAg aW50IGludGVsX2RwX3NpbmtfY3JjKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAsIHU4ICpjcmMp Cj4gIHN0YXRpYyB1aW50OF90IGludGVsX2RwX2F1dG90ZXN0X2xpbmtfdHJhaW5pbmcoc3RydWN0 IGludGVsX2RwICppbnRlbF9kcCkKPiAgewo+ICAJdWludDhfdCB0ZXN0X3Jlc3VsdCA9IERQX1RF U1RfQUNLOwo+ICsJaW50IHN0YXR1cyA9IDA7Cj4gKwkvKiAoRFAgQ1RTIDEuMikKPiArCSAqIDQu My4xLjExCj4gKwkgKi8KPiArCS8qIFJlYWQgdGhlIFRFU1RfTEFORV9DT1VOVCBhbmQgVEVTVF9M SU5LX1JUQUUgZmllbGRzIChEUCBDVFMgMy4xLjQpICovCj4gKwlzdGF0dXMgPSBkcm1fZHBfZHBj ZF9yZWFkYigmaW50ZWxfZHAtPmF1eCwgRFBfVEVTVF9MQU5FX0NPVU5ULAo+ICsJCQkJICAmaW50 ZWxfZHAtPmNvbXBsaWFuY2UudGVzdF9sYW5lX2NvdW50KTsKPiArCj4gKwlpZiAoc3RhdHVzIDw9 IDApIHsKPiArCQlEUk1fREVCVUdfS01TKCJMYW5lIGNvdW50IHJlYWQgZmFpbGVkXG4iKTsKPiAr CQlyZXR1cm4gMDsKPiArCX0KPiArCWludGVsX2RwLT5jb21wbGlhbmNlLnRlc3RfbGFuZV9jb3Vu dCAmPSBEUF9NQVhfTEFORV9DT1VOVF9NQVNLOwo+ICsKPiArCXN0YXR1cyA9IGRybV9kcF9kcGNk X3JlYWRiKCZpbnRlbF9kcC0+YXV4LCBEUF9URVNUX0xJTktfUkFURSwKPiArCQkJCSAgICZpbnRl bF9kcC0+Y29tcGxpYW5jZS50ZXN0X2xpbmtfcmF0ZSk7Cj4gKwlpZiAoc3RhdHVzIDw9IDApIHsK PiArCQlEUk1fREVCVUdfS01TKCJMaW5rIFJhdGUgcmVhZCBmYWlsZWRcbiIpOwo+ICsJCXJldHVy biAwOwo+ICsJfQo+ICsKPiAgCXJldHVybiB0ZXN0X3Jlc3VsdDsKPiAgfQo+ICAKPiBAQCAtNDAx OCw5ICs0MDY3LDggQEAgc3RhdGljIHZvaWQgaW50ZWxfZHBfaGFuZGxlX3Rlc3RfcmVxdWVzdChz dHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQo+ICAJaWYgKFdBUk5fT05fT05DRSghaW50ZWxfZHAt PmxhbmVfY291bnQpKQo+ICAJCXJldHVybjsKPiAgCj4gLQkvKiBpZiBsaW5rIHRyYWluaW5nIGlz IHJlcXVlc3RlZCB3ZSBzaG91bGQgcGVyZm9ybSBpdCBhbHdheXMgKi8KPiAtCWlmICgoaW50ZWxf ZHAtPmNvbXBsaWFuY2UudGVzdF90eXBlID09IERQX1RFU1RfTElOS19UUkFJTklORykgfHwKPiAt CSAgICAoIWRybV9kcF9jaGFubmVsX2VxX29rKGxpbmtfc3RhdHVzLCBpbnRlbF9kcC0+bGFuZV9j b3VudCkpKSB7Cj4gKwkvKiBSZXRyYWluIGlmIENoYW5uZWwgRVEgb3IgQ1Igbm90IG9rICovCj4g KwlpZiAoIWRybV9kcF9jaGFubmVsX2VxX29rKGxpbmtfc3RhdHVzLCBpbnRlbF9kcC0+bGFuZV9j b3VudCkpIHsKPiAgCQlEUk1fREVCVUdfS01TKCIlczogY2hhbm5lbCBFUSBub3Qgb2ssIHJldHJh aW5pbmdcbiIsCj4gIAkJCSAgICAgIGludGVsX2VuY29kZXItPmJhc2UubmFtZSk7Cj4gIAo+IEBA IC00MDQ1LDYgKzQwOTMsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9kcF9oYW5kbGVfdGVzdF9yZXF1 ZXN0KHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHApCj4gIGludGVsX2RwX3Nob3J0X3B1bHNlKHN0 cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHApCj4gIHsKPiAgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYg PSBpbnRlbF9kcF90b19kZXYoaW50ZWxfZHApOwo+ICsJc3RydWN0IGludGVsX2VuY29kZXIgKmlu dGVsX2VuY29kZXIgPSAmZHBfdG9fZGlnX3BvcnQoaW50ZWxfZHApLT5iYXNlOwo+ICAJdTggc2lu a19pcnFfdmVjdG9yID0gMDsKPiAgCXU4IG9sZF9zaW5rX2NvdW50ID0gaW50ZWxfZHAtPnNpbmtf Y291bnQ7Cj4gIAlib29sIHJldDsKPiBAQCAtNDA3OCw3ICs0MTI3LDcgQEAgc3RhdGljIHZvaWQg aW50ZWxfZHBfaGFuZGxlX3Rlc3RfcmVxdWVzdChzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQo+ ICAJCQkJICAgc2lua19pcnFfdmVjdG9yKTsKPiAgCj4gIAkJaWYgKHNpbmtfaXJxX3ZlY3RvciAm IERQX0FVVE9NQVRFRF9URVNUX1JFUVVFU1QpCj4gLQkJCURSTV9ERUJVR19EUklWRVIoIlRlc3Qg cmVxdWVzdCBpbiBzaG9ydCBwdWxzZSBub3QgaGFuZGxlZFxuIik7Cj4gKwkJCWludGVsX2RwX2hh bmRsZV90ZXN0X3JlcXVlc3QoaW50ZWxfZHApOwo+ICAJCWlmIChzaW5rX2lycV92ZWN0b3IgJiAo RFBfQ1BfSVJRIHwgRFBfU0lOS19TUEVDSUZJQ19JUlEpKQo+ICAJCQlEUk1fREVCVUdfRFJJVkVS KCJDUCBvciBzaW5rIHNwZWNpZmljIGlycSB1bmhhbmRsZWRcbiIpOwo+ICAJfQo+IEBAIC00MDg2 LDYgKzQxMzUsMTEgQEAgc3RhdGljIHZvaWQgaW50ZWxfZHBfaGFuZGxlX3Rlc3RfcmVxdWVzdChz dHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQo+ICAJZHJtX21vZGVzZXRfbG9jaygmZGV2LT5tb2Rl X2NvbmZpZy5jb25uZWN0aW9uX211dGV4LCBOVUxMKTsKPiAgCWludGVsX2RwX2NoZWNrX2xpbmtf c3RhdHVzKGludGVsX2RwKTsKPiAgCWRybV9tb2Rlc2V0X3VubG9jaygmZGV2LT5tb2RlX2NvbmZp Zy5jb25uZWN0aW9uX211dGV4KTsKPiArCWlmIChpbnRlbF9kcC0+Y29tcGxpYW5jZS50ZXN0X3R5 cGUgPT0gRFBfVEVTVF9MSU5LX1RSQUlOSU5HKSB7Cj4gKwkJRFJNX0RFQlVHX0tNUygiTGluayBU cmFpbmluZyBDb21wbGlhbmNlIFRlc3QgcmVxdWVzdGVkXG4iKTsKPiArCQkvKiBTZW5kIGEgSG90 cGx1ZyBVZXZlbnQgdG8gdXNlcnNwYWNlIHRvIHN0YXJ0IG1vZGVzZXQgKi8KPiArCQlkcm1fa21z X2hlbHBlcl9ob3RwbHVnX2V2ZW50KGludGVsX2VuY29kZXItPmJhc2UuZGV2KTsKPiArCX0KPiAg Cj4gIAlyZXR1cm4gdHJ1ZTsKPiAgfQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gaW5kZXgg ZjhjNzA0Ni4uZGJkNTgwYSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kcnYuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gQEAgLTg5 Miw2ICs4OTIsOCBAQCBzdHJ1Y3QgaW50ZWxfZHBfY29tcGxpYW5jZSB7Cj4gIAl1bnNpZ25lZCBs b25nIHRlc3RfdHlwZTsKPiAgCXN0cnVjdCBpbnRlbF9kcF9jb21wbGlhbmNlX2RhdGEgdGVzdF9k YXRhOwo+ICAJYm9vbCB0ZXN0X2FjdGl2ZTsKPiArCXU4IHRlc3RfbGlua19yYXRlOwo+ICsJdTgg dGVzdF9sYW5lX2NvdW50Owo+ICB9Owo+ICAKPiAgc3RydWN0IGludGVsX2RwIHsKPiAtLSAKPiAx LjkuMQo+IApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJ bnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0 cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK