From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Mun, Gwan-gyeong" Date: Sun, 09 Feb 2020 03:38:45 +0000 Subject: Re: [PATCH v3 06/17] drm/i915/dp: Read out DP SDPs (Secondary Data Packet) Message-Id: <661f4ffafe7bd829ecd80e83e3e908b4b1a2d3c2.camel@intel.com> List-Id: References: <20200203232014.906651-1-gwan-gyeong.mun@intel.com> <20200203232014.906651-7-gwan-gyeong.mun@intel.com> In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: "Shankar, Uma" , "intel-gfx@lists.freedesktop.org" Cc: "linux-fbdev@vger.kernel.org" , "dri-devel@lists.freedesktop.org" T24gV2VkLCAyMDIwLTAyLTA1IGF0IDIxOjU5ICswNTMwLCBTaGFua2FyLCBVbWEgd3JvdGU6DQo+ ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiBGcm9tOiBkcmktZGV2ZWwgPGRyaS1k ZXZlbC1ib3VuY2VzQGxpc3RzLmZyZWVkZXNrdG9wLm9yZz4gT24gQmVoYWxmDQo+ID4gT2YgR3dh bi0NCj4gPiBneWVvbmcgTXVuDQo+ID4gU2VudDogVHVlc2RheSwgRmVicnVhcnkgNCwgMjAyMCA0 OjUwIEFNDQo+ID4gVG86IGludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcNCj4gPiBDYzog bGludXgtZmJkZXZAdmdlci5rZXJuZWwub3JnOyBkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Au b3JnDQo+ID4gU3ViamVjdDogW1BBVENIIHYzIDA2LzE3XSBkcm0vaTkxNS9kcDogUmVhZCBvdXQg RFAgU0RQcyAoU2Vjb25kYXJ5DQo+ID4gRGF0YSBQYWNrZXQpDQo+IA0KPiBEcm9wIHRoZSBjb250 ZW50IGluIGJyYWNrZXQuDQo+IA0KPiA+IEl0IGFkZHMgY29kZSB0byByZWFkIHRoZSBEUCBTRFBz IGZyb20gdGhlIHZpZGVvIERJUCBhbmQgdW5wYWNrIHRoZW0NCj4gPiBpbnRvIHRoZSBjcnRjDQo+ ID4gc3RhdGUuDQo+ID4gDQo+ID4gSXQgYWRkcyByb3V0aW5lcyB0aGF0IHJlYWQgb3V0IERQIFZT QyBTRFAgYW5kIERQIEhEUiBNZXRhZGF0YQ0KPiA+IEluZm9mcmFtZSBTRFAgSW4NCj4gPiBvcmRl ciB0byB1bnBhY2sgRFAgVlNDIFNEUCwgaXQgYWRkcyBpbnRlbF9kcF92c2Nfc2RwX3VucGFjaygp DQo+ID4gZnVuY3Rpb24uDQo+ID4gSXQgZm9sbG93cyBEUCAxLjRhIHNwZWMuIFtUYWJsZSAyLTEx NjogVlNDIFNEUCBIZWFkZXIgQnl0ZXNdIGFuZA0KPiA+IFtUYWJsZSAyLTExNzogVlNDDQo+ID4g U0RQIFBheWxvYWQgZm9yIERCMTYgdGhyb3VnaCBEQjE4XQ0KPiA+IA0KPiA+IEluIG9yZGVyIHRv IHVucGFjayBEUCBIRFIgTWV0YWRhdGEgSW5mb2ZyYW1lIFNEUCwgaXQgYWRkcw0KPiA+IGludGVs X2RwX2hkcl9tZXRhZGF0YV9pbmZvZnJhbWVfc2RwX3VucGFjaygpLiBBbmQgaXQgZm9sbG93cyBE UA0KPiA+IDEuNGEgc3BlYy4NCj4gPiAoW1RhYmxlIDItMTI1OiBJTkZPRlJBTUUgU0RQIHYxLjIg SGVhZGVyIEJ5dGVzXSBhbmQgW1RhYmxlIDItMTI2Og0KPiA+IElORk9GUkFNRQ0KPiA+IFNEUCB2 MS4yIFBheWxvYWQgRGF0YSBCeXRlcyAtIERCMCB0aHJvdWdoIERCMzFdKSBhbmQgQ1RBLTg2MS1H DQo+ID4gc3BlYy4gW1RhYmxlLTQyDQo+ID4gRHluYW1pYyBSYW5nZSBhbmQgTWFzdGVyaW5nIElu Zm9GcmFtZV0uDQo+ID4gDQo+ID4gQSBuYW1laW5nIHJ1bGUgYW5kIHN0eWxlIG9mIGludGVsX3Jl YWRfZHBfc2RwKCkgZnVuY3Rpb24gcmVmZXJlbmNlcw0KPiANCj4gVHlwbyBpbiBuYW1pbmcuDQo+ IA0KPiA+IGludGVsX3JlYWRfaW5mb2ZyYW1lKCkgZnVuY3Rpb24gb2YgaW50ZWxfaGRtaS5jDQo+ ID4gDQo+ID4gdjI6IE1pbm9yIHN0eWxlIGZpeA0KPiA+IHYzOiBSZXBsYWNlIGEgc3RydWN0dXJl IG5hbWUgdG8gZHJtX2RwX3ZzY19zZHAgZnJvbQ0KPiA+IGludGVsX2RwX3ZzY19zZHANCj4gPiAN Cj4gPiBTaWduZWQtb2ZmLWJ5OiBHd2FuLWd5ZW9uZyBNdW4gPGd3YW4tZ3llb25nLm11bkBpbnRl bC5jb20+DQo+ID4gLS0tDQo+ID4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxf ZHAuYyB8IDE3MA0KPiA+ICsrKysrKysrKysrKysrKysrKysrKysrKw0KPiA+ICBkcml2ZXJzL2dw dS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RwLmggfCAgIDMgKw0KPiA+ICAyIGZpbGVzIGNoYW5n ZWQsIDE3MyBpbnNlcnRpb25zKCspDQo+ID4gDQo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZHAuYw0KPiA+IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv ZGlzcGxheS9pbnRlbF9kcC5jDQo+ID4gaW5kZXggZGQ3ZTU1ODgwMDFlLi5kNGVjZTBhODI0YzAg MTAwNjQ0DQo+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kcC5j DQo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kcC5jDQo+ID4g QEAgLTQ5MjUsNiArNDkyNSwxNzYgQEAgdm9pZCBpbnRlbF9kcF9zZXRfaW5mb2ZyYW1lcyhzdHJ1 Y3QNCj4gPiBpbnRlbF9lbmNvZGVyDQo+ID4gKmVuY29kZXIsDQo+ID4gIAlpbnRlbF93cml0ZV9k cF9zZHAoZW5jb2RlciwgY3J0Y19zdGF0ZSwNCj4gPiBIRE1JX1BBQ0tFVF9UWVBFX0dBTVVUX01F VEFEQVRBKTsgIH0NCj4gPiANCj4gPiArc3RhdGljIGludCBpbnRlbF9kcF92c2Nfc2RwX3VucGFj ayhzdHJ1Y3QgZHJtX2RwX3ZzY19zZHAgKnZzYywNCj4gPiArCQkJCSAgIGNvbnN0IHZvaWQgKmJ1 ZmZlciwgc2l6ZV90IHNpemUpIHsNCj4gPiArCWNvbnN0IHN0cnVjdCBkcF9zZHAgKnNkcCA9IGJ1 ZmZlcjsNCj4gPiArDQo+ID4gKwlpZiAoc2l6ZSA8IHNpemVvZihzdHJ1Y3QgZHBfc2RwKSkNCj4g PiArCQlyZXR1cm4gLUVJTlZBTDsNCj4gPiArDQo+ID4gKwltZW1zZXQodnNjLCAwLCBzaXplKTsN Cj4gPiArDQo+ID4gKwlpZiAoc2RwLT5zZHBfaGVhZGVyLkhCMCAhPSAwKQ0KPiA+ICsJCXJldHVy biAtRUlOVkFMOw0KPiA+ICsNCj4gPiArCWlmIChzZHAtPnNkcF9oZWFkZXIuSEIxICE9IERQX1NE UF9WU0MpDQo+ID4gKwkJcmV0dXJuIC1FSU5WQUw7DQo+ID4gKwl2c2MtPnNkcF90eXBlID0gc2Rw LT5zZHBfaGVhZGVyLkhCMTsNCj4gPiArDQo+ID4gKwlpZiAoc2RwLT5zZHBfaGVhZGVyLkhCMiA9 PSAweDIgJiYgc2RwLT5zZHBfaGVhZGVyLkhCMyA9PSAweDgpIHsNCj4gPiArCQl2c2MtPnJldmlz aW9uID0gc2RwLT5zZHBfaGVhZGVyLkhCMjsNCj4gPiArCQl2c2MtPmxlbmd0aCA9IHNkcC0+c2Rw X2hlYWRlci5IQjM7DQo+ID4gKwl9IGVsc2UgaWYgKHNkcC0+c2RwX2hlYWRlci5IQjIgPT0gMHg0 ICYmIHNkcC0+c2RwX2hlYWRlci5IQjMgPT0NCj4gPiAweGUpIHsNCj4gPiArCQl2c2MtPnJldmlz aW9uID0gc2RwLT5zZHBfaGVhZGVyLkhCMjsNCj4gPiArCQl2c2MtPmxlbmd0aCA9IHNkcC0+c2Rw X2hlYWRlci5IQjM7DQo+ID4gKwl9IGVsc2UgaWYgKHNkcC0+c2RwX2hlYWRlci5IQjIgPT0gMHg1 ICYmIHNkcC0+c2RwX2hlYWRlci5IQjMgPT0NCj4gPiAweDEzKSB7DQo+ID4gKwkJdnNjLT5yZXZp c2lvbiA9IHNkcC0+c2RwX2hlYWRlci5IQjI7DQo+ID4gKwkJdnNjLT5sZW5ndGggPSBzZHAtPnNk cF9oZWFkZXIuSEIzOw0KPiANCj4gVGhlIGFib3ZlIDIgbGluZXMgY2FuIGJlIGRvbmUgdW5jb25k aXRpb25hbGx5LCBtYXkgYmUgY29tYmluZSB0aGUgaWYNCj4gY2hlY2tzLg0KPiANCj4gPiArCQl2 c2MtPmNvbG9yc3BhY2UgPSAoc2RwLT5kYlsxNl0gPj4gNCkgJiAweGY7DQo+ID4gKwkJdnNjLT5j b2xvcmltZXRyeSA9IHNkcC0+ZGJbMTZdICYgMHhmOw0KPiA+ICsJCXZzYy0+ZHluYW1pY19yYW5n ZSA9IChzZHAtPmRiWzE3XSA+PiA3KSAmIDB4MTsNCj4gPiArDQo+ID4gKwkJc3dpdGNoIChzZHAt PmRiWzE3XSAmIDB4Nykgew0KPiA+ICsJCWNhc2UgMHgxOg0KPiA+ICsJCQl2c2MtPmJwYyA9IDg7 DQo+ID4gKwkJCWJyZWFrOw0KPiA+ICsJCWNhc2UgMHgyOg0KPiA+ICsJCQl2c2MtPmJwYyA9IDEw Ow0KPiA+ICsJCQlicmVhazsNCj4gPiArCQljYXNlIDB4MzoNCj4gPiArCQkJdnNjLT5icGMgPSAx MjsNCj4gPiArCQkJYnJlYWs7DQo+ID4gKwkJY2FzZSAweDQ6DQo+ID4gKwkJCXZzYy0+YnBjID0g MTY7DQo+ID4gKwkJCWJyZWFrOw0KPiA+ICsJCWRlZmF1bHQ6DQo+ID4gKwkJCU1JU1NJTkdfQ0FT RShzZHAtPmRiWzE3XSAmIDB4Nyk7DQo+IA0KPiBIYW5kbGUgNmJwYyBjYXNlIGFzIHdlbGwuDQo+ IA0KWWVzLCAgSSdsbCB1cGRhdGUgZXZlcnl0aGluZyB0aGF0IHlvdSBjb21tZW50ZWQuDQo+ID4g KwkJCXJldHVybiAtRUlOVkFMOw0KPiA+ICsJCX0NCj4gPiArDQo+ID4gKwkJdnNjLT5jb250ZW50 X3R5cGUgPSBzZHAtPmRiWzE4XSAmIDB4NzsNCj4gPiArCX0gZWxzZSB7DQo+ID4gKwkJcmV0dXJu IC1FSU5WQUw7DQo+ID4gKwl9DQo+ID4gKw0KPiA+ICsJcmV0dXJuIDA7DQo+ID4gK30NCj4gPiAr DQo+ID4gK3N0YXRpYyBpbnQNCj4gPiAraW50ZWxfZHBfaGRyX21ldGFkYXRhX2luZm9mcmFtZV9z ZHBfdW5wYWNrKHN0cnVjdA0KPiA+IGhkbWlfZHJtX2luZm9mcmFtZQ0KPiA+ICpkcm1faW5mb2Zy YW1lLA0KPiA+ICsJCQkJCSAgIGNvbnN0IHZvaWQgKmJ1ZmZlciwgc2l6ZV90DQo+ID4gc2l6ZSkg ew0KPiA+ICsJaW50IHJldDsNCj4gPiArDQo+ID4gKwljb25zdCBzdHJ1Y3QgZHBfc2RwICpzZHAg PSBidWZmZXI7DQo+ID4gKw0KPiA+ICsJaWYgKHNpemUgPCBzaXplb2Yoc3RydWN0IGRwX3NkcCkp DQo+ID4gKwkJcmV0dXJuIC1FSU5WQUw7DQo+ID4gKw0KPiA+ICsJaWYgKHNkcC0+c2RwX2hlYWRl ci5IQjAgIT0gMCkNCj4gPiArCQlyZXR1cm4gLUVJTlZBTDsNCj4gPiArDQo+ID4gKwlpZiAoc2Rw LT5zZHBfaGVhZGVyLkhCMSAhPSBIRE1JX0lORk9GUkFNRV9UWVBFX0RSTSkNCj4gPiArCQlyZXR1 cm4gLUVJTlZBTDsNCj4gPiArDQo+ID4gKwkvKg0KPiA+ICsJICogTGVhc3QgU2lnbmlmaWNhbnQg RWlnaHQgQml0cyBvZiAoRGF0YSBCeXRlIENvdW50IOKAkyAxKQ0KPiA+ICsJICogMURoIChpLmUu LCBEYXRhIEJ5dGUgQ291bnQgPSAzMCBieXRlcykuDQo+ID4gKwkgKi8NCj4gPiArCWlmIChzZHAt PnNkcF9oZWFkZXIuSEIyICE9IDB4MUQpDQo+ID4gKwkJcmV0dXJuIC1FSU5WQUw7DQo+ID4gKw0K PiA+ICsJLyogTW9zdCBTaWduaWZpY2FudCBUd28gQml0cyBvZiAoRGF0YSBCeXRlIENvdW50IOKA kyAxKSwgQ2xlYXIgdG8NCj4gPiAwMGIuICovDQo+ID4gKwlpZiAoKHNkcC0+c2RwX2hlYWRlci5I QjMgJiAweDMpICE9IDApDQo+ID4gKwkJcmV0dXJuIC1FSU5WQUw7DQo+ID4gKw0KPiA+ICsJLyog SU5GT0ZSQU1FIFNEUCBWZXJzaW9uIE51bWJlciAqLw0KPiA+ICsJaWYgKCgoc2RwLT5zZHBfaGVh ZGVyLkhCMyA+PiAyKSAmIDB4M2YpICE9IDB4MTMpDQo+ID4gKwkJcmV0dXJuIC1FSU5WQUw7DQo+ ID4gKw0KPiA+ICsJLyogQ1RBIEhlYWRlciBCeXRlIDIgKElORk9GUkFNRSBWZXJzaW9uIE51bWJl cikgKi8NCj4gPiArCWlmIChzZHAtPmRiWzBdICE9IDEpDQo+ID4gKwkJcmV0dXJuIC1FSU5WQUw7 DQo+ID4gKw0KPiA+ICsJLyogQ1RBIEhlYWRlciBCeXRlIDMgKExlbmd0aCBvZiBJTkZPRlJBTUUp Og0KPiA+IEhETUlfRFJNX0lORk9GUkFNRV9TSVpFICovDQo+ID4gKwlpZiAoc2RwLT5kYlsxXSAh PSBIRE1JX0RSTV9JTkZPRlJBTUVfU0laRSkNCj4gPiArCQlyZXR1cm4gLUVJTlZBTDsNCj4gPiAr DQo+ID4gKwlyZXQgPSBoZG1pX2RybV9pbmZvZnJhbWVfdW5wYWNrX29ubHkoZHJtX2luZm9mcmFt ZSwgJnNkcC0NCj4gPiA+ZGJbMl0sDQo+ID4gKwkJCQkJICAgICBIRE1JX0RSTV9JTkZPRlJBTUVf U0laRSk7DQo+ID4gKw0KPiA+ICsJcmV0dXJuIHJldDsNCj4gPiArfQ0KPiA+ICsNCj4gPiArc3Rh dGljIHZvaWQgaW50ZWxfcmVhZF9kcF92c2Nfc2RwKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNv ZGVyLA0KPiA+ICsJCQkJICBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSwNCj4g PiArCQkJCSAgc3RydWN0IGRybV9kcF92c2Nfc2RwICp2c2MpDQo+ID4gK3sNCj4gPiArCXN0cnVj dCBpbnRlbF9kaWdpdGFsX3BvcnQgKmludGVsX2RpZ19wb3J0ID0NCj4gPiBlbmNfdG9fZGlnX3Bv cnQoZW5jb2Rlcik7DQo+ID4gKwlzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwID0gZW5jX3RvX2lu dGVsX2RwKGVuY29kZXIpOw0KPiA+ICsJdW5zaWduZWQgaW50IHR5cGUgPSBEUF9TRFBfVlNDOw0K PiA+ICsJc3RydWN0IGRwX3NkcCBzZHAgPSB7fTsNCj4gPiArCWludCByZXQ7DQo+ID4gKw0KPiA+ ICsJLyogV2hlbiBQU1IgaXMgZW5hYmxlZCwgVlNDIFNEUCBpcyBoYW5kbGVkIGJ5IFBTUiByb3V0 aW5lICovDQo+ID4gKwlpZiAoaW50ZWxfcHNyX2VuYWJsZWQoaW50ZWxfZHApKQ0KPiA+ICsJCXJl dHVybjsNCj4gPiArDQo+ID4gKwlpZiAoKGNydGNfc3RhdGUtPmluZm9mcmFtZXMuZW5hYmxlICYN Cj4gPiArCSAgICAgaW50ZWxfaGRtaV9pbmZvZnJhbWVfZW5hYmxlKHR5cGUpKSA9PSAwKQ0KPiA+ ICsJCXJldHVybjsNCj4gPiArDQo+ID4gKwlpbnRlbF9kaWdfcG9ydC0+cmVhZF9pbmZvZnJhbWUo ZW5jb2RlciwgY3J0Y19zdGF0ZSwgdHlwZSwgJnNkcCwNCj4gPiArc2l6ZW9mKHNkcCkpOw0KPiA+ ICsNCj4gPiArCXJldCA9IGludGVsX2RwX3ZzY19zZHBfdW5wYWNrKHZzYywgJnNkcCwgc2l6ZW9m KHNkcCkpOw0KPiA+ICsNCj4gPiArCWlmIChyZXQpDQo+ID4gKwkJRFJNX0RFQlVHX0tNUygiRmFp bGVkIHRvIHVucGFjayBEUCBWU0MgU0RQXG4iKTsgfQ0KPiA+ICsNCj4gPiArc3RhdGljIHZvaWQg aW50ZWxfcmVhZF9kcF9oZHJfbWV0YWRhdGFfaW5mb2ZyYW1lX3NkcChzdHJ1Y3QNCj4gPiBpbnRl bF9lbmNvZGVyDQo+ID4gKmVuY29kZXIsDQo+ID4gKwkJCQkJCSAgICAgc3RydWN0DQo+ID4gaW50 ZWxfY3J0Y19zdGF0ZQ0KPiA+ICpjcnRjX3N0YXRlLA0KPiA+ICsJCQkJCQkgICAgIHN0cnVjdA0K PiA+IGhkbWlfZHJtX2luZm9mcmFtZQ0KPiA+ICpkcm1faW5mb2ZyYW1lKSB7DQo+ID4gKwlzdHJ1 Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICppbnRlbF9kaWdfcG9ydCA9DQo+ID4gZW5jX3RvX2RpZ19w b3J0KGVuY29kZXIpOw0KPiA+ICsJdW5zaWduZWQgaW50IHR5cGUgPSBIRE1JX1BBQ0tFVF9UWVBF X0dBTVVUX01FVEFEQVRBOw0KPiA+ICsJc3RydWN0IGRwX3NkcCBzZHAgPSB7fTsNCj4gPiArCWlu dCByZXQ7DQo+ID4gKw0KPiA+ICsJaWYgKChjcnRjX3N0YXRlLT5pbmZvZnJhbWVzLmVuYWJsZSAm DQo+ID4gKwkgICAgaW50ZWxfaGRtaV9pbmZvZnJhbWVfZW5hYmxlKHR5cGUpKSA9PSAwKQ0KPiA+ ICsJCXJldHVybjsNCj4gPiArDQo+ID4gKwlpbnRlbF9kaWdfcG9ydC0+cmVhZF9pbmZvZnJhbWUo ZW5jb2RlciwgY3J0Y19zdGF0ZSwgdHlwZSwgJnNkcCwNCj4gPiArCQkJCSAgICAgICBzaXplb2Yo c2RwKSk7DQo+ID4gKw0KPiA+ICsJcmV0ID0gaW50ZWxfZHBfaGRyX21ldGFkYXRhX2luZm9mcmFt ZV9zZHBfdW5wYWNrKGRybV9pbmZvZnJhbWUsDQo+ID4gJnNkcCwNCj4gPiArCQkJCQkJCSBzaXpl b2Yoc2RwKSk7DQo+ID4gKw0KPiA+ICsJaWYgKHJldCkNCj4gPiArCQlEUk1fREVCVUdfS01TKCJG YWlsZWQgdG8gdW5wYWNrIERQIEhEUiBNZXRhZGF0YQ0KPiA+IEluZm9mcmFtZQ0KPiA+IFNEUFxu Iik7IH0NCj4gPiArDQo+ID4gK3ZvaWQgaW50ZWxfcmVhZF9kcF9zZHAoc3RydWN0IGludGVsX2Vu Y29kZXIgKmVuY29kZXIsDQo+ID4gKwkJICAgICAgIHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpj cnRjX3N0YXRlLA0KPiA+ICsJCSAgICAgICB1bnNpZ25lZCBpbnQgdHlwZSkNCj4gPiArew0KPiA+ ICsJc3dpdGNoICh0eXBlKSB7DQo+ID4gKwljYXNlIERQX1NEUF9WU0M6DQo+ID4gKwkJaW50ZWxf cmVhZF9kcF92c2Nfc2RwKGVuY29kZXIsIGNydGNfc3RhdGUsDQo+ID4gKwkJCQkgICAgICAmY3J0 Y19zdGF0ZS0+aW5mb2ZyYW1lcy52c2MpOw0KPiA+ICsJCWJyZWFrOw0KPiA+ICsJY2FzZSBIRE1J X1BBQ0tFVF9UWVBFX0dBTVVUX01FVEFEQVRBOg0KPiA+ICsJCWludGVsX3JlYWRfZHBfaGRyX21l dGFkYXRhX2luZm9mcmFtZV9zZHAoZW5jb2RlciwNCj4gPiBjcnRjX3N0YXRlLA0KPiA+ICsJCQkJ CQkJICZjcnRjX3N0YXRlLQ0KPiA+ID4gaW5mb2ZyYW1lcy5kcm0uZHJtKTsNCj4gPiArCQlicmVh azsNCj4gPiArCWRlZmF1bHQ6DQo+ID4gKwkJTUlTU0lOR19DQVNFKHR5cGUpOw0KPiA+ICsJCWJy ZWFrOw0KPiA+ICsJfQ0KPiA+ICt9DQo+ID4gKw0KPiA+ICBzdGF0aWMgdm9pZA0KPiA+ICBpbnRl bF9kcF9zZXR1cF92c2Nfc2RwKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAsDQo+ID4gIAkJICAg ICAgIGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlLCBkaWZmDQo+ID4g LS1naXQNCj4gPiBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZHAuaA0KPiA+ IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kcC5oDQo+ID4gaW5kZXggMGRj MDlhNDYzZWUxLi5lOGY5YmE5NjJkMDkgMTAwNjQ0DQo+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvZGlzcGxheS9pbnRlbF9kcC5oDQo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv ZGlzcGxheS9pbnRlbF9kcC5oDQo+ID4gQEAgLTExOSw2ICsxMTksOSBAQCB2b2lkIGludGVsX2Rw X2hkcl9tZXRhZGF0YV9lbmFibGUoc3RydWN0DQo+ID4gaW50ZWxfZHANCj4gPiAqaW50ZWxfZHAs ICB2b2lkIGludGVsX2RwX3NldF9pbmZvZnJhbWVzKHN0cnVjdCBpbnRlbF9lbmNvZGVyDQo+ID4g KmVuY29kZXIsIGJvb2wNCj4gPiBlbmFibGUsDQo+ID4gIAkJCSAgICAgY29uc3Qgc3RydWN0IGlu dGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsDQo+ID4gIAkJCSAgICAgY29uc3Qgc3RydWN0IGRy bV9jb25uZWN0b3Jfc3RhdGUNCj4gPiAqY29ubl9zdGF0ZSk7DQo+ID4gK3ZvaWQgaW50ZWxfcmVh ZF9kcF9zZHAoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsDQo+ID4gKwkJICAgICAgIHN0 cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlLA0KPiA+ICsJCSAgICAgICB1bnNpZ25l ZCBpbnQgdHlwZSk7DQo+ID4gIGJvb2wgaW50ZWxfZGlnaXRhbF9wb3J0X2Nvbm5lY3RlZChzdHJ1 Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2Rlcik7DQo+ID4gDQo+ID4gIHN0YXRpYyBpbmxpbmUgdW5z aWduZWQgaW50IGludGVsX2RwX3VudXNlZF9sYW5lX21hc2soaW50DQo+ID4gbGFuZV9jb3VudCkN Cj4gPiAtLQ0KPiA+IDIuMjQuMQ0KPiA+IA0KPiA+IF9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fDQo+ID4gZHJpLWRldmVsIG1haWxpbmcgbGlzdA0KPiA+IGRy aS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcNCj4gPiBodHRwczovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbA0K