From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH v6 1/2] drm: Add connector property to limit max bpc Date: Tue, 18 Sep 2018 19:49:07 +0300 Message-ID: <20180918164907.GU5565@intel.com> References: <20180918045209.525-1-radhakrishna.sripada@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: <20180918045209.525-1-radhakrishna.sripada@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Radhakrishna Sripada Cc: Stanislav Lisovskiy , Daniel Vetter , intel-gfx@lists.freedesktop.org, Kishore Kadiyala , Manasi Navare , dri-devel@lists.freedesktop.org, Rodrigo Vivi List-Id: dri-devel@lists.freedesktop.org T24gTW9uLCBTZXAgMTcsIDIwMTggYXQgMDk6NTI6MDhQTSAtMDcwMCwgUmFkaGFrcmlzaG5hIFNy aXBhZGEgd3JvdGU6Cj4gQXQgdGltZXMgMTJicGMgSERNSSBjYW5ub3QgYmUgZHJpdmVuIGR1ZSB0 byBmYXVsdHkgY2FibGVzLCBkb25nbGVzCj4gbGV2ZWwgc2hpZnRlcnMgZXRjLiBUbyB3b3JrYXJv dW5kIHRoZW0gd2UgbWF5IG5lZWQgdG8gZHJpdmUgdGhlIG91dHB1dAo+IGF0IGEgbG93ZXIgYnBj LiBDdXJyZW50bHkgdGhlIHVzZXIgc3BhY2UgZG9lcyBub3QgaGF2ZSBhIHdheSB0byBsaW1pdAo+ IHRoZSBicGMuIFRoZSBkZWZhdWx0IGJwYyB0byBiZSBwcm9ncmFtbWVkIGlzIGRlY2lkZWQgYnkg dGhlIGRyaXZlciBhbmQKPiBpcyBydW4gYWdhaW5zdCBjb25uZWN0b3IgbGltaXRhdGlvbnMuCj4g Cj4gQ3JlYXRpbmcgYSBuZXcgY29ubmVjdG9yIHByb3BlcnR5ICJtYXggYnBjIiBpbiBvcmRlciB0 byBsaW1pdCB0aGUgYnBjLgo+IHhyYW5kciBjYW4gbWFrZSB1c2Ugb2YgdGhpcyBjb25uZWN0b3Ig cHJvcGVydHkgdG8gbWFrZSBzdXJlIHRoYXQgYnBjIGRvZXMKPiBub3QgZXhjZWVkIHRoZSBjb25m aWd1cmVkIHZhbHVlLiBUaGlzIHByb3BlcnR5IGNhbiBiZSB1c2VkIGJ5IHVzZXJzcGFjZSB0bwo+ IHNldCB0aGUgYnBjLgo+IAo+IFYyOiBJbml0aWFsaXplIG1heF9icGMgdG8gc2F0aXNmeSBrbXNf cHJvcGVydGllcwo+IFYzOiBNb3ZlIHRoZSBwcm9wZXJ0eSB0byBkcm1fY29ubmVjdG9yCj4gVjQ6 IFNwbGl0IGRybSBhbmQgaTkxNSBjb21wb25lbnRzKFZpbGxlKQo+IFY1OiBNYWtlIHRoZSBwcm9w ZXJ0eSBwZXIgY29ubmVjdG9yKFZpbGxlKQo+IFY2OiBDb21wYXJlIHRoZSByZXF1ZXN0ZWQgYnBj IHRvIGNvbm5lY3RvciBicGMoRGFuaWVsKQo+ICAgICBNb3ZlIHRoZSBhdHRhY2hfcHJvcGVydHkg ZnVuY3Rpb24gdG8gY29yZShWaWxsZSkKPiAKPiBDYzogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5z eXJqYWxhQGxpbnV4LmludGVsLmNvbT4KPiBDYzogRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRl ckBmZndsbC5jaD4KPiBDYzogS2lzaG9yZSBLYWRpeWFsYSA8a2lzaG9yZS5rYWRpeWFsYUBpbnRl bC5jb20+Cj4gQ2M6IFJvZHJpZ28gVml2aSA8cm9kcmlnby52aXZpQGludGVsLmNvbT4KPiBDYzog TWFuYXNpIE5hdmFyZSA8bWFuYXNpLmQubmF2YXJlQGludGVsLmNvbT4KPiBDYzogU3RhbmlzbGF2 IExpc292c2tpeSA8c3RhbmlzbGF2Lmxpc292c2tpeUBpbnRlbC5jb20+Cj4gU2lnbmVkLW9mZi1i eTogUmFkaGFrcmlzaG5hIFNyaXBhZGEgPHJhZGhha3Jpc2huYS5zcmlwYWRhQGludGVsLmNvbT4K PiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWMuYyAgICAgICAgfCAyNCArKysrKysr KysrKysrKysrKysrKysrKysKPiAgZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMg fCAgNCArKysrCj4gIGRyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX3VhcGkuYyAgIHwgIDQgKysr Kwo+ICBkcml2ZXJzL2dwdS9kcm0vZHJtX2Nvbm5lY3Rvci5jICAgICB8IDM0ICsrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysKPiAgaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oICAg ICAgICAgfCAyMCArKysrKysrKysrKysrKysrKysrKwo+ICA1IGZpbGVzIGNoYW5nZWQsIDg2IGlu c2VydGlvbnMoKykKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWMu YyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljLmMKPiBpbmRleCA3YWRhNzU5MTk3NTYuLmZh OTk5NmRlYjEzMiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pYy5jCj4g KysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWMuYwo+IEBAIC0zOTAsNiArMzkwLDcgQEAg c3RhdGljIGludCBkcm1fYXRvbWljX2Nvbm5lY3Rvcl9jaGVjayhzdHJ1Y3QgZHJtX2Nvbm5lY3Rv ciAqY29ubmVjdG9yLAo+ICB7Cj4gIAlzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKmNydGNfc3RhdGU7 Cj4gIAlzdHJ1Y3QgZHJtX3dyaXRlYmFja19qb2IgKndyaXRlYmFja19qb2IgPSBzdGF0ZS0+d3Jp dGViYWNrX2pvYjsKPiArCXN0cnVjdCBkcm1fZGlzcGxheV9pbmZvICppbmZvID0gJmNvbm5lY3Rv ci0+ZGlzcGxheV9pbmZvOwo+ICAKPiAgCWlmICgoY29ubmVjdG9yLT5jb25uZWN0b3JfdHlwZSAh PSBEUk1fTU9ERV9DT05ORUNUT1JfV1JJVEVCQUNLKSB8fCAhd3JpdGViYWNrX2pvYikKPiAgCQly ZXR1cm4gMDsKPiBAQCAtNDAwLDYgKzQwMSwyOSBAQCBzdGF0aWMgaW50IGRybV9hdG9taWNfY29u bmVjdG9yX2NoZWNrKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCj4gIAkJcmV0dXJu IC1FSU5WQUw7Cj4gIAl9Cj4gIAo+ICsJaWYgKGNvbm5lY3Rvci0+bWF4X2JwY19wcm9wZXJ0eSkg ewo+ICsJCWlmIChpbmZvLT5icGMgIT0gMCAmJiBpbmZvLT5icGMgPCBzdGF0ZS0+bWF4X3JlcXVl c3RlZF9icGMpIHsKPiArCQkJLyogRG9uJ3QgdXNlIGFuIGludmFsaWQgRURJRCBicGMgdmFsdWUg Ki8KPiArCQkJRFJNX0RFQlVHX0FUT01JQygiW0NPTk5FQ1RPUjolZDolc10gQ2xhbXBpbmcgcmVx dWVzdGVkIgo+ICsJCQkJCSAiIGRpc3BsYXkgYnBwICh3YXMgJWQpIHRvIEVESUQgcmVwb3J0ZWQi Cj4gKwkJCQkJICJtYXggb2YgJWRcbiIsIGNvbm5lY3Rvci0+YmFzZS5pZCwKPiArCQkJCQkgY29u bmVjdG9yLT5uYW1lLAo+ICsJCQkJCSBzdGF0ZS0+bWF4X3JlcXVlc3RlZF9icGMsIGluZm8tPmJw Yyk7Cj4gKwkJCXN0YXRlLT5tYXhfYnBjID0gaW5mby0+YnBjOwo+ICsJCX0gZWxzZSBpZiAoaW5m by0+YnBjICE9IDApIHsKPiArCQkJc3RhdGUtPm1heF9icGMgPSBzdGF0ZS0+bWF4X3JlcXVlc3Rl ZF9icGM7Cj4gKwkJfSBlbHNlIHsKPiArCQkJLyogQ2xhbXAgYnBjIHRvIDggb24gc2NyZWVucyB3 aXRvdXQgRURJRCAxLjQgKi8KPiArCQkJRFJNX0RFQlVHX0FUT01JQygiW0NPTk5FQ1RPUjolZDol c10gQ2xhbXBpbmcgcmVxdWVzdGVkIgo+ICsJCQkJCSAiIGRpc3BsYXkgYnBwICh3YXMgJWQpIHRv IGRlZmF1bHQgbGltaXQiCj4gKwkJCQkJICIgb2YgMjRcbiIsIGNvbm5lY3Rvci0+YmFzZS5pZCwK PiArCQkJCQkgY29ubmVjdG9yLT5uYW1lLCBzdGF0ZS0+bWF4X3JlcXVlc3RlZF9icGMpOwo+ICsJ CQlzdGF0ZS0+bWF4X2JwYyA9IDg7Cj4gKwkJfQo+ICsJfSBlbHNlIHsKPiArCQlzdGF0ZS0+bWF4 X2JwYyA9IGluZm8tPmJwYyA/IGluZm8tPmJwYyA6IDg7Cj4gKwl9CgpTb21ldGhpbmcgbGlrZQoK bWF4X2JwYyA9IGluZm8tPmJwYyA/OiA4OwppZiAobWF4X2JwY19wcm9wKQoJbWF4X2JwYyA9IG1p bihtYXhfYnBjLCBtYXhfcmVxdWVzdGVkX2JwYyk7Cgpmb3Igc2hvcnQ/CgpOb3QgcXVpdGUgc3Vy ZSB0aGUgOGJwYyBmYWxsYmFjayBzaG91bGQgYmUgaGVyZS4gTWF5YmUgaXQgc2hvdWxkIGJlIGlu CnRoZSBlZGlkIGNvZGUgaW5zdGVhZD8gVGhvdWdoIEkgZ3Vlc3Mgd2Ugd2FudCBzb21ldGhpbmcg Zm9yIGVkaWRsZXNzCmRpc3BsYXlzIHRvbyBzbyBtYXliZSB0aGlzIGlzIGZpbmUuCgo+ICsKPiAg CWlmIChzdGF0ZS0+Y3J0YykKPiAgCQljcnRjX3N0YXRlID0gZHJtX2F0b21pY19nZXRfZXhpc3Rp bmdfY3J0Y19zdGF0ZShzdGF0ZS0+c3RhdGUsCj4gIAkJCQkJCQkJc3RhdGUtPmNydGMpOwo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY19oZWxwZXIuYyBiL2RyaXZlcnMv Z3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jCj4gaW5kZXggM2NmMWFhMTMyNzc4Li5kOWNlODA3 N2ZiNmEgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMK PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY19oZWxwZXIuYwo+IEBAIC02MzksNiAr NjM5LDEwIEBAIGRybV9hdG9taWNfaGVscGVyX2NoZWNrX21vZGVzZXQoc3RydWN0IGRybV9kZXZp Y2UgKmRldiwKPiAgCQkJaWYgKG9sZF9jb25uZWN0b3Jfc3RhdGUtPmxpbmtfc3RhdHVzICE9Cj4g IAkJCSAgICBuZXdfY29ubmVjdG9yX3N0YXRlLT5saW5rX3N0YXR1cykKPiAgCQkJCW5ld19jcnRj X3N0YXRlLT5jb25uZWN0b3JzX2NoYW5nZWQgPSB0cnVlOwo+ICsKPiArCQkJaWYgKG9sZF9jb25u ZWN0b3Jfc3RhdGUtPm1heF9yZXF1ZXN0ZWRfYnBjICE9Cj4gKwkJCSAgICBuZXdfY29ubmVjdG9y X3N0YXRlLT5tYXhfcmVxdWVzdGVkX2JwYykKPiArCQkJCW5ld19jcnRjX3N0YXRlLT5jb25uZWN0 b3JzX2NoYW5nZWQgPSB0cnVlOwo+ICAJCX0KPiAgCj4gIAkJaWYgKGZ1bmNzLT5hdG9taWNfY2hl Y2spCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX3VhcGkuYyBiL2Ry aXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX3VhcGkuYwo+IGluZGV4IGQ1YjdmMzE1MDk4Yy4uODZh YzMzOTIyYjA5IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX3VhcGku Ywo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX3VhcGkuYwo+IEBAIC03NDAsNiAr NzQwLDggQEAgc3RhdGljIGludCBkcm1fYXRvbWljX2Nvbm5lY3Rvcl9zZXRfcHJvcGVydHkoc3Ry dWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKPiAgCj4gIAkJcmV0dXJuIHNldF9vdXRfZmVu Y2VfZm9yX2Nvbm5lY3RvcihzdGF0ZS0+c3RhdGUsIGNvbm5lY3RvciwKPiAgCQkJCQkJICAgZmVu Y2VfcHRyKTsKPiArCX0gZWxzZSBpZiAocHJvcGVydHkgPT0gY29ubmVjdG9yLT5tYXhfYnBjX3By b3BlcnR5KSB7Cj4gKwkJc3RhdGUtPm1heF9yZXF1ZXN0ZWRfYnBjID0gdmFsOwo+ICAJfSBlbHNl IGlmIChjb25uZWN0b3ItPmZ1bmNzLT5hdG9taWNfc2V0X3Byb3BlcnR5KSB7Cj4gIAkJcmV0dXJu IGNvbm5lY3Rvci0+ZnVuY3MtPmF0b21pY19zZXRfcHJvcGVydHkoY29ubmVjdG9yLAo+ICAJCQkJ c3RhdGUsIHByb3BlcnR5LCB2YWwpOwo+IEBAIC04MDQsNiArODA2LDggQEAgZHJtX2F0b21pY19j b25uZWN0b3JfZ2V0X3Byb3BlcnR5KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCj4g IAkJKnZhbCA9IDA7Cj4gIAl9IGVsc2UgaWYgKHByb3BlcnR5ID09IGNvbmZpZy0+d3JpdGViYWNr X291dF9mZW5jZV9wdHJfcHJvcGVydHkpIHsKPiAgCQkqdmFsID0gMDsKPiArCX0gZWxzZSBpZiAo cHJvcGVydHkgPT0gY29ubmVjdG9yLT5tYXhfYnBjX3Byb3BlcnR5KSB7Cj4gKwkJKnZhbCA9IHN0 YXRlLT5tYXhfcmVxdWVzdGVkX2JwYzsKPiAgCX0gZWxzZSBpZiAoY29ubmVjdG9yLT5mdW5jcy0+ YXRvbWljX2dldF9wcm9wZXJ0eSkgewo+ICAJCXJldHVybiBjb25uZWN0b3ItPmZ1bmNzLT5hdG9t aWNfZ2V0X3Byb3BlcnR5KGNvbm5lY3RvciwKPiAgCQkJCXN0YXRlLCBwcm9wZXJ0eSwgdmFsKTsK PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3IuYyBiL2RyaXZlcnMv Z3B1L2RybS9kcm1fY29ubmVjdG9yLmMKPiBpbmRleCAxZTQwZTVkZWNiZTkuLjA2YWQ1OTIyMmUw MyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2Nvbm5lY3Rvci5jCj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3IuYwo+IEBAIC0xNTgzLDYgKzE1ODMsNDAgQEAg dm9pZCBkcm1fY29ubmVjdG9yX3NldF9saW5rX3N0YXR1c19wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Nv bm5lY3RvciAqY29ubmVjdG9yLAo+ICBFWFBPUlRfU1lNQk9MKGRybV9jb25uZWN0b3Jfc2V0X2xp bmtfc3RhdHVzX3Byb3BlcnR5KTsKPiAgCj4gIC8qKgo+ICsgKiBkcm1fY29ubmVjdG9yX2F0dGFj aF9tYXhfYnBjX3Byb3BlcnR5IC0gYXR0YWNoICJtYXggYnBjIiBwcm9wZXJ0eQo+ICsgKiBAY29u bmVjdG9yOiBjb25uZWN0b3IgdG8gYXR0YWNoIG1heCBicGMgcHJvcGVydHkgb24uCj4gKyAqIEBt aW46IFRoZSBtaW5pbXVtIGJpdCBkZXB0aCBzdXBwb3J0ZWQgYnkgdGhlIGNvbm5lY3Rvci4KPiAr ICogQG1heDogVGhlIG1heGltdW0gYml0IGRlcHRoIHN1cHBvcnRlZCBieSB0aGUgY29ubmVjdG9y Lgo+ICsgKgo+ICsgKiBUaGlzIGlzIHVzZWQgdG8gYWRkIHN1cHBvcnQgZm9yIGxpbWl0aW5nIHRo ZSBiaXQgZGVwdGggb24gYSBjb25uZWN0b3IuCj4gKyAqCj4gKyAqIFJldHVybnM6Cj4gKyAqIFpl cm8gb24gc3VjY2VzcywgbmVnYXRpdmUgZXJybm8gb24gZmFpbHVyZS4KPiArICovCj4gK2ludCBk cm1fY29ubmVjdG9yX2F0dGFjaF9tYXhfYnBjX3Byb3BlcnR5KHN0cnVjdCBkcm1fY29ubmVjdG9y ICpjb25uZWN0b3IsIGludAo+ICsJCQkJCSAgbWluLCBpbnQgbWF4KQo+ICt7Cj4gKwlzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2ID0gY29ubmVjdG9yLT5kZXY7Cj4gKwlzdHJ1Y3QgZHJtX3Byb3BlcnR5 ICpwcm9wOwo+ICsKPiArCXByb3AgPSBjb25uZWN0b3ItPm1heF9icGNfcHJvcGVydHk7Cj4gKwlp ZiAocHJvcCA9PSBOVUxMKSB7Cj4gKwkJcHJvcCA9IGRybV9wcm9wZXJ0eV9jcmVhdGVfcmFuZ2Uo ZGV2LCAwLCAibWF4IGJwYyIsIG1pbiwgbWF4KTsKPiArCQlpZiAoIXByb3ApCj4gKwkJCXJldHVy biAtRU5PTUVNOwo+ICsKPiArCQljb25uZWN0b3ItPm1heF9icGNfcHJvcGVydHkgPSBwcm9wOwo+ ICsJfQo+ICsKPiArCWRybV9vYmplY3RfYXR0YWNoX3Byb3BlcnR5KCZjb25uZWN0b3ItPmJhc2Us IHByb3AsIG1heCk7Cj4gKwljb25uZWN0b3ItPnN0YXRlLT5tYXhfcmVxdWVzdGVkX2JwYyA9IG1h eDsKPiArCj4gKwo+ICsJcmV0dXJuIDA7Cj4gK30KPiArRVhQT1JUX1NZTUJPTChkcm1fY29ubmVj dG9yX2F0dGFjaF9tYXhfYnBjX3Byb3BlcnR5KTsKPiArCj4gKy8qKgo+ICAgKiBkcm1fY29ubmVj dG9yX2luaXRfcGFuZWxfb3JpZW50YXRpb25fcHJvcGVydHkgLQo+ICAgKglpbml0aWFsaXplIHRo ZSBjb25uZWN0ZXJzIHBhbmVsX29yaWVudGF0aW9uIHByb3BlcnR5Cj4gICAqIEBjb25uZWN0b3I6 IGNvbm5lY3RvciBmb3Igd2hpY2ggdG8gaW5pdCB0aGUgcGFuZWwtb3JpZW50YXRpb24gcHJvcGVy dHkuCj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaCBiL2luY2x1ZGUv ZHJtL2RybV9jb25uZWN0b3IuaAo+IGluZGV4IDkxYTg3N2ZhMDBjYi4uZDljNjBmZGU1MzcyIDEw MDY0NAo+IC0tLSBhL2luY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaAo+ICsrKyBiL2luY2x1ZGUv ZHJtL2RybV9jb25uZWN0b3IuaAo+IEBAIC00NjEsNiArNDYxLDE4IEBAIHN0cnVjdCBkcm1fY29u bmVjdG9yX3N0YXRlIHsKPiAgCSAqIGRybV93cml0ZWJhY2tfc2lnbmFsX2NvbXBsZXRpb24oKQo+ ICAJICovCj4gIAlzdHJ1Y3QgZHJtX3dyaXRlYmFja19qb2IgKndyaXRlYmFja19qb2I7Cj4gKwo+ ICsJLyoqCj4gKwkgKiBAbWF4X3JlcXVlc3RlZF9icGM6IENvbm5lY3RvciBwcm9wZXJ0eSB0byBs aW1pdCB0aGUgbWF4aW11bSBiaXQKPiArCSAqIGRlcHRoIG9mIHRoZSBwaXhlbHMuCj4gKwkgKi8K PiArCXVuc2lnbmVkIGludCBtYXhfcmVxdWVzdGVkX2JwYzsKPiArCj4gKwkvKioKPiArCSAqIEBt YXhfYnBjOiBDb25uZWN0b3IgbWF4X2JwYyBiYXNlZCBvbiB0aGUgcmVxdWVzdGVkIG1heF9icGMg cHJvcGVydHkKPiArCSAqIGFuZCB0aGUgY29ubmVjdG9yIGJwYyBsaW1pdGF0aW9ucyBvYnRhaW5l ZCBmcm9tIGVkaWQuCj4gKwkgKi8KPiArCXVuc2lnbmVkIGludCBtYXhfYnBjOwoKQ291bGQgbWFr ZSBib3RoIG9mIHRoZXNlIHU4LgoKPiAgfTsKPiAgCj4gIC8qKgo+IEBAIC05MjQsNiArOTM2LDEy IEBAIHN0cnVjdCBkcm1fY29ubmVjdG9yIHsKPiAgCSAqLwo+ICAJc3RydWN0IGRybV9wcm9wZXJ0 eV9ibG9iICpwYXRoX2Jsb2JfcHRyOwo+ICAKPiArCS8qKgo+ICsJICogQG1heF9icGNfcHJvcGVy dHk6IERlZmF1bHQgY29ubmVjdG9yIHByb3BlcnR5IGZvciB0aGUgbWF4IGJwYyB0byBiZQo+ICsJ ICogZHJpdmVuIG91dCBvZiB0aGUgY29ubmVjdG9yLgo+ICsJICovCj4gKwlzdHJ1Y3QgZHJtX3By b3BlcnR5ICptYXhfYnBjX3Byb3BlcnR5Owo+ICsKPiAgI2RlZmluZSBEUk1fQ09OTkVDVE9SX1BP TExfSFBEICgxIDw8IDApCj4gICNkZWZpbmUgRFJNX0NPTk5FQ1RPUl9QT0xMX0NPTk5FQ1QgKDEg PDwgMSkKPiAgI2RlZmluZSBEUk1fQ09OTkVDVE9SX1BPTExfRElTQ09OTkVDVCAoMSA8PCAyKQo+ IEBAIC0xMjAxLDYgKzEyMTksOCBAQCB2b2lkIGRybV9jb25uZWN0b3Jfc2V0X2xpbmtfc3RhdHVz X3Byb3BlcnR5KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCj4gIAkJCQkJICAgIHVp bnQ2NF90IGxpbmtfc3RhdHVzKTsKPiAgaW50IGRybV9jb25uZWN0b3JfaW5pdF9wYW5lbF9vcmll bnRhdGlvbl9wcm9wZXJ0eSgKPiAgCXN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsIGlu dCB3aWR0aCwgaW50IGhlaWdodCk7Cj4gK2ludCBkcm1fY29ubmVjdG9yX2F0dGFjaF9tYXhfYnBj X3Byb3BlcnR5KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCj4gKwkJCQkJICBpbnQg bWluLCBpbnQgbWF4KTsKPiAgCj4gIC8qKgo+ICAgKiBzdHJ1Y3QgZHJtX3RpbGVfZ3JvdXAgLSBU aWxlIGdyb3VwIG1ldGFkYXRhCj4gLS0gCj4gMi45LjMKCi0tIApWaWxsZSBTeXJqw6Rsw6QKSW50 ZWwKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRl dmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==