From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jim Bride Subject: Re: [PATCH 11/14] drm/i915: Fallback to lower link rate and lane count during link training Date: Fri, 2 Sep 2016 13:01:42 -0700 Message-ID: <20160902200142.GA8696@shiv> References: <1472767699-31211-1-git-send-email-manasi.d.navare@intel.com> <1472767699-31211-12-git-send-email-manasi.d.navare@intel.com> <1472846870.1219.18.camel@dk-H97M-D3H> 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 428A76EADC for ; Fri, 2 Sep 2016 20:02:33 +0000 (UTC) Content-Disposition: inline In-Reply-To: <1472846870.1219.18.camel@dk-H97M-D3H> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: "Pandiyan, Dhinakaran" Cc: "intel-gfx@lists.freedesktop.org" List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCBTZXAgMDIsIDIwMTYgYXQgMDc6NTI6NTNQTSArMDAwMCwgUGFuZGl5YW4sIERoaW5h a2FyYW4gd3JvdGU6Cj4gT24gVGh1LCAyMDE2LTA5LTAxIGF0IDE1OjA4IC0wNzAwLCBNYW5hc2kg TmF2YXJlIHdyb3RlOgo+ID4gQWNjb3JkaW5nIHRvIHRoZSBEaXNwbGF5UG9ydCBTcGVjLCBpbiBj YXNlIG9mIENsb2NrIFJlY292ZXJ5IGZhaWx1cmUKPiA+IHRoZSBsaW5rIHRyYWluaW5nIHNlcXVl bmNlIHNob3VsZCBmYWxsIGJhY2sgdG8gdGhlIGxvd2VyIGxpbmsgcmF0ZQo+ID4gZm9sbG93ZWQg YnkgbG93ZXIgbGFuZSBjb3VudCB1bnRpbCBDUiBzdWNjZWVkcy4KPiA+IE9uIENSIHN1Y2Nlc3Ms IHRoZSBzZXF1ZW5jZSBwcm9jZWVkcyB3aXRoIENoYW5uZWwgRVEuCj4gPiBJbiBjYXNlIG9mIENo YW5uZWwgRVEgZmFpbHVyZXMsIGl0IHNob3VsZCBmYWxsYmFjayB0bwo+ID4gbG93ZXIgbGluayBy YXRlIGFuZCBsYW5lIGNvdW50IGFuZCBzdGFydCB0aGUgQ1IgcGhhc2UgYWdhaW4uCj4gPiAKPiA+ IFNpZ25lZC1vZmYtYnk6IE1hbmFzaSBOYXZhcmUgPG1hbmFzaS5kLm5hdmFyZUBpbnRlbC5jb20+ Cj4gPiAtLS0KPiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYyAgICAgICAgICAg ICAgfCAxMDkgKysrKysrKysrKysrKysrKysrKysrKystLS0KPiA+ICBkcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9kcF9saW5rX3RyYWluaW5nLmMgfCAgMTIgKystCj4gPiAgZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZHJ2LmggICAgICAgICAgICAgIHwgICA0ICstCj4gPiAgMyBmaWxlcyBj aGFuZ2VkLCAxMTAgaW5zZXJ0aW9ucygrKSwgMTUgZGVsZXRpb25zKC0pCj4gPiAKPiA+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2RkaS5jCj4gPiBpbmRleCA2N2E2YTBiLi43OGQ2Njg3IDEwMDY0NAo+ID4g LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMKPiA+ICsrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2RkaS5jCj4gPiBAQCAtMTYzNCwyOSArMTYzNCw1MCBAQCB2b2lk IGludGVsX2RkaV9jbGtfc2VsZWN0KHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ID4g IAl9Cj4gPiAgfQo+ID4gIAo+ID4gLXN0YXRpYyB2b2lkIGludGVsX2RkaV9wcmVfZW5hYmxlX2Rw KHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ID4gK3N0YXRpYyB2b2lkIGludGVsX2Rk aV9wcmVfZW5hYmxlX2VkcChzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiA+ICAJCQkJ ICAgIGludCBsaW5rX3JhdGUsIHVpbnQzMl90IGxhbmVfY291bnQsCj4gPiAtCQkJCSAgICBzdHJ1 Y3QgaW50ZWxfc2hhcmVkX2RwbGwgKnBsbCwKPiA+IC0JCQkJICAgIGJvb2wgbGlua19tc3QpCj4g PiArCQkJCSAgICBzdHJ1Y3QgaW50ZWxfc2hhcmVkX2RwbGwgKnBsbCkKPiA+ICB7Cj4gPiAgCXN0 cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAgPSBlbmNfdG9faW50ZWxfZHAoJmVuY29kZXItPmJhc2Up Owo+ID4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGVuY29k ZXItPmJhc2UuZGV2KTsKPiA+ICAJZW51bSBwb3J0IHBvcnQgPSBpbnRlbF9kZGlfZ2V0X2VuY29k ZXJfcG9ydChlbmNvZGVyKTsKPiA+ICAKPiA+ICAJaW50ZWxfZHBfc2V0X2xpbmtfcGFyYW1zKGlu dGVsX2RwLCBsaW5rX3JhdGUsIGxhbmVfY291bnQsCj4gPiAtCQkJCSBsaW5rX21zdCk7Cj4gPiAt CWlmIChlbmNvZGVyLT50eXBlID09IElOVEVMX09VVFBVVF9FRFApCj4gPiAtCQlpbnRlbF9lZHBf cGFuZWxfb24oaW50ZWxfZHApOwo+ID4gKwkJCQkgZmFsc2UpOwo+ID4gKwo+ID4gKwlpbnRlbF9l ZHBfcGFuZWxfb24oaW50ZWxfZHApOwo+ID4gIAo+ID4gIAlpbnRlbF9kZGlfY2xrX3NlbGVjdChl bmNvZGVyLCBwbGwpOwo+ID4gIAlpbnRlbF9wcmVwYXJlX2RwX2RkaV9idWZmZXJzKGVuY29kZXIp Owo+ID4gIAlpbnRlbF9kZGlfaW5pdF9kcF9idWZfcmVnKGVuY29kZXIpOwo+ID4gIAlpbnRlbF9k cF9zaW5rX2RwbXMoaW50ZWxfZHAsIERSTV9NT0RFX0RQTVNfT04pOwo+ID4gIAlpbnRlbF9kcF9z dGFydF9saW5rX3RyYWluKGludGVsX2RwKTsKPiA+IC0JaWYgKHBvcnQgIT0gUE9SVF9BIHx8IElO VEVMX0dFTihkZXZfcHJpdikgPj0gOSkKPiA+ICsJaWYgKHBvcnQgIT0gUE9SVF9BIHx8IElOVEVM X0lORk8oZGV2X3ByaXYpLT5nZW4gPj0gOSkKPiA+ICAJCWludGVsX2RwX3N0b3BfbGlua190cmFp bihpbnRlbF9kcCk7Cj4gPiAgfQo+ID4gIAo+ID4gK3N0YXRpYyB2b2lkIGludGVsX2RkaV9wcmVf ZW5hYmxlX2RwKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ID4gKwkJCQkgICAgaW50 IGxpbmtfcmF0ZSwgdWludDMyX3QgbGFuZV9jb3VudCwKPiA+ICsJCQkJICAgIHN0cnVjdCBpbnRl bF9zaGFyZWRfZHBsbCAqcGxsLAo+ID4gKwkJCQkgICAgYm9vbCBsaW5rX21zdCkKPiA+ICt7Cj4g PiArCXN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAgPSBlbmNfdG9faW50ZWxfZHAoJmVuY29kZXIt PmJhc2UpOwo+ID4gKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1 KGVuY29kZXItPmJhc2UuZGV2KTsKPiA+ICsJc3RydWN0IGludGVsX3NoYXJlZF9kcGxsX2NvbmZp ZyB0bXBfcGxsX2NvbmZpZzsKPiA+ICsKPiA+ICsJLyogRGlzYWJsZSB0aGUgUExMIGFuZCBvYnRh aW4gdGhlIFBMTCBmb3IgTGluayBUcmFpbmluZwo+ID4gKwkgKiB0aGF0IHN0YXJ0cyB3aXRoIGhp Z2hlc3QgbGluayByYXRlIGFuZCBsYW5lIGNvdW50Lgo+ID4gKwkgKi8KPiA+ICsJdG1wX3BsbF9j b25maWcgPSBwbGwtPmNvbmZpZzsKPiA+ICsJcGxsLT5mdW5jcy5kaXNhYmxlKGRldl9wcml2LCBw bGwpOwo+ID4gKwlwbGwtPmNvbmZpZy5jcnRjX21hc2sgPSAwOwo+ID4gKwo+ID4gKwkvKiBJZiBM aW5rIFRyYWluaW5nIGZhaWxzLCBzZW5kIGEgdWV2ZW50IHRvIGdlbmVyYXRlIGEgaG90cGx1ZyAq Lwo+ID4gKwlpZiAoIShpbnRlbF9kZGlfbGlua190cmFpbihpbnRlbF9kcCwgbGlua19yYXRlLCBs YW5lX2NvdW50LCBsaW5rX21zdCkpKQo+ID4gKwkJZHJtX2ttc19oZWxwZXJfaG90cGx1Z19ldmVu dChlbmNvZGVyLT5iYXNlLmRldik7Cj4gPiArCXBsbC0+Y29uZmlnID0gdG1wX3BsbF9jb25maWc7 Cj4gPiArfQo+ID4gKwo+ID4gIHN0YXRpYyB2b2lkIGludGVsX2RkaV9wcmVfZW5hYmxlX2hkbWko c3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gPiAgCQkJCSAgICAgIGJvb2wgaGFzX2hk bWlfc2luaywKPiA+ICAJCQkJICAgICAgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKmFkanVzdGVk X21vZGUsCj4gPiBAQCAtMTY5MCwyMCArMTcxMSwyNiBAQCBzdGF0aWMgdm9pZCBpbnRlbF9kZGlf cHJlX2VuYWJsZShzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqaW50ZWxfZW5jb2RlciwKPiA+ICAJc3Ry dWN0IGludGVsX2NydGMgKmNydGMgPSB0b19pbnRlbF9jcnRjKGVuY29kZXItPmNydGMpOwo+ID4g IAlpbnQgdHlwZSA9IGludGVsX2VuY29kZXItPnR5cGU7Cj4gPiAgCj4gPiAtCWlmICh0eXBlID09 IElOVEVMX09VVFBVVF9EUCB8fCB0eXBlID09IElOVEVMX09VVFBVVF9FRFApIHsKPiA+ICsJaWYg KHR5cGUgPT0gSU5URUxfT1VUUFVUX0VEUCkKPiA+ICsJCWludGVsX2RkaV9wcmVfZW5hYmxlX2Vk cChpbnRlbF9lbmNvZGVyLAo+ID4gKwkJCQkJY3J0Yy0+Y29uZmlnLT5wb3J0X2Nsb2NrLAo+ID4g KwkJCQkJY3J0Yy0+Y29uZmlnLT5sYW5lX2NvdW50LAo+ID4gKwkJCQkJY3J0Yy0+Y29uZmlnLT5z aGFyZWRfZHBsbCk7Cj4gPiArCj4gPiArCWlmICh0eXBlID09IElOVEVMX09VVFBVVF9EUCkKPiA+ ICAJCWludGVsX2RkaV9wcmVfZW5hYmxlX2RwKGludGVsX2VuY29kZXIsCj4gPiAgCQkJCQljcnRj LT5jb25maWctPnBvcnRfY2xvY2ssCj4gPiAgCQkJCQljcnRjLT5jb25maWctPmxhbmVfY291bnQs Cj4gPiAgCQkJCQljcnRjLT5jb25maWctPnNoYXJlZF9kcGxsLAo+ID4gIAkJCQkJaW50ZWxfY3J0 Y19oYXNfdHlwZShjcnRjLT5jb25maWcsCj4gPiAgCQkJCQkJCSAgICBJTlRFTF9PVVRQVVRfRFBf TVNUKSk7Cj4gPiAtCX0KPiA+IC0JaWYgKHR5cGUgPT0gSU5URUxfT1VUUFVUX0hETUkpIHsKPiA+ ICsKPiA+ICsJaWYgKHR5cGUgPT0gSU5URUxfT1VUUFVUX0hETUkpCj4gPiAgCQlpbnRlbF9kZGlf cHJlX2VuYWJsZV9oZG1pKGludGVsX2VuY29kZXIsCj4gPiAgCQkJCQkgIGNydGMtPmNvbmZpZy0+ aGFzX2hkbWlfc2luaywKPiA+ICAJCQkJCSAgJmNydGMtPmNvbmZpZy0+YmFzZS5hZGp1c3RlZF9t b2RlLAo+ID4gIAkJCQkJICBjcnRjLT5jb25maWctPnNoYXJlZF9kcGxsKTsKPiA+IC0JfQo+ID4g Kwo+ID4gIH0KPiA+ICAKPiA+ICBzdGF0aWMgdm9pZCBpbnRlbF9kZGlfcG9zdF9kaXNhYmxlKHN0 cnVjdCBpbnRlbF9lbmNvZGVyICppbnRlbF9lbmNvZGVyLAo+ID4gQEAgLTI0MzEsNiArMjQ1OCw2 NiBAQCBpbnRlbF9kZGlfZ2V0X2xpbmtfZHBsbChzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwLCBp bnQgY2xvY2spCj4gPiAgCXJldHVybiBwbGw7Cj4gPiAgfQo+ID4gIAo+ID4gK2Jvb2wKPiA+ICtp bnRlbF9kZGlfbGlua190cmFpbihzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwLCBpbnQgbWF4X2xp bmtfcmF0ZSwKPiA+ICsJCSAgICB1aW50OF90IG1heF9sYW5lX2NvdW50LCBib29sIGxpbmtfbXN0 KQo+ID4gK3sKPiA+ICsJc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yID0gaW50ZWxf ZHAtPmF0dGFjaGVkX2Nvbm5lY3RvcjsKPiA+ICsJc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29k ZXIgPSBjb25uZWN0b3ItPmVuY29kZXI7Cj4gPiArCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpk ZXZfcHJpdiA9IHRvX2k5MTUoZW5jb2Rlci0+YmFzZS5kZXYpOwo+ID4gKwlzdHJ1Y3QgaW50ZWxf c2hhcmVkX2RwbGwgKnBsbDsKPiA+ICsJc3RydWN0IGludGVsX3NoYXJlZF9kcGxsX2NvbmZpZyB0 bXBfcGxsX2NvbmZpZzsKPiA+ICsJaW50IGxpbmtfcmF0ZTsKPiA+ICsJdWludDhfdCBsYW5lX2Nv dW50Owo+ID4gKwlib29sIGxpbmtfcmF0ZV9ub3RfZm91bmQgPSB0cnVlOwo+ID4gKwlib29sIHJl dCA9IGZhbHNlOwo+ID4gKwo+ID4gKwlmb3IgKGxhbmVfY291bnQgPSBtYXhfbGFuZV9jb3VudDsg bGFuZV9jb3VudCA+IDA7IGxhbmVfY291bnQgPj49IDEpIHsKPiA+ICsKPiA+ICsJCWxpbmtfcmF0 ZSA9IG1heF9saW5rX3JhdGU7Cj4gPiArCQl3aGlsZSAobGlua19yYXRlX25vdF9mb3VuZCkgewo+ ID4gKwkJCXBsbCA9IGludGVsX2RkaV9nZXRfbGlua19kcGxsKGludGVsX2RwLCBsaW5rX3JhdGUp Owo+ID4gKwkJCWlmIChwbGwgPT0gTlVMTCkgewo+ID4gKwkJCQlEUk1fRVJST1IoIkNvdWxkIG5v dCBmaW5kIERQTEwgZm9yIGxpbmsgIgo+ID4gKwkJCQkJICAidHJhaW5pbmcuXG4iKTsKPiA+ICsJ CQkJcmV0dXJuIGZhbHNlOwo+ID4gKwkJCX0KPiA+ICsJCQl0bXBfcGxsX2NvbmZpZyA9IHBsbC0+ Y29uZmlnOwo+ID4gKwkJCXBsbC0+ZnVuY3MuZW5hYmxlKGRldl9wcml2LCBwbGwpOwo+ID4gKwo+ ID4gKwkJCWludGVsX2RwX3NldF9saW5rX3BhcmFtcyhpbnRlbF9kcCwgbGlua19yYXRlLAo+ID4g KwkJCQkJCSBsYW5lX2NvdW50LCBsaW5rX21zdCk7Cj4gPiArCj4gPiArCQkJaW50ZWxfZGRpX2Ns a19zZWxlY3QoZW5jb2RlciwgcGxsKTsKPiA+ICsJCQlpbnRlbF9wcmVwYXJlX2RwX2RkaV9idWZm ZXJzKGVuY29kZXIpOwo+ID4gKwkJCWludGVsX2RkaV9pbml0X2RwX2J1Zl9yZWcoZW5jb2Rlcik7 Cj4gPiArCQkJaW50ZWxfZHBfc2lua19kcG1zKGludGVsX2RwLCBEUk1fTU9ERV9EUE1TX09OKTsK PiA+ICsJCQlyZXQgPSBpbnRlbF9kcF9zdGFydF9saW5rX3RyYWluKGludGVsX2RwKTsKPiA+ICsJ CQlpZiAocmV0KQo+ID4gKwkJCQlicmVhazsKPiA+ICsKPiA+ICsJCQkvKiBEaXNhYmxlIHBvcnQg Zm9sbG93ZWQgYnkgUExMIGZvciBuZXh0IHJldHJ5L2NsZWFuIHVwICovCj4gPiArCQkJaW50ZWxf ZGRpX3Bvc3RfZGlzYWJsZShlbmNvZGVyLCBOVUxMLCBOVUxMKTsKPiA+ICsJCQlwbGwtPmZ1bmNz LmRpc2FibGUoZGV2X3ByaXYsIHBsbCk7Cj4gPiArCQkJaWYgKGxpbmtfcmF0ZSA9PSA1NDAwMDAp Cj4gPiArCQkJCWxpbmtfcmF0ZSA9IDI3MDAwMDsKPiA+ICsJCQllbHNlIGlmIChsaW5rX3JhdGUg PT0gMjcwMDAwKQo+ID4gKwkJCQlsaW5rX3JhdGUgPSAxNjIwMDA7Cj4gPiArCQkJZWxzZQo+ID4g KwkJCQlsaW5rX3JhdGVfbm90X2ZvdW5kID0gZmFsc2U7Cj4gCj4gMS4gQXJlbid0IHRoZSBzdXBw b3J0ZWQgcmF0ZXMgcGxhdGZvcm0gZGVwZW5kZW50PyBJIHNlZSB0aGVzZQo+IGRlZmluaXRpb25z IGluIGludGVsX2RwLmMKPiAKPiBzdGF0aWMgY29uc3QgaW50IGJ4dF9yYXRlc1tdID0geyAxNjIw MDAsIDIxNjAwMCwgMjQzMDAwLCAyNzAwMDAsCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIDMyNDAwMCwgNDMyMDAwLCA1NDAwMDAgfTsKPiBzdGF0aWMgY29uc3QgaW50IHNrbF9y YXRlc1tdID0geyAxNjIwMDAsIDIxNjAwMCwgMjcwMDAwLAo+ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAzMjQwMDAsIDQzMjAwMCwgNTQwMDAwIH07Cj4gCj4gCj4gMi4gQWxzbywg aXQgaXMgZ29vZCB0byBoYXZlIHRoZSBzdGFuZGFyZCByYXRlcyBkZWZpbmVkIGluIGEgYXJyYXkg d2l0aGluCj4gYSBoZWFkZXIgaW5zdGVhZCBvZiBoYXZpbmcgbGl0ZXJhbHMgaGVyZS4KPiAKPiBP ciBldmVuIGJldHRlciwgcmUtdXNlIHdoYXQncyBhdmFpbGFibGUgaW4gaW50ZWxfZHAuYwo+IHN0 YXRpYyBjb25zdCBpbnQgZGVmYXVsdF9yYXRlc1tdID0geyAxNjIwMDAsIDI3MDAwMCwgNTQwMDAw IH07CgpBY3R1YWxseSwgd2Ugc2hvdWxkIGJlIGZldGNoaW5nIGFuZCB1c2luZyB0aGUgY29tbW9u IHJhdGVzIGhlcmUuICBUaGVyZSdzCmFscmVhZHkgY29kZSB0byB0YWtlIHRoZSB1bmlvbiBvZiB3 aGF0IHRoZSBzb3VyY2UgYW5kIHNpbmsgc3VwcG9ydC4KCkppbQoKCj4gCj4gPiArCQl9Cj4gPiAr CQlpZiAocmV0KSB7Cj4gPiArCQkJRFJNX0RFQlVHX0tNUygiTGluayBUcmFpbmluZyBzdWNjZXNz ZnVsXG4iKTsKPiA+ICsJCQlpbnRlbF9kcF9zdG9wX2xpbmtfdHJhaW4oaW50ZWxfZHApOwo+ID4g KwkJCWJyZWFrOwo+ID4gKwkJfQo+ID4gKwl9Cj4gPiArCWlmICghbGFuZV9jb3VudCkKPiA+ICsJ CURSTV9FUlJPUigiTGluayBUcmFpbmluZyBGYWlsZWRcbiIpOwo+ID4gKwo+ID4gKwlyZXR1cm4g cmV0Owo+ID4gK30KPiA+ICsKPiA+ICB2b2lkIGludGVsX2RkaV9pbml0KHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYsIGVudW0gcG9ydCBwb3J0KQo+ID4gIHsKPiA+ICAJc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShkZXYpOwo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2RwX2xpbmtfdHJhaW5pbmcuYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2RwX2xpbmtfdHJhaW5pbmcuYwo+ID4gaW5kZXggMDdmMDE1OS4uMGRmNDllOCAx MDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwX2xpbmtfdHJhaW5p bmcuYwo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHBfbGlua190cmFpbmlu Zy5jCj4gPiBAQCAtMzA5LDkgKzMwOSwxNSBAQCB2b2lkIGludGVsX2RwX3N0b3BfbGlua190cmFp bihzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQo+ID4gIAkJCQlEUF9UUkFJTklOR19QQVRURVJO X0RJU0FCTEUpOwo+ID4gIH0KPiA+ICAKPiA+IC12b2lkCj4gPiArYm9vbAo+ID4gIGludGVsX2Rw X3N0YXJ0X2xpbmtfdHJhaW4oc3RydWN0IGludGVsX2RwICppbnRlbF9kcCkKPiA+ICB7Cj4gPiAt CWludGVsX2RwX2xpbmtfdHJhaW5pbmdfY2xvY2tfcmVjb3ZlcnkoaW50ZWxfZHApOwo+ID4gLQlp bnRlbF9kcF9saW5rX3RyYWluaW5nX2NoYW5uZWxfZXF1YWxpemF0aW9uKGludGVsX2RwKTsKPiA+ ICsJYm9vbCByZXQ7Cj4gPiArCj4gPiArCWlmIChpbnRlbF9kcF9saW5rX3RyYWluaW5nX2Nsb2Nr X3JlY292ZXJ5KGludGVsX2RwKSkgewo+ID4gKwkJcmV0ID0gaW50ZWxfZHBfbGlua190cmFpbmlu Z19jaGFubmVsX2VxdWFsaXphdGlvbihpbnRlbF9kcCk7Cj4gPiArCQlpZiAocmV0KQo+ID4gKwkJ CXJldHVybiB0cnVlOwo+ID4gKwl9Cj4gPiArCXJldHVybiBmYWxzZTsKPiA+ICB9Cj4gPiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kcnYuaAo+ID4gaW5kZXggZTViYzk3Ni4uMzQyYTJkNSAxMDA2NDQKPiA+ IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+ID4gQEAgLTExNjAsNiArMTE2MCw4IEBAIHZvaWQg aW50ZWxfZGRpX2Nsb2NrX2dldChzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiA+ICAJ CQkgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVfY29uZmlnKTsKPiA+ICB2b2lkIGludGVs X2RkaV9zZXRfdmNfcGF5bG9hZF9hbGxvYyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIGJvb2wgc3Rh dGUpOwo+ID4gIHVpbnQzMl90IGRkaV9zaWduYWxfbGV2ZWxzKHN0cnVjdCBpbnRlbF9kcCAqaW50 ZWxfZHApOwo+ID4gK2Jvb2wgaW50ZWxfZGRpX2xpbmtfdHJhaW4oc3RydWN0IGludGVsX2RwICpp bnRlbF9kcCwgaW50IG1heF9saW5rX3JhdGUsCj4gPiArCQkJIHVpbnQ4X3QgbWF4X2xhbmVfY291 bnQsIGJvb2wgbGlua19tc3QpOwo+ID4gIHN0cnVjdCBpbnRlbF9zaGFyZWRfZHBsbCAqaW50ZWxf ZGRpX2dldF9saW5rX2RwbGwoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCwKPiA+ICAJCQkJCQkg IGludCBjbG9jayk7Cj4gPiAgdW5zaWduZWQgaW50IGludGVsX2ZiX2FsaWduX2hlaWdodChzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2LAo+ID4gQEAgLTEzODEsNyArMTM4Myw3IEBAIGJvb2wgaW50ZWxf ZHBfaW5pdF9jb25uZWN0b3Ioc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqaW50ZWxfZGlnX3Bv cnQsCj4gPiAgdm9pZCBpbnRlbF9kcF9zZXRfbGlua19wYXJhbXMoc3RydWN0IGludGVsX2RwICpp bnRlbF9kcCwKPiA+ICAJCQkgICAgICBpbnQgbGlua19yYXRlLCB1aW50OF90IGxhbmVfY291bnQs Cj4gPiAgCQkJICAgICAgYm9vbCBsaW5rX21zdCk7Cj4gPiAtdm9pZCBpbnRlbF9kcF9zdGFydF9s aW5rX3RyYWluKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHApOwo+ID4gK2Jvb2wgaW50ZWxfZHBf c3RhcnRfbGlua190cmFpbihzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKTsKPiA+ICB2b2lkIGlu dGVsX2RwX3N0b3BfbGlua190cmFpbihzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKTsKPiA+ICB2 b2lkIGludGVsX2RwX3NpbmtfZHBtcyhzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwLCBpbnQgbW9k ZSk7Cj4gPiAgdm9pZCBpbnRlbF9kcF9lbmNvZGVyX3Jlc2V0KHN0cnVjdCBkcm1fZW5jb2RlciAq ZW5jb2Rlcik7Cj4gCj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KPiBJbnRlbC1nZnggbWFpbGluZyBsaXN0Cj4gSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNr dG9wLm9yZwo+IGh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8v aW50ZWwtZ2Z4Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpo dHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=