From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 2/3] drm/i915/bxt: add revision id for A1 stepping and use it Date: Tue, 6 Oct 2015 15:29:37 +0300 Message-ID: <20151006122937.GV26517@intel.com> References: <1444131676-12187-1-git-send-email-jani.nikula@intel.com> <1444131676-12187-2-git-send-email-jani.nikula@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 ESMTP id CF6966E0CD for ; Tue, 6 Oct 2015 05:29:42 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1444131676-12187-2-git-send-email-jani.nikula@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Jani Nikula Cc: intel-gfx@lists.freedesktop.org, Rodrigo Vivi List-Id: intel-gfx@lists.freedesktop.org T24gVHVlLCBPY3QgMDYsIDIwMTUgYXQgMDI6NDE6MTVQTSArMDMwMCwgSmFuaSBOaWt1bGEgd3Jv dGU6Cj4gUHJlZmVyIGluY2x1c2l2ZSByYW5nZXMgZm9yIHJldmlzaW9uIGNoZWNrcyByYXRoZXIg dGhhbiAiYmVsb3cgQjAiLiBQZXIKPiBzcGVjcyBBMiBpcyBub3QgdXNlZCwgc28gcmV2aWQgPD0g QTEgbWF0Y2hlcyByZXZpZCA8IEIwLgoKVGhlIHcvYSBkYiB3b3VsZCBzYXkgVU5USUxfQjAgZXRj Liwgc28gbWlnaHQgYmUgZWFzaWVyIHRvIGNoZWNrIGFnYWluc3QKaXQgaWYgd2Uga2VlcCB0byB0 aGUgc2FtZSBjb252ZW50aW9uLgoKPiAKPiBTaWduZWQtb2ZmLWJ5OiBKYW5pIE5pa3VsYSA8amFu aS5uaWt1bGFAaW50ZWwuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Ry di5oICAgICAgICAgICAgfCAxICsKPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYyAg ICAgICAgICAgIHwgMiArLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2d1Y19zdWJtaXNz aW9uLmMgfCAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jICAgICAgICAg ICB8IDIgKy0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYyAgICAgICAgICAgIHwg MiArLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMgICAgICAgICAgfCAyICst Cj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jICAgICAgICAgICB8IDggKysrKy0t LS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYyAgICAgICAgICAgIHwgNiArKyst LS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5jICAgIHwgNiArKyst LS0KPiAgOSBmaWxlcyBjaGFuZ2VkLCAxNiBpbnNlcnRpb25zKCspLCAxNSBkZWxldGlvbnMoLSkK PiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiBpbmRleCBhM2IxMzc3MTU2MDQuLjk4MzNhMjA1 NTkzMCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4gKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+IEBAIC0yNTA5LDYgKzI1MDksNyBA QCBzdHJ1Y3QgZHJtX2k5MTVfY21kX3RhYmxlIHsKPiAgI2RlZmluZSBTS0xfUkVWSURfRjAJCTB4 NQo+ICAKPiAgI2RlZmluZSBCWFRfUkVWSURfQTAJCTB4MAo+ICsjZGVmaW5lIEJYVF9SRVZJRF9B MQkJMHgxCj4gICNkZWZpbmUgQlhUX1JFVklEX0IwCQkweDMKPiAgI2RlZmluZSBCWFRfUkVWSURf QzAJCTB4OQo+ICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0u YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKPiBpbmRleCBmMGNmYmI5ZWUxMmMu LmZkMmQ4ODA2NTZiMiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dl bS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwo+IEBAIC0zNzU3LDcg KzM3NTcsNyBAQCBpbnQgaTkxNV9nZW1fc2V0X2NhY2hpbmdfaW9jdGwoc3RydWN0IGRybV9kZXZp Y2UgKmRldiwgdm9pZCAqZGF0YSwKPiAgCQkgKiBjYWNoZWxpbmUsIHdoZXJlYXMgbm9ybWFsbHkg c3VjaCBjYWNoZWxpbmVzIHdvdWxkIGdldAo+ICAJCSAqIGludmFsaWRhdGVkLgo+ICAJCSAqLwo+ IC0JCWlmIChJU19CUk9YVE9OKGRldikgJiYgSU5URUxfUkVWSUQoZGV2KSA8IEJYVF9SRVZJRF9C MCkKPiArCQlpZiAoSVNfQlJPWFRPTihkZXYpICYmIElOVEVMX1JFVklEKGRldikgPD0gQlhUX1JF VklEX0ExKQo+ICAJCQlyZXR1cm4gLUVOT0RFVjsKPiAgCj4gIAkJbGV2ZWwgPSBJOTE1X0NBQ0hF X0xMQzsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9ndWNfc3VibWlz c2lvbi5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9ndWNfc3VibWlzc2lvbi5jCj4gaW5k ZXggMDM2YjQyYmFlODI3Li44NjNhYTVjODI0NjYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9ndWNfc3VibWlzc2lvbi5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9ndWNfc3VibWlzc2lvbi5jCj4gQEAgLTE2MSw3ICsxNjEsNyBAQCBzdGF0aWMgaW50 IGhvc3QyZ3VjX3NhbXBsZV9mb3JjZXdha2Uoc3RydWN0IGludGVsX2d1YyAqZ3VjLAo+ICAJZGF0 YVswXSA9IEhPU1QyR1VDX0FDVElPTl9TQU1QTEVfRk9SQ0VXQUtFOwo+ICAJLyogV2FSc0Rpc2Fi bGVDb2Fyc2VQb3dlckdhdGluZzpza2wsYnh0ICovCj4gIAlpZiAoIWludGVsX2VuYWJsZV9yYzYo ZGV2X3ByaXYtPmRldikgfHwKPiAtCSAgICAoSVNfQlJPWFRPTihkZXYpICYmIChJTlRFTF9SRVZJ RChkZXYpIDwgQlhUX1JFVklEX0IwKSkgfHwKPiArCSAgICAoSVNfQlJPWFRPTihkZXYpICYmIChJ TlRFTF9SRVZJRChkZXYpIDw9IEJYVF9SRVZJRF9BMSkpIHx8Cj4gIAkgICAgKElTX1NLTF9HVDMo ZGV2KSAmJiAoSU5URUxfUkVWSUQoZGV2KSA8PSBTS0xfUkVWSURfRTApKSB8fAo+ICAJICAgIChJ U19TS0xfR1Q0KGRldikgJiYgKElOVEVMX1JFVklEKGRldikgPD0gU0tMX1JFVklEX0UwKSkpCj4g IAkJZGF0YVsxXSA9IDA7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2RkaS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMKPiBpbmRleCBiMjVlOTlh NDMyZmIuLmI4MGUwZjVlYzVkYyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kZGkuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jCj4gQEAg LTMyNDcsNyArMzI0Nyw3IEBAIHZvaWQgaW50ZWxfZGRpX2luaXQoc3RydWN0IGRybV9kZXZpY2Ug KmRldiwgZW51bSBwb3J0IHBvcnQpCj4gIAkJICogT24gQlhUIEEwL0ExLCBzdyBuZWVkcyB0byBh Y3RpdmF0ZSBERElBIEhQRCBsb2dpYyBhbmQKPiAgCQkgKiBpbnRlcnJ1cHRzIHRvIGNoZWNrIHRo ZSBleHRlcm5hbCBwYW5lbCBjb25uZWN0aW9uLgo+ICAJCSAqLwo+IC0JCWlmIChJU19CUk9YVE9O KGRldl9wcml2KSAmJiAoSU5URUxfUkVWSUQoZGV2KSA8IEJYVF9SRVZJRF9CMCkKPiArCQlpZiAo SVNfQlJPWFRPTihkZXZfcHJpdikgJiYgKElOVEVMX1JFVklEKGRldikgPD0gQlhUX1JFVklEX0Ex KQo+ICAJCQkJCSAmJiBwb3J0ID09IFBPUlRfQikKPiAgCQkJZGV2X3ByaXYtPmhvdHBsdWcuaXJx X3BvcnRbUE9SVF9BXSA9IGludGVsX2RpZ19wb3J0Owo+ICAJCWVsc2UKPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2RwLmMKPiBpbmRleCA4ZDM0Y2E3YjI4N2EuLjhiYWY2ZmUwNjMxMyAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfZHAuYwo+IEBAIC02MDg3LDcgKzYwODcsNyBAQCBpbnRlbF9kcF9pbml0X2Nv bm5lY3RvcihzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICppbnRlbF9kaWdfcG9ydCwKPiAgCQli cmVhazsKPiAgCWNhc2UgUE9SVF9COgo+ICAJCWludGVsX2VuY29kZXItPmhwZF9waW4gPSBIUERf UE9SVF9COwo+IC0JCWlmIChJU19CUk9YVE9OKGRldl9wcml2KSAmJiAoSU5URUxfUkVWSUQoZGV2 KSA8IEJYVF9SRVZJRF9CMCkpCj4gKwkJaWYgKElTX0JST1hUT04oZGV2X3ByaXYpICYmIChJTlRF TF9SRVZJRChkZXYpIDw9IEJYVF9SRVZJRF9BMSkpCj4gIAkJCWludGVsX2VuY29kZXItPmhwZF9w aW4gPSBIUERfUE9SVF9BOwo+ICAJCWJyZWFrOwo+ICAJY2FzZSBQT1JUX0M6Cj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2hkbWkuYwo+IGluZGV4IDAzZDg1OTA5YzZhYi4uMzJlOTExN2VlOGUzIDEwMDY0 NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYwo+ICsrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYwo+IEBAIC0yMDY4LDcgKzIwNjgsNyBAQCB2b2lk IGludGVsX2hkbWlfaW5pdF9jb25uZWN0b3Ioc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqaW50 ZWxfZGlnX3BvcnQsCj4gIAkJICogT24gQlhUIEEwL0ExLCBzdyBuZWVkcyB0byBhY3RpdmF0ZSBE RElBIEhQRCBsb2dpYyBhbmQKPiAgCQkgKiBpbnRlcnJ1cHRzIHRvIGNoZWNrIHRoZSBleHRlcm5h bCBwYW5lbCBjb25uZWN0aW9uLgo+ICAJCSAqLwo+IC0JCWlmIChJU19CUk9YVE9OKGRldl9wcml2 KSAmJiAoSU5URUxfUkVWSUQoZGV2KSA8IEJYVF9SRVZJRF9CMCkpCj4gKwkJaWYgKElTX0JST1hU T04oZGV2X3ByaXYpICYmIChJTlRFTF9SRVZJRChkZXYpIDw9IEJYVF9SRVZJRF9BMSkpCj4gIAkJ CWludGVsX2VuY29kZXItPmhwZF9waW4gPSBIUERfUE9SVF9BOwo+ICAJCWVsc2UKPiAgCQkJaW50 ZWxfZW5jb2Rlci0+aHBkX3BpbiA9IEhQRF9QT1JUX0I7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2xyYy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJj LmMKPiBpbmRleCA4MjVmYTdhOGRmODYuLmFjZDRmYTMzMmE4MCAxMDA2NDQKPiAtLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2xyYy5jCj4gQEAgLTE5ODYsNyArMTk4Niw3IEBAIHN0YXRpYyBpbnQgbG9naWNhbF9y ZW5kZXJfcmluZ19pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4gIAkJcmluZy0+aW5pdF9o dyA9IGdlbjhfaW5pdF9yZW5kZXJfcmluZzsKPiAgCXJpbmctPmluaXRfY29udGV4dCA9IGdlbjhf aW5pdF9yY3NfY29udGV4dDsKPiAgCXJpbmctPmNsZWFudXAgPSBpbnRlbF9maW5pX3BpcGVfY29u dHJvbDsKPiAtCWlmIChJU19CUk9YVE9OKGRldikgJiYgSU5URUxfUkVWSUQoZGV2KSA8IEJYVF9S RVZJRF9CMCkgewo+ICsJaWYgKElTX0JST1hUT04oZGV2KSAmJiBJTlRFTF9SRVZJRChkZXYpIDw9 IEJYVF9SRVZJRF9BMSkgewo+ICAJCXJpbmctPmdldF9zZXFubyA9IGJ4dF9hX2dldF9zZXFubzsK PiAgCQlyaW5nLT5zZXRfc2Vxbm8gPSBieHRfYV9zZXRfc2Vxbm87Cj4gIAl9IGVsc2Ugewo+IEBA IC0yMDM4LDcgKzIwMzgsNyBAQCBzdGF0aWMgaW50IGxvZ2ljYWxfYnNkX3JpbmdfaW5pdChzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAJCUdUX0NPTlRFWFRfU1dJVENIX0lOVEVSUlVQVCA8PCBH RU44X1ZDUzFfSVJRX1NISUZUOwo+ICAKPiAgCXJpbmctPmluaXRfaHcgPSBnZW44X2luaXRfY29t bW9uX3Jpbmc7Cj4gLQlpZiAoSVNfQlJPWFRPTihkZXYpICYmIElOVEVMX1JFVklEKGRldikgPCBC WFRfUkVWSURfQjApIHsKPiArCWlmIChJU19CUk9YVE9OKGRldikgJiYgSU5URUxfUkVWSUQoZGV2 KSA8PSBCWFRfUkVWSURfQTEpIHsKPiAgCQlyaW5nLT5nZXRfc2Vxbm8gPSBieHRfYV9nZXRfc2Vx bm87Cj4gIAkJcmluZy0+c2V0X3NlcW5vID0gYnh0X2Ffc2V0X3NlcW5vOwo+ICAJfSBlbHNlIHsK PiBAQCAtMjA5Myw3ICsyMDkzLDcgQEAgc3RhdGljIGludCBsb2dpY2FsX2JsdF9yaW5nX2luaXQo c3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAgCQlHVF9DT05URVhUX1NXSVRDSF9JTlRFUlJVUFQg PDwgR0VOOF9CQ1NfSVJRX1NISUZUOwo+ICAKPiAgCXJpbmctPmluaXRfaHcgPSBnZW44X2luaXRf Y29tbW9uX3Jpbmc7Cj4gLQlpZiAoSVNfQlJPWFRPTihkZXYpICYmIElOVEVMX1JFVklEKGRldikg PCBCWFRfUkVWSURfQjApIHsKPiArCWlmIChJU19CUk9YVE9OKGRldikgJiYgSU5URUxfUkVWSUQo ZGV2KSA8PSBCWFRfUkVWSURfQTEpIHsKPiAgCQlyaW5nLT5nZXRfc2Vxbm8gPSBieHRfYV9nZXRf c2Vxbm87Cj4gIAkJcmluZy0+c2V0X3NlcW5vID0gYnh0X2Ffc2V0X3NlcW5vOwo+ICAJfSBlbHNl IHsKPiBAQCAtMjEyMyw3ICsyMTIzLDcgQEAgc3RhdGljIGludCBsb2dpY2FsX3ZlYm94X3Jpbmdf aW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAJCUdUX0NPTlRFWFRfU1dJVENIX0lOVEVS UlVQVCA8PCBHRU44X1ZFQ1NfSVJRX1NISUZUOwo+ICAKPiAgCXJpbmctPmluaXRfaHcgPSBnZW44 X2luaXRfY29tbW9uX3Jpbmc7Cj4gLQlpZiAoSVNfQlJPWFRPTihkZXYpICYmIElOVEVMX1JFVklE KGRldikgPCBCWFRfUkVWSURfQjApIHsKPiArCWlmIChJU19CUk9YVE9OKGRldikgJiYgSU5URUxf UkVWSUQoZGV2KSA8PSBCWFRfUkVWSURfQTEpIHsKPiAgCQlyaW5nLT5nZXRfc2Vxbm8gPSBieHRf YV9nZXRfc2Vxbm87Cj4gIAkJcmluZy0+c2V0X3NlcW5vID0gYnh0X2Ffc2V0X3NlcW5vOwo+ICAJ fSBlbHNlIHsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMKPiBpbmRleCA2MGQxMjBjNDcyYWIuLmUy NTc5MWU4NzQ4ZiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5j Cj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYwo+IEBAIC00MzQ4LDcgKzQz NDgsNyBAQCBzdGF0aWMgdm9pZCBnZW42X3NldF9ycHMoc3RydWN0IGRybV9kZXZpY2UgKmRldiwg dTggdmFsKQo+ICAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5kZXZf cHJpdmF0ZTsKPiAgCj4gIAkvKiBXYUdzdkRpc2FibGVUdXJibzogV29ya2Fyb3VuZCB0byBkaXNh YmxlIHR1cmJvIG9uIEJYVCBBKiAqLwo+IC0JaWYgKElTX0JST1hUT04oZGV2KSAmJiAoSU5URUxf UkVWSUQoZGV2KSA8IEJYVF9SRVZJRF9CMCkpCj4gKwlpZiAoSVNfQlJPWFRPTihkZXYpICYmIChJ TlRFTF9SRVZJRChkZXYpIDw9IEJYVF9SRVZJRF9BMSkpCj4gIAkJcmV0dXJuOwo+ICAKPiAgCVdB Uk5fT04oIW11dGV4X2lzX2xvY2tlZCgmZGV2X3ByaXYtPnJwcy5od19sb2NrKSk7Cj4gQEAgLTQ2 NzIsNyArNDY3Miw3IEBAIHN0YXRpYyB2b2lkIGdlbjlfZW5hYmxlX3JwcyhzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2KQo+ICAJZ2VuNl9pbml0X3Jwc19mcmVxdWVuY2llcyhkZXYpOwo+ICAKPiAgCS8q IFdhR3N2RGlzYWJsZVR1cmJvOiBXb3JrYXJvdW5kIHRvIGRpc2FibGUgdHVyYm8gb24gQlhUIEEq ICovCj4gLQlpZiAoSVNfQlJPWFRPTihkZXYpICYmIChJTlRFTF9SRVZJRChkZXYpIDwgQlhUX1JF VklEX0IwKSkgewo+ICsJaWYgKElTX0JST1hUT04oZGV2KSAmJiAoSU5URUxfUkVWSUQoZGV2KSA8 PSBCWFRfUkVWSURfQTEpKSB7Cj4gIAkJaW50ZWxfdW5jb3JlX2ZvcmNld2FrZV9wdXQoZGV2X3By aXYsIEZPUkNFV0FLRV9BTEwpOwo+ICAJCXJldHVybjsKPiAgCX0KPiBAQCAtNDc1OCw3ICs0NzU4 LDcgQEAgc3RhdGljIHZvaWQgZ2VuOV9lbmFibGVfcmM2KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYp Cj4gIAkgKiAzYjogRW5hYmxlIENvYXJzZSBQb3dlciBHYXRpbmcgb25seSB3aGVuIFJDNiBpcyBl bmFibGVkLgo+ICAJICogV2FSc0Rpc2FibGVDb2Fyc2VQb3dlckdhdGluZzpza2wsYnh0IC0gUmVu ZGVyL01lZGlhIFBHIG5lZWQgdG8gYmUgZGlzYWJsZWQgd2l0aCBSQzYuCj4gIAkgKi8KPiAtCWlm ICgoSVNfQlJPWFRPTihkZXYpICYmIChJTlRFTF9SRVZJRChkZXYpIDwgQlhUX1JFVklEX0IwKSkg fHwKPiArCWlmICgoSVNfQlJPWFRPTihkZXYpICYmIChJTlRFTF9SRVZJRChkZXYpIDw9IEJYVF9S RVZJRF9BMSkpIHx8Cj4gIAkgICAgKChJU19TS0xfR1QzKGRldikgfHwgSVNfU0tMX0dUNChkZXYp KSAmJiAoSU5URUxfUkVWSUQoZGV2KSA8PSBTS0xfUkVWSURfRTApKSkKPiAgCQlJOTE1X1dSSVRF KEdFTjlfUEdfRU5BQkxFLCAwKTsKPiAgCWVsc2UKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf cmluZ2J1ZmZlci5jCj4gaW5kZXggYzgyYzc0Y2FhNzNjLi4zNzUzZTc1MThkNDkgMTAwNjQ0Cj4g LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5jCj4gKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5jCj4gQEAgLTkxNiwxNCArOTE2LDE0 IEBAIHN0YXRpYyBpbnQgZ2VuOV9pbml0X3dvcmthcm91bmRzKHN0cnVjdCBpbnRlbF9lbmdpbmVf Y3MgKnJpbmcpCj4gIAo+ICAJaWYgKChJU19TS1lMQUtFKGRldikgJiYgKElOVEVMX1JFVklEKGRl dikgPT0gU0tMX1JFVklEX0EwIHx8Cj4gIAkgICAgSU5URUxfUkVWSUQoZGV2KSA9PSBTS0xfUkVW SURfQjApKSB8fAo+IC0JICAgIChJU19CUk9YVE9OKGRldikgJiYgSU5URUxfUkVWSUQoZGV2KSA8 IEJYVF9SRVZJRF9CMCkpIHsKPiArCSAgICAoSVNfQlJPWFRPTihkZXYpICYmIElOVEVMX1JFVklE KGRldikgPD0gQlhUX1JFVklEX0ExKSkgewo+ICAJCS8qIFdhRGlzYWJsZURnTWlycm9yRml4SW5I YWxmU2xpY2VDaGlja2VuNTpza2wsYnh0ICovCj4gIAkJV0FfQ0xSX0JJVF9NQVNLRUQoR0VOOV9I QUxGX1NMSUNFX0NISUNLRU41LAo+ICAJCQkJICBHRU45X0RHX01JUlJPUl9GSVhfRU5BQkxFKTsK PiAgCX0KPiAgCj4gIAlpZiAoKElTX1NLWUxBS0UoZGV2KSAmJiBJTlRFTF9SRVZJRChkZXYpIDw9 IFNLTF9SRVZJRF9CMCkgfHwKPiAtCSAgICAoSVNfQlJPWFRPTihkZXYpICYmIElOVEVMX1JFVklE KGRldikgPCBCWFRfUkVWSURfQjApKSB7Cj4gKwkgICAgKElTX0JST1hUT04oZGV2KSAmJiBJTlRF TF9SRVZJRChkZXYpIDw9IEJYVF9SRVZJRF9BMSkpIHsKPiAgCQkvKiBXYVNldERpc2FibGVQaXhN YXNrQ2FtbWluZ0FuZFJod29JbkNvbW1vblNsaWNlQ2hpY2tlbjpza2wsYnh0ICovCj4gIAkJV0Ff U0VUX0JJVF9NQVNLRUQoR0VON19DT01NT05fU0xJQ0VfQ0hJQ0tFTjEsCj4gIAkJCQkgIEdFTjlf UkhXT19PUFRJTUlaQVRJT05fRElTQUJMRSk7Cj4gQEAgLTk1Miw3ICs5NTIsNyBAQCBzdGF0aWMg aW50IGdlbjlfaW5pdF93b3JrYXJvdW5kcyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nKQo+ ICAKPiAgCS8qIFdhRGlzYWJsZU1hc2tCYXNlZENhbW1pbmdJblJDQzpza2wsYnh0ICovCj4gIAlp ZiAoKElTX1NLWUxBS0UoZGV2KSAmJiBJTlRFTF9SRVZJRChkZXYpID09IFNLTF9SRVZJRF9DMCkg fHwKPiAtCSAgICAoSVNfQlJPWFRPTihkZXYpICYmIElOVEVMX1JFVklEKGRldikgPCBCWFRfUkVW SURfQjApKQo+ICsJICAgIChJU19CUk9YVE9OKGRldikgJiYgSU5URUxfUkVWSUQoZGV2KSA8PSBC WFRfUkVWSURfQTEpKQo+ICAJCVdBX1NFVF9CSVRfTUFTS0VEKFNMSUNFX0VDT19DSElDS0VOMCwK PiAgCQkJCSAgUElYRUxfTUFTS19DQU1NSU5HX0RJU0FCTEUpOwo+ICAKPiAtLSAKPiAyLjEuNAo+ IAo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gSW50 ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+IEludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPiBo dHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cgot LSAKVmlsbGUgU3lyasOkbMOkCkludGVsIE9UQwpfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0 cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xp c3RpbmZvL2ludGVsLWdmeAo=