From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anshuman Gupta Subject: Re: [PATCH v8 4/7] drm/i915/tgl: Do modeset to enable and configure DC3CO exitline. Date: Wed, 25 Sep 2019 14:40:42 +0530 Message-ID: <20190925091041.GA29491@intel.com> References: <20190913082339.1785-1-anshuman.gupta@intel.com> <20190913082339.1785-5-anshuman.gupta@intel.com> <20190923162656.GC26457@ideak-desk.fi.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTPS id F2CED6EB54 for ; Wed, 25 Sep 2019 09:16:56 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20190923162656.GC26457@ideak-desk.fi.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Imre Deak Cc: jani.nikula@intel.com, intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gMjAxOS0wOS0yMyBhdCAxOToyNjo1NiArMDMwMCwgSW1yZSBEZWFrIHdyb3RlOgo+IE9uIEZy aSwgU2VwIDEzLCAyMDE5IGF0IDAxOjUzOjM2UE0gKzA1MzAsIEFuc2h1bWFuIEd1cHRhIHdyb3Rl Ogo+ID4gREMzQ08gZW5hYmxpbmcgQi5TcGVjcyBzZXF1ZW5jZSByZXF1aXJlcyB0byBlbmFibGUg ZW5kIGNvbmZpZ3VyZQo+ID4gZXhpdCBzY2FubGluZXMgdG8gVFJBTlNfRVhJVExJTkUgcmVnaXN0 ZXIsIHByb2dyYW1taW5nIHRoaXMgcmVnaXN0ZXIKPiA+IGhhcyB0byBiZSBwYXJ0IG9mIG1vZGVz ZXQgc2VxdWVuY2UgYXMgdGhpcyBjYW4ndCBiZSBjaGFuZ2Ugd2hlbgo+ID4gdHJhbnNjb2RlciBv ciBwb3J0IGlzIGVuYWJsZWQuCj4gPiBXaGVuIHN5c3RlbSBib290cyB3aXRoIG9ubHkgZURQIHBh bmVsIHRoZXJlIG1heSBub3QgYmUgcmVhbAo+ID4gbW9kZXNldCBhcyBCSU9TIGhhcyBhbHJlYWR5 IHByb2dyYW1tZWQgdGhlIG5lY2Vzc2FyeSByZWdpc3RlcnMsCj4gPiB0aGVyZWZvcmUgaXQgbmVl ZHMgdG8gZm9yY2UgYSBtb2Rlc2V0IHRvIGVuYWJsZSBhbmQgY29uZmlndXJlCj4gPiBEQzNDTyBl eGl0bGluZS4KPiA+IAo+ID4gQ2M6IEphbmkgTmlrdWxhIDxqYW5pLm5pa3VsYUBpbnRlbC5jb20+ Cj4gPiBDYzogSW1yZSBEZWFrIDxpbXJlLmRlYWtAaW50ZWwuY29tPgo+ID4gQ2M6IEFuaW1lc2gg TWFubmEgPGFuaW1lc2gubWFubmFAaW50ZWwuY29tPgo+ID4gU2lnbmVkLW9mZi1ieTogQW5zaHVt YW4gR3VwdGEgPGFuc2h1bWFuLmd1cHRhQGludGVsLmNvbT4KPiAKPiBZb3UgbWlzc2VkIG15IHJl dmlldyBjb21tZW50cyBvbiB2NzoKPiAtIENvbXB1dGluZyB0aGUgc3RhdGUgc2hvdWxkIGJlIGRv bmUgZnJvbSBhIERQIGVuY29kZXIgY29tcHV0ZSBjb25maWcKPiAgIGhvb2ssIHdoaWNoIHdpbGwg dGhlbiBtYWtlIHRnbF9kYzNjb19pc19lZHBfY29ubmVjdGVkKCkgcmVkdW5kYW50Lgo+IC0gSW5z dGVhZCBvZiBoYXNfZGMzY29fZXhpdGxpbmUgZGMzY29fZXhpdGxpbmUgc2hvdWxkIGJlIGNvbXB1 dGVkIChhbmQKPiAgIHJlYWQgb3V0KSwgd2hpY2ggY291bGQgYmUgdXNlZCB0aGVuIHdoZW4gd2Ug bmVlZCB0byBwcm9ncmFtIGl0LgpIaSBJbXJlLApXZSBuZWVkIGNydGNfc3RhdGUgcGl4ZWwgcmF0 ZSBpbiBvcmRlciB0byBjb21wdXRlIGRjM2NvIGV4aXRsaW5lcywKY3J0Y19zdGF0ZSBwaXhlbCBy YXRlIGlzIG5vdCByZWFkeSBpbiBEUCBlbmNvZGVyIGNvbXB1dGUgY29uZmlnLgpJdCBpcyBnZXR0 aW5nIGNvbXB1dGVkIGluIGludGVsX2NydGNfY29tcHV0ZV9jb25maWcoKS4KSSBoYXZlIHR3byBz b2x1dGlvbiBpbiBteSBtaW5kLgoxLiBjb21wdXRlIGhhc19kYzNjb19leGl0bGluZSBpbiBkcCBj b21wdXRlIGhvb2sgYW5kIGNhbGN1bGF0ZQogICBkYzNjbyBleGl0bGluZXMgaW4gdGdsX3NldF9w c3IyX3RyYW5zY29kZXJfZXhpdGxpbmUoKT8KMi4gY2FsbCBpbnRlbF9jcnRjX2NvbXB1dGVfY29u ZmlnKCkgaW4gZHAgZW5jb2RlciBjb21wdXRlIGNvbmZpZyB0bwogICBnZXQgY3J0Y19zdGF0ZSBw aXhlbCByYXRlPwoKUGxlYXNlIHByb3ZpZGUgeW91ciBzdWdnZXN0aW9uLCB3aWxsIGNoYW5nZSBp dCBhY2NvcmRpbmdseS4KVGhhbmtzLApBbnNodW1hbiBHdXB0YS4KPiAKPiA+IC0tLQo+ID4gIGRy aXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jICB8ICAgNSArCj4gPiAg Li4uL2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV9wb3dlci5jICAgIHwgMTA0ICsrKysr KysrKysrKysrKysrKwo+ID4gIC4uLi9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfcG93 ZXIuaCAgICB8ICAgNyArKwo+ID4gIC4uLi9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlf dHlwZXMuaCAgICB8ICAgMSArCj4gPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYyAg ICAgICAgICAgICAgIHwgICAyICstCj4gPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0u aCAgICAgICAgICAgICAgIHwgICAyICsKPiA+ICA2IGZpbGVzIGNoYW5nZWQsIDEyMCBpbnNlcnRp b25zKCspLCAxIGRlbGV0aW9uKC0pCj4gPiAKPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rp c3BsYXkvaW50ZWxfZGlzcGxheS5jCj4gPiBpbmRleCBhMTlmOGM3M2YyZTAuLjZiN2I4ZDIxMTJh NSAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlz cGxheS5jCj4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3Bs YXkuYwo+ID4gQEAgLTc0MDksNiArNzQwOSw4IEBAIHN0YXRpYyBpbnQgaW50ZWxfY3J0Y19jb21w dXRlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywKPiA+ICAJY29uc3Qgc3RydWN0IGRy bV9kaXNwbGF5X21vZGUgKmFkanVzdGVkX21vZGUgPSAmcGlwZV9jb25maWctPmJhc2UuYWRqdXN0 ZWRfbW9kZTsKPiA+ICAJaW50IGNsb2NrX2xpbWl0ID0gZGV2X3ByaXYtPm1heF9kb3RjbGtfZnJl cTsKPiA+ICAKPiA+ICsJdGdsX2RjM2NvX2NydGNfY29tcHV0ZV9jb25maWcoZGV2X3ByaXYsIHBp cGVfY29uZmlnKTsKPiA+ICsKPiA+ICAJaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPCA0KSB7Cj4g PiAgCQljbG9ja19saW1pdCA9IGRldl9wcml2LT5tYXhfY2RjbGtfZnJlcSAqIDkgLyAxMDsKPiA+ ICAKPiA+IEBAIC0xMDQ3NCw2ICsxMDQ3Niw4IEBAIHN0YXRpYyBib29sIGhhc3dlbGxfZ2V0X3Bp cGVfY29uZmlnKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAo+ID4gIAkJcGlwZV9jb25maWctPnBp eGVsX211bHRpcGxpZXIgPSAxOwo+ID4gIAl9Cj4gPiAgCj4gPiArCXRnbF9kYzNjb19jcnRjX2dl dF9jb25maWcocGlwZV9jb25maWcpOwo+ID4gKwo+ID4gIG91dDoKPiA+ICAJZm9yX2VhY2hfcG93 ZXJfZG9tYWluKHBvd2VyX2RvbWFpbiwgcG93ZXJfZG9tYWluX21hc2spCj4gPiAgCQlpbnRlbF9k aXNwbGF5X3Bvd2VyX3B1dChkZXZfcHJpdiwKPiA+IEBAIC0xMjczOSw2ICsxMjc0Myw3IEBAIGlu dGVsX3BpcGVfY29uZmlnX2NvbXBhcmUoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmN1 cnJlbnRfY29uZmlnLAo+ID4gIAo+ID4gIAlQSVBFX0NPTkZfQ0hFQ0tfSShwaXhlbF9tdWx0aXBs aWVyKTsKPiA+ICAJUElQRV9DT05GX0NIRUNLX0kob3V0cHV0X2Zvcm1hdCk7Cj4gPiArCVBJUEVf Q09ORl9DSEVDS19CT09MKGhhc19kYzNjb19leGl0bGluZSk7Cj4gPiAgCVBJUEVfQ09ORl9DSEVD S19CT09MKGhhc19oZG1pX3NpbmspOwo+ID4gIAlpZiAoKElOVEVMX0dFTihkZXZfcHJpdikgPCA4 ICYmICFJU19IQVNXRUxMKGRldl9wcml2KSkgfHwKPiA+ICAJICAgIElTX1ZBTExFWVZJRVcoZGV2 X3ByaXYpIHx8IElTX0NIRVJSWVZJRVcoZGV2X3ByaXYpKQo+ID4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV9wb3dlci5jIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3Bvd2VyLmMKPiA+IGluZGV4IDc5NjVl MDcyNTdhMC4uNDJlYWJjZGVjZjAwIDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3Bvd2VyLmMKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV9wb3dlci5jCj4gPiBAQCAtMTksNiArMTksNyBA QAo+ID4gICNpbmNsdWRlICJpbnRlbF9ob3RwbHVnLmgiCj4gPiAgI2luY2x1ZGUgImludGVsX3Np ZGViYW5kLmgiCj4gPiAgI2luY2x1ZGUgImludGVsX3RjLmgiCj4gPiArI2luY2x1ZGUgImludGVs X3BtLmgiCj4gPiAgCj4gPiAgYm9vbCBpbnRlbF9kaXNwbGF5X3Bvd2VyX3dlbGxfaXNfZW5hYmxl ZChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gPiAgCQkJCQkgZW51bSBpOTE1 X3Bvd2VyX3dlbGxfaWQgcG93ZXJfd2VsbF9pZCk7Cj4gPiBAQCAtNzcyLDYgKzc3MywxMDkgQEAg c3RhdGljIHZvaWQgZ2VuOV9zZXRfZGNfc3RhdGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2LCB1MzIgc3RhdGUpCj4gPiAgCWRldl9wcml2LT5jc3IuZGNfc3RhdGUgPSB2YWwgJiBt YXNrOwo+ID4gIH0KPiA+ICAKPiA+ICt2b2lkIHRnbF9kaXNhYmxlX3BzcjJfdHJhbnNjb2Rlcl9l eGl0bGluZShjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3N0YXRlKQo+ID4gK3sKPiA+ ICsJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShjc3RhdGUtPmJh c2UuY3J0Yy0+ZGV2KTsKPiA+ICsJdTMyIHZhbDsKPiA+ICsKPiA+ICsJaWYgKCFjc3RhdGUtPmhh c19kYzNjb19leGl0bGluZSkKPiA+ICsJCXJldHVybjsKPiA+ICsKPiA+ICsJdmFsID0gSTkxNV9S RUFEKEVYSVRMSU5FKGNzdGF0ZS0+Y3B1X3RyYW5zY29kZXIpKTsKPiA+ICsJdmFsICY9IH5FWElU TElORV9FTkFCTEU7Cj4gPiArCUk5MTVfV1JJVEUoRVhJVExJTkUoY3N0YXRlLT5jcHVfdHJhbnNj b2RlciksIHZhbCk7Cj4gPiArfQo+ID4gKwo+ID4gK3ZvaWQgdGdsX2VuYWJsZV9wc3IyX3RyYW5z Y29kZXJfZXhpdGxpbmUoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNzdGF0ZSkKPiA+ ICt7Cj4gPiArCXUzMiBsaW5ldGltZV91cywgdmFsLCBleGl0X3NjYW5saW5lczsKPiA+ICsJdTMy IGNydGNfdmRpc3BsYXkgPSBjc3RhdGUtPmJhc2UuYWRqdXN0ZWRfbW9kZS5jcnRjX3ZkaXNwbGF5 Owo+ID4gKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNzdGF0 ZS0+YmFzZS5jcnRjLT5kZXYpOwo+ID4gKwo+ID4gKwlpZiAoIWNzdGF0ZS0+aGFzX2RjM2NvX2V4 aXRsaW5lKQo+ID4gKwkJcmV0dXJuOwo+ID4gKwo+ID4gKwlsaW5ldGltZV91cyA9IGZpeGVkMTZf dG9fdTMyX3JvdW5kX3VwKGludGVsX2dldF9saW5ldGltZV91cyhjc3RhdGUpKTsKPiA+ICsJaWYg KFdBUk5fT04oIWxpbmV0aW1lX3VzKSkKPiA+ICsJCXJldHVybjsKPiA+ICsJLyoKPiA+ICsJICog REMzQ08gRXhpdCB0aW1lIDIwMHVzIEIuU3BlYyA0OTE5Ngo+ID4gKwkgKiBQU1IyIHRyYW5zY29k ZXIgRWFybHkgRXhpdCBzY2FubGluZXMgPSBST1VORFVQKDIwMCAvIGxpbmUgdGltZSkgKyAxCj4g PiArCSAqIEV4aXQgbGluZSBldmVudCBuZWVkIHRvIHByb2dyYW0gYWJvdmUgY2FsY3VsYXRlZCBz Y2FuIGxpbmVzIGJlZm9yZQo+ID4gKwkgKiBuZXh0IFZCTEFOSy4KPiA+ICsJICovCj4gPiArCWV4 aXRfc2NhbmxpbmVzID0gRElWX1JPVU5EX1VQKDIwMCwgbGluZXRpbWVfdXMpICsgMTsKPiA+ICsJ aWYgKFdBUk5fT04oZXhpdF9zY2FubGluZXMgPiBjcnRjX3ZkaXNwbGF5KSkKPiA+ICsJCXJldHVy bjsKPiA+ICsKPiA+ICsJZXhpdF9zY2FubGluZXMgPSBjcnRjX3ZkaXNwbGF5IC0gZXhpdF9zY2Fu bGluZXM7Cj4gPiArCWV4aXRfc2NhbmxpbmVzIDw8PSBFWElUTElORV9TSElGVDsKPiA+ICsJdmFs ID0gSTkxNV9SRUFEKEVYSVRMSU5FKGNzdGF0ZS0+Y3B1X3RyYW5zY29kZXIpKTsKPiA+ICsJdmFs ICY9IH4oRVhJVExJTkVfTUFTSyB8IEVYSVRMSU5FX0VOQUJMRSk7Cj4gPiArCXZhbCB8PSBleGl0 X3NjYW5saW5lczsKPiA+ICsJdmFsIHw9IEVYSVRMSU5FX0VOQUJMRTsKPiA+ICsJSTkxNV9XUklU RShFWElUTElORShjc3RhdGUtPmNwdV90cmFuc2NvZGVyKSwgdmFsKTsKPiA+ICt9Cj4gPiArCj4g PiArc3RhdGljIGJvb2wgdGdsX2RjM2NvX2lzX2VkcF9jb25uZWN0ZWQoc3RydWN0IGludGVsX2Ny dGNfc3RhdGUgICpjcnRjX3N0YXRlKQo+ID4gK3sKPiA+ICsJc3RydWN0IGRybV9hdG9taWNfc3Rh dGUgKnN0YXRlID0gY3J0Y19zdGF0ZS0+YmFzZS5zdGF0ZTsKPiA+ICsJc3RydWN0IGRybV9jb25u ZWN0b3IgKmNvbm5lY3RvcjsKPiA+ICsJc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgKmNvbm5l Y3Rvcl9zdGF0ZTsKPiA+ICsJaW50IGk7Cj4gPiArCj4gPiArCWZvcl9lYWNoX25ld19jb25uZWN0 b3JfaW5fc3RhdGUoc3RhdGUsIGNvbm5lY3RvciwgY29ubmVjdG9yX3N0YXRlLCBpKSB7Cj4gPiAr CQlpZiAoY29ubmVjdG9yLT5zdGF0dXMgPT0gY29ubmVjdG9yX3N0YXR1c19jb25uZWN0ZWQgJiYK PiA+ICsJCSAgICBjb25uZWN0b3ItPmNvbm5lY3Rvcl90eXBlID09IERSTV9NT0RFX0NPTk5FQ1RP Ul9lRFApIHsKPiA+ICsJCQlyZXR1cm4gdHJ1ZTsKPiA+ICsJCX0KPiA+ICsJfQo+ID4gKwo+ID4g KwlyZXR1cm4gZmFsc2U7Cj4gPiArfQo+ID4gKwo+ID4gKy8qCj4gPiArICogREMzQ08gcmVxdWly ZXMgdG8gZW5hYmxlIGV4aXRsaW5lIGFuZCBwcm9ncmFtIERDM0NPIHJlcXVpcmVzCj4gPiArICog ZXhpdCBzY2FubGluZXMgdG8gVFJBTlNfRVhJVExJTkUgcmVnaXN0ZXIsIHdoaWNoIHNob3VsZCBv bmx5Cj4gPiArICogY2hhbmdlIGJlZm9yZSB0cmFuc2NvZGVyIG9yIHBvcnQgYXJlIGVuYWJsZWQu Cj4gPiArICogVGhpcyByZXF1aXJlcyB0byBkaXNhYmxlIHRoZSBmYXN0c2V0IGF0IGJvb3QgZm9y IGVEUCBvdXRwdXQuCj4gPiArICovCj4gPiArdm9pZCB0Z2xfZGMzY29fY3J0Y19jb21wdXRlX2Nv bmZpZyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gPiArCQkJCSAgIHN0cnVj dCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQo+ID4gK3sKPiA+ICsJaWYgKCFJU19USUdF UkxBS0UoZGV2X3ByaXYpKQo+ID4gKwkJcmV0dXJuOwo+ID4gKwo+ID4gKwlpZiAoIShkZXZfcHJp di0+Y3NyLmFsbG93ZWRfZGNfbWFzayAmIERDX1NUQVRFX0VOX0RDM0NPKSkKPiA+ICsJCXJldHVy bjsKPiA+ICsKPiA+ICsJaWYgKGNydGNfc3RhdGUtPmhhc19wc3IyICYmIGNydGNfc3RhdGUtPmJh c2UuYWN0aXZlKSB7Cj4gPiArCQlpZiAodGdsX2RjM2NvX2lzX2VkcF9jb25uZWN0ZWQoY3J0Y19z dGF0ZSkpCj4gPiArCQkJY3J0Y19zdGF0ZS0+aGFzX2RjM2NvX2V4aXRsaW5lID0gdHJ1ZTsKPiA+ ICsJfQo+ID4gK30KPiA+ICsKPiA+ICt2b2lkIHRnbF9kYzNjb19jcnRjX2dldF9jb25maWcoc3Ry dWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCj4gPiArewo+ID4gKwl1MzIgdmFsOwo+ ID4gKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNydGNfc3Rh dGUtPmJhc2UuY3J0Yy0+ZGV2KTsKPiA+ICsKPiA+ICsJaWYgKCFJU19USUdFUkxBS0UoZGV2X3By aXYpKQo+ID4gKwkJcmV0dXJuOwo+ID4gKwo+ID4gKwlpZiAoIShkZXZfcHJpdi0+Y3NyLmFsbG93 ZWRfZGNfbWFzayAmIERDX1NUQVRFX0VOX0RDM0NPKSkKPiA+ICsJCXJldHVybjsKPiA+ICsKPiA+ ICsJLyogREMzQ08gYW5kIFBTUjIgaXMgc3VwcG9ydGVkIG9ubHkgb24gVFJBTlNDT0RFUl9BICov Cj4gPiArCWlmIChjcnRjX3N0YXRlLT5jcHVfdHJhbnNjb2RlciAhPSBUUkFOU0NPREVSX0EpCj4g PiArCQlyZXR1cm47Cj4gPiArCj4gPiArCXZhbCA9IEk5MTVfUkVBRChFWElUTElORShjcnRjX3N0 YXRlLT5jcHVfdHJhbnNjb2RlcikpOwo+ID4gKwo+ID4gKwlpZiAodmFsICYgRVhJVExJTkVfRU5B QkxFKQo+ID4gKwkJY3J0Y19zdGF0ZS0+aGFzX2RjM2NvX2V4aXRsaW5lID0gdHJ1ZTsKPiA+ICt9 Cj4gPiArCj4gPiAgc3RhdGljIHZvaWQKPiA+ICBhbGxvd2VkX2RjX21hc2tfdG9fdGFyZ2V0X2Rj X3N0YXRlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKPiA+ICB7Cj4gPiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3Bvd2Vy LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfcG93ZXIuaAo+ ID4gaW5kZXggMTNmYzcwNTc5OWZkLi5iZjY4ZjI2YTVhMzcgMTAwNjQ0Cj4gPiAtLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfcG93ZXIuaAo+ID4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3Bvd2VyLmgKPiA+IEBA IC0xMiw2ICsxMiw4IEBACj4gPiAgCj4gPiAgc3RydWN0IGRybV9pOTE1X3ByaXZhdGU7Cj4gPiAg c3RydWN0IGludGVsX2VuY29kZXI7Cj4gPiArc3RydWN0IGludGVsX2NydGNfc3RhdGU7Cj4gPiAr c3RydWN0IGludGVsX2F0b21pY19zdGF0ZTsKPiA+ICAKPiA+ICBlbnVtIGludGVsX2Rpc3BsYXlf cG93ZXJfZG9tYWluIHsKPiA+ICAJUE9XRVJfRE9NQUlOX0RJU1BMQVlfQ09SRSwKPiA+IEBAIC0y NTgsNiArMjYwLDExIEBAIHZvaWQgaW50ZWxfZGlzcGxheV9wb3dlcl9yZXN1bWVfZWFybHkoc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUpOwo+ID4gIHZvaWQgaW50ZWxfZGlzcGxheV9wb3dl cl9zdXNwZW5kKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1KTsKPiA+ICB2b2lkIGludGVs X2Rpc3BsYXlfcG93ZXJfcmVzdW1lKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1KTsKPiA+ ICB2b2lkIHRnbF9zZXRfdGFyZ2V0X2RjX3N0YXRlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpk ZXZfcHJpdiwgdTMyIHN0YXRlKTsKPiA+ICt2b2lkIHRnbF9kYzNjb19jcnRjX2NvbXB1dGVfY29u ZmlnKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiA+ICsJCQkJICAgc3RydWN0 IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpOwo+ID4gK3ZvaWQgdGdsX2RjM2NvX2NydGNf Z2V0X2NvbmZpZyhzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSk7Cj4gPiArdm9p ZCB0Z2xfZGlzYWJsZV9wc3IyX3RyYW5zY29kZXJfZXhpdGxpbmUoY29uc3Qgc3RydWN0IGludGVs X2NydGNfc3RhdGUgKnN0YXRlKTsKPiA+ICt2b2lkIHRnbF9lbmFibGVfcHNyMl90cmFuc2NvZGVy X2V4aXRsaW5lKGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpzdGF0ZSk7Cj4gPiAgCj4g PiAgY29uc3QgY2hhciAqCj4gPiAgaW50ZWxfZGlzcGxheV9wb3dlcl9kb21haW5fc3RyKGVudW0g aW50ZWxfZGlzcGxheV9wb3dlcl9kb21haW4gZG9tYWluKTsKPiA+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfdHlwZXMuaCBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV90eXBlcy5oCj4gPiBpbmRleCBkNWNj NGI4MTBkOWUuLjIyZjhmZTBhMzRkMCAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV90eXBlcy5oCj4gPiArKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfdHlwZXMuaAo+ID4gQEAgLTg3MSw2ICs4NzEs NyBAQCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSB7Cj4gPiAgCj4gPiAgCWJvb2wgaGFzX3BzcjsK PiA+ICAJYm9vbCBoYXNfcHNyMjsKPiA+ICsJYm9vbCBoYXNfZGMzY29fZXhpdGxpbmU7Cj4gPiAg Cj4gPiAgCS8qCj4gPiAgCSAqIEZyZXF1ZW5jZSB0aGUgZHBsbCBmb3IgdGhlIHBvcnQgc2hvdWxk IHJ1biBhdC4gRGlmZmVycyBmcm9tIHRoZQo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX3BtLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jCj4gPiBp bmRleCBkMGNlYjI3MjU1MWYuLjU2NzlkMWMxZDU2MCAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX3BtLmMKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX3BtLmMKPiA+IEBAIC00NTg4LDcgKzQ1ODgsNyBAQCBza2xfd21fbWV0aG9kMih1MzIgcGl4 ZWxfcmF0ZSwgdTMyIHBpcGVfaHRvdGFsLCB1MzIgbGF0ZW5jeSwKPiA+ICAJcmV0dXJuIHJldDsK PiA+ICB9Cj4gPiAgCj4gPiAtc3RhdGljIHVpbnRfZml4ZWRfMTZfMTZfdAo+ID4gK3VpbnRfZml4 ZWRfMTZfMTZfdAo+ID4gIGludGVsX2dldF9saW5ldGltZV91cyhjb25zdCBzdHJ1Y3QgaW50ZWxf Y3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKPiA+ICB7Cj4gPiAgCXUzMiBwaXhlbF9yYXRlOwo+ID4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmggYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9wbS5oCj4gPiBpbmRleCBlMzU3M2UxZTE2ZTMuLjQ1NGU5MmMwNmRm ZiAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmgKPiA+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmgKPiA+IEBAIC04LDYgKzgsNyBAQAo+ ID4gIAo+ID4gICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgo+ID4gIAo+ID4gKyNpbmNsdWRlICJp OTE1X2Rydi5oIgo+ID4gICNpbmNsdWRlICJpOTE1X3JlZy5oIgo+ID4gIAo+ID4gIHN0cnVjdCBk cm1fZGV2aWNlOwo+ID4gQEAgLTc2LDYgKzc3LDcgQEAgdTY0IGludGVsX3JjNl9yZXNpZGVuY3lf bnMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCBpOTE1X3JlZ190IHJlZyk7Cj4g PiAgdTY0IGludGVsX3JjNl9yZXNpZGVuY3lfdXMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2LCBpOTE1X3JlZ190IHJlZyk7Cj4gPiAgCj4gPiAgdTMyIGludGVsX2dldF9jYWdmKHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgdTMyIHJwc3RhdDEpOwo+ID4gK3VpbnRf Zml4ZWRfMTZfMTZfdCBpbnRlbF9nZXRfbGluZXRpbWVfdXMoY29uc3Qgc3RydWN0IGludGVsX2Ny dGNfc3RhdGUgKmNzdGF0ZSk7Cj4gPiAgCj4gPiAgdW5zaWduZWQgbG9uZyBpOTE1X2NoaXBzZXRf dmFsKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7Cj4gPiAgdW5zaWduZWQgbG9u ZyBpOTE1X21jaF92YWwoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KTsKPiA+IC0t IAo+ID4gMi4yMS4wCj4gPiAKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50 ZWwtZ2Z4