From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Vivi, Rodrigo" Subject: Re: [PATCH 2/3] drm/i915/bxt: add revision id for A1 stepping and use it Date: Tue, 6 Oct 2015 17:50:50 +0000 Message-ID: <1444153924.22060.75.camel@intel.com> References: <1444131676-12187-1-git-send-email-jani.nikula@intel.com> <1444131676-12187-2-git-send-email-jani.nikula@intel.com> <20151006122937.GV26517@intel.com> <87zizw864w.fsf@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTP id 85E2A6E327 for ; Tue, 6 Oct 2015 10:50:52 -0700 (PDT) In-Reply-To: <87zizw864w.fsf@intel.com> Content-Language: en-US Content-ID: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: "ville.syrjala@linux.intel.com" , "Nikula, Jani" Cc: "intel-gfx@lists.freedesktop.org" , "Sharp, Sarah A" List-Id: intel-gfx@lists.freedesktop.org T24gVHVlLCAyMDE1LTEwLTA2IGF0IDE2OjQzICswMzAwLCBKYW5pIE5pa3VsYSB3cm90ZToNCj4g T24gVHVlLCAwNiBPY3QgMjAxNSwgVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4 LmludGVsLmNvbT4gDQo+IHdyb3RlOg0KPiA+IE9uIFR1ZSwgT2N0IDA2LCAyMDE1IGF0IDAyOjQx OjE1UE0gKzAzMDAsIEphbmkgTmlrdWxhIHdyb3RlOg0KPiA+ID4gUHJlZmVyIGluY2x1c2l2ZSBy YW5nZXMgZm9yIHJldmlzaW9uIGNoZWNrcyByYXRoZXIgdGhhbiAiYmVsb3cgDQo+ID4gPiBCMCIu IFBlcg0KPiA+ID4gc3BlY3MgQTIgaXMgbm90IHVzZWQsIHNvIHJldmlkIDw9IEExIG1hdGNoZXMg cmV2aWQgPCBCMC4NCj4gPiANCj4gPiBUaGUgdy9hIGRiIHdvdWxkIHNheSBVTlRJTF9CMCBldGMu LCBzbyBtaWdodCBiZSBlYXNpZXIgdG8gY2hlY2sgDQo+ID4gYWdhaW5zdA0KPiA+IGl0IGlmIHdl IGtlZXAgdG8gdGhlIHNhbWUgY29udmVudGlvbi4NCj4gDQo+IFNvIEkgd2FudGVkIHRvIGRvdWJs ZSBjaGVjayB3aGF0IHRoZSBjb252ZW50aW9uIGlzLiBJIHBpY2tlZA0KPiBXYVJzRGlzYWJsZUNv YXJzZVBvd2VyR2F0aW5nLg0KPiANCj4gS0JMIC0gU0lXQV9GT1JFVkVSDQo+IEJYVCAtIFNJX1dB X0JFRk9SRShCWFRfUkVWX0lEX0IwKQ0KPiBTS0wgLSBTSVdBX1VOVElMX1NLTF9FMA0KPiANCj4g RGVzY3JpcHRpb24gIkRpc2FibGUgY29hcnNlIHBvd2VyIGdhdGluZyBmb3IgR1Q0IHVudGlsIEdU IEYwIA0KPiBzdGVwcGluZy4iDQo+IA0KPiAqcm9sbHMgZXllcyoNCj4gDQo+IFNvIGlzIHRoYXQg InVudGlsIiB0aGVyZSBpbmNsdXNpdmUgb3Igbm9uLWluY2x1c2l2ZT8gVGhlIGRiIGlzDQo+IGNv bnRyYWRpY3RpbmcgaXRzZWxmLi4uIENjOiBTYXJhaCB3aG8gaGFzIGFsc28gbG9va2VkIGF0IHdv cmthcm91bmRzDQo+IHJlY2VudGx5Lg0KPiANCj4gUm9kcmlnbywgZm9yIG9uZSB0aGluZywgSSds bCB3YW50IHdvcmthcm91bmRzIGZvciBTS0wgYW5kIEtCTCBpbg0KPiBkaWZmZXJlbnQgY29uZGl0 aW9ucyBpbnN0ZWFkIG9mIGNvbmZsYXRlZCBpbnRvIFNLTCENCg0KSSBhZ3JlZSB3aXRoIFZpbGxl IHRoYXQgPD0gUkVWSUQgbWF0Y2hlcyB0aGUgc3BlYyBpbiBzZW5zZSBvZiAidW50aWwiDQpjZXJ0 YWluIHN0ZXBwaW5nIGFuZCBJIGxpa2UgdGhpcy4NCg0KQWxzbyBLQkwgVy9BIGRvZXNuJ3QgY29u ZmxpY3Qgd2l0aCBTS0wgVy9hcyBpbiB0aGV5IHdheSB0aGV5IHdlcmUNCmRlcml2YXRlZC4uLg0K DQo+IA0KPiBCdXQgd2hhdCBhYm91dCB0aGlzIG5vbi1pbmNsdXNpdmUgZW5kIG9mIHJhbmdlPyBJ dCdsbCBtYXR0ZXIgaW4gcGF0Y2gNCj4gMy8zLiBJdCdzIG5vdCBzbyBtdWNoIGEgcHJvYmxlbSBm b3IgcmFuZ2VzLCBidXQgcmF0aGVyIGZvciBzcGVjaWZpYw0KPiByZXZpc2lvbnMsIHdoZXJlIHlv dSdkIGhhdmUgdG8gaW5jbHVkZSBhIHJldmlzaW9uIG5vdCBtZW50aW9uZWQgaW4gDQo+IHRoZQ0K PiBzcGVjIGF0IGFsbCwgZS5nLiBmb3IgQjAgb25seToNCj4gDQo+IAlJU19TS0xfUkVWSUQoZGV2 LCBTS0xfUkVWSURfQjAsIFNLTF9SRVZJRF9DMCkNCj4gDQo+IGluc3RlYWQgb2YgdGhlIGN1cnJl bnQgcHJvcG9zYWw6DQo+IA0KPiAJSVNfU0tMX1JFVklEKGRldiwgU0tMX1JFVklEX0IwLCBTS0xf UkVWSURfQjApDQo+IA0KPiBJJ20gbm90IHJlYWxseSBmb25kIG9mIGFkZGluZyBzZXBhcmF0ZSBt YWNyb3MgZm9yIGNoZWNraW5nIHNwZWNpZmljDQo+IHZzLiByYW5nZXMuDQo+IA0KPiBUaG91Z2h0 cz8NCj4gDQo+IEJSLA0KPiBKYW5pLg0KPiANCj4gDQo+IA0KPiANCj4gDQo+ID4gDQo+ID4gPiAN Cj4gPiA+IFNpZ25lZC1vZmYtYnk6IEphbmkgTmlrdWxhIDxqYW5pLm5pa3VsYUBpbnRlbC5jb20+ DQo+ID4gPiAtLS0NCj4gPiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAgICAg ICAgICAgfCAxICsNCj4gPiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jICAgICAg ICAgICAgfCAyICstDQo+ID4gPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9ndWNfc3VibWlz c2lvbi5jIHwgMiArLQ0KPiA+ID4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jICAg ICAgICAgICB8IDIgKy0NCj4gPiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jICAg ICAgICAgICAgfCAyICstDQo+ID4gPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRtaS5j ICAgICAgICAgIHwgMiArLQ0KPiA+ID4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5j ICAgICAgICAgICB8IDggKysrKy0tLS0NCj4gPiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9wbS5jICAgICAgICAgICAgfCA2ICsrKy0tLQ0KPiA+ID4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX3JpbmdidWZmZXIuYyAgICB8IDYgKysrLS0tDQo+ID4gPiAgOSBmaWxlcyBjaGFuZ2Vk LCAxNiBpbnNlcnRpb25zKCspLCAxNSBkZWxldGlvbnMoLSkNCj4gPiA+IA0KPiA+ID4gZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggDQo+ID4gPiBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgNCj4gPiA+IGluZGV4IGEzYjEzNzcxNTYwNC4uOTgzM2Ey MDU1OTMwIDEwMDY0NA0KPiA+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYu aA0KPiA+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaA0KPiA+ID4gQEAg LTI1MDksNiArMjUwOSw3IEBAIHN0cnVjdCBkcm1faTkxNV9jbWRfdGFibGUgew0KPiA+ID4gICNk ZWZpbmUgU0tMX1JFVklEX0YwCQkweDUNCj4gPiA+ICANCj4gPiA+ICAjZGVmaW5lIEJYVF9SRVZJ RF9BMAkJMHgwDQo+ID4gPiArI2RlZmluZSBCWFRfUkVWSURfQTEJCTB4MQ0KPiA+ID4gICNkZWZp bmUgQlhUX1JFVklEX0IwCQkweDMNCj4gPiA+ICAjZGVmaW5lIEJYVF9SRVZJRF9DMAkJMHg5DQo+ ID4gPiAgDQo+ID4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0u YyANCj4gPiA+IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYw0KPiA+ID4gaW5kZXgg ZjBjZmJiOWVlMTJjLi5mZDJkODgwNjU2YjIgMTAwNjQ0DQo+ID4gPiAtLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2dlbS5jDQo+ID4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dlbS5jDQo+ID4gPiBAQCAtMzc1Nyw3ICszNzU3LDcgQEAgaW50IGk5MTVfZ2VtX3NldF9j YWNoaW5nX2lvY3RsKHN0cnVjdCANCj4gPiA+IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwN Cj4gPiA+ICAJCSAqIGNhY2hlbGluZSwgd2hlcmVhcyBub3JtYWxseSBzdWNoIGNhY2hlbGluZXMg DQo+ID4gPiB3b3VsZCBnZXQNCj4gPiA+ICAJCSAqIGludmFsaWRhdGVkLg0KPiA+ID4gIAkJICov DQo+ID4gPiAtCQlpZiAoSVNfQlJPWFRPTihkZXYpICYmIElOVEVMX1JFVklEKGRldikgPCANCj4g PiA+IEJYVF9SRVZJRF9CMCkNCj4gPiA+ICsJCWlmIChJU19CUk9YVE9OKGRldikgJiYgSU5URUxf UkVWSUQoZGV2KSA8PSANCj4gPiA+IEJYVF9SRVZJRF9BMSkNCj4gPiA+ICAJCQlyZXR1cm4gLUVO T0RFVjsNCj4gPiA+ICANCj4gPiA+ICAJCWxldmVsID0gSTkxNV9DQUNIRV9MTEM7DQo+ID4gPiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9ndWNfc3VibWlzc2lvbi5jIA0K PiA+ID4gYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2d1Y19zdWJtaXNzaW9uLmMNCj4gPiA+ IGluZGV4IDAzNmI0MmJhZTgyNy4uODYzYWE1YzgyNDY2IDEwMDY0NA0KPiA+ID4gLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9ndWNfc3VibWlzc2lvbi5jDQo+ID4gPiArKysgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2d1Y19zdWJtaXNzaW9uLmMNCj4gPiA+IEBAIC0xNjEsNyAr MTYxLDcgQEAgc3RhdGljIGludCBob3N0Mmd1Y19zYW1wbGVfZm9yY2V3YWtlKHN0cnVjdCANCj4g PiA+IGludGVsX2d1YyAqZ3VjLA0KPiA+ID4gIAlkYXRhWzBdID0gSE9TVDJHVUNfQUNUSU9OX1NB TVBMRV9GT1JDRVdBS0U7DQo+ID4gPiAgCS8qIFdhUnNEaXNhYmxlQ29hcnNlUG93ZXJHYXRpbmc6 c2tsLGJ4dCAqLw0KPiA+ID4gIAlpZiAoIWludGVsX2VuYWJsZV9yYzYoZGV2X3ByaXYtPmRldikg fHwNCj4gPiA+IC0JICAgIChJU19CUk9YVE9OKGRldikgJiYgKElOVEVMX1JFVklEKGRldikgPCAN Cj4gPiA+IEJYVF9SRVZJRF9CMCkpIHx8DQo+ID4gPiArCSAgICAoSVNfQlJPWFRPTihkZXYpICYm IChJTlRFTF9SRVZJRChkZXYpIDw9IA0KPiA+ID4gQlhUX1JFVklEX0ExKSkgfHwNCj4gPiA+ICAJ ICAgIChJU19TS0xfR1QzKGRldikgJiYgKElOVEVMX1JFVklEKGRldikgPD0gDQo+ID4gPiBTS0xf UkVWSURfRTApKSB8fA0KPiA+ID4gIAkgICAgKElTX1NLTF9HVDQoZGV2KSAmJiAoSU5URUxfUkVW SUQoZGV2KSA8PSANCj4gPiA+IFNLTF9SRVZJRF9FMCkpKQ0KPiA+ID4gIAkJZGF0YVsxXSA9IDA7 DQo+ID4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMgDQo+ ID4gPiBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jDQo+ID4gPiBpbmRleCBiMjVl OTlhNDMyZmIuLmI4MGUwZjVlYzVkYyAxMDA2NDQNCj4gPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2RkaS5jDQo+ID4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kZGkuYw0KPiA+ID4gQEAgLTMyNDcsNyArMzI0Nyw3IEBAIHZvaWQgaW50ZWxfZGRpX2luaXQo c3RydWN0IGRybV9kZXZpY2UgKmRldiwgDQo+ID4gPiBlbnVtIHBvcnQgcG9ydCkNCj4gPiA+ICAJ CSAqIE9uIEJYVCBBMC9BMSwgc3cgbmVlZHMgdG8gYWN0aXZhdGUgRERJQSBIUEQgDQo+ID4gPiBs b2dpYyBhbmQNCj4gPiA+ICAJCSAqIGludGVycnVwdHMgdG8gY2hlY2sgdGhlIGV4dGVybmFsIHBh bmVsIA0KPiA+ID4gY29ubmVjdGlvbi4NCj4gPiA+ICAJCSAqLw0KPiA+ID4gLQkJaWYgKElTX0JS T1hUT04oZGV2X3ByaXYpICYmIChJTlRFTF9SRVZJRChkZXYpIDwgDQo+ID4gPiBCWFRfUkVWSURf QjApDQo+ID4gPiArCQlpZiAoSVNfQlJPWFRPTihkZXZfcHJpdikgJiYgKElOVEVMX1JFVklEKGRl dikgPD0gDQo+ID4gPiBCWFRfUkVWSURfQTEpDQo+ID4gPiAgCQkJCQkgJiYgcG9ydCA9PSBQT1JU X0IpDQo+ID4gPiAgCQkJZGV2X3ByaXYtPmhvdHBsdWcuaXJxX3BvcnRbUE9SVF9BXSA9IA0KPiA+ ID4gaW50ZWxfZGlnX3BvcnQ7DQo+ID4gPiAgCQllbHNlDQo+ID4gPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYyANCj4gPiA+IGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZHAuYw0KPiA+ID4gaW5kZXggOGQzNGNhN2IyODdhLi44YmFmNmZlMDYzMTMgMTAw NjQ0DQo+ID4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jDQo+ID4gPiAr KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jDQo+ID4gPiBAQCAtNjA4Nyw3ICs2 MDg3LDcgQEAgaW50ZWxfZHBfaW5pdF9jb25uZWN0b3Ioc3RydWN0IA0KPiA+ID4gaW50ZWxfZGln aXRhbF9wb3J0ICppbnRlbF9kaWdfcG9ydCwNCj4gPiA+ICAJCWJyZWFrOw0KPiA+ID4gIAljYXNl IFBPUlRfQjoNCj4gPiA+ICAJCWludGVsX2VuY29kZXItPmhwZF9waW4gPSBIUERfUE9SVF9COw0K PiA+ID4gLQkJaWYgKElTX0JST1hUT04oZGV2X3ByaXYpICYmIChJTlRFTF9SRVZJRChkZXYpIDwg DQo+ID4gPiBCWFRfUkVWSURfQjApKQ0KPiA+ID4gKwkJaWYgKElTX0JST1hUT04oZGV2X3ByaXYp ICYmIChJTlRFTF9SRVZJRChkZXYpIDw9IA0KPiA+ID4gQlhUX1JFVklEX0ExKSkNCj4gPiA+ICAJ CQlpbnRlbF9lbmNvZGVyLT5ocGRfcGluID0gSFBEX1BPUlRfQTsNCj4gPiA+ICAJCWJyZWFrOw0K PiA+ID4gIAljYXNlIFBPUlRfQzoNCj4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9oZG1pLmMgDQo+ID4gPiBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hk bWkuYw0KPiA+ID4gaW5kZXggMDNkODU5MDljNmFiLi4zMmU5MTE3ZWU4ZTMgMTAwNjQ0DQo+ID4g PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMNCj4gPiA+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYw0KPiA+ID4gQEAgLTIwNjgsNyArMjA2OCw3 IEBAIHZvaWQgaW50ZWxfaGRtaV9pbml0X2Nvbm5lY3RvcihzdHJ1Y3QgDQo+ID4gPiBpbnRlbF9k aWdpdGFsX3BvcnQgKmludGVsX2RpZ19wb3J0LA0KPiA+ID4gIAkJICogT24gQlhUIEEwL0ExLCBz dyBuZWVkcyB0byBhY3RpdmF0ZSBERElBIEhQRCANCj4gPiA+IGxvZ2ljIGFuZA0KPiA+ID4gIAkJ ICogaW50ZXJydXB0cyB0byBjaGVjayB0aGUgZXh0ZXJuYWwgcGFuZWwgDQo+ID4gPiBjb25uZWN0 aW9uLg0KPiA+ID4gIAkJICovDQo+ID4gPiAtCQlpZiAoSVNfQlJPWFRPTihkZXZfcHJpdikgJiYg KElOVEVMX1JFVklEKGRldikgPCANCj4gPiA+IEJYVF9SRVZJRF9CMCkpDQo+ID4gPiArCQlpZiAo SVNfQlJPWFRPTihkZXZfcHJpdikgJiYgKElOVEVMX1JFVklEKGRldikgPD0gDQo+ID4gPiBCWFRf UkVWSURfQTEpKQ0KPiA+ID4gIAkJCWludGVsX2VuY29kZXItPmhwZF9waW4gPSBIUERfUE9SVF9B Ow0KPiA+ID4gIAkJZWxzZQ0KPiA+ID4gIAkJCWludGVsX2VuY29kZXItPmhwZF9waW4gPSBIUERf UE9SVF9COw0KPiA+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xy Yy5jIA0KPiA+ID4gYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYw0KPiA+ID4gaW5k ZXggODI1ZmE3YThkZjg2Li5hY2Q0ZmEzMzJhODAgMTAwNjQ0DQo+ID4gPiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYw0KPiA+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfbHJjLmMNCj4gPiA+IEBAIC0xOTg2LDcgKzE5ODYsNyBAQCBzdGF0aWMgaW50IGxv Z2ljYWxfcmVuZGVyX3JpbmdfaW5pdChzdHJ1Y3QgDQo+ID4gPiBkcm1fZGV2aWNlICpkZXYpDQo+ ID4gPiAgCQlyaW5nLT5pbml0X2h3ID0gZ2VuOF9pbml0X3JlbmRlcl9yaW5nOw0KPiA+ID4gIAly aW5nLT5pbml0X2NvbnRleHQgPSBnZW44X2luaXRfcmNzX2NvbnRleHQ7DQo+ID4gPiAgCXJpbmct PmNsZWFudXAgPSBpbnRlbF9maW5pX3BpcGVfY29udHJvbDsNCj4gPiA+IC0JaWYgKElTX0JST1hU T04oZGV2KSAmJiBJTlRFTF9SRVZJRChkZXYpIDwgQlhUX1JFVklEX0IwKSANCj4gPiA+IHsNCj4g PiA+ICsJaWYgKElTX0JST1hUT04oZGV2KSAmJiBJTlRFTF9SRVZJRChkZXYpIDw9IEJYVF9SRVZJ RF9BMSkgDQo+ID4gPiB7DQo+ID4gPiAgCQlyaW5nLT5nZXRfc2Vxbm8gPSBieHRfYV9nZXRfc2Vx bm87DQo+ID4gPiAgCQlyaW5nLT5zZXRfc2Vxbm8gPSBieHRfYV9zZXRfc2Vxbm87DQo+ID4gPiAg CX0gZWxzZSB7DQo+ID4gPiBAQCAtMjAzOCw3ICsyMDM4LDcgQEAgc3RhdGljIGludCBsb2dpY2Fs X2JzZF9yaW5nX2luaXQoc3RydWN0IA0KPiA+ID4gZHJtX2RldmljZSAqZGV2KQ0KPiA+ID4gIAkJ R1RfQ09OVEVYVF9TV0lUQ0hfSU5URVJSVVBUIDw8IA0KPiA+ID4gR0VOOF9WQ1MxX0lSUV9TSElG VDsNCj4gPiA+ICANCj4gPiA+ICAJcmluZy0+aW5pdF9odyA9IGdlbjhfaW5pdF9jb21tb25fcmlu ZzsNCj4gPiA+IC0JaWYgKElTX0JST1hUT04oZGV2KSAmJiBJTlRFTF9SRVZJRChkZXYpIDwgQlhU X1JFVklEX0IwKSANCj4gPiA+IHsNCj4gPiA+ICsJaWYgKElTX0JST1hUT04oZGV2KSAmJiBJTlRF TF9SRVZJRChkZXYpIDw9IEJYVF9SRVZJRF9BMSkgDQo+ID4gPiB7DQo+ID4gPiAgCQlyaW5nLT5n ZXRfc2Vxbm8gPSBieHRfYV9nZXRfc2Vxbm87DQo+ID4gPiAgCQlyaW5nLT5zZXRfc2Vxbm8gPSBi eHRfYV9zZXRfc2Vxbm87DQo+ID4gPiAgCX0gZWxzZSB7DQo+ID4gPiBAQCAtMjA5Myw3ICsyMDkz LDcgQEAgc3RhdGljIGludCBsb2dpY2FsX2JsdF9yaW5nX2luaXQoc3RydWN0IA0KPiA+ID4gZHJt X2RldmljZSAqZGV2KQ0KPiA+ID4gIAkJR1RfQ09OVEVYVF9TV0lUQ0hfSU5URVJSVVBUIDw8IA0K PiA+ID4gR0VOOF9CQ1NfSVJRX1NISUZUOw0KPiA+ID4gIA0KPiA+ID4gIAlyaW5nLT5pbml0X2h3 ID0gZ2VuOF9pbml0X2NvbW1vbl9yaW5nOw0KPiA+ID4gLQlpZiAoSVNfQlJPWFRPTihkZXYpICYm IElOVEVMX1JFVklEKGRldikgPCBCWFRfUkVWSURfQjApIA0KPiA+ID4gew0KPiA+ID4gKwlpZiAo SVNfQlJPWFRPTihkZXYpICYmIElOVEVMX1JFVklEKGRldikgPD0gQlhUX1JFVklEX0ExKSANCj4g PiA+IHsNCj4gPiA+ICAJCXJpbmctPmdldF9zZXFubyA9IGJ4dF9hX2dldF9zZXFubzsNCj4gPiA+ ICAJCXJpbmctPnNldF9zZXFubyA9IGJ4dF9hX3NldF9zZXFubzsNCj4gPiA+ICAJfSBlbHNlIHsN Cj4gPiA+IEBAIC0yMTIzLDcgKzIxMjMsNyBAQCBzdGF0aWMgaW50IGxvZ2ljYWxfdmVib3hfcmlu Z19pbml0KHN0cnVjdCANCj4gPiA+IGRybV9kZXZpY2UgKmRldikNCj4gPiA+ICAJCUdUX0NPTlRF WFRfU1dJVENIX0lOVEVSUlVQVCA8PCANCj4gPiA+IEdFTjhfVkVDU19JUlFfU0hJRlQ7DQo+ID4g PiAgDQo+ID4gPiAgCXJpbmctPmluaXRfaHcgPSBnZW44X2luaXRfY29tbW9uX3Jpbmc7DQo+ID4g PiAtCWlmIChJU19CUk9YVE9OKGRldikgJiYgSU5URUxfUkVWSUQoZGV2KSA8IEJYVF9SRVZJRF9C MCkgDQo+ID4gPiB7DQo+ID4gPiArCWlmIChJU19CUk9YVE9OKGRldikgJiYgSU5URUxfUkVWSUQo ZGV2KSA8PSBCWFRfUkVWSURfQTEpIA0KPiA+ID4gew0KPiA+ID4gIAkJcmluZy0+Z2V0X3NlcW5v ID0gYnh0X2FfZ2V0X3NlcW5vOw0KPiA+ID4gIAkJcmluZy0+c2V0X3NlcW5vID0gYnh0X2Ffc2V0 X3NlcW5vOw0KPiA+ID4gIAl9IGVsc2Ugew0KPiA+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX3BtLmMgDQo+ID4gPiBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X3BtLmMNCj4gPiA+IGluZGV4IDYwZDEyMGM0NzJhYi4uZTI1NzkxZTg3NDhmIDEwMDY0NA0KPiA+ ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYw0KPiA+ID4gKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYw0KPiA+ID4gQEAgLTQzNDgsNyArNDM0OCw3IEBA IHN0YXRpYyB2b2lkIGdlbjZfc2V0X3JwcyhzdHJ1Y3QgZHJtX2RldmljZSANCj4gPiA+ICpkZXYs IHU4IHZhbCkNCj4gPiA+ICAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2 LT5kZXZfcHJpdmF0ZTsNCj4gPiA+ICANCj4gPiA+ICAJLyogV2FHc3ZEaXNhYmxlVHVyYm86IFdv cmthcm91bmQgdG8gZGlzYWJsZSB0dXJibyBvbiBCWFQgDQo+ID4gPiBBKiAqLw0KPiA+ID4gLQlp ZiAoSVNfQlJPWFRPTihkZXYpICYmIChJTlRFTF9SRVZJRChkZXYpIDwgDQo+ID4gPiBCWFRfUkVW SURfQjApKQ0KPiA+ID4gKwlpZiAoSVNfQlJPWFRPTihkZXYpICYmIChJTlRFTF9SRVZJRChkZXYp IDw9IA0KPiA+ID4gQlhUX1JFVklEX0ExKSkNCj4gPiA+ICAJCXJldHVybjsNCj4gPiA+ICANCj4g PiA+ICAJV0FSTl9PTighbXV0ZXhfaXNfbG9ja2VkKCZkZXZfcHJpdi0+cnBzLmh3X2xvY2spKTsN Cj4gPiA+IEBAIC00NjcyLDcgKzQ2NzIsNyBAQCBzdGF0aWMgdm9pZCBnZW45X2VuYWJsZV9ycHMo c3RydWN0IA0KPiA+ID4gZHJtX2RldmljZSAqZGV2KQ0KPiA+ID4gIAlnZW42X2luaXRfcnBzX2Zy ZXF1ZW5jaWVzKGRldik7DQo+ID4gPiAgDQo+ID4gPiAgCS8qIFdhR3N2RGlzYWJsZVR1cmJvOiBX b3JrYXJvdW5kIHRvIGRpc2FibGUgdHVyYm8gb24gQlhUIA0KPiA+ID4gQSogKi8NCj4gPiA+IC0J aWYgKElTX0JST1hUT04oZGV2KSAmJiAoSU5URUxfUkVWSUQoZGV2KSA8IA0KPiA+ID4gQlhUX1JF VklEX0IwKSkgew0KPiA+ID4gKwlpZiAoSVNfQlJPWFRPTihkZXYpICYmIChJTlRFTF9SRVZJRChk ZXYpIDw9IA0KPiA+ID4gQlhUX1JFVklEX0ExKSkgew0KPiA+ID4gIAkJaW50ZWxfdW5jb3JlX2Zv cmNld2FrZV9wdXQoZGV2X3ByaXYsIA0KPiA+ID4gRk9SQ0VXQUtFX0FMTCk7DQo+ID4gPiAgCQly ZXR1cm47DQo+ID4gPiAgCX0NCj4gPiA+IEBAIC00NzU4LDcgKzQ3NTgsNyBAQCBzdGF0aWMgdm9p ZCBnZW45X2VuYWJsZV9yYzYoc3RydWN0IA0KPiA+ID4gZHJtX2RldmljZSAqZGV2KQ0KPiA+ID4g IAkgKiAzYjogRW5hYmxlIENvYXJzZSBQb3dlciBHYXRpbmcgb25seSB3aGVuIFJDNiBpcyANCj4g PiA+IGVuYWJsZWQuDQo+ID4gPiAgCSAqIFdhUnNEaXNhYmxlQ29hcnNlUG93ZXJHYXRpbmc6c2ts LGJ4dCAtIFJlbmRlci9NZWRpYSANCj4gPiA+IFBHIG5lZWQgdG8gYmUgZGlzYWJsZWQgd2l0aCBS QzYuDQo+ID4gPiAgCSAqLw0KPiA+ID4gLQlpZiAoKElTX0JST1hUT04oZGV2KSAmJiAoSU5URUxf UkVWSUQoZGV2KSA8IA0KPiA+ID4gQlhUX1JFVklEX0IwKSkgfHwNCj4gPiA+ICsJaWYgKChJU19C Uk9YVE9OKGRldikgJiYgKElOVEVMX1JFVklEKGRldikgPD0gDQo+ID4gPiBCWFRfUkVWSURfQTEp KSB8fA0KPiA+ID4gIAkgICAgKChJU19TS0xfR1QzKGRldikgfHwgSVNfU0tMX0dUNChkZXYpKSAm JiANCj4gPiA+IChJTlRFTF9SRVZJRChkZXYpIDw9IFNLTF9SRVZJRF9FMCkpKQ0KPiA+ID4gIAkJ STkxNV9XUklURShHRU45X1BHX0VOQUJMRSwgMCk7DQo+ID4gPiAgCWVsc2UNCj4gPiA+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMgDQo+ID4gPiBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYw0KPiA+ID4gaW5kZXggYzgy Yzc0Y2FhNzNjLi4zNzUzZTc1MThkNDkgMTAwNjQ0DQo+ID4gPiAtLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMNCj4gPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX3JpbmdidWZmZXIuYw0KPiA+ID4gQEAgLTkxNiwxNCArOTE2LDE0IEBAIHN0YXRp YyBpbnQgZ2VuOV9pbml0X3dvcmthcm91bmRzKHN0cnVjdCANCj4gPiA+IGludGVsX2VuZ2luZV9j cyAqcmluZykNCj4gPiA+ICANCj4gPiA+ICAJaWYgKChJU19TS1lMQUtFKGRldikgJiYgKElOVEVM X1JFVklEKGRldikgPT0gDQo+ID4gPiBTS0xfUkVWSURfQTAgfHwNCj4gPiA+ICAJICAgIElOVEVM X1JFVklEKGRldikgPT0gU0tMX1JFVklEX0IwKSkgfHwNCj4gPiA+IC0JICAgIChJU19CUk9YVE9O KGRldikgJiYgSU5URUxfUkVWSUQoZGV2KSA8IA0KPiA+ID4gQlhUX1JFVklEX0IwKSkgew0KPiA+ ID4gKwkgICAgKElTX0JST1hUT04oZGV2KSAmJiBJTlRFTF9SRVZJRChkZXYpIDw9IA0KPiA+ID4g QlhUX1JFVklEX0ExKSkgew0KPiA+ID4gIAkJLyogDQo+ID4gPiBXYURpc2FibGVEZ01pcnJvckZp eEluSGFsZlNsaWNlQ2hpY2tlbjU6c2tsLGJ4dCAqLw0KPiA+ID4gIAkJV0FfQ0xSX0JJVF9NQVNL RUQoR0VOOV9IQUxGX1NMSUNFX0NISUNLRU41LA0KPiA+ID4gIAkJCQkgIEdFTjlfREdfTUlSUk9S X0ZJWF9FTkFCTEUpOw0KPiA+ID4gIAl9DQo+ID4gPiAgDQo+ID4gPiAgCWlmICgoSVNfU0tZTEFL RShkZXYpICYmIElOVEVMX1JFVklEKGRldikgPD0gDQo+ID4gPiBTS0xfUkVWSURfQjApIHx8DQo+ ID4gPiAtCSAgICAoSVNfQlJPWFRPTihkZXYpICYmIElOVEVMX1JFVklEKGRldikgPCANCj4gPiA+ IEJYVF9SRVZJRF9CMCkpIHsNCj4gPiA+ICsJICAgIChJU19CUk9YVE9OKGRldikgJiYgSU5URUxf UkVWSUQoZGV2KSA8PSANCj4gPiA+IEJYVF9SRVZJRF9BMSkpIHsNCj4gPiA+ICAJCS8qIA0KPiA+ ID4gV2FTZXREaXNhYmxlUGl4TWFza0NhbW1pbmdBbmRSaHdvSW5Db21tb25TbGljZUNoaWNrZW46 c2tsLGJ4dCAqLw0KPiA+ID4gIAkJV0FfU0VUX0JJVF9NQVNLRUQoR0VON19DT01NT05fU0xJQ0Vf Q0hJQ0tFTjEsDQo+ID4gPiAgCQkJCSANCj4gPiA+ICBHRU45X1JIV09fT1BUSU1JWkFUSU9OX0RJ U0FCTEUpOw0KPiA+ID4gQEAgLTk1Miw3ICs5NTIsNyBAQCBzdGF0aWMgaW50IGdlbjlfaW5pdF93 b3JrYXJvdW5kcyhzdHJ1Y3QgDQo+ID4gPiBpbnRlbF9lbmdpbmVfY3MgKnJpbmcpDQo+ID4gPiAg DQo+ID4gPiAgCS8qIFdhRGlzYWJsZU1hc2tCYXNlZENhbW1pbmdJblJDQzpza2wsYnh0ICovDQo+ ID4gPiAgCWlmICgoSVNfU0tZTEFLRShkZXYpICYmIElOVEVMX1JFVklEKGRldikgPT0gDQo+ID4g PiBTS0xfUkVWSURfQzApIHx8DQo+ID4gPiAtCSAgICAoSVNfQlJPWFRPTihkZXYpICYmIElOVEVM X1JFVklEKGRldikgPCANCj4gPiA+IEJYVF9SRVZJRF9CMCkpDQo+ID4gPiArCSAgICAoSVNfQlJP WFRPTihkZXYpICYmIElOVEVMX1JFVklEKGRldikgPD0gDQo+ID4gPiBCWFRfUkVWSURfQTEpKQ0K PiA+ID4gIAkJV0FfU0VUX0JJVF9NQVNLRUQoU0xJQ0VfRUNPX0NISUNLRU4wLA0KPiA+ID4gIAkJ CQkgIFBJWEVMX01BU0tfQ0FNTUlOR19ESVNBQkxFKTsNCj4gPiA+ICANCj4gPiA+IC0tIA0KPiA+ ID4gMi4xLjQNCj4gPiA+IA0KPiA+ID4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18NCj4gPiA+IEludGVsLWdmeCBtYWlsaW5nIGxpc3QNCj4gPiA+IEludGVs LWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcNCj4gPiA+IGh0dHA6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngNCj4gPiANCj4gPiAtLSANCj4gPiBWaWxs ZSBTeXJqw6Rsw6QNCj4gPiBJbnRlbCBPVEMNCj4gCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vaW50ZWwtZ2Z4Cg==