From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7BECAC433C1 for ; Thu, 25 Mar 2021 20:54:55 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 118D061A31 for ; Thu, 25 Mar 2021 20:54:55 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 118D061A31 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 9B4E76E0C6; Thu, 25 Mar 2021 20:54:54 +0000 (UTC) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTPS id CBB576E0C6 for ; Thu, 25 Mar 2021 20:54:52 +0000 (UTC) IronPort-SDR: /iGqetPNKIQuZdnzvXRhjaz5tlvK0G/ub/0ar0u455PyYd6m6jSHC77MEQxV/F1s36JyOBpoFF AUJONSvHGWcw== X-IronPort-AV: E=McAfee;i="6000,8403,9934"; a="191115462" X-IronPort-AV: E=Sophos;i="5.81,278,1610438400"; d="scan'208";a="191115462" Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 25 Mar 2021 13:54:51 -0700 IronPort-SDR: iGqYDkelYRa+NWDCUiornVQ5CZNT3B+OPZZV2QuHqVxuwF+fKwI/mlOG0/EBMf6dM5u3tMxLhr NCnXvZT71apw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.81,278,1610438400"; d="scan'208";a="382356114" Received: from orsmsx605.amr.corp.intel.com ([10.22.229.18]) by fmsmga007.fm.intel.com with ESMTP; 25 Mar 2021 13:54:51 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX605.amr.corp.intel.com (10.22.229.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2; Thu, 25 Mar 2021 13:54:51 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2; Thu, 25 Mar 2021 13:54:50 -0700 Received: from orsmsx610.amr.corp.intel.com ([10.22.229.23]) by ORSMSX610.amr.corp.intel.com ([10.22.229.23]) with mapi id 15.01.2106.013; Thu, 25 Mar 2021 13:54:50 -0700 From: "Souza, Jose" To: "Nikula, Jani" , "intel-gfx@lists.freedesktop.org" Thread-Topic: [Intel-gfx] [PATCH v3 4/8] drm/i915: switch KBL to the new stepping scheme Thread-Index: AQHXFCL2NAwBET4kukC1aOh+5x9PwaqVv+QA Date: Thu, 25 Mar 2021 20:54:50 +0000 Message-ID: References: <6c6fa668ad79a105b4d06828b7af6011efec6d3a.1615211711.git.jani.nikula@intel.com> In-Reply-To: <6c6fa668ad79a105b4d06828b7af6011efec6d3a.1615211711.git.jani.nikula@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.1.200.100] Content-ID: MIME-Version: 1.0 Subject: Re: [Intel-gfx] [PATCH v3 4/8] drm/i915: switch KBL to the new stepping scheme X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "De Marchi, Lucas" , "chris@chris-wilson.co.uk" Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" T24gTW9uLCAyMDIxLTAzLTA4IGF0IDE1OjU2ICswMjAwLCBKYW5pIE5pa3VsYSB3cm90ZToNCj4g QWRkIG5ldyBzeW1ib2xpYyBuYW1lcyBmb3IgcmV2aXNpb24gaWRzLCBhbmQgY29udmVydCBLQkwg cmV2aWRzIHRvIHVzZQ0KPiB0aGVtIHZpYSB0aGUgbmV3IHN0ZXBwaW5nIGNoZWNrIG1hY3Jvcy4N Cj4gDQo+IFRoaXMgYWxzbyBmaXhlcyB0aGVvcmV0aWNhbCBvdXQgb2YgYm91bmRzIGFjY2VzcyB0 byBrYmxfcmV2aWRzIGFycmF5Lg0KPiANCj4gdjI6IFJlbmFtZSBzdGVwcGluZy0+c3RlcA0KPiAN Cj4gU2lnbmVkLW9mZi1ieTogSmFuaSBOaWt1bGEgPGphbmkubmlrdWxhQGludGVsLmNvbT4NCj4g DQo+IC0tLQ0KPiANCj4gVGhlIGluaXRpYWxpemF0aW9uIHNvdW5kcyBsaWtlIGFuIGVhcmx5IHBh cnQgb2YNCj4gaW50ZWxfZGV2aWNlX2luZm9fcnVudGltZV9pbml0KCksIGFuZCBpbmRlZWQgdG91 Y2hlcyBydW50aW1lIGluZm8uDQo+IC0tLQ0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvZ2Vu OF9lbmdpbmVfY3MuYyAgICB8ICAyICstDQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRl bF93b3JrYXJvdW5kcy5jIHwgIDYgKy0NCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2 LmMgICAgICAgICAgICAgfCAgMyArLQ0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYu aCAgICAgICAgICAgICB8IDI0ICsrLS0tLS0NCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X3BtLmMgICAgICAgICAgICAgfCAgNCArLQ0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf c3RlcC5jICAgICAgICAgICB8IDY5ICsrKysrKysrKysrKysrKysrKy0tLQ0KPiAgZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfc3RlcC5oICAgICAgICAgICB8IDExICsrKy0NCj4gIDcgZmlsZXMg Y2hhbmdlZCwgODIgaW5zZXJ0aW9ucygrKSwgMzcgZGVsZXRpb25zKC0pDQo+IA0KPiBkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvZ2VuOF9lbmdpbmVfY3MuYyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2d0L2dlbjhfZW5naW5lX2NzLmMNCj4gaW5kZXggY2FjODBhZjdhZDFjLi43 NGU4YWNjNzJkYTAgMTAwNjQ0DQo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2dlbjhf ZW5naW5lX2NzLmMNCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvZ2VuOF9lbmdpbmVf Y3MuYw0KPiBAQCAtNDIsNyArNDIsNyBAQCBpbnQgZ2VuOF9lbWl0X2ZsdXNoX3JjcyhzdHJ1Y3Qg aTkxNV9yZXF1ZXN0ICpycSwgdTMyIG1vZGUpDQo+ICAJCQl2Zl9mbHVzaF93YSA9IHRydWU7DQo+ ICANCj4gDQo+ICAJCS8qIFdhRm9yR0FNSGFuZzprYmwgKi8NCj4gLQkJaWYgKElTX0tCTF9HVF9S RVZJRChycS0+ZW5naW5lLT5pOTE1LCAwLCBLQkxfUkVWSURfQjApKQ0KPiArCQlpZiAoSVNfS0JM X0dUX1NURVAocnEtPmVuZ2luZS0+aTkxNSwgMCwgU1RFUF9CMCkpDQo+ICAJCQlkY19mbHVzaF93 YSA9IHRydWU7DQo+ICAJfQ0KPiAgDQo+IA0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvZ3QvaW50ZWxfd29ya2Fyb3VuZHMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2lu dGVsX3dvcmthcm91bmRzLmMNCj4gaW5kZXggMjgyN2Q0ZjJlMDg2Li4wYzUwMmE3MzM3NzkgMTAw NjQ0DQo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX3dvcmthcm91bmRzLmMN Cj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfd29ya2Fyb3VuZHMuYw0KPiBA QCAtNDgxLDcgKzQ4MSw3IEBAIHN0YXRpYyB2b2lkIGtibF9jdHhfd29ya2Fyb3VuZHNfaW5pdChz dHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUsDQo+ICAJZ2VuOV9jdHhfd29ya2Fyb3VuZHNf aW5pdChlbmdpbmUsIHdhbCk7DQo+ICANCj4gDQo+ICAJLyogV2FUb0VuYWJsZUh3Rml4Rm9yUHVz aENvbnN0SFdCdWc6a2JsICovDQo+IC0JaWYgKElTX0tCTF9HVF9SRVZJRChpOTE1LCBLQkxfUkVW SURfQzAsIFJFVklEX0ZPUkVWRVIpKQ0KPiArCWlmIChJU19LQkxfR1RfU1RFUChpOTE1LCBTVEVQ X0MwLCBTVEVQX0ZPUkVWRVIpKQ0KPiAgCQl3YV9tYXNrZWRfZW4od2FsLCBDT01NT05fU0xJQ0Vf Q0hJQ0tFTjIsDQo+ICAJCQkgICAgIEdFTjhfU0JFX0RJU0FCTEVfUkVQTEFZX0JVRl9PUFRJTUla QVRJT04pOw0KPiAgDQo+IA0KPiBAQCAtODk5LDcgKzg5OSw3IEBAIGtibF9ndF93b3JrYXJvdW5k c19pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1LCBzdHJ1Y3QgaTkxNV93YV9saXN0 ICp3YWwpDQo+ICAJZ2VuOV9ndF93b3JrYXJvdW5kc19pbml0KGk5MTUsIHdhbCk7DQo+ICANCj4g DQo+ICAJLyogV2FEaXNhYmxlRHluYW1pY0NyZWRpdFNoYXJpbmc6a2JsICovDQo+IC0JaWYgKElT X0tCTF9HVF9SRVZJRChpOTE1LCAwLCBLQkxfUkVWSURfQjApKQ0KPiArCWlmIChJU19LQkxfR1Rf U1RFUChpOTE1LCAwLCBTVEVQX0IwKSkNCj4gIAkJd2Ffd3JpdGVfb3Iod2FsLA0KPiAgCQkJICAg IEdBTVRfQ0hLTl9CSVRfUkVHLA0KPiAgCQkJICAgIEdBTVRfQ0hLTl9ESVNBQkxFX0RZTkFNSUNf Q1JFRElUX1NIQVJJTkcpOw0KPiBAQCAtMjAyMCw3ICsyMDIwLDcgQEAgeGNzX2VuZ2luZV93YV9p bml0KHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSwgc3RydWN0IGk5MTVfd2FfbGlzdCAq d2FsKQ0KPiAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1ID0gZW5naW5lLT5pOTE1Ow0K PiAgDQo+IA0KPiAgCS8qIFdhS0JMVkVDU1NlbWFwaG9yZVdhaXRQb2xsOmtibCAqLw0KPiAtCWlm IChJU19LQkxfR1RfUkVWSUQoaTkxNSwgS0JMX1JFVklEX0EwLCBLQkxfUkVWSURfRTApKSB7DQo+ ICsJaWYgKElTX0tCTF9HVF9TVEVQKGk5MTUsIFNURVBfQTAsIFNURVBfRTApKSB7DQo+ICAJCXdh X3dyaXRlKHdhbCwNCj4gIAkJCSBSSU5HX1NFTUFfV0FJVF9QT0xMKGVuZ2luZS0+bW1pb19iYXNl KSwNCj4gIAkJCSAxKTsNCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf ZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jDQo+IGluZGV4IDNlZGQ1ZTQ3 YWQ2OC4uODMyMTRmZmU2Y2YxIDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5jDQo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMNCj4gQEAg LTI3Myw3ICsyNzMsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9kZXRlY3RfcHJlcHJvZHVjdGlvbl9o dyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpDQo+ICAJcHJlIHw9IElTX0hTV19F QVJMWV9TRFYoZGV2X3ByaXYpOw0KPiAgCXByZSB8PSBJU19TS0xfUkVWSUQoZGV2X3ByaXYsIDAs IFNLTF9SRVZJRF9GMCk7DQo+ICAJcHJlIHw9IElTX0JYVF9SRVZJRChkZXZfcHJpdiwgMCwgQlhU X1JFVklEX0JfTEFTVCk7DQo+IC0JcHJlIHw9IElTX0tCTF9HVF9SRVZJRChkZXZfcHJpdiwgMCwg S0JMX1JFVklEX0EwKTsNCj4gKwlwcmUgfD0gSVNfS0JMX0dUX1NURVAoZGV2X3ByaXYsIDAsIFNU RVBfQTApOw0KPiAgCXByZSB8PSBJU19HTEtfUkVWSUQoZGV2X3ByaXYsIDAsIEdMS19SRVZJRF9B Mik7DQo+ICANCj4gDQo+ICAJaWYgKHByZSkgew0KPiBAQCAtMzA3LDYgKzMwNyw3IEBAIHN0YXRp YyBpbnQgaTkxNV9kcml2ZXJfZWFybHlfcHJvYmUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2KQ0KPiAgCQlyZXR1cm4gLUVOT0RFVjsNCj4gIA0KPiANCj4gIAlpbnRlbF9kZXZpY2Vf aW5mb19zdWJwbGF0Zm9ybV9pbml0KGRldl9wcml2KTsNCj4gKwlpbnRlbF9zdGVwX2luaXQoZGV2 X3ByaXYpOw0KPiAgDQo+IA0KPiAgCWludGVsX3VuY29yZV9tbWlvX2RlYnVnX2luaXRfZWFybHko JmRldl9wcml2LT5tbWlvX2RlYnVnKTsNCj4gIAlpbnRlbF91bmNvcmVfaW5pdF9lYXJseSgmZGV2 X3ByaXYtPnVuY29yZSwgZGV2X3ByaXYpOw0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgNCj4gaW5k ZXggYTU0M2IxYWQ5YmE5Li43ZjI1OWFhYjQyMjYgMTAwNjQ0DQo+IC0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZHJ2LmgNCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9k cnYuaA0KPiBAQCAtMTQ3NSwyNiArMTQ3NSwxMCBAQCBJU19TVUJQTEFURk9STShjb25zdCBzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSwNCj4gICNkZWZpbmUgSVNfQlhUX1JFVklEKGRldl9w cml2LCBzaW5jZSwgdW50aWwpIFwNCj4gIAkoSVNfQlJPWFRPTihkZXZfcHJpdikgJiYgSVNfUkVW SUQoZGV2X3ByaXYsIHNpbmNlLCB1bnRpbCkpDQo+ICANCj4gDQo+IC1lbnVtIHsNCj4gLQlLQkxf UkVWSURfQTAsDQo+IC0JS0JMX1JFVklEX0IwLA0KPiAtCUtCTF9SRVZJRF9CMSwNCj4gLQlLQkxf UkVWSURfQzAsDQo+IC0JS0JMX1JFVklEX0QwLA0KPiAtCUtCTF9SRVZJRF9EMSwNCj4gLQlLQkxf UkVWSURfRTAsDQo+IC0JS0JMX1JFVklEX0YwLA0KPiAtCUtCTF9SRVZJRF9HMCwNCj4gLX07DQo+ IC0NCj4gLSNkZWZpbmUgSVNfS0JMX0dUX1JFVklEKGRldl9wcml2LCBzaW5jZSwgdW50aWwpIFwN Cj4gLQkoSVNfS0FCWUxBS0UoZGV2X3ByaXYpICYmIFwNCj4gLQkga2JsX3Jldmlkc1tJTlRFTF9S RVZJRChkZXZfcHJpdildLmd0X3N0ZXBwaW5nID49IHNpbmNlICYmIFwNCj4gLQkga2JsX3Jldmlk c1tJTlRFTF9SRVZJRChkZXZfcHJpdildLmd0X3N0ZXBwaW5nIDw9IHVudGlsKQ0KPiAtI2RlZmlu ZSBJU19LQkxfRElTUF9SRVZJRChkZXZfcHJpdiwgc2luY2UsIHVudGlsKSBcDQo+IC0JKElTX0tB QllMQUtFKGRldl9wcml2KSAmJiBcDQo+IC0JIGtibF9yZXZpZHNbSU5URUxfUkVWSUQoZGV2X3By aXYpXS5kaXNwX3N0ZXBwaW5nID49IHNpbmNlICYmIFwNCj4gLQkga2JsX3Jldmlkc1tJTlRFTF9S RVZJRChkZXZfcHJpdildLmRpc3Bfc3RlcHBpbmcgPD0gdW50aWwpDQo+ICsjZGVmaW5lIElTX0tC TF9HVF9TVEVQKGRldl9wcml2LCBzaW5jZSwgdW50aWwpIFwNCj4gKwkoSVNfS0FCWUxBS0UoZGV2 X3ByaXYpICYmIElTX0dUX1NURVAoZGV2X3ByaXYsIHNpbmNlLCB1bnRpbCkpDQo+ICsjZGVmaW5l IElTX0tCTF9ESVNQTEFZX1NURVAoZGV2X3ByaXYsIHNpbmNlLCB1bnRpbCkgXA0KPiArCShJU19L QUJZTEFLRShkZXZfcHJpdikgJiYgSVNfRElTUExBWV9TVEVQKGRldl9wcml2LCBzaW5jZSwgdW50 aWwpKQ0KPiAgDQo+IA0KPiAgI2RlZmluZSBHTEtfUkVWSURfQTAJCTB4MA0KPiAgI2RlZmluZSBH TEtfUkVWSURfQTEJCTB4MQ0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfcG0uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMNCj4gaW5kZXggODU0ZmZl Y2Q5OGQ5Li5mZDhkMjczMmY2OGIgMTAwNjQ0DQo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX3BtLmMNCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYw0KPiBA QCAtNzIxMywxMiArNzIxMywxMiBAQCBzdGF0aWMgdm9pZCBrYmxfaW5pdF9jbG9ja19nYXRpbmco c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQ0KPiAgCQkgICBGQkNfTExDX0ZVTExZ X09QRU4pOw0KPiAgDQo+IA0KPiAgCS8qIFdhRGlzYWJsZVNERVVuaXRDbG9ja0dhdGluZzprYmwg Ki8NCj4gLQlpZiAoSVNfS0JMX0dUX1JFVklEKGRldl9wcml2LCAwLCBLQkxfUkVWSURfQjApKQ0K PiArCWlmIChJU19LQkxfR1RfU1RFUChkZXZfcHJpdiwgMCwgU1RFUF9CMCkpDQo+ICAJCWludGVs X3VuY29yZV93cml0ZSgmZGV2X3ByaXYtPnVuY29yZSwgR0VOOF9VQ0dDVEw2LCBpbnRlbF91bmNv cmVfcmVhZCgmZGV2X3ByaXYtPnVuY29yZSwgR0VOOF9VQ0dDVEw2KSB8DQo+ICAJCQkgICBHRU44 X1NERVVOSVRfQ0xPQ0tfR0FURV9ESVNBQkxFKTsNCj4gIA0KPiANCj4gIAkvKiBXYURpc2FibGVH YW1DbG9ja0dhdGluZzprYmwgKi8NCj4gLQlpZiAoSVNfS0JMX0dUX1JFVklEKGRldl9wcml2LCAw LCBLQkxfUkVWSURfQjApKQ0KPiArCWlmIChJU19LQkxfR1RfU1RFUChkZXZfcHJpdiwgMCwgU1RF UF9CMCkpDQo+ICAJCWludGVsX3VuY29yZV93cml0ZSgmZGV2X3ByaXYtPnVuY29yZSwgR0VONl9V Q0dDVEwxLCBpbnRlbF91bmNvcmVfcmVhZCgmZGV2X3ByaXYtPnVuY29yZSwgR0VONl9VQ0dDVEwx KSB8DQo+ICAJCQkgICBHRU42X0dBTVVOSVRfQ0xPQ0tfR0FURV9ESVNBQkxFKTsNCj4gIA0KPiAN Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3N0ZXAuYyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX3N0ZXAuYw0KPiBpbmRleCBlMTk4MjBjYmU4ZTMuLmFhYTk0 OTRiMGY0ZiAxMDA2NDQNCj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3RlcC5j DQo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3N0ZXAuYw0KPiBAQCAtMTMsMTUg KzEzLDE3IEBADQo+ICAgKiBjYW4gdGVzdCBhZ2FpbnN0IGluIGEgcmVndWxhciBtYW5uZXIuDQo+ ICAgKi8NCj4gIA0KPiANCj4gLWNvbnN0IHN0cnVjdCBpOTE1X3Jldl9zdGVwcGluZ3Mga2JsX3Jl dmlkc1tdID0gew0KPiAtCVswXSA9IHsgLmd0X3N0ZXBwaW5nID0gS0JMX1JFVklEX0EwLCAuZGlz cF9zdGVwcGluZyA9IEtCTF9SRVZJRF9BMCB9LA0KPiAtCVsxXSA9IHsgLmd0X3N0ZXBwaW5nID0g S0JMX1JFVklEX0IwLCAuZGlzcF9zdGVwcGluZyA9IEtCTF9SRVZJRF9CMCB9LA0KPiAtCVsyXSA9 IHsgLmd0X3N0ZXBwaW5nID0gS0JMX1JFVklEX0MwLCAuZGlzcF9zdGVwcGluZyA9IEtCTF9SRVZJ RF9CMCB9LA0KPiAtCVszXSA9IHsgLmd0X3N0ZXBwaW5nID0gS0JMX1JFVklEX0QwLCAuZGlzcF9z dGVwcGluZyA9IEtCTF9SRVZJRF9CMCB9LA0KPiAtCVs0XSA9IHsgLmd0X3N0ZXBwaW5nID0gS0JM X1JFVklEX0YwLCAuZGlzcF9zdGVwcGluZyA9IEtCTF9SRVZJRF9DMCB9LA0KPiAtCVs1XSA9IHsg Lmd0X3N0ZXBwaW5nID0gS0JMX1JFVklEX0MwLCAuZGlzcF9zdGVwcGluZyA9IEtCTF9SRVZJRF9C MSB9LA0KPiAtCVs2XSA9IHsgLmd0X3N0ZXBwaW5nID0gS0JMX1JFVklEX0QxLCAuZGlzcF9zdGVw cGluZyA9IEtCTF9SRVZJRF9CMSB9LA0KPiAtCVs3XSA9IHsgLmd0X3N0ZXBwaW5nID0gS0JMX1JF VklEX0cwLCAuZGlzcF9zdGVwcGluZyA9IEtCTF9SRVZJRF9DMCB9LA0KPiArDQo+ICsvKiBGSVhN RTogd2hhdCBhYm91dCBSRVZJRF9FMCAqLw0KPiArc3RhdGljIGNvbnN0IHN0cnVjdCBpOTE1X3Jl dl9zdGVwcGluZ3Mga2JsX3Jldmlkc1tdID0gew0KPiArCVswXSA9IHsgLmd0X3N0ZXBwaW5nID0g U1RFUF9BMCwgLmRpc3Bfc3RlcHBpbmcgPSBTVEVQX0EwIH0sDQo+ICsJWzFdID0geyAuZ3Rfc3Rl cHBpbmcgPSBTVEVQX0IwLCAuZGlzcF9zdGVwcGluZyA9IFNURVBfQjAgfSwNCj4gKwlbMl0gPSB7 IC5ndF9zdGVwcGluZyA9IFNURVBfQzAsIC5kaXNwX3N0ZXBwaW5nID0gU1RFUF9CMCB9LA0KPiAr CVszXSA9IHsgLmd0X3N0ZXBwaW5nID0gU1RFUF9EMCwgLmRpc3Bfc3RlcHBpbmcgPSBTVEVQX0Iw IH0sDQo+ICsJWzRdID0geyAuZ3Rfc3RlcHBpbmcgPSBTVEVQX0YwLCAuZGlzcF9zdGVwcGluZyA9 IFNURVBfQzAgfSwNCj4gKwlbNV0gPSB7IC5ndF9zdGVwcGluZyA9IFNURVBfQzAsIC5kaXNwX3N0 ZXBwaW5nID0gU1RFUF9CMSB9LA0KPiArCVs2XSA9IHsgLmd0X3N0ZXBwaW5nID0gU1RFUF9EMSwg LmRpc3Bfc3RlcHBpbmcgPSBTVEVQX0IxIH0sDQo+ICsJWzddID0geyAuZ3Rfc3RlcHBpbmcgPSBT VEVQX0cwLCAuZGlzcF9zdGVwcGluZyA9IFNURVBfQzAgfSwNCj4gIH07DQo+ICANCj4gDQo+ICBj b25zdCBzdHJ1Y3QgaTkxNV9yZXZfc3RlcHBpbmdzIHRnbF91eV9yZXZpZF9zdGVwX3RibFtdID0g ew0KPiBAQCAtNDQsMyArNDYsNTIgQEAgY29uc3Qgc3RydWN0IGk5MTVfcmV2X3N0ZXBwaW5ncyBh ZGxzX3JldmlkX3N0ZXBfdGJsW10gPSB7DQo+ICAJWzB4OF0gPSB7IC5ndF9zdGVwcGluZyA9IFNU RVBfQzAsIC5kaXNwX3N0ZXBwaW5nID0gU1RFUF9CMCB9LA0KPiAgCVsweENdID0geyAuZ3Rfc3Rl cHBpbmcgPSBTVEVQX0QwLCAuZGlzcF9zdGVwcGluZyA9IFNURVBfQzAgfSwNCj4gIH07DQo+ICsN Cj4gK3ZvaWQgaW50ZWxfc3RlcF9pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1KQ0K PiArew0KPiArCWNvbnN0IHN0cnVjdCBpOTE1X3Jldl9zdGVwcGluZ3MgKnJldmlkcyA9IE5VTEw7 DQo+ICsJaW50IHNpemUgPSAwOw0KPiArCWludCByZXZpZCA9IElOVEVMX1JFVklEKGk5MTUpOw0K PiArCXN0cnVjdCBpOTE1X3Jldl9zdGVwcGluZ3Mgc3RlcCA9IHt9Ow0KPiArDQo+ICsJaWYgKElT X0tBQllMQUtFKGk5MTUpKSB7DQo+ICsJCXJldmlkcyA9IGtibF9yZXZpZHM7DQo+ICsJCXNpemUg PSBBUlJBWV9TSVpFKGtibF9yZXZpZHMpOw0KPiArCX0NCj4gKw0KPiArCS8qIE5vdCB1c2luZyB0 aGUgc3RlcHBpbmcgc2NoZW1lIGZvciB0aGUgcGxhdGZvcm0geWV0LiAqLw0KPiArCWlmICghcmV2 aWRzKQ0KPiArCQlyZXR1cm47DQo+ICsNCj4gKwlpZiAocmV2aWQgPCBzaXplICYmIHJldmlkc1ty ZXZpZF0uZ3Rfc3RlcHBpbmcgIT0gU1RFUF9OT05FKSB7DQo+ICsJCXN0ZXAgPSByZXZpZHNbcmV2 aWRdOw0KPiArCX0gZWxzZSB7DQo+ICsJCWRybV9kYmcoJmk5MTUtPmRybSwgIlVua25vd24gcmV2 aWQgMHglMDJ4XG4iLCByZXZpZCk7DQoNClRoaXMgc2hvdWxkIGJlIG1vcmUgdGhhbiBkYmcgc28g d2UgY2FuIGNhdWdodCB0aGlzIGFuZCBmaXggaXQuDQoNCk90aGVyIHRoYW4gdGhhdDoNCg0KUmV2 aWV3ZWQtYnk6IEpvc8OpIFJvYmVydG8gZGUgU291emEgPGpvc2Uuc291emFAaW50ZWwuY29tPg0K DQo+ICsNCj4gKwkJLyoNCj4gKwkJICogSWYgd2UgaGl0IGEgZ2FwIGluIHRoZSByZXZpZCBhcnJh eSwgdXNlIHRoZSBpbmZvcm1hdGlvbiBmb3INCj4gKwkJICogdGhlIG5leHQgcmV2aWQuDQo+ICsJ CSAqDQo+ICsJCSAqIFRoaXMgbWF5IGJlIHdyb25nIGluIGFsbCBzb3J0cyBvZiB3YXlzLCBlc3Bl Y2lhbGx5IGlmIHRoZQ0KPiArCQkgKiBzdGVwcGluZ3MgaW4gdGhlIGFycmF5IGFyZSBub3QgbW9u b3RvbmljYWxseSBpbmNyZWFzaW5nLCBidXQNCj4gKwkJICogaXQncyBiZXR0ZXIgdGhhbiBkZWZh dWx0aW5nIHRvIDAuDQo+ICsJCSAqLw0KPiArCQl3aGlsZSAocmV2aWQgPCBzaXplICYmIHJldmlk c1tyZXZpZF0uZ3Rfc3RlcHBpbmcgPT0gU1RFUF9OT05FKQ0KPiArCQkJcmV2aWQrKzsNCj4gKw0K PiArCQlpZiAocmV2aWQgPCBzaXplKSB7DQo+ICsJCQlkcm1fZGJnKCZpOTE1LT5kcm0sICJVc2lu ZyBzdGVwcGluZ3MgZm9yIHJldmlkIDB4JTAyeFxuIiwNCj4gKwkJCQlyZXZpZCk7DQo+ICsJCQlz dGVwID0gcmV2aWRzW3JldmlkXTsNCj4gKwkJfSBlbHNlIHsNCj4gKwkJCWRybV9kYmcoJmk5MTUt PmRybSwgIlVzaW5nIGZ1dHVyZSBzdGVwcGluZ3NcbiIpOw0KPiArCQkJc3RlcC5ndF9zdGVwcGlu ZyA9IFNURVBfRlVUVVJFOw0KPiArCQkJc3RlcC5kaXNwX3N0ZXBwaW5nID0gU1RFUF9GVVRVUkU7 DQo+ICsJCX0NCj4gKwl9DQo+ICsNCj4gKwlpZiAoZHJtX1dBUk5fT04oJmk5MTUtPmRybSwgc3Rl cC5ndF9zdGVwcGluZyA9PSBTVEVQX05PTkUpKQ0KPiArCQlyZXR1cm47DQo+ICsNCj4gKwlSVU5U SU1FX0lORk8oaTkxNSktPnN0ZXAgPSBzdGVwOw0KPiArfQ0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfc3RlcC5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf c3RlcC5oDQo+IGluZGV4IDhiM2VmMTlkOTM1Yi4uYjI5ZTE1ZjcxMjE0IDEwMDY0NA0KPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zdGVwLmgNCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfc3RlcC5oDQo+IEBAIC04LDYgKzgsOCBAQA0KPiAgDQo+IA0KPiAgI2lu Y2x1ZGUgPGxpbnV4L3R5cGVzLmg+DQo+ICANCj4gDQo+ICtzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZTsNCj4gKw0KPiAgc3RydWN0IGk5MTVfcmV2X3N0ZXBwaW5ncyB7DQo+ICAJdTggZ3Rfc3RlcHBp bmc7DQo+ICAJdTggZGlzcF9zdGVwcGluZzsNCj4gQEAgLTE3LDcgKzE5LDYgQEAgc3RydWN0IGk5 MTVfcmV2X3N0ZXBwaW5ncyB7DQo+ICAjZGVmaW5lIFRHTF9SRVZJRF9TVEVQX1RCTF9TSVpFCQky DQo+ICAjZGVmaW5lIEFETFNfUkVWSURfU1RFUF9UQkxfU0laRQkxMw0KPiAgDQo+IA0KPiAtZXh0 ZXJuIGNvbnN0IHN0cnVjdCBpOTE1X3Jldl9zdGVwcGluZ3Mga2JsX3Jldmlkc1tdOw0KPiAgZXh0 ZXJuIGNvbnN0IHN0cnVjdCBpOTE1X3Jldl9zdGVwcGluZ3MgdGdsX3V5X3JldmlkX3N0ZXBfdGJs W1RHTF9VWV9SRVZJRF9TVEVQX1RCTF9TSVpFXTsNCj4gIGV4dGVybiBjb25zdCBzdHJ1Y3QgaTkx NV9yZXZfc3RlcHBpbmdzIHRnbF9yZXZpZF9zdGVwX3RibFtUR0xfUkVWSURfU1RFUF9UQkxfU0la RV07DQo+ICBleHRlcm4gY29uc3Qgc3RydWN0IGk5MTVfcmV2X3N0ZXBwaW5ncyBhZGxzX3Jldmlk X3N0ZXBfdGJsW0FETFNfUkVWSURfU1RFUF9UQkxfU0laRV07DQo+IEBAIC0zNCw2ICszNSwxNCBA QCBlbnVtIGludGVsX3N0ZXAgew0KPiAgCVNURVBfQjEsDQo+ICAJU1RFUF9DMCwNCj4gIAlTVEVQ X0QwLA0KPiArCVNURVBfRDEsDQo+ICsJU1RFUF9FMCwNCj4gKwlTVEVQX0YwLA0KPiArCVNURVBf RzAsDQo+ICsJU1RFUF9GVVRVUkUsDQo+ICsJU1RFUF9GT1JFVkVSLA0KPiAgfTsNCj4gIA0KPiAN Cj4gK3ZvaWQgaW50ZWxfc3RlcF9pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1KTsN Cj4gKw0KPiAgI2VuZGlmIC8qIF9fSU5URUxfU1RFUF9IX18gKi8NCg0KX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJ bnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Au b3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==