From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH] drm/i915: Introduce concept of a sub-platform Date: Fri, 15 Mar 2019 16:09:36 +0200 Message-ID: <20190315140936.GB3888@intel.com> References: <20190315122633.11421-1-tvrtko.ursulin@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id 018266E42D for ; Fri, 15 Mar 2019 14:09:47 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20190315122633.11421-1-tvrtko.ursulin@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Tvrtko Ursulin Cc: Jani Nikula , Intel-gfx@lists.freedesktop.org, Lucas De Marchi List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCBNYXIgMTUsIDIwMTkgYXQgMTI6MjY6MzNQTSArMDAwMCwgVHZydGtvIFVyc3VsaW4g d3JvdGU6Cj4gRnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4K PiAKPiBDb25jZXB0IG9mIGEgc3ViLXBsYXRmb3JtIGFscmVhZHkgZXhpc3QgaW4gb3VyIGNvZGUg KGxpa2UgVUxYIGFuZCBVTFQKPiBwbGF0Zm9ybSB2YXJpYW50cyBhbmQgc2ltaWxhciksaW1wbGVt ZW50ZWQgdmlhIHRoZSBtYWNyb3Mgd2hpY2ggY2hlY2sgYQo+IGxpc3Qgb2YgZGV2aWNlIGlkcyB0 byBkZXRlcm1pbmUgYSBtYXRjaC4KPiAKPiBXaXRoIHRoaXMgcGF0Y2ggd2UgY29uc29saWRhdGUg ZGV2aWNlIGlkcyBjaGVja2luZyBpbnRvIGEgc2luZ2xlIGZ1bmN0aW9uCj4gY2FsbGVkIGR1cmlu ZyBlYXJseSBkcml2ZXIgbG9hZC4KPiAKPiBBIGZldyBsb3cgYml0cyBpbiB0aGUgcGxhdGZvcm0g bWFzayBhcmUgcmVzZXJ2ZWQgZm9yIHN1Yi1wbGF0Zm9ybQo+IGlkZW50aWZpY2F0aW9uIGFuZCBk ZWZpbmVkIGFzIGEgcGVyLXBsYXRmb3JtIG5hbWVzcGFjZS4KPiAKPiBBdCB0aGUgc2FtZSB0aW1l IGl0IGZ1dHVyZSBwcm9vZnMgdGhlIHBsYXRmb3JtX21hc2sgaGFuZGxpbmcgYnkgcHJlcGFyaW5n Cj4gdGhlIGNvZGUgZm9yIGVhc3kgZXh0ZW5kaW5nLCBhbmQgdGlkaWVzIHRoZSB2ZXJ5IHZlcmJv c2UgV0FSTiBzdHJpbmdzCj4gZ2VuZXJhdGVkIHdoZW4gSVNfUExBVEZPUk0gbWFjcm9zIGFyZSBl bWJlZGRlZCBpbnRvIGEgV0FSTiB0eXBlCj4gc3RhdGVtZW50cy4KPiAKPiBUaGUgYXBwcm9hY2gg aXMgYWxzbyBiZW5lZmljaWFsIHRvIGRyaXZlciBzaXplLCB3aXRoIGFuIGNvbWJpbmVkIHNocmlu ayBvZgo+IGNvZGUgYW5kIHN0cmluZ3Mgb2YgYXJvdW5kIDEuNyBraUIuCj4gCj4gdjI6IEZpeGVk IElTX1NVQlBMQVRGT1JNLiBVcGRhdGVkIGNvbW1pdCBtc2cuCj4gdjM6IENocmlzIHdhcyByaWdo dCwgdGhlcmUgaXMgYW4gb3JkZXJpbmcgcHJvYmxlbS4KPiAKPiB2NDoKPiAgKiBDYXRjaC11cCB3 aXRoIG5ldyBzdWItcGxhdGZvcm1zLgo+ICAqIFJlYmFzZSBmb3IgUlVOVElNRV9JTkZPLgo+ICAq IERyb3Agc3VicGxhdGZvcm0gbWFzayB1bmlvbiB0cmlja3MgYW5kIGNvbnZlcnQgcGxhdGZvcm1f bWFzayB0byBhbgo+ICAgIGFycmF5IGZvciBleHRlbnNpYmlsaXR5Lgo+IAo+IFNpZ25lZC1vZmYt Ynk6IFR2cnRrbyBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+Cj4gU3VnZ2VzdGVk LWJ5OiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KPiBDYzogQ2hyaXMg V2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+Cj4gQ2M6IEphbmkgTmlrdWxhIDxqYW5p Lm5pa3VsYUBpbnRlbC5jb20+Cj4gQ2M6IEx1Y2FzIERlIE1hcmNoaSA8bHVjYXMuZGVtYXJjaGlA aW50ZWwuY29tPgo+IENjOiBKb3NlIFNvdXphIDxqb3NlLnNvdXphQGludGVsLmNvbT4KPiAtLS0K PiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYyAgICAgICAgICB8ICAgNyArLQo+ICBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAgICAgICAgIHwgMTEwICsrKysrKysrKysr KysrKy0tLS0tLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcGNpLmMgICAgICAgICAg fCAgIDIgKy0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGV2aWNlX2luZm8uYyB8ICA3 OSArKysrKysrKysrKysrKysrCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RldmljZV9p bmZvLmggfCAgMjggKysrKystCj4gIDUgZmlsZXMgY2hhbmdlZCwgMTc5IGluc2VydGlvbnMoKyks IDQ3IGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYwo+IGluZGV4IDBkNzQz OTA3ZTdiYy4uMzIxODM1MGNkMjI1IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZHJ2LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jCj4gQEAg LTg2Myw2ICs4NjMsOCBAQCBzdGF0aWMgaW50IGk5MTVfZHJpdmVyX2luaXRfZWFybHkoc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ICAJaWYgKGk5MTVfaW5qZWN0X2xvYWRfZmFp bHVyZSgpKQo+ICAJCXJldHVybiAtRU5PREVWOwo+ICAKPiArCWludGVsX2RldmljZV9pbmZvX3N1 YnBsYXRmb3JtX2luaXQoZGV2X3ByaXYpOwo+ICsKPiAgCXNwaW5fbG9ja19pbml0KCZkZXZfcHJp di0+aXJxX2xvY2spOwo+ICAJc3Bpbl9sb2NrX2luaXQoJmRldl9wcml2LT5ncHVfZXJyb3IubG9j ayk7Cj4gIAltdXRleF9pbml0KCZkZXZfcHJpdi0+YmFja2xpZ2h0X2xvY2spOwo+IEBAIC0xNzUy LDEwICsxNzU0LDExIEBAIHN0YXRpYyB2b2lkIGk5MTVfd2VsY29tZV9tZXNzYWdlcyhzdHJ1Y3Qg ZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4gIAlpZiAoZHJtX2RlYnVnICYgRFJNX1VUX0RS SVZFUikgewo+ICAJCXN0cnVjdCBkcm1fcHJpbnRlciBwID0gZHJtX2RlYnVnX3ByaW50ZXIoImk5 MTUgZGV2aWNlIGluZm86Iik7Cj4gIAo+IC0JCWRybV9wcmludGYoJnAsICJwY2lpZD0weCUwNHgg cmV2PTB4JTAyeCBwbGF0Zm9ybT0lcyBnZW49JWlcbiIsCj4gKwkJZHJtX3ByaW50ZigmcCwgInBj aWlkPTB4JTA0eCByZXY9MHglMDJ4IHBsYXRmb3JtPSVzICgleCkgZ2VuPSVpXG4iLAo+ICAJCQkg ICBJTlRFTF9ERVZJRChkZXZfcHJpdiksCj4gIAkJCSAgIElOVEVMX1JFVklEKGRldl9wcml2KSwK PiAgCQkJICAgaW50ZWxfcGxhdGZvcm1fbmFtZShJTlRFTF9JTkZPKGRldl9wcml2KS0+cGxhdGZv cm0pLAo+ICsJCQkgICBSVU5USU1FX0lORk8oZGV2X3ByaXYpLT5wbGF0Zm9ybV9tYXNrW0lOVEVM X0lORk8oZGV2X3ByaXYpLT5wbGF0Zm9ybSAvIChCSVRTX1BFUl9UWVBFKFJVTlRJTUVfSU5GTyhk ZXZfcHJpdiktPnBsYXRmb3JtX21hc2tbMF0pIC0gSU5URUxfU1VCUExBVEZPUk1fQklUUyldLAo+ ICAJCQkgICBJTlRFTF9HRU4oZGV2X3ByaXYpKTsKPiAgCj4gIAkJaW50ZWxfZGV2aWNlX2luZm9f ZHVtcF9mbGFncyhJTlRFTF9JTkZPKGRldl9wcml2KSwgJnApOwo+IEBAIC0xNzk4LDggKzE4MDEs NiBAQCBpOTE1X2RyaXZlcl9jcmVhdGUoc3RydWN0IHBjaV9kZXYgKnBkZXYsIGNvbnN0IHN0cnVj dCBwY2lfZGV2aWNlX2lkICplbnQpCj4gIAltZW1jcHkoZGV2aWNlX2luZm8sIG1hdGNoX2luZm8s IHNpemVvZigqZGV2aWNlX2luZm8pKTsKPiAgCVJVTlRJTUVfSU5GTyhpOTE1KS0+ZGV2aWNlX2lk ID0gcGRldi0+ZGV2aWNlOwo+ICAKPiAtCUJVSUxEX0JVR19PTihJTlRFTF9NQVhfUExBVEZPUk1T ID4KPiAtCQkgICAgIEJJVFNfUEVSX1RZUEUoZGV2aWNlX2luZm8tPnBsYXRmb3JtX21hc2spKTsK PiAgCUJVR19PTihkZXZpY2VfaW5mby0+Z2VuID4gQklUU19QRVJfVFlQRShkZXZpY2VfaW5mby0+ Z2VuX21hc2spKTsKPiAgCj4gIAlyZXR1cm4gaTkxNTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgK PiBpbmRleCBkY2NiNjAwNmFhYmYuLjM0MjgyY2Y2NmNiMCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9kcnYuaAo+IEBAIC0yMjgxLDcgKzIyODEsNDYgQEAgc3RhdGljIGlubGluZSB1bnNpZ25lZCBp bnQgaTkxNV9zZ19zZWdtZW50X3NpemUodm9pZCkKPiAgI2RlZmluZSBJU19SRVZJRChwLCBzaW5j ZSwgdW50aWwpIFwKPiAgCShJTlRFTF9SRVZJRChwKSA+PSAoc2luY2UpICYmIElOVEVMX1JFVklE KHApIDw9ICh1bnRpbCkpCj4gIAo+IC0jZGVmaW5lIElTX1BMQVRGT1JNKGRldl9wcml2LCBwKSAo SU5URUxfSU5GTyhkZXZfcHJpdiktPnBsYXRmb3JtX21hc2sgJiBCSVQocCkpCj4gKyNkZWZpbmUg X19JU19QTEFURk9STShkZXZfcHJpdiwgcCkgXAo+ICsoeyBcCj4gKwljb25zdCB1bnNpZ25lZCBp bnQgcGJpdHNfXyA9IFwKPiArCQlCSVRTX1BFUl9UWVBFKFJVTlRJTUVfSU5GTyhkZXZfcHJpdikt PnBsYXRmb3JtX21hc2tbMF0pIC0gXAo+ICsJCUlOVEVMX1NVQlBMQVRGT1JNX0JJVFM7IFwKPiAr CWNvbnN0IHVuc2lnbmVkIGludCBwaV9fID0gKHApIC8gcGJpdHNfXzsgXAo+ICsJY29uc3QgdW5z aWduZWQgaW50IHBiX18gPSAocCkgJSBwYml0c19fICsgSU5URUxfU1VCUExBVEZPUk1fQklUUzsg XAo+ICtcCj4gKwlCVUlMRF9CVUdfT04oIV9fYnVpbHRpbl9jb25zdGFudF9wKHApKTsgXAo+ICtc Cj4gKwkoUlVOVElNRV9JTkZPKGRldl9wcml2KS0+cGxhdGZvcm1fbWFza1twaV9fXSAmIEJJVChw Yl9fKSk7IFwKPiArfSkKPiArCj4gKyNkZWZpbmUgX19JU19TVUJQTEFURk9STShkZXZfcHJpdiwg cCwgcykgXAo+ICsoeyBcCj4gKwljb25zdCB1bnNpZ25lZCBpbnQgcGJpdHNfXyA9IFwKPiArCQlC SVRTX1BFUl9UWVBFKFJVTlRJTUVfSU5GTyhkZXZfcHJpdiktPnBsYXRmb3JtX21hc2tbMF0pIC0g XAo+ICsJCUlOVEVMX1NVQlBMQVRGT1JNX0JJVFM7IFwKPiArCWNvbnN0IHVuc2lnbmVkIGludCBw aV9fID0gKHApIC8gcGJpdHNfXzsgXAo+ICsJY29uc3QgdW5zaWduZWQgaW50IHBiX18gPSAocCkg JSBwYml0c19fICsgSU5URUxfU1VCUExBVEZPUk1fQklUUzsgXAo+ICtcCj4gKwlCVUlMRF9CVUdf T04oIV9fYnVpbHRpbl9jb25zdGFudF9wKHApKTsgXAo+ICsJQlVJTERfQlVHX09OKCFfX2J1aWx0 aW5fY29uc3RhbnRfcChzKSk7IFwKPiArCUJVSUxEX0JVR19PTigocykgPj0gSU5URUxfU1VCUExB VEZPUk1fQklUUyk7IFwKPiArXAo+ICsJKFJVTlRJTUVfSU5GTyhkZXZfcHJpdiktPnBsYXRmb3Jt X21hc2tbcGlfX10gJiAoQklUKHBiX18pIHwgQklUKHMpKSk7IFwKPiArfSkKPiArCj4gK3N0YXRp YyBpbmxpbmUgYm9vbAo+ICtJU19QTEFURk9STShjb25zdCBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqaTkxNSwgZW51bSBpbnRlbF9wbGF0Zm9ybSBwKQo+ICt7Cj4gKwlyZXR1cm4gX19JU19QTEFU Rk9STShpOTE1LCBwKTsKPiArfQo+ICsKPiArc3RhdGljIGlubGluZSBib29sCj4gK0lTX1NVQlBM QVRGT1JNKGNvbnN0IHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1LAo+ICsJICAgICAgIGVu dW0gaW50ZWxfcGxhdGZvcm0gcCwgdW5zaWduZWQgaW50IHMpCj4gK3sKPiArCXJldHVybiBfX0lT X1NVQlBMQVRGT1JNKGk5MTUsIHAsIHMpOwo+ICt9Cj4gIAo+ICAjZGVmaW5lIElTX0k4MzAoZGV2 X3ByaXYpCUlTX1BMQVRGT1JNKGRldl9wcml2LCBJTlRFTF9JODMwKQo+ICAjZGVmaW5lIElTX0k4 NDVHKGRldl9wcml2KQlJU19QTEFURk9STShkZXZfcHJpdiwgSU5URUxfSTg0NUcpCj4gQEAgLTIy OTYsMTEgKzIzMzUsMTUgQEAgc3RhdGljIGlubGluZSB1bnNpZ25lZCBpbnQgaTkxNV9zZ19zZWdt ZW50X3NpemUodm9pZCkKPiAgI2RlZmluZSBJU19HNDUoZGV2X3ByaXYpCUlTX1BMQVRGT1JNKGRl dl9wcml2LCBJTlRFTF9HNDUpCj4gICNkZWZpbmUgSVNfR000NShkZXZfcHJpdikJSVNfUExBVEZP Uk0oZGV2X3ByaXYsIElOVEVMX0dNNDUpCj4gICNkZWZpbmUgSVNfRzRYKGRldl9wcml2KQkoSVNf RzQ1KGRldl9wcml2KSB8fCBJU19HTTQ1KGRldl9wcml2KSkKPiAtI2RlZmluZSBJU19QSU5FVklF V19HKGRldl9wcml2KQkoSU5URUxfREVWSUQoZGV2X3ByaXYpID09IDB4YTAwMSkKPiAtI2RlZmlu ZSBJU19QSU5FVklFV19NKGRldl9wcml2KQkoSU5URUxfREVWSUQoZGV2X3ByaXYpID09IDB4YTAx MSkKPiArI2RlZmluZSBJU19QSU5FVklFV19HKGRldl9wcml2KQlcCj4gKwlJU19TVUJQTEFURk9S TShkZXZfcHJpdiwgSU5URUxfUElORVZJRVcsIElOVEVMX1NVQlBMQVRGT1JNX1BJTkVWSUVXX0cp Cj4gKyNkZWZpbmUgSVNfUElORVZJRVdfTShkZXZfcHJpdikJXAo+ICsJSVNfU1VCUExBVEZPUk0o ZGV2X3ByaXYsIElOVEVMX1BJTkVWSUVXLCBJTlRFTF9TVUJQTEFURk9STV9QSU5FVklFV19NKQo+ ICAjZGVmaW5lIElTX1BJTkVWSUVXKGRldl9wcml2KQlJU19QTEFURk9STShkZXZfcHJpdiwgSU5U RUxfUElORVZJRVcpCgpJIGhhdmUgYSBmZWVsaW5nIHdlIHNob3VsZCBqdXN0IHVzZSB0aGUgbm9y bWFsIElTX01PQklMRSgpIHRoaW5nCmhlcmUuIEJ1dCB1bnRhbmdsaW5nIHRoYXQgbWVzcyBtaWdo dCBiZSBhIGJpdCBvZiB3b3JrLgoKPiAgI2RlZmluZSBJU19HMzMoZGV2X3ByaXYpCUlTX1BMQVRG T1JNKGRldl9wcml2LCBJTlRFTF9HMzMpCj4gLSNkZWZpbmUgSVNfSVJPTkxBS0VfTShkZXZfcHJp dikJKElOVEVMX0RFVklEKGRldl9wcml2KSA9PSAweDAwNDYpCj4gKyNkZWZpbmUgSVNfSVJPTkxB S0UoZGV2X3ByaXYpCUlTX1BMQVRGT1JNKGRldl9wcml2LCBJTlRFTF9JUk9OTEFLRSkKPiArI2Rl ZmluZSBJU19JUk9OTEFLRV9NKGRldl9wcml2KQlcCj4gKwlJU19TVUJQTEFURk9STShkZXZfcHJp diwgSU5URUxfSVJPTkxBS0UsIElOVEVMX1NVQlBMQVRGT1JNX0lST05MQUtFX00pCgpUaGlzIGlz IGNsZWFybHkganVzdCBJU19NT0JJTEUoKS4KCk9yIHdlIGp1c3Qga2VlcCB0aGUgY3VycmVudCBw Y2kgaWQgY2hlY2tzLiBGcmFua2x5IEkgc2VlIG5vIGJlbmVmaXQgaW4KYWJzdHJhY3RpbmcgdGhl c2UgZmV3IGV4Y2VwdGlvbnMuCgo+ICAjZGVmaW5lIElTX0lWWUJSSURHRShkZXZfcHJpdikJSVNf UExBVEZPUk0oZGV2X3ByaXYsIElOVEVMX0lWWUJSSURHRSkKPiAgI2RlZmluZSBJU19JVkJfR1Qx KGRldl9wcml2KQkoSVNfSVZZQlJJREdFKGRldl9wcml2KSAmJiBcCj4gIAkJCQkgSU5URUxfSU5G TyhkZXZfcHJpdiktPmd0ID09IDEpCj4gQEAgLTIzMTgsNDIgKzIzNjEsMzEgQEAgc3RhdGljIGlu bGluZSB1bnNpZ25lZCBpbnQgaTkxNV9zZ19zZWdtZW50X3NpemUodm9pZCkKPiAgI2RlZmluZSBJ U19NT0JJTEUoZGV2X3ByaXYpCShJTlRFTF9JTkZPKGRldl9wcml2KS0+aXNfbW9iaWxlKQo+ICAj ZGVmaW5lIElTX0hTV19FQVJMWV9TRFYoZGV2X3ByaXYpIChJU19IQVNXRUxMKGRldl9wcml2KSAm JiBcCj4gIAkJCQkgICAgKElOVEVMX0RFVklEKGRldl9wcml2KSAmIDB4RkYwMCkgPT0gMHgwQzAw KQo+IC0jZGVmaW5lIElTX0JEV19VTFQoZGV2X3ByaXYpCShJU19CUk9BRFdFTEwoZGV2X3ByaXYp ICYmIFwKPiAtCQkJCSAoKElOVEVMX0RFVklEKGRldl9wcml2KSAmIDB4ZikgPT0gMHg2IHx8CVwK PiAtCQkJCSAoSU5URUxfREVWSUQoZGV2X3ByaXYpICYgMHhmKSA9PSAweGIgfHwJXAo+IC0JCQkJ IChJTlRFTF9ERVZJRChkZXZfcHJpdikgJiAweGYpID09IDB4ZSkpCj4gLS8qIFVMWCBtYWNoaW5l cyBhcmUgYWxzbyBjb25zaWRlcmVkIFVMVC4gKi8KPiAtI2RlZmluZSBJU19CRFdfVUxYKGRldl9w cml2KQkoSVNfQlJPQURXRUxMKGRldl9wcml2KSAmJiBcCj4gLQkJCQkgKElOVEVMX0RFVklEKGRl dl9wcml2KSAmIDB4ZikgPT0gMHhlKQo+ICsjZGVmaW5lIElTX0JEV19VTFQoZGV2X3ByaXYpIFwK PiArCUlTX1NVQlBMQVRGT1JNKGRldl9wcml2LCBJTlRFTF9CUk9BRFdFTEwsIElOVEVMX1NVQlBM QVRGT1JNX1VMVCkKPiArI2RlZmluZSBJU19CRFdfVUxYKGRldl9wcml2KSBcCj4gKwlJU19TVUJQ TEFURk9STShkZXZfcHJpdiwgSU5URUxfQlJPQURXRUxMLCBJTlRFTF9TVUJQTEFURk9STV9VTFgp Cj4gICNkZWZpbmUgSVNfQkRXX0dUMyhkZXZfcHJpdikJKElTX0JST0FEV0VMTChkZXZfcHJpdikg JiYgXAo+ICAJCQkJIElOVEVMX0lORk8oZGV2X3ByaXYpLT5ndCA9PSAzKQo+IC0jZGVmaW5lIElT X0hTV19VTFQoZGV2X3ByaXYpCShJU19IQVNXRUxMKGRldl9wcml2KSAmJiBcCj4gLQkJCQkgKElO VEVMX0RFVklEKGRldl9wcml2KSAmIDB4RkYwMCkgPT0gMHgwQTAwKQo+ICsjZGVmaW5lIElTX0hT V19VTFQoZGV2X3ByaXYpIFwKPiArCUlTX1NVQlBMQVRGT1JNKGRldl9wcml2LCBJTlRFTF9IQVNX RUxMLCBJTlRFTF9TVUJQTEFURk9STV9VTFQpCj4gICNkZWZpbmUgSVNfSFNXX0dUMyhkZXZfcHJp dikJKElTX0hBU1dFTEwoZGV2X3ByaXYpICYmIFwKPiAgCQkJCSBJTlRFTF9JTkZPKGRldl9wcml2 KS0+Z3QgPT0gMykKPiAgI2RlZmluZSBJU19IU1dfR1QxKGRldl9wcml2KQkoSVNfSEFTV0VMTChk ZXZfcHJpdikgJiYgXAo+ICAJCQkJIElOVEVMX0lORk8oZGV2X3ByaXYpLT5ndCA9PSAxKQo+ICAv KiBVTFggbWFjaGluZXMgYXJlIGFsc28gY29uc2lkZXJlZCBVTFQuICovCj4gLSNkZWZpbmUgSVNf SFNXX1VMWChkZXZfcHJpdikJKElOVEVMX0RFVklEKGRldl9wcml2KSA9PSAweDBBMEUgfHwgXAo+ IC0JCQkJIElOVEVMX0RFVklEKGRldl9wcml2KSA9PSAweDBBMUUpCj4gLSNkZWZpbmUgSVNfU0tM X1VMVChkZXZfcHJpdikJKElOVEVMX0RFVklEKGRldl9wcml2KSA9PSAweDE5MDYgfHwgXAo+IC0J CQkJIElOVEVMX0RFVklEKGRldl9wcml2KSA9PSAweDE5MTMgfHwgXAo+IC0JCQkJIElOVEVMX0RF VklEKGRldl9wcml2KSA9PSAweDE5MTYgfHwgXAo+IC0JCQkJIElOVEVMX0RFVklEKGRldl9wcml2 KSA9PSAweDE5MjEgfHwgXAo+IC0JCQkJIElOVEVMX0RFVklEKGRldl9wcml2KSA9PSAweDE5MjYp Cj4gLSNkZWZpbmUgSVNfU0tMX1VMWChkZXZfcHJpdikJKElOVEVMX0RFVklEKGRldl9wcml2KSA9 PSAweDE5MEUgfHwgXAo+IC0JCQkJIElOVEVMX0RFVklEKGRldl9wcml2KSA9PSAweDE5MTUgfHwg XAo+IC0JCQkJIElOVEVMX0RFVklEKGRldl9wcml2KSA9PSAweDE5MUUpCj4gLSNkZWZpbmUgSVNf S0JMX1VMVChkZXZfcHJpdikJKElOVEVMX0RFVklEKGRldl9wcml2KSA9PSAweDU5MDYgfHwgXAo+ IC0JCQkJIElOVEVMX0RFVklEKGRldl9wcml2KSA9PSAweDU5MTMgfHwgXAo+IC0JCQkJIElOVEVM X0RFVklEKGRldl9wcml2KSA9PSAweDU5MTYgfHwgXAo+IC0JCQkJIElOVEVMX0RFVklEKGRldl9w cml2KSA9PSAweDU5MjEgfHwgXAo+IC0JCQkJIElOVEVMX0RFVklEKGRldl9wcml2KSA9PSAweDU5 MjYpCj4gLSNkZWZpbmUgSVNfS0JMX1VMWChkZXZfcHJpdikJKElOVEVMX0RFVklEKGRldl9wcml2 KSA9PSAweDU5MEUgfHwgXAo+IC0JCQkJIElOVEVMX0RFVklEKGRldl9wcml2KSA9PSAweDU5MTUg fHwgXAo+IC0JCQkJIElOVEVMX0RFVklEKGRldl9wcml2KSA9PSAweDU5MUUpCj4gLSNkZWZpbmUg SVNfQU1MX1VMWChkZXZfcHJpdikJKElOVEVMX0RFVklEKGRldl9wcml2KSA9PSAweDU5MUMgfHwg XAo+IC0JCQkJIElOVEVMX0RFVklEKGRldl9wcml2KSA9PSAweDg3QzApCj4gKyNkZWZpbmUgSVNf SFNXX1VMWChkZXZfcHJpdikgXAo+ICsJSVNfU1VCUExBVEZPUk0oZGV2X3ByaXYsIElOVEVMX0hB U1dFTEwsIElOVEVMX1NVQlBMQVRGT1JNX1VMWCkKPiArI2RlZmluZSBJU19TS0xfVUxUKGRldl9w cml2KSBcCj4gKwlJU19TVUJQTEFURk9STShkZXZfcHJpdiwgSU5URUxfU0tZTEFLRSwgSU5URUxf U1VCUExBVEZPUk1fVUxUKQo+ICsjZGVmaW5lIElTX1NLTF9VTFgoZGV2X3ByaXYpIFwKPiArCUlT X1NVQlBMQVRGT1JNKGRldl9wcml2LCBJTlRFTF9TS1lMQUtFLCBJTlRFTF9TVUJQTEFURk9STV9V TFgpCj4gKyNkZWZpbmUgSVNfS0JMX1VMVChkZXZfcHJpdikgXAo+ICsJSVNfU1VCUExBVEZPUk0o ZGV2X3ByaXYsIElOVEVMX0tBQllMQUtFLCBJTlRFTF9TVUJQTEFURk9STV9VTFQpCj4gKyNkZWZp bmUgSVNfS0JMX1VMWChkZXZfcHJpdikgXAo+ICsJSVNfU1VCUExBVEZPUk0oZGV2X3ByaXYsIElO VEVMX0tBQllMQUtFLCBJTlRFTF9TVUJQTEFURk9STV9VTFgpCj4gKyNkZWZpbmUgSVNfQU1MX1VM WChkZXZfcHJpdikgXAo+ICsJSVNfU1VCUExBVEZPUk0oZGV2X3ByaXYsIElOVEVMX0tBQllMQUtF LCBJTlRFTF9TVUJQTEFURk9STV9BTUxfVUxYKQoKV2h5IGlzIEFNTF9VTFggZGlmZmVyZW50IGZy b20gbm9ybWFsIFVMWD8KCj4gICNkZWZpbmUgSVNfU0tMX0dUMihkZXZfcHJpdikJKElTX1NLWUxB S0UoZGV2X3ByaXYpICYmIFwKPiAgCQkJCSBJTlRFTF9JTkZPKGRldl9wcml2KS0+Z3QgPT0gMikK PiAgI2RlZmluZSBJU19TS0xfR1QzKGRldl9wcml2KQkoSVNfU0tZTEFLRShkZXZfcHJpdikgJiYg XAo+IEBAIC0yMzY0LDE2ICsyMzk2LDE2IEBAIHN0YXRpYyBpbmxpbmUgdW5zaWduZWQgaW50IGk5 MTVfc2dfc2VnbWVudF9zaXplKHZvaWQpCj4gIAkJCQkgSU5URUxfSU5GTyhkZXZfcHJpdiktPmd0 ID09IDIpCj4gICNkZWZpbmUgSVNfS0JMX0dUMyhkZXZfcHJpdikJKElTX0tBQllMQUtFKGRldl9w cml2KSAmJiBcCj4gIAkJCQkgSU5URUxfSU5GTyhkZXZfcHJpdiktPmd0ID09IDMpCj4gLSNkZWZp bmUgSVNfQ0ZMX1VMVChkZXZfcHJpdikJKElTX0NPRkZFRUxBS0UoZGV2X3ByaXYpICYmIFwKPiAt CQkJCSAoSU5URUxfREVWSUQoZGV2X3ByaXYpICYgMHgwMEYwKSA9PSAweDAwQTApCj4gKyNkZWZp bmUgSVNfQ0ZMX1VMVChkZXZfcHJpdikgXAo+ICsJSVNfU1VCUExBVEZPUk0oZGV2X3ByaXYsIElO VEVMX0NPRkZFRUxBS0UsIElOVEVMX1NVQlBMQVRGT1JNX1VMVCkKPiAgI2RlZmluZSBJU19DRkxf R1QyKGRldl9wcml2KQkoSVNfQ09GRkVFTEFLRShkZXZfcHJpdikgJiYgXAo+ICAJCQkJIElOVEVM X0lORk8oZGV2X3ByaXYpLT5ndCA9PSAyKQo+ICAjZGVmaW5lIElTX0NGTF9HVDMoZGV2X3ByaXYp CShJU19DT0ZGRUVMQUtFKGRldl9wcml2KSAmJiBcCj4gIAkJCQkgSU5URUxfSU5GTyhkZXZfcHJp diktPmd0ID09IDMpCj4gLSNkZWZpbmUgSVNfQ05MX1dJVEhfUE9SVF9GKGRldl9wcml2KSAgIChJ U19DQU5OT05MQUtFKGRldl9wcml2KSAmJiBcCj4gLQkJCQkJKElOVEVMX0RFVklEKGRldl9wcml2 KSAmIDB4MDAwNCkgPT0gMHgwMDA0KQo+IC0jZGVmaW5lIElTX0lDTF9XSVRIX1BPUlRfRihkZXZf cHJpdikgICAoSVNfSUNFTEFLRShkZXZfcHJpdikgJiYgXAo+IC0JCQkJCUlOVEVMX0RFVklEKGRl dl9wcml2KSAhPSAweDhBNTEpCj4gKyNkZWZpbmUgSVNfQ05MX1dJVEhfUE9SVF9GKGRldl9wcml2 KSBcCj4gKwlJU19TVUJQTEFURk9STShkZXZfcHJpdiwgSU5URUxfQ0FOTk9OTEFLRSwgSU5URUxf U1VCUExBVEZPUk1fUE9SVEYpCj4gKyNkZWZpbmUgSVNfSUNMX1dJVEhfUE9SVF9GKGRldl9wcml2 KSBcCj4gKwlJU19TVUJQTEFURk9STShkZXZfcHJpdiwgSU5URUxfSUNFTEFLRSwgSU5URUxfU1VC UExBVEZPUk1fUE9SVEYpCgpHb2QgdGhhdCBQT1JURiB0aGluZyBpcyB1Z2x5LiBJIHdvdWxkIHN1 Z2dlc3Qgd2UganVzdCBhZGQgcG9ydF9tYXNrCm9yIHNvbWV0aGluZyBhbG9uZyB0aG9zZSBsaW5l cyBpbnRvIHRoZSBkZXZpY2UgaW5mby4KClRoZW4gd2UgY291bGQgcGVyaGFwcyBldmVuIGF2b2lk IGFkZGluZyBtb3JlIGFuZCBtb3JlIGJyYW5jaGVzIHRvCmludGVsX3NldHVwX291dHB1dHMoKS4g QWx0aG91Z2ggSSdtIG5vdCBzdXJlIHdlIG5lZWQgYW55dGhpbmcgZm9yIHRoYXQKc2luY2Ugd2Un bGwgbG9vayBhdCB0aGUgVkJUIGFueXdheSAod2hpY2ggKm1heWJlKiBkb2Vzbid0IGFkdmVydGl6 ZQpwb3J0cyB0aGF0IGFyZW4ndCBwcmVzZW50PykuCgo+ICAKPiAgI2RlZmluZSBJU19BTFBIQV9T VVBQT1JUKGludGVsX2luZm8pICgoaW50ZWxfaW5mbyktPmlzX2FscGhhX3N1cHBvcnQpCj4gIAo+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BjaS5jIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9wY2kuYwo+IGluZGV4IDNjZjY5N2U4ZjFmYS4uMmIwNDI2MThlM2Nh IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcGNpLmMKPiArKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BjaS5jCj4gQEAgLTMyLDcgKzMyLDcgQEAKPiAgI2lu Y2x1ZGUgImk5MTVfZ2xvYmFscy5oIgo+ICAjaW5jbHVkZSAiaTkxNV9zZWxmdGVzdC5oIgo+ICAK PiAtI2RlZmluZSBQTEFURk9STSh4KSAucGxhdGZvcm0gPSAoeCksIC5wbGF0Zm9ybV9tYXNrID0g QklUKHgpCj4gKyNkZWZpbmUgUExBVEZPUk0oeCkgLnBsYXRmb3JtID0gKHgpCj4gICNkZWZpbmUg R0VOKHgpIC5nZW4gPSAoeCksIC5nZW5fbWFzayA9IEJJVCgoeCkgLSAxKQo+ICAKPiAgI2RlZmlu ZSBJODQ1X1BJUEVfT0ZGU0VUUyBcCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2RldmljZV9pbmZvLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZXZpY2Vf aW5mby5jCj4gaW5kZXggYWFjMTliMWM0MTljLi5iOGE3ZTE3Y2I0NDMgMTAwNjQ0Cj4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGV2aWNlX2luZm8uYwo+ICsrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2RldmljZV9pbmZvLmMKPiBAQCAtNzA3LDYgKzcwNyw4NSBAQCBz dGF0aWMgdTMyIHJlYWRfdGltZXN0YW1wX2ZyZXF1ZW5jeShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYpCj4gIAlyZXR1cm4gMDsKPiAgfQo+ICAKPiArdm9pZCBpbnRlbF9kZXZpY2Vf aW5mb19zdWJwbGF0Zm9ybV9pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1KQo+ICt7 Cj4gKwljb25zdCB1bnNpZ25lZCBpbnQgcGJpdHMgPQo+ICsJCUJJVFNfUEVSX1RZUEUoUlVOVElN RV9JTkZPKGk5MTUpLT5wbGF0Zm9ybV9tYXNrWzBdKSAtCj4gKwkJSU5URUxfU1VCUExBVEZPUk1f QklUUzsKPiArCWNvbnN0IHVuc2lnbmVkIGludCBwaSA9IElOVEVMX0lORk8oaTkxNSktPnBsYXRm b3JtIC8gcGJpdHM7Cj4gKwljb25zdCB1bnNpZ25lZCBpbnQgcGIgPQo+ICsJCUlOVEVMX0lORk8o aTkxNSktPnBsYXRmb3JtICUgcGJpdHMgKyBJTlRFTF9TVUJQTEFURk9STV9CSVRTOwo+ICsJc3Ry dWN0IGludGVsX3J1bnRpbWVfaW5mbyAqaW5mbyA9IFJVTlRJTUVfSU5GTyhpOTE1KTsKPiArCXUx NiBkZXZpZCA9IElOVEVMX0RFVklEKGk5MTUpOwo+ICsKPiArCUJVSUxEX0JVR19PTihJTlRFTF9N QVhfUExBVEZPUk1TID4KPiArCQkgICAgIHBiaXRzICogQVJSQVlfU0laRShSVU5USU1FX0lORk8o aTkxNSktPnBsYXRmb3JtX21hc2spKTsKPiArCj4gKwlpbmZvLT5wbGF0Zm9ybV9tYXNrW3BpXSA9 IEJJVChwYik7Cj4gKwo+ICsJaWYgKElTX1BJTkVWSUVXKGk5MTUpKSB7Cj4gKwkJaWYgKGRldmlk ID09IDB4YTAwMSkKPiArCQkJaW5mby0+cGxhdGZvcm1fbWFza1twaV0gfD0KPiArCQkJCUJJVChJ TlRFTF9TVUJQTEFURk9STV9QSU5FVklFV19HKTsKPiArCQllbHNlIGlmIChkZXZpZCA9PSAweGEw MTEpCj4gKwkJCWluZm8tPnBsYXRmb3JtX21hc2tbcGldIHw9Cj4gKwkJCQlCSVQoSU5URUxfU1VC UExBVEZPUk1fUElORVZJRVdfTSk7Cj4gKwl9IGVsc2UgaWYgKElTX0lST05MQUtFKGk5MTUpKSB7 Cj4gKwkJaWYgKGRldmlkID09IDB4MDA0NikKPiArCQkJaW5mby0+cGxhdGZvcm1fbWFza1twaV0g fD0KPiArCQkJCUJJVChJTlRFTF9TVUJQTEFURk9STV9JUk9OTEFLRV9NKTsKPiArCX0gZWxzZSBp ZiAoSVNfSEFTV0VMTChpOTE1KSkgewo+ICsJCWlmICgoZGV2aWQgJiAweEZGMDApID09IDB4MEEw MCkKPiArCQkJaW5mby0+cGxhdGZvcm1fbWFza1twaV0gfD0gQklUKElOVEVMX1NVQlBMQVRGT1JN X1VMVCk7Cj4gKwkJLyogVUxYIG1hY2hpbmVzIGFyZSBhbHNvIGNvbnNpZGVyZWQgVUxULiAqLwo+ ICsJCWlmIChkZXZpZCA9PSAweDBBMEUgfHwgZGV2aWQgPT0gMHgwQTFFKQo+ICsJCQlpbmZvLT5w bGF0Zm9ybV9tYXNrW3BpXSB8PSBCSVQoSU5URUxfU1VCUExBVEZPUk1fVUxYKTsKPiArCX0gZWxz ZSBpZiAoSVNfQlJPQURXRUxMKGk5MTUpKSB7Cj4gKwkJaWYgKChkZXZpZCAmIDB4ZikgPT0gMHg2 IHx8Cj4gKwkJICAgIChkZXZpZCAmIDB4ZikgPT0gMHhiIHx8Cj4gKwkJICAgIChkZXZpZCAmIDB4 ZikgPT0gMHhlKQo+ICsJCQlpbmZvLT5wbGF0Zm9ybV9tYXNrW3BpXSB8PSBCSVQoSU5URUxfU1VC UExBVEZPUk1fVUxUKTsKPiArCQkvKiBVTFggbWFjaGluZXMgYXJlIGFsc28gY29uc2lkZXJlZCBV TFQuICovCj4gKwkJaWYgKChkZXZpZCAmIDB4ZikgPT0gMHhlKQo+ICsJCQlpbmZvLT5wbGF0Zm9y bV9tYXNrW3BpXSB8PSBCSVQoSU5URUxfU1VCUExBVEZPUk1fVUxYKTsKPiArCX0gZWxzZSBpZiAo SVNfU0tZTEFLRShpOTE1KSkgewo+ICsJCWlmIChkZXZpZCA9PSAweDE5MDYgfHwKPiArCQkgICAg ZGV2aWQgPT0gMHgxOTEzIHx8Cj4gKwkJICAgIGRldmlkID09IDB4MTkxNiB8fAo+ICsJCSAgICBk ZXZpZCA9PSAweDE5MjEgfHwKPiArCQkgICAgZGV2aWQgPT0gMHgxOTI2KQo+ICsJCQlpbmZvLT5w bGF0Zm9ybV9tYXNrW3BpXSB8PSBCSVQoSU5URUxfU1VCUExBVEZPUk1fVUxUKTsKPiArCQllbHNl IGlmIChkZXZpZCA9PSAweDE5MEUgfHwKPiArCQkJIGRldmlkID09IDB4MTkxNSB8fAo+ICsJCQkg ZGV2aWQgPT0gMHgxOTFFKQo+ICsJCQlpbmZvLT5wbGF0Zm9ybV9tYXNrW3BpXSB8PSBCSVQoSU5U RUxfU1VCUExBVEZPUk1fVUxYKTsKPiArCX0gZWxzZSBpZiAoSVNfS0FCWUxBS0UoaTkxNSkpIHsK PiArCQlpZiAoZGV2aWQgPT0gMHg1OTA2IHx8Cj4gKwkJICAgIGRldmlkID09IDB4NTkxMyB8fAo+ ICsJCSAgICBkZXZpZCA9PSAweDU5MTYgfHwKPiArCQkgICAgZGV2aWQgPT0gMHg1OTIxIHx8Cj4g KwkJICAgIGRldmlkICA9PSAweDU5MjYpCj4gKwkJCWluZm8tPnBsYXRmb3JtX21hc2tbcGldIHw9 IEJJVChJTlRFTF9TVUJQTEFURk9STV9VTFQpOwo+ICsJCWVsc2UgaWYgKGRldmlkID09IDB4NTkw RSB8fAo+ICsJCQkgZGV2aWQgPT0gMHg1OTE1IHx8Cj4gKwkJCSBkZXZpZCA9PSAweDU5MUUpCj4g KwkJCWluZm8tPnBsYXRmb3JtX21hc2tbcGldIHw9IEJJVChJTlRFTF9TVUJQTEFURk9STV9VTFgp Owo+ICsJCWVsc2UgaWYgKGRldmlkID09IDB4NTkxQyB8fAo+ICsJCQkgZGV2aWQgPT0gMHg4N0Mw KQo+ICsJCQlpbmZvLT5wbGF0Zm9ybV9tYXNrW3BpXSB8PQo+ICsJCQkJQklUKElOVEVMX1NVQlBM QVRGT1JNX0FNTF9VTFgpOwo+ICsJfSBlbHNlIGlmIChJU19DT0ZGRUVMQUtFKGk5MTUpKSB7Cj4g KwkJaWYgKChkZXZpZCAmIDB4MDBGMCkgPT0gMHgwMEEwKQo+ICsJCQlpbmZvLT5wbGF0Zm9ybV9t YXNrW3BpXSB8PSBCSVQoSU5URUxfU1VCUExBVEZPUk1fVUxUKTsKPiArCX0gZWxzZSBpZiAoSVNf Q0FOTk9OTEFLRShpOTE1KSkgewo+ICsJCWlmICgoZGV2aWQgJiAweDAwMDQpID09IDB4MDAwNCkK PiArCQkJaW5mby0+cGxhdGZvcm1fbWFza1twaV0gfD0gQklUKElOVEVMX1NVQlBMQVRGT1JNX1BP UlRGKTsKPiArCX0gZWxzZSBpZiAoSVNfSUNFTEFLRShpOTE1KSkgewo+ICsJCWlmIChkZXZpZCAh PSAweDhBNTEpCj4gKwkJCWluZm8tPnBsYXRmb3JtX21hc2tbcGldIHw9IEJJVChJTlRFTF9TVUJQ TEFURk9STV9QT1JURik7Cj4gKwl9Cj4gK30KPiArCj4gIC8qKgo+ICAgKiBpbnRlbF9kZXZpY2Vf aW5mb19ydW50aW1lX2luaXQgLSBpbml0aWFsaXplIHJ1bnRpbWUgaW5mbwo+ICAgKiBAZGV2X3By aXY6IHRoZSBpOTE1IGRldmljZQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kZXZpY2VfaW5mby5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGV2aWNlX2lu Zm8uaAo+IGluZGV4IDA0N2QxMGJkZDQ1NS4uYjAzZmJkMmU0NTFhIDEwMDY0NAo+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RldmljZV9pbmZvLmgKPiArKysgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9kZXZpY2VfaW5mby5oCj4gQEAgLTQ0LDcgKzQ0LDcgQEAgZW51bSBp bnRlbF9wbGF0Zm9ybSB7Cj4gIAlJTlRFTF9JOTE1RywKPiAgCUlOVEVMX0k5MTVHTSwKPiAgCUlO VEVMX0k5NDVHLAo+IC0JSU5URUxfSTk0NUdNLAo+ICsJSU5URUxfSTk0NUdNID0gOCwKPiAgCUlO VEVMX0czMywKPiAgCUlOVEVMX1BJTkVWSUVXLAo+ICAJLyogZ2VuNCAqLwo+IEBAIC01NSw3ICs1 NSw3IEBAIGVudW0gaW50ZWxfcGxhdGZvcm0gewo+ICAJLyogZ2VuNSAqLwo+ICAJSU5URUxfSVJP TkxBS0UsCj4gIAkvKiBnZW42ICovCj4gLQlJTlRFTF9TQU5EWUJSSURHRSwKPiArCUlOVEVMX1NB TkRZQlJJREdFID0gMTYsCj4gIAkvKiBnZW43ICovCj4gIAlJTlRFTF9JVllCUklER0UsCj4gIAlJ TlRFTF9WQUxMRVlWSUVXLAo+IEBAIC02Niw3ICs2Niw3IEBAIGVudW0gaW50ZWxfcGxhdGZvcm0g ewo+ICAJLyogZ2VuOSAqLwo+ICAJSU5URUxfU0tZTEFLRSwKPiAgCUlOVEVMX0JST1hUT04sCj4g LQlJTlRFTF9LQUJZTEFLRSwKPiArCUlOVEVMX0tBQllMQUtFID0gMjQsCgpUb28gbXVjaCBtYWdp Yy4gTG9va3MgcmF0aGVyIGZyYWdpbGUuCgo+ICAJSU5URUxfR0VNSU5JTEFLRSwKPiAgCUlOVEVM X0NPRkZFRUxBS0UsCj4gIAkvKiBnZW4xMCAqLwo+IEBAIC03Niw2ICs3NiwyNCBAQCBlbnVtIGlu dGVsX3BsYXRmb3JtIHsKPiAgCUlOVEVMX01BWF9QTEFURk9STVMKPiAgfTsKPiAgCj4gKy8qCj4g KyAqIFN1YnBsYXRmb3JtIGJpdHMgc2hhcmUgdGhlIHNhbWUgbmFtZXNwYWNlIHBlciBwYXJlbnQg cGxhdGZvcm0uIEluIG90aGVyIHdvcmRzCj4gKyAqIGl0IGlzIGZpbmUgZm9yIHRoZSBzYW1lIGJp dCB0byBiZSB1c2VkIG9uIG11bHRpcGxlIHBhcmVudCBwbGF0Zm9ybXMuCj4gKyAqLwo+ICsKPiAr I2RlZmluZSBJTlRFTF9TVUJQTEFURk9STV9CSVRTICgzKQo+ICsKPiArI2RlZmluZSBJTlRFTF9T VUJQTEFURk9STV9JUk9OTEFLRV9NICgwKQo+ICsKPiArI2RlZmluZSBJTlRFTF9TVUJQTEFURk9S TV9QSU5FVklFV19HICgwKQo+ICsjZGVmaW5lIElOVEVMX1NVQlBMQVRGT1JNX1BJTkVWSUVXX00g KDEpCj4gKwo+ICsjZGVmaW5lIElOVEVMX1NVQlBMQVRGT1JNX1VMVAkgICgwKQo+ICsjZGVmaW5l IElOVEVMX1NVQlBMQVRGT1JNX1VMWAkgICgxKQo+ICsjZGVmaW5lIElOVEVMX1NVQlBMQVRGT1JN X0FNTF9VTFggKDIpCj4gKwo+ICsjZGVmaW5lIElOVEVMX1NVQlBMQVRGT1JNX1BPUlRGICgwKQo+ ICsKPiAgZW51bSBpbnRlbF9wcGd0dCB7Cj4gIAlJTlRFTF9QUEdUVF9OT05FID0gSTkxNV9HRU1f UFBHVFRfTk9ORSwKPiAgCUlOVEVMX1BQR1RUX0FMSUFTSU5HID0gSTkxNV9HRU1fUFBHVFRfQUxJ QVNJTkcsCj4gQEAgLTE2MCw3ICsxNzgsNiBAQCBzdHJ1Y3QgaW50ZWxfZGV2aWNlX2luZm8gewo+ ICAJaW50ZWxfZW5naW5lX21hc2tfdCBlbmdpbmVfbWFzazsgLyogRW5naW5lcyBzdXBwb3J0ZWQg YnkgdGhlIEhXICovCj4gIAo+ICAJZW51bSBpbnRlbF9wbGF0Zm9ybSBwbGF0Zm9ybTsKPiAtCXUz MiBwbGF0Zm9ybV9tYXNrOwo+ICAKPiAgCWVudW0gaW50ZWxfcHBndHQgcHBndHQ7Cj4gIAl1bnNp Z25lZCBpbnQgcGFnZV9zaXplczsgLyogcGFnZSBzaXplcyBzdXBwb3J0ZWQgYnkgdGhlIEhXICov Cj4gQEAgLTE5NSw2ICsyMTIsOCBAQCBzdHJ1Y3QgaW50ZWxfZGV2aWNlX2luZm8gewo+ICB9Owo+ ICAKPiAgc3RydWN0IGludGVsX3J1bnRpbWVfaW5mbyB7Cj4gKwl1MzIgcGxhdGZvcm1fbWFza1sx XTsKPiArCj4gIAl1MTYgZGV2aWNlX2lkOwo+ICAKPiAgCXU4IG51bV9zcHJpdGVzW0k5MTVfTUFY X1BJUEVTXTsKPiBAQCAtMjY5LDYgKzI4OCw3IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBzc2V1X3Nl dF9ldXMoc3RydWN0IHNzZXVfZGV2X2luZm8gKnNzZXUsCj4gIAo+ICBjb25zdCBjaGFyICppbnRl bF9wbGF0Zm9ybV9uYW1lKGVudW0gaW50ZWxfcGxhdGZvcm0gcGxhdGZvcm0pOwo+ICAKPiArdm9p ZCBpbnRlbF9kZXZpY2VfaW5mb19zdWJwbGF0Zm9ybV9pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdik7Cj4gIHZvaWQgaW50ZWxfZGV2aWNlX2luZm9fcnVudGltZV9pbml0KHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7Cj4gIHZvaWQgaW50ZWxfZGV2aWNlX2lu Zm9fZHVtcF9mbGFncyhjb25zdCBzdHJ1Y3QgaW50ZWxfZGV2aWNlX2luZm8gKmluZm8sCj4gIAkJ CQkgIHN0cnVjdCBkcm1fcHJpbnRlciAqcCk7Cj4gLS0gCj4gMi4xOS4xCj4gCj4gX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiBJbnRlbC1nZnggbWFpbGlu ZyBsaXN0Cj4gSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+IGh0dHBzOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4CgotLSAKVmlsbGUgU3ly asOkbMOkCkludGVsCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9y ZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdm eA==