From mboxrd@z Thu Jan 1 00:00:00 1970 From: Manasi Navare Subject: Re: [RFC 7/7] drm/i915/dp: Program vswing, pre-emphasis, test-pattern Date: Sun, 17 Nov 2019 23:53:54 -0800 Message-ID: <20191118075354.GH1135@intel.com> References: <20191115152549.23047-1-animesh.manna@intel.com> <20191115152549.23047-8-animesh.manna@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by gabe.freedesktop.org (Postfix) with ESMTPS id A1D7E6E057 for ; Mon, 18 Nov 2019 07:50:49 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20191115152549.23047-8-animesh.manna@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Animesh Manna Cc: jani.nikula@intel.com, nidhi1.gupta@intel.com, intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCBOb3YgMTUsIDIwMTkgYXQgMDg6NTU6NDlQTSArMDUzMCwgQW5pbWVzaCBNYW5uYSB3 cm90ZToKPiBUaGlzIHBhdGNoIHByb2Nlc3MgcGh5IGNvbXBsaWFuY2UgcmVxdWVzdCBieSBwcm9n cmFtbWluZyByZXF1ZXN0ZWQKPiB2c3dpbmcsIHByZS1lbXBoYXNpcyBhbmQgdGVzdCBwYXR0ZXJu LgoKQWdhaW4gaGVyZSBhIHNsaWdodGx5IGRldGFpbGVkIGRlc2NyaXB0aW9uIG9mIHdoZXJlIGlu IHRoZSBhdG9taWMgbW9kZXNldApkbyB3ZSBwcm9jZXNzIHRoZSBQSFkgY29tIHJlcXVlc3Qgd291 bGQgYmUgZ29vZC4KClRoZSBkZXNpZ24gb3ZlcmFsbCBsb29rcyBnb29kIG5vdywgZmV3IGNvbW1l bnRzIGJlbG93OgoKPiAKPiBTaWduZWQtb2ZmLWJ5OiBBbmltZXNoIE1hbm5hIDxhbmltZXNoLm1h bm5hQGludGVsLmNvbT4KPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRl bF9kZGkuYyAgICAgfCAxNCArKysrCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50 ZWxfZGlzcGxheS5jIHwgIDUgKysKPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRl bF9kcC5jICAgICAgfCA3NyArKysrKysrKysrKysrKysrKysrKwo+ICBkcml2ZXJzL2dwdS9kcm0v aTkxNS9kaXNwbGF5L2ludGVsX2RwLmggICAgICB8ICAyICsKPiAgZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9kcnYuaCAgICAgICAgICAgICAgfCAgMiArCj4gIDUgZmlsZXMgY2hhbmdlZCwgMTAw IGluc2VydGlvbnMoKykKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlz cGxheS9pbnRlbF9kZGkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGRp LmMKPiBpbmRleCA4ZjgxN2RlMzQ0NjAuLmMxMmQ0ZWJiZDM1MiAxMDA2NDQKPiAtLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RkaS5jCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kZGkuYwo+IEBAIC0zNzAwLDggKzM3MDAsMTcgQEAgc3Rh dGljIHZvaWQgaW50ZWxfZGRpX3ByZV9lbmFibGUoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29k ZXIsCj4gIHsKPiAgCXN0cnVjdCBpbnRlbF9jcnRjICpjcnRjID0gdG9faW50ZWxfY3J0YyhjcnRj X3N0YXRlLT51YXBpLmNydGMpOwo+ICAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 ID0gdG9faTkxNShjcnRjLT5iYXNlLmRldik7Cj4gKwlzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0 ICpkaWdfcG9ydCA9IGVuY190b19kaWdfcG9ydCgmZW5jb2Rlci0+YmFzZSk7Cj4gIAllbnVtIHBp cGUgcGlwZSA9IGNydGMtPnBpcGU7Cj4gIAo+ICsJaWYgKGVuY29kZXItPnR5cGUgPT0gSU5URUxf T1VUUFVUX0RQKSB7Cj4gKwkJaWYgKGRpZ19wb3J0LT5kcC5jb21wbGlhbmNlLnRlc3RfdHlwZSA9 PQo+ICsJCSAgICBEUF9URVNUX0xJTktfUEhZX1RFU1RfUEFUVEVSTikgewo+ICsJCQlpbnRlbF9k cF9wcm9jZXNzX3BoeV9yZXF1ZXN0KCZkaWdfcG9ydC0+ZHApOwo+ICsJCQlyZXR1cm47Cj4gKwkJ fQo+ICsJfQo+ICsKPiAgCS8qCj4gIAkgKiBXaGVuIGNhbGxlZCBmcm9tIERQIE1TVCBjb2RlOgo+ ICAJICogLSBjb25uX3N0YXRlIHdpbGwgYmUgTlVMTAo+IEBAIC00MTQ3LDYgKzQxNTYsMTEgQEAg aW50ZWxfZGRpX3ByZV9wbGxfZW5hYmxlKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ ICAJZW51bSBwaHkgcGh5ID0gaW50ZWxfcG9ydF90b19waHkoZGV2X3ByaXYsIGVuY29kZXItPnBv cnQpOwo+ICAJYm9vbCBpc190Y19wb3J0ID0gaW50ZWxfcGh5X2lzX3RjKGRldl9wcml2LCBwaHkp Owo+ICAKPiArCWlmIChlbmNvZGVyLT50eXBlID09IElOVEVMX09VVFBVVF9EUCkKPiArCQlpZiAo ZGlnX3BvcnQtPmRwLmNvbXBsaWFuY2UudGVzdF90eXBlID09Cj4gKwkJICAgIERQX1RFU1RfTElO S19QSFlfVEVTVF9QQVRURVJOKQo+ICsJCQlyZXR1cm47Cj4gKwo+ICAJaWYgKGlzX3RjX3BvcnQp Cj4gIAkJaW50ZWxfdGNfcG9ydF9nZXRfbGluayhkaWdfcG9ydCwgY3J0Y19zdGF0ZS0+bGFuZV9j b3VudCk7Cj4gIAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2lu dGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxh eS5jCj4gaW5kZXggYWRmNTBjNGIzOGFkLi40YWQxMWRmNTVmMDcgMTAwNjQ0Cj4gLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMKPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYwo+IEBAIC01NDUsNiArNTQ1LDEx IEBAIGljbF93YV9zY2FsZXJjbGtnYXRpbmcoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2LCBlbnVtIHBpcGUgcGlwZSwKPiAgc3RhdGljIGJvb2wKPiAgbmVlZHNfbW9kZXNldChjb25z dCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqc3RhdGUpCj4gIHsKPiArCXN0cnVjdCBkcm1faTkx NV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoc3RhdGUtPnVhcGkuY3J0Yy0+ZGV2KTsKPiAr Cj4gKwlpZiAoZGV2X3ByaXYtPmRwX3BoeV9jb21wKQo+ICsJCXJldHVybiB0cnVlOwoKQ291bGQg eW91IGRvdWJsZSBjaGVjayB3aXRoIEphbmkgTiBpZiB0aGlzIGlzIGFuIGFjY2VwdGFibGUgc29s dXRpb24gdG8KZm9jZSBhIGZ1bGwgbW9kZXNldCBmb3IgYSBQSFkgY29tcGxpYW5jZSB0ZXN0PwoK PiArCj4gIAlyZXR1cm4gZHJtX2F0b21pY19jcnRjX25lZWRzX21vZGVzZXQoJnN0YXRlLT51YXBp KTsKPiAgfQo+ICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9p bnRlbF9kcC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kcC5jCj4gaW5k ZXggZGYzMTI3OGExNjE5Li4yYzNkNGI2YzYwMzYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kcC5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv ZGlzcGxheS9pbnRlbF9kcC5jCj4gQEAgLTUwMTAsMTQgKzUwMTAsOTEgQEAgc3RhdGljIGlubGlu ZSB2b2lkIGludGVsX2RwX3BoeV9wYXR0ZXJuX3VwZGF0ZShzdHJ1Y3QgaW50ZWxfZHAgKmludGVs X2RwKQo+ICAJfQo+ICB9Cj4gIAo+ICtzdGF0aWMgdm9pZAo+ICtpbnRlbF9kcF9hdXRvdGVzdF9w aHlfZGRpX2Rpc2FibGUoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCkKPiArewo+ICsJc3RydWN0 IGludGVsX2RpZ2l0YWxfcG9ydCAqaW50ZWxfZGlnX3BvcnQgPSBkcF90b19kaWdfcG9ydChpbnRl bF9kcCk7Cj4gKwlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gaW50ZWxfZGlnX3BvcnQtPmJhc2Uu YmFzZS5kZXY7Cj4gKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1 KGRldik7Cj4gKwllbnVtIHBvcnQgcG9ydCA9IGludGVsX2RpZ19wb3J0LT5iYXNlLnBvcnQ7Cj4g Kwl1MzIgZGRpX2J1Zl9jdGxfdmFsdWUsIGRwX3RwX2N0bF92YWx1ZSwgdHJhbnNfZGRpX2Z1bmNf Y3RsX3ZhbHVlOwo+ICsKPiArCWRkaV9idWZfY3RsX3ZhbHVlID0gSTkxNV9SRUFEKERESV9CVUZf Q1RMKHBvcnQpKTsKPiArCWRwX3RwX2N0bF92YWx1ZSA9IEk5MTVfUkVBRChUR0xfRFBfVFBfQ1RM KHBvcnQpKTsKPiArCXRyYW5zX2RkaV9mdW5jX2N0bF92YWx1ZSA9IEk5MTVfUkVBRChUUkFOU19E RElfRlVOQ19DVEwocG9ydCkpOwo+ICsKPiArCWRkaV9idWZfY3RsX3ZhbHVlICAgICAgICAmPSB+ KERESV9CVUZfQ1RMX0VOQUJMRSB8IERESV9QT1JUX1dJRFRIX01BU0spOwo+ICsJZHBfdHBfY3Rs X3ZhbHVlICAgICAgICAgICY9IH5EUF9UUF9DVExfRU5BQkxFOwo+ICsJdHJhbnNfZGRpX2Z1bmNf Y3RsX3ZhbHVlICY9IH4oVFJBTlNfRERJX0ZVTkNfRU5BQkxFIHwKPiArCQkJCSAgICAgIERESV9Q T1JUX1dJRFRIX01BU0spOwo+ICsKPiArCUk5MTVfV1JJVEUoRERJX0JVRl9DVEwocG9ydCksIGRk aV9idWZfY3RsX3ZhbHVlKTsKPiArCUk5MTVfV1JJVEUoVEdMX0RQX1RQX0NUTChwb3J0KSwgZHBf dHBfY3RsX3ZhbHVlKTsKPiArCUk5MTVfV1JJVEUoVFJBTlNfRERJX0ZVTkNfQ1RMKHBvcnQpLCB0 cmFuc19kZGlfZnVuY19jdGxfdmFsdWUpOwo+ICt9Cj4gKwo+ICtzdGF0aWMgdm9pZAo+ICtpbnRl bF9kcF9hdXRvdGVzdF9waHlfZGRpX2VuYWJsZShzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwLCB1 aW50OF90IGxhbmVfY250KQo+ICt7Cj4gKwlzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICppbnRl bF9kaWdfcG9ydCA9IGRwX3RvX2RpZ19wb3J0KGludGVsX2RwKTsKPiArCXN0cnVjdCBkcm1fZGV2 aWNlICpkZXYgPSBpbnRlbF9kaWdfcG9ydC0+YmFzZS5iYXNlLmRldjsKPiArCXN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZGV2KTsKPiArCWVudW0gcG9ydCBwb3J0 ID0gaW50ZWxfZGlnX3BvcnQtPmJhc2UucG9ydDsKPiArCXUzMiBkZGlfYnVmX2N0bF92YWx1ZSwg ZHBfdHBfY3RsX3ZhbHVlLCB0cmFuc19kZGlfZnVuY19jdGxfdmFsdWU7Cj4gKwo+ICsJZGRpX2J1 Zl9jdGxfdmFsdWUgPSBJOTE1X1JFQUQoRERJX0JVRl9DVEwocG9ydCkpOwo+ICsJZHBfdHBfY3Rs X3ZhbHVlID0gSTkxNV9SRUFEKFRHTF9EUF9UUF9DVEwocG9ydCkpOwo+ICsJdHJhbnNfZGRpX2Z1 bmNfY3RsX3ZhbHVlID0gSTkxNV9SRUFEKFRSQU5TX0RESV9GVU5DX0NUTChwb3J0KSk7Cj4gKwo+ ICsJZGRpX2J1Zl9jdGxfdmFsdWUgICAgICAgIHw9IERESV9CVUZfQ1RMX0VOQUJMRSB8Cj4gKwkJ CQkgICAgRERJX1BPUlRfV0lEVEgobGFuZV9jbnQpOwo+ICsJZHBfdHBfY3RsX3ZhbHVlICAgICAg ICAgIHw9IERQX1RQX0NUTF9FTkFCTEU7Cj4gKwl0cmFuc19kZGlfZnVuY19jdGxfdmFsdWUgfD0g VFJBTlNfRERJX0ZVTkNfRU5BQkxFIHwKPiArCQkJCSAgICBERElfUE9SVF9XSURUSChsYW5lX2Nu dCk7Cj4gKwo+ICsJSTkxNV9XUklURShUUkFOU19ERElfRlVOQ19DVEwocG9ydCksIHRyYW5zX2Rk aV9mdW5jX2N0bF92YWx1ZSk7Cj4gKwlJOTE1X1dSSVRFKFRHTF9EUF9UUF9DVEwocG9ydCksIGRw X3RwX2N0bF92YWx1ZSk7Cj4gKwlJOTE1X1dSSVRFKERESV9CVUZfQ1RMKHBvcnQpLCBkZGlfYnVm X2N0bF92YWx1ZSk7Cj4gK30KPiArCj4gK3ZvaWQgaW50ZWxfZHBfcHJvY2Vzc19waHlfcmVxdWVz dChzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQo+ICt7Cj4gKwlzdHJ1Y3QgZHJtX2RwX3BoeV90 ZXN0X3BhcmFtcyAqZGF0YSA9Cj4gKwkJJmludGVsX2RwLT5jb21wbGlhbmNlLnRlc3RfZGF0YS5w aHl0ZXN0Owo+ICsJdTggbGlua19zdGF0dXNbRFBfTElOS19TVEFUVVNfU0laRV07Cj4gKwo+ICsJ aWYgKCFpbnRlbF9kcF9nZXRfbGlua19zdGF0dXMoaW50ZWxfZHAsIGxpbmtfc3RhdHVzKSkgewo+ ICsJCURSTV9ERUJVR19LTVMoImZhaWxlZCB0byBnZXQgbGluayBzdGF0dXNcbiIpOwo+ICsJCXJl dHVybjsKPiArCX0KPiArCj4gKwkvKiByZXRyaWV2ZSB2c3dpbmcgJiBwcmUtZW1waGFzaXMgc2V0 dGluZyAqLwo+ICsJaW50ZWxfZ2V0X2FkanVzdF90cmFpbihpbnRlbF9kcCwgbGlua19zdGF0dXMp Owo+ICsKPiArCWludGVsX2RwX2F1dG90ZXN0X3BoeV9kZGlfZGlzYWJsZShpbnRlbF9kcCk7Cj4g Kwo+ICsJaW50ZWxfZHBfc2V0X3NpZ25hbF9sZXZlbHMoaW50ZWxfZHApOwo+ICsKPiArCWludGVs X2RwX3BoeV9wYXR0ZXJuX3VwZGF0ZShpbnRlbF9kcCk7Cj4gKwo+ICsJaW50ZWxfZHBfYXV0b3Rl c3RfcGh5X2RkaV9lbmFibGUoaW50ZWxfZHAsIGRhdGEtPm51bV9sYW5lcyk7Cj4gKwo+ICsJZHJt X2RwX3NldF9waHlfdGVzdF9wYXR0ZXJuKCZpbnRlbF9kcC0+YXV4LCBkYXRhKTsKPiArfQo+ICsK PiAgc3RhdGljIHU4IGludGVsX2RwX2F1dG90ZXN0X3BoeV9wYXR0ZXJuKHN0cnVjdCBpbnRlbF9k cCAqaW50ZWxfZHApCj4gIHsKPiAgCXU4IHRlc3RfcmVzdWx0ID0gRFBfVEVTVF9OQUs7Cj4gKwlz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkcF90b19pOTE1KGludGVsX2RwKTsK PiAgCj4gIAl0ZXN0X3Jlc3VsdCA9IGludGVsX2RwX3ByZXBhcmVfcGh5dGVzdChpbnRlbF9kcCk7 Cj4gIAlpZiAodGVzdF9yZXN1bHQgIT0gRFBfVEVTVF9BQ0spCj4gIAkJRFJNX0VSUk9SKCJQaHkg dGVzdCBwcmVwYXJhdGlvbiBmYWlsZWRcbiIpOwo+ICAKPiArCS8qIFNldCB0ZXN0IGFjdGl2ZSBm bGFnIGhlcmUgc28gdXNlcnNwYWNlIGRvZXNuJ3QgaW50ZXJydXB0IHRoaW5ncyAqLwo+ICsJaW50 ZWxfZHAtPmNvbXBsaWFuY2UudGVzdF9hY3RpdmUgPSAxOwo+ICsJZGV2X3ByaXYtPmRwX3BoeV9j b21wID0gdHJ1ZTsKPiArCgpUaGlzIHNob3VsZCBiZSBtb3ZlZCB0byB0aGUgcGF0Y2ggMyBJIHRo aW5rIHdoZXJlIHlvdSBoYW5kbGUgIHBoeSB0ZXN0IHJlcXVlc3QgYW5kCmNhbGwgcHJlcGFyZSBm dW5jdGlvbi4gVGhlIHNhbWUgcGF0Y2ggdGhhdCBoYW5kbGVzIHRlc3QgcmVxIGNhbiBzZXQgdGhl IHRlc3QgYWN0aXZlIHRvIDEuCgo+ICAJcmV0dXJuIHRlc3RfcmVzdWx0Owo+ICB9Cj4gIAo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RwLmggYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RwLmgKPiBpbmRleCAwZDBjYjY5MmY3MDEu LmIxMjc0ZWNmZmM3ZiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5 L2ludGVsX2RwLmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rw LmgKPiBAQCAtMTIwLDYgKzEyMCw4IEBAIHZvaWQgaW50ZWxfZHBfaGRyX21ldGFkYXRhX2VuYWJs ZShzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwLAo+ICAJCQkJICBjb25zdCBzdHJ1Y3QgaW50ZWxf Y3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSwKPiAgCQkJCSAgY29uc3Qgc3RydWN0IGRybV9jb25uZWN0 b3Jfc3RhdGUgKmNvbm5fc3RhdGUpOwo+ICBib29sIGludGVsX2RpZ2l0YWxfcG9ydF9jb25uZWN0 ZWQoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIpOwo+ICt2b2lkIGludGVsX2RwX3Byb2Nl c3NfcGh5X3JlcXVlc3Qoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCk7Cj4gKwo+ICAKPiAgc3Rh dGljIGlubGluZSB1bnNpZ25lZCBpbnQgaW50ZWxfZHBfdW51c2VkX2xhbmVfbWFzayhpbnQgbGFu ZV9jb3VudCkKPiAgewo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Ry di5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+IGluZGV4IDE3NzlmNjAwZmNm Yi4uMjMyZTBkZmI5ZDhlIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf ZHJ2LmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4gQEAgLTEyODUs NiArMTI4NSw4IEBAIHN0cnVjdCBkcm1faTkxNV9wcml2YXRlIHsKPiAgCj4gIAlJOTE1X1NFTEZU RVNUX0RFQ0xBUkUoc3RydWN0IGk5MTVfc2VsZnRlc3Rfc3Rhc2ggc2VsZnRlc3Q7KQo+ICAKPiAr CWJvb2wgZHBfcGh5X2NvbXA7CgpOb3Qgc3VyZSBpZiB0aGlzIGlzIHRoZSBiZXN0IHdheSB0byBo YW5kbGUgdGhlIGZ1bGwgbWRvZXNldCwgY291bGQgeW91IGRvdWJsZQpjaGVjayB3aXRoIEphbmk/ CgpPdGhlciB0aGFuIHRoYXQgSSB0aGluayBub3cgdGhlIHBsYWNlbWVudCBpbiBwcmVfZW5hYmxl X2RwIGlzIGdvb2QuCgpUaGUgb25seSBvdGhlciBjb25jZXJuIEkgaGF2ZSBpcyBjaGFuZ2luZyBs aW5rIHJhdGUgYW5kIGxhbmUgY291bnQgb25seSBoYXBwZW5zCmluIHNldF9waHlfcGF0dGVybnMg d2hlcmUgd2Ugd3JpdGUgdGhlIHRlc3QgbGluayByYXRlIGFuZCBsYW5lIGNvdW50CmRpcmVjdGx5 IHRvIHRoZSBsaW5rIGJ3IHNldC4gQnV0IHRoZSBkcml2ZXIncyBjb21wdXRlIGNvbmZpZyBpcyBz dGlsbCBjb25maWd1cmluZwp0aGUgcGlwZSBhbmQgcGxscyBiYXNlZCBvbiB0aGUgbGluayByYXRl IGFuZCBsYW5lIGNvdW50IHRoYXQgY291bGQgYmUKZGlmZmVyZW50IHRoYW4gdGhlIHRlc3QgbGlu ayByYXRlL2NvdW50LiBUaGlzIG1pZ2h0IHdvcmsgbm93IHNpbmNlIHlvdSBzYWlkCnRoZSBsaW5r IGxheWVyIHRlc3QgaXMgYWxyZWFkeSBjb25maWd1cmluZyBpdCBhdCB0ZXN0IHBhcmFtcyBidXQg aW4gZ2VuZXJhbApzaG91bGRudCB3ZSBiZSB1c2luZyB0aGUgcGh5LT5saW5rIHJhdGUgYW5kIGxh bmUgY291bnQgaWYgaW4gcGh5IGNvbXBsaWFuY2UKYWxzbyBpbiBjb21wdXRlX2NvbmZpZygpPwoK SmFuaSwgYW55IHRob3VnaHRzIGhlcmU/CgpSZWdhcmRzCk1hbmFzaQoKPiArCj4gIAkvKgo+ICAJ ICogTk9URTogVGhpcyBpcyB0aGUgZHJpMS91bXMgZHVuZ2VvbiwgZG9uJ3QgYWRkIHN0dWZmIGhl cmUuIFlvdXIgcGF0Y2gKPiAgCSAqIHdpbGwgYmUgcmVqZWN0ZWQuIEluc3RlYWQgbG9vayBmb3Ig YSBiZXR0ZXIgcGxhY2UuCj4gLS0gCj4gMi4yMi4wCj4gCl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4 QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWls bWFuL2xpc3RpbmZvL2ludGVsLWdmeA== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.2 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id AF71FC432C0 for ; Mon, 18 Nov 2019 07:50:51 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 8DC672067D for ; Mon, 18 Nov 2019 07:50:51 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 8DC672067D Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 0BB2C6E057; Mon, 18 Nov 2019 07:50:51 +0000 (UTC) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by gabe.freedesktop.org (Postfix) with ESMTPS id A1D7E6E057 for ; Mon, 18 Nov 2019 07:50:49 +0000 (UTC) X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 17 Nov 2019 23:50:49 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.68,319,1569308400"; d="scan'208";a="356704489" Received: from labuser-z97x-ud5h.jf.intel.com (HELO intel.com) ([10.54.75.49]) by orsmga004.jf.intel.com with ESMTP; 17 Nov 2019 23:50:48 -0800 Date: Sun, 17 Nov 2019 23:53:54 -0800 From: Manasi Navare To: Animesh Manna Message-ID: <20191118075354.GH1135@intel.com> References: <20191115152549.23047-1-animesh.manna@intel.com> <20191115152549.23047-8-animesh.manna@intel.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20191115152549.23047-8-animesh.manna@intel.com> User-Agent: Mutt/1.5.24 (2015-08-30) Subject: Re: [Intel-gfx] [RFC 7/7] drm/i915/dp: Program vswing, pre-emphasis, test-pattern X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: jani.nikula@intel.com, nidhi1.gupta@intel.com, intel-gfx@lists.freedesktop.org Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" Message-ID: <20191118075354.NKZKs4tA5C2CWAEMZ4g3ZhW2P0oMxUCQI1weE_Sevx4@z> T24gRnJpLCBOb3YgMTUsIDIwMTkgYXQgMDg6NTU6NDlQTSArMDUzMCwgQW5pbWVzaCBNYW5uYSB3 cm90ZToKPiBUaGlzIHBhdGNoIHByb2Nlc3MgcGh5IGNvbXBsaWFuY2UgcmVxdWVzdCBieSBwcm9n cmFtbWluZyByZXF1ZXN0ZWQKPiB2c3dpbmcsIHByZS1lbXBoYXNpcyBhbmQgdGVzdCBwYXR0ZXJu LgoKQWdhaW4gaGVyZSBhIHNsaWdodGx5IGRldGFpbGVkIGRlc2NyaXB0aW9uIG9mIHdoZXJlIGlu IHRoZSBhdG9taWMgbW9kZXNldApkbyB3ZSBwcm9jZXNzIHRoZSBQSFkgY29tIHJlcXVlc3Qgd291 bGQgYmUgZ29vZC4KClRoZSBkZXNpZ24gb3ZlcmFsbCBsb29rcyBnb29kIG5vdywgZmV3IGNvbW1l bnRzIGJlbG93OgoKPiAKPiBTaWduZWQtb2ZmLWJ5OiBBbmltZXNoIE1hbm5hIDxhbmltZXNoLm1h bm5hQGludGVsLmNvbT4KPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRl bF9kZGkuYyAgICAgfCAxNCArKysrCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50 ZWxfZGlzcGxheS5jIHwgIDUgKysKPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRl bF9kcC5jICAgICAgfCA3NyArKysrKysrKysrKysrKysrKysrKwo+ICBkcml2ZXJzL2dwdS9kcm0v aTkxNS9kaXNwbGF5L2ludGVsX2RwLmggICAgICB8ICAyICsKPiAgZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9kcnYuaCAgICAgICAgICAgICAgfCAgMiArCj4gIDUgZmlsZXMgY2hhbmdlZCwgMTAw IGluc2VydGlvbnMoKykKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlz cGxheS9pbnRlbF9kZGkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGRp LmMKPiBpbmRleCA4ZjgxN2RlMzQ0NjAuLmMxMmQ0ZWJiZDM1MiAxMDA2NDQKPiAtLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RkaS5jCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kZGkuYwo+IEBAIC0zNzAwLDggKzM3MDAsMTcgQEAgc3Rh dGljIHZvaWQgaW50ZWxfZGRpX3ByZV9lbmFibGUoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29k ZXIsCj4gIHsKPiAgCXN0cnVjdCBpbnRlbF9jcnRjICpjcnRjID0gdG9faW50ZWxfY3J0YyhjcnRj X3N0YXRlLT51YXBpLmNydGMpOwo+ICAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 ID0gdG9faTkxNShjcnRjLT5iYXNlLmRldik7Cj4gKwlzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0 ICpkaWdfcG9ydCA9IGVuY190b19kaWdfcG9ydCgmZW5jb2Rlci0+YmFzZSk7Cj4gIAllbnVtIHBp cGUgcGlwZSA9IGNydGMtPnBpcGU7Cj4gIAo+ICsJaWYgKGVuY29kZXItPnR5cGUgPT0gSU5URUxf T1VUUFVUX0RQKSB7Cj4gKwkJaWYgKGRpZ19wb3J0LT5kcC5jb21wbGlhbmNlLnRlc3RfdHlwZSA9 PQo+ICsJCSAgICBEUF9URVNUX0xJTktfUEhZX1RFU1RfUEFUVEVSTikgewo+ICsJCQlpbnRlbF9k cF9wcm9jZXNzX3BoeV9yZXF1ZXN0KCZkaWdfcG9ydC0+ZHApOwo+ICsJCQlyZXR1cm47Cj4gKwkJ fQo+ICsJfQo+ICsKPiAgCS8qCj4gIAkgKiBXaGVuIGNhbGxlZCBmcm9tIERQIE1TVCBjb2RlOgo+ ICAJICogLSBjb25uX3N0YXRlIHdpbGwgYmUgTlVMTAo+IEBAIC00MTQ3LDYgKzQxNTYsMTEgQEAg aW50ZWxfZGRpX3ByZV9wbGxfZW5hYmxlKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ ICAJZW51bSBwaHkgcGh5ID0gaW50ZWxfcG9ydF90b19waHkoZGV2X3ByaXYsIGVuY29kZXItPnBv cnQpOwo+ICAJYm9vbCBpc190Y19wb3J0ID0gaW50ZWxfcGh5X2lzX3RjKGRldl9wcml2LCBwaHkp Owo+ICAKPiArCWlmIChlbmNvZGVyLT50eXBlID09IElOVEVMX09VVFBVVF9EUCkKPiArCQlpZiAo ZGlnX3BvcnQtPmRwLmNvbXBsaWFuY2UudGVzdF90eXBlID09Cj4gKwkJICAgIERQX1RFU1RfTElO S19QSFlfVEVTVF9QQVRURVJOKQo+ICsJCQlyZXR1cm47Cj4gKwo+ICAJaWYgKGlzX3RjX3BvcnQp Cj4gIAkJaW50ZWxfdGNfcG9ydF9nZXRfbGluayhkaWdfcG9ydCwgY3J0Y19zdGF0ZS0+bGFuZV9j b3VudCk7Cj4gIAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2lu dGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxh eS5jCj4gaW5kZXggYWRmNTBjNGIzOGFkLi40YWQxMWRmNTVmMDcgMTAwNjQ0Cj4gLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMKPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYwo+IEBAIC01NDUsNiArNTQ1LDEx IEBAIGljbF93YV9zY2FsZXJjbGtnYXRpbmcoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2LCBlbnVtIHBpcGUgcGlwZSwKPiAgc3RhdGljIGJvb2wKPiAgbmVlZHNfbW9kZXNldChjb25z dCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqc3RhdGUpCj4gIHsKPiArCXN0cnVjdCBkcm1faTkx NV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoc3RhdGUtPnVhcGkuY3J0Yy0+ZGV2KTsKPiAr Cj4gKwlpZiAoZGV2X3ByaXYtPmRwX3BoeV9jb21wKQo+ICsJCXJldHVybiB0cnVlOwoKQ291bGQg eW91IGRvdWJsZSBjaGVjayB3aXRoIEphbmkgTiBpZiB0aGlzIGlzIGFuIGFjY2VwdGFibGUgc29s dXRpb24gdG8KZm9jZSBhIGZ1bGwgbW9kZXNldCBmb3IgYSBQSFkgY29tcGxpYW5jZSB0ZXN0PwoK PiArCj4gIAlyZXR1cm4gZHJtX2F0b21pY19jcnRjX25lZWRzX21vZGVzZXQoJnN0YXRlLT51YXBp KTsKPiAgfQo+ICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9p bnRlbF9kcC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kcC5jCj4gaW5k ZXggZGYzMTI3OGExNjE5Li4yYzNkNGI2YzYwMzYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kcC5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv ZGlzcGxheS9pbnRlbF9kcC5jCj4gQEAgLTUwMTAsMTQgKzUwMTAsOTEgQEAgc3RhdGljIGlubGlu ZSB2b2lkIGludGVsX2RwX3BoeV9wYXR0ZXJuX3VwZGF0ZShzdHJ1Y3QgaW50ZWxfZHAgKmludGVs X2RwKQo+ICAJfQo+ICB9Cj4gIAo+ICtzdGF0aWMgdm9pZAo+ICtpbnRlbF9kcF9hdXRvdGVzdF9w aHlfZGRpX2Rpc2FibGUoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCkKPiArewo+ICsJc3RydWN0 IGludGVsX2RpZ2l0YWxfcG9ydCAqaW50ZWxfZGlnX3BvcnQgPSBkcF90b19kaWdfcG9ydChpbnRl bF9kcCk7Cj4gKwlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gaW50ZWxfZGlnX3BvcnQtPmJhc2Uu YmFzZS5kZXY7Cj4gKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1 KGRldik7Cj4gKwllbnVtIHBvcnQgcG9ydCA9IGludGVsX2RpZ19wb3J0LT5iYXNlLnBvcnQ7Cj4g Kwl1MzIgZGRpX2J1Zl9jdGxfdmFsdWUsIGRwX3RwX2N0bF92YWx1ZSwgdHJhbnNfZGRpX2Z1bmNf Y3RsX3ZhbHVlOwo+ICsKPiArCWRkaV9idWZfY3RsX3ZhbHVlID0gSTkxNV9SRUFEKERESV9CVUZf Q1RMKHBvcnQpKTsKPiArCWRwX3RwX2N0bF92YWx1ZSA9IEk5MTVfUkVBRChUR0xfRFBfVFBfQ1RM KHBvcnQpKTsKPiArCXRyYW5zX2RkaV9mdW5jX2N0bF92YWx1ZSA9IEk5MTVfUkVBRChUUkFOU19E RElfRlVOQ19DVEwocG9ydCkpOwo+ICsKPiArCWRkaV9idWZfY3RsX3ZhbHVlICAgICAgICAmPSB+ KERESV9CVUZfQ1RMX0VOQUJMRSB8IERESV9QT1JUX1dJRFRIX01BU0spOwo+ICsJZHBfdHBfY3Rs X3ZhbHVlICAgICAgICAgICY9IH5EUF9UUF9DVExfRU5BQkxFOwo+ICsJdHJhbnNfZGRpX2Z1bmNf Y3RsX3ZhbHVlICY9IH4oVFJBTlNfRERJX0ZVTkNfRU5BQkxFIHwKPiArCQkJCSAgICAgIERESV9Q T1JUX1dJRFRIX01BU0spOwo+ICsKPiArCUk5MTVfV1JJVEUoRERJX0JVRl9DVEwocG9ydCksIGRk aV9idWZfY3RsX3ZhbHVlKTsKPiArCUk5MTVfV1JJVEUoVEdMX0RQX1RQX0NUTChwb3J0KSwgZHBf dHBfY3RsX3ZhbHVlKTsKPiArCUk5MTVfV1JJVEUoVFJBTlNfRERJX0ZVTkNfQ1RMKHBvcnQpLCB0 cmFuc19kZGlfZnVuY19jdGxfdmFsdWUpOwo+ICt9Cj4gKwo+ICtzdGF0aWMgdm9pZAo+ICtpbnRl bF9kcF9hdXRvdGVzdF9waHlfZGRpX2VuYWJsZShzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwLCB1 aW50OF90IGxhbmVfY250KQo+ICt7Cj4gKwlzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICppbnRl bF9kaWdfcG9ydCA9IGRwX3RvX2RpZ19wb3J0KGludGVsX2RwKTsKPiArCXN0cnVjdCBkcm1fZGV2 aWNlICpkZXYgPSBpbnRlbF9kaWdfcG9ydC0+YmFzZS5iYXNlLmRldjsKPiArCXN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZGV2KTsKPiArCWVudW0gcG9ydCBwb3J0 ID0gaW50ZWxfZGlnX3BvcnQtPmJhc2UucG9ydDsKPiArCXUzMiBkZGlfYnVmX2N0bF92YWx1ZSwg ZHBfdHBfY3RsX3ZhbHVlLCB0cmFuc19kZGlfZnVuY19jdGxfdmFsdWU7Cj4gKwo+ICsJZGRpX2J1 Zl9jdGxfdmFsdWUgPSBJOTE1X1JFQUQoRERJX0JVRl9DVEwocG9ydCkpOwo+ICsJZHBfdHBfY3Rs X3ZhbHVlID0gSTkxNV9SRUFEKFRHTF9EUF9UUF9DVEwocG9ydCkpOwo+ICsJdHJhbnNfZGRpX2Z1 bmNfY3RsX3ZhbHVlID0gSTkxNV9SRUFEKFRSQU5TX0RESV9GVU5DX0NUTChwb3J0KSk7Cj4gKwo+ ICsJZGRpX2J1Zl9jdGxfdmFsdWUgICAgICAgIHw9IERESV9CVUZfQ1RMX0VOQUJMRSB8Cj4gKwkJ CQkgICAgRERJX1BPUlRfV0lEVEgobGFuZV9jbnQpOwo+ICsJZHBfdHBfY3RsX3ZhbHVlICAgICAg ICAgIHw9IERQX1RQX0NUTF9FTkFCTEU7Cj4gKwl0cmFuc19kZGlfZnVuY19jdGxfdmFsdWUgfD0g VFJBTlNfRERJX0ZVTkNfRU5BQkxFIHwKPiArCQkJCSAgICBERElfUE9SVF9XSURUSChsYW5lX2Nu dCk7Cj4gKwo+ICsJSTkxNV9XUklURShUUkFOU19ERElfRlVOQ19DVEwocG9ydCksIHRyYW5zX2Rk aV9mdW5jX2N0bF92YWx1ZSk7Cj4gKwlJOTE1X1dSSVRFKFRHTF9EUF9UUF9DVEwocG9ydCksIGRw X3RwX2N0bF92YWx1ZSk7Cj4gKwlJOTE1X1dSSVRFKERESV9CVUZfQ1RMKHBvcnQpLCBkZGlfYnVm X2N0bF92YWx1ZSk7Cj4gK30KPiArCj4gK3ZvaWQgaW50ZWxfZHBfcHJvY2Vzc19waHlfcmVxdWVz dChzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQo+ICt7Cj4gKwlzdHJ1Y3QgZHJtX2RwX3BoeV90 ZXN0X3BhcmFtcyAqZGF0YSA9Cj4gKwkJJmludGVsX2RwLT5jb21wbGlhbmNlLnRlc3RfZGF0YS5w aHl0ZXN0Owo+ICsJdTggbGlua19zdGF0dXNbRFBfTElOS19TVEFUVVNfU0laRV07Cj4gKwo+ICsJ aWYgKCFpbnRlbF9kcF9nZXRfbGlua19zdGF0dXMoaW50ZWxfZHAsIGxpbmtfc3RhdHVzKSkgewo+ ICsJCURSTV9ERUJVR19LTVMoImZhaWxlZCB0byBnZXQgbGluayBzdGF0dXNcbiIpOwo+ICsJCXJl dHVybjsKPiArCX0KPiArCj4gKwkvKiByZXRyaWV2ZSB2c3dpbmcgJiBwcmUtZW1waGFzaXMgc2V0 dGluZyAqLwo+ICsJaW50ZWxfZ2V0X2FkanVzdF90cmFpbihpbnRlbF9kcCwgbGlua19zdGF0dXMp Owo+ICsKPiArCWludGVsX2RwX2F1dG90ZXN0X3BoeV9kZGlfZGlzYWJsZShpbnRlbF9kcCk7Cj4g Kwo+ICsJaW50ZWxfZHBfc2V0X3NpZ25hbF9sZXZlbHMoaW50ZWxfZHApOwo+ICsKPiArCWludGVs X2RwX3BoeV9wYXR0ZXJuX3VwZGF0ZShpbnRlbF9kcCk7Cj4gKwo+ICsJaW50ZWxfZHBfYXV0b3Rl c3RfcGh5X2RkaV9lbmFibGUoaW50ZWxfZHAsIGRhdGEtPm51bV9sYW5lcyk7Cj4gKwo+ICsJZHJt X2RwX3NldF9waHlfdGVzdF9wYXR0ZXJuKCZpbnRlbF9kcC0+YXV4LCBkYXRhKTsKPiArfQo+ICsK PiAgc3RhdGljIHU4IGludGVsX2RwX2F1dG90ZXN0X3BoeV9wYXR0ZXJuKHN0cnVjdCBpbnRlbF9k cCAqaW50ZWxfZHApCj4gIHsKPiAgCXU4IHRlc3RfcmVzdWx0ID0gRFBfVEVTVF9OQUs7Cj4gKwlz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkcF90b19pOTE1KGludGVsX2RwKTsK PiAgCj4gIAl0ZXN0X3Jlc3VsdCA9IGludGVsX2RwX3ByZXBhcmVfcGh5dGVzdChpbnRlbF9kcCk7 Cj4gIAlpZiAodGVzdF9yZXN1bHQgIT0gRFBfVEVTVF9BQ0spCj4gIAkJRFJNX0VSUk9SKCJQaHkg dGVzdCBwcmVwYXJhdGlvbiBmYWlsZWRcbiIpOwo+ICAKPiArCS8qIFNldCB0ZXN0IGFjdGl2ZSBm bGFnIGhlcmUgc28gdXNlcnNwYWNlIGRvZXNuJ3QgaW50ZXJydXB0IHRoaW5ncyAqLwo+ICsJaW50 ZWxfZHAtPmNvbXBsaWFuY2UudGVzdF9hY3RpdmUgPSAxOwo+ICsJZGV2X3ByaXYtPmRwX3BoeV9j b21wID0gdHJ1ZTsKPiArCgpUaGlzIHNob3VsZCBiZSBtb3ZlZCB0byB0aGUgcGF0Y2ggMyBJIHRo aW5rIHdoZXJlIHlvdSBoYW5kbGUgIHBoeSB0ZXN0IHJlcXVlc3QgYW5kCmNhbGwgcHJlcGFyZSBm dW5jdGlvbi4gVGhlIHNhbWUgcGF0Y2ggdGhhdCBoYW5kbGVzIHRlc3QgcmVxIGNhbiBzZXQgdGhl IHRlc3QgYWN0aXZlIHRvIDEuCgo+ICAJcmV0dXJuIHRlc3RfcmVzdWx0Owo+ICB9Cj4gIAo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RwLmggYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RwLmgKPiBpbmRleCAwZDBjYjY5MmY3MDEu LmIxMjc0ZWNmZmM3ZiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5 L2ludGVsX2RwLmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rw LmgKPiBAQCAtMTIwLDYgKzEyMCw4IEBAIHZvaWQgaW50ZWxfZHBfaGRyX21ldGFkYXRhX2VuYWJs ZShzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwLAo+ICAJCQkJICBjb25zdCBzdHJ1Y3QgaW50ZWxf Y3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSwKPiAgCQkJCSAgY29uc3Qgc3RydWN0IGRybV9jb25uZWN0 b3Jfc3RhdGUgKmNvbm5fc3RhdGUpOwo+ICBib29sIGludGVsX2RpZ2l0YWxfcG9ydF9jb25uZWN0 ZWQoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIpOwo+ICt2b2lkIGludGVsX2RwX3Byb2Nl c3NfcGh5X3JlcXVlc3Qoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCk7Cj4gKwo+ICAKPiAgc3Rh dGljIGlubGluZSB1bnNpZ25lZCBpbnQgaW50ZWxfZHBfdW51c2VkX2xhbmVfbWFzayhpbnQgbGFu ZV9jb3VudCkKPiAgewo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Ry di5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+IGluZGV4IDE3NzlmNjAwZmNm Yi4uMjMyZTBkZmI5ZDhlIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf ZHJ2LmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4gQEAgLTEyODUs NiArMTI4NSw4IEBAIHN0cnVjdCBkcm1faTkxNV9wcml2YXRlIHsKPiAgCj4gIAlJOTE1X1NFTEZU RVNUX0RFQ0xBUkUoc3RydWN0IGk5MTVfc2VsZnRlc3Rfc3Rhc2ggc2VsZnRlc3Q7KQo+ICAKPiAr CWJvb2wgZHBfcGh5X2NvbXA7CgpOb3Qgc3VyZSBpZiB0aGlzIGlzIHRoZSBiZXN0IHdheSB0byBo YW5kbGUgdGhlIGZ1bGwgbWRvZXNldCwgY291bGQgeW91IGRvdWJsZQpjaGVjayB3aXRoIEphbmk/ CgpPdGhlciB0aGFuIHRoYXQgSSB0aGluayBub3cgdGhlIHBsYWNlbWVudCBpbiBwcmVfZW5hYmxl X2RwIGlzIGdvb2QuCgpUaGUgb25seSBvdGhlciBjb25jZXJuIEkgaGF2ZSBpcyBjaGFuZ2luZyBs aW5rIHJhdGUgYW5kIGxhbmUgY291bnQgb25seSBoYXBwZW5zCmluIHNldF9waHlfcGF0dGVybnMg d2hlcmUgd2Ugd3JpdGUgdGhlIHRlc3QgbGluayByYXRlIGFuZCBsYW5lIGNvdW50CmRpcmVjdGx5 IHRvIHRoZSBsaW5rIGJ3IHNldC4gQnV0IHRoZSBkcml2ZXIncyBjb21wdXRlIGNvbmZpZyBpcyBz dGlsbCBjb25maWd1cmluZwp0aGUgcGlwZSBhbmQgcGxscyBiYXNlZCBvbiB0aGUgbGluayByYXRl IGFuZCBsYW5lIGNvdW50IHRoYXQgY291bGQgYmUKZGlmZmVyZW50IHRoYW4gdGhlIHRlc3QgbGlu ayByYXRlL2NvdW50LiBUaGlzIG1pZ2h0IHdvcmsgbm93IHNpbmNlIHlvdSBzYWlkCnRoZSBsaW5r IGxheWVyIHRlc3QgaXMgYWxyZWFkeSBjb25maWd1cmluZyBpdCBhdCB0ZXN0IHBhcmFtcyBidXQg aW4gZ2VuZXJhbApzaG91bGRudCB3ZSBiZSB1c2luZyB0aGUgcGh5LT5saW5rIHJhdGUgYW5kIGxh bmUgY291bnQgaWYgaW4gcGh5IGNvbXBsaWFuY2UKYWxzbyBpbiBjb21wdXRlX2NvbmZpZygpPwoK SmFuaSwgYW55IHRob3VnaHRzIGhlcmU/CgpSZWdhcmRzCk1hbmFzaQoKPiArCj4gIAkvKgo+ICAJ ICogTk9URTogVGhpcyBpcyB0aGUgZHJpMS91bXMgZHVuZ2VvbiwgZG9uJ3QgYWRkIHN0dWZmIGhl cmUuIFlvdXIgcGF0Y2gKPiAgCSAqIHdpbGwgYmUgcmVqZWN0ZWQuIEluc3RlYWQgbG9vayBmb3Ig YSBiZXR0ZXIgcGxhY2UuCj4gLS0gCj4gMi4yMi4wCj4gCl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4 QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWls bWFuL2xpc3RpbmZvL2ludGVsLWdmeA==