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 22:02:37 +0300 Message-ID: <20151006190237.GB26517@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 mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTP id 1AA9F6E46F for ; Tue, 6 Oct 2015 12:03:28 -0700 (PDT) Content-Disposition: inline In-Reply-To: <87zizw864w.fsf@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, Sarah Sharp , Rodrigo Vivi List-Id: intel-gfx@lists.freedesktop.org T24gVHVlLCBPY3QgMDYsIDIwMTUgYXQgMDQ6NDM6MTFQTSArMDMwMCwgSmFuaSBOaWt1bGEgd3Jv dGU6Cj4gT24gVHVlLCAwNiBPY3QgMjAxNSwgVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxh QGxpbnV4LmludGVsLmNvbT4gd3JvdGU6Cj4gPiBPbiBUdWUsIE9jdCAwNiwgMjAxNSBhdCAwMjo0 MToxNVBNICswMzAwLCBKYW5pIE5pa3VsYSB3cm90ZToKPiA+PiBQcmVmZXIgaW5jbHVzaXZlIHJh bmdlcyBmb3IgcmV2aXNpb24gY2hlY2tzIHJhdGhlciB0aGFuICJiZWxvdyBCMCIuIFBlcgo+ID4+ IHNwZWNzIEEyIGlzIG5vdCB1c2VkLCBzbyByZXZpZCA8PSBBMSBtYXRjaGVzIHJldmlkIDwgQjAu Cj4gPgo+ID4gVGhlIHcvYSBkYiB3b3VsZCBzYXkgVU5USUxfQjAgZXRjLiwgc28gbWlnaHQgYmUg ZWFzaWVyIHRvIGNoZWNrIGFnYWluc3QKPiA+IGl0IGlmIHdlIGtlZXAgdG8gdGhlIHNhbWUgY29u dmVudGlvbi4KPiAKPiBTbyBJIHdhbnRlZCB0byBkb3VibGUgY2hlY2sgd2hhdCB0aGUgY29udmVu dGlvbiBpcy4gSSBwaWNrZWQKPiBXYVJzRGlzYWJsZUNvYXJzZVBvd2VyR2F0aW5nLgo+IAo+IEtC TCAtIFNJV0FfRk9SRVZFUgo+IEJYVCAtIFNJX1dBX0JFRk9SRShCWFRfUkVWX0lEX0IwKQo+IFNL TCAtIFNJV0FfVU5USUxfU0tMX0UwCj4gCj4gRGVzY3JpcHRpb24gIkRpc2FibGUgY29hcnNlIHBv d2VyIGdhdGluZyBmb3IgR1Q0IHVudGlsIEdUIEYwIHN0ZXBwaW5nLiIKPiAKPiAqcm9sbHMgZXll cyoKPiAKPiBTbyBpcyB0aGF0ICJ1bnRpbCIgdGhlcmUgaW5jbHVzaXZlIG9yIG5vbi1pbmNsdXNp dmU/IFRoZSBkYiBpcwo+IGNvbnRyYWRpY3RpbmcgaXRzZWxmLi4uCgpIbW0uIE15IHJlY29sbGVj dGlvbiB3YXMgdGhhdCBpdCdzIGV4Y2x1c2l2ZSwgYnV0IG5vdyB0aGF0IEkgbG9vayBhdAp5b3Vy IGZpbmRpbmdzIGFuZCBzb21lIG90aGVyIHdvcmthcm91bmRzLCBpdCBkb2VzIGxvb2sgYSBiaXQg bW9yZSBsaWtlCmluY2x1c2l2ZS4KCkkgd291bGQgdGhpbmsgdGhlIGV4Y2x1c2l2ZSB0aGluZyB3 b3VsZCBiZSBlYXNpZXIgdG8gbWFpbnRhaW4gc2luY2UKdGhlIGhzZCBzcGVjaWZpZXMgdGhlIHN0 ZXBwaW5nIGluIHdoaWNoIHN0dWZmIGdvdCBmaXhlZCwgYW5kIHRoZQpleGNsdXNpdmUgY29udmVu dGlvbiB3b3VsZCB0aGVuIGhhdmUgdGhlIHNhbWUgc3RlcHBpbmcgbGlzdGVkLiBFZy4gaWYKdGhl IGhzZCBzYXlzIGZpeGVkIGluIEUwLCBidXQgdGhlIHcvYSBkYiBzYXlzIFVOVElMX0QwLCB0aGVu IG9uZSBpcwpsZWZ0IHdvbmRlcmluZyBhYm91dCBEMSsgQnV0IHBlcmhhcHMgc3VjaCBzdGVwcGlu Z3MgZGlkbid0IGV2ZW4gZXhpc3QuCgpXZWxsLCBpbiByZWFsaXR5IGl0J3MgYWxsIG92ZXIgdGhl IHBsYWNlLiBFZy4gbG9va2luZyBhdCB0aGUgQkRXIFVOVElMX0QwCnN0dWZmLCBzb21lIGFyZSBm aXhlZCBpbiBFMCwgc29tZSBhcmUgZml4ZWQgaW4gRDAsIGFuZCBhdCBsZWFzdCBvbmUgd2FzCmZp eGVkIGluIEIwIGFjY29yZGluZyB0byBoc2QuIFNvIEknbSBzdGFydGluZyB0byB0aGluayB0aGF0 IHRoZSBtZWFuaW5nCm9mIHRoZSB0YWcgZGVwZW5kcyBlbnRpcmVseSBvbiB0aGUgcGVyc29uIHdo byBwdXNoZWQgdGhlIGNoYW5nZS4KCj4gQ2M6IFNhcmFoIHdobyBoYXMgYWxzbyBsb29rZWQgYXQg d29ya2Fyb3VuZHMKPiByZWNlbnRseS4KPiAKPiBSb2RyaWdvLCBmb3Igb25lIHRoaW5nLCBJJ2xs IHdhbnQgd29ya2Fyb3VuZHMgZm9yIFNLTCBhbmQgS0JMIGluCj4gZGlmZmVyZW50IGNvbmRpdGlv bnMgaW5zdGVhZCBvZiBjb25mbGF0ZWQgaW50byBTS0whCj4gCj4gQnV0IHdoYXQgYWJvdXQgdGhp cyBub24taW5jbHVzaXZlIGVuZCBvZiByYW5nZT8gSXQnbGwgbWF0dGVyIGluIHBhdGNoCj4gMy8z LiBJdCdzIG5vdCBzbyBtdWNoIGEgcHJvYmxlbSBmb3IgcmFuZ2VzLCBidXQgcmF0aGVyIGZvciBz cGVjaWZpYwo+IHJldmlzaW9ucywgd2hlcmUgeW91J2QgaGF2ZSB0byBpbmNsdWRlIGEgcmV2aXNp b24gbm90IG1lbnRpb25lZCBpbiB0aGUKPiBzcGVjIGF0IGFsbCwgZS5nLiBmb3IgQjAgb25seToK PiAKPiAJSVNfU0tMX1JFVklEKGRldiwgU0tMX1JFVklEX0IwLCBTS0xfUkVWSURfQzApCj4gCj4g aW5zdGVhZCBvZiB0aGUgY3VycmVudCBwcm9wb3NhbDoKPiAKPiAJSVNfU0tMX1JFVklEKGRldiwg U0tMX1JFVklEX0IwLCBTS0xfUkVWSURfQjApCj4gCj4gSSdtIG5vdCByZWFsbHkgZm9uZCBvZiBh ZGRpbmcgc2VwYXJhdGUgbWFjcm9zIGZvciBjaGVja2luZyBzcGVjaWZpYwo+IHZzLiByYW5nZXMu Cj4gCj4gVGhvdWdodHM/Cj4gCj4gQlIsCj4gSmFuaS4KPiAKPiAKPiAKPiAKPiAKPiA+Cj4gPj4g Cj4gPj4gU2lnbmVkLW9mZi1ieTogSmFuaSBOaWt1bGEgPGphbmkubmlrdWxhQGludGVsLmNvbT4K PiA+PiAtLS0KPiA+PiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCAgICAgICAgICAg IHwgMSArCj4gPj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgICAgICAgICAgICB8 IDIgKy0KPiA+PiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9ndWNfc3VibWlzc2lvbi5jIHwg MiArLQo+ID4+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYyAgICAgICAgICAgfCAy ICstCj4gPj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMgICAgICAgICAgICB8IDIg Ky0KPiA+PiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRtaS5jICAgICAgICAgIHwgMiAr LQo+ID4+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYyAgICAgICAgICAgfCA4ICsr KystLS0tCj4gPj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMgICAgICAgICAgICB8 IDYgKysrLS0tCj4gPj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYyAg ICB8IDYgKysrLS0tCj4gPj4gIDkgZmlsZXMgY2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygrKSwgMTUg ZGVsZXRpb25zKC0pCj4gPj4gCj4gPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4gPj4gaW5kZXgg YTNiMTM3NzE1NjA0Li45ODMzYTIwNTU5MzAgMTAwNjQ0Cj4gPj4gLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9kcnYuaAo+ID4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf ZHJ2LmgKPiA+PiBAQCAtMjUwOSw2ICsyNTA5LDcgQEAgc3RydWN0IGRybV9pOTE1X2NtZF90YWJs ZSB7Cj4gPj4gICNkZWZpbmUgU0tMX1JFVklEX0YwCQkweDUKPiA+PiAgCj4gPj4gICNkZWZpbmUg QlhUX1JFVklEX0EwCQkweDAKPiA+PiArI2RlZmluZSBCWFRfUkVWSURfQTEJCTB4MQo+ID4+ICAj ZGVmaW5lIEJYVF9SRVZJRF9CMAkJMHgzCj4gPj4gICNkZWZpbmUgQlhUX1JFVklEX0MwCQkweDkK PiA+PiAgCj4gPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCj4gPj4gaW5kZXggZjBjZmJiOWVlMTJj Li5mZDJkODgwNjU2YjIgMTAwNjQ0Cj4gPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9nZW0uYwo+ID4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKPiA+PiBA QCAtMzc1Nyw3ICszNzU3LDcgQEAgaW50IGk5MTVfZ2VtX3NldF9jYWNoaW5nX2lvY3RsKHN0cnVj dCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCj4gPj4gIAkJICogY2FjaGVsaW5lLCB3aGVy ZWFzIG5vcm1hbGx5IHN1Y2ggY2FjaGVsaW5lcyB3b3VsZCBnZXQKPiA+PiAgCQkgKiBpbnZhbGlk YXRlZC4KPiA+PiAgCQkgKi8KPiA+PiAtCQlpZiAoSVNfQlJPWFRPTihkZXYpICYmIElOVEVMX1JF VklEKGRldikgPCBCWFRfUkVWSURfQjApCj4gPj4gKwkJaWYgKElTX0JST1hUT04oZGV2KSAmJiBJ TlRFTF9SRVZJRChkZXYpIDw9IEJYVF9SRVZJRF9BMSkKPiA+PiAgCQkJcmV0dXJuIC1FTk9ERVY7 Cj4gPj4gIAo+ID4+ICAJCWxldmVsID0gSTkxNV9DQUNIRV9MTEM7Cj4gPj4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ3VjX3N1Ym1pc3Npb24uYyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZ3VjX3N1Ym1pc3Npb24uYwo+ID4+IGluZGV4IDAzNmI0MmJhZTgyNy4u ODYzYWE1YzgyNDY2IDEwMDY0NAo+ID4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf Z3VjX3N1Ym1pc3Npb24uYwo+ID4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ3Vj X3N1Ym1pc3Npb24uYwo+ID4+IEBAIC0xNjEsNyArMTYxLDcgQEAgc3RhdGljIGludCBob3N0Mmd1 Y19zYW1wbGVfZm9yY2V3YWtlKHN0cnVjdCBpbnRlbF9ndWMgKmd1YywKPiA+PiAgCWRhdGFbMF0g PSBIT1NUMkdVQ19BQ1RJT05fU0FNUExFX0ZPUkNFV0FLRTsKPiA+PiAgCS8qIFdhUnNEaXNhYmxl Q29hcnNlUG93ZXJHYXRpbmc6c2tsLGJ4dCAqLwo+ID4+ICAJaWYgKCFpbnRlbF9lbmFibGVfcmM2 KGRldl9wcml2LT5kZXYpIHx8Cj4gPj4gLQkgICAgKElTX0JST1hUT04oZGV2KSAmJiAoSU5URUxf UkVWSUQoZGV2KSA8IEJYVF9SRVZJRF9CMCkpIHx8Cj4gPj4gKwkgICAgKElTX0JST1hUT04oZGV2 KSAmJiAoSU5URUxfUkVWSUQoZGV2KSA8PSBCWFRfUkVWSURfQTEpKSB8fAo+ID4+ICAJICAgIChJ U19TS0xfR1QzKGRldikgJiYgKElOVEVMX1JFVklEKGRldikgPD0gU0tMX1JFVklEX0UwKSkgfHwK PiA+PiAgCSAgICAoSVNfU0tMX0dUNChkZXYpICYmIChJTlRFTF9SRVZJRChkZXYpIDw9IFNLTF9S RVZJRF9FMCkpKQo+ID4+ICAJCWRhdGFbMV0gPSAwOwo+ID4+IGRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rk aS5jCj4gPj4gaW5kZXggYjI1ZTk5YTQzMmZiLi5iODBlMGY1ZWM1ZGMgMTAwNjQ0Cj4gPj4gLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMKPiA+PiArKysgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9kZGkuYwo+ID4+IEBAIC0zMjQ3LDcgKzMyNDcsNyBAQCB2b2lkIGlu dGVsX2RkaV9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGVudW0gcG9ydCBwb3J0KQo+ID4+ ICAJCSAqIE9uIEJYVCBBMC9BMSwgc3cgbmVlZHMgdG8gYWN0aXZhdGUgRERJQSBIUEQgbG9naWMg YW5kCj4gPj4gIAkJICogaW50ZXJydXB0cyB0byBjaGVjayB0aGUgZXh0ZXJuYWwgcGFuZWwgY29u bmVjdGlvbi4KPiA+PiAgCQkgKi8KPiA+PiAtCQlpZiAoSVNfQlJPWFRPTihkZXZfcHJpdikgJiYg KElOVEVMX1JFVklEKGRldikgPCBCWFRfUkVWSURfQjApCj4gPj4gKwkJaWYgKElTX0JST1hUT04o ZGV2X3ByaXYpICYmIChJTlRFTF9SRVZJRChkZXYpIDw9IEJYVF9SRVZJRF9BMSkKPiA+PiAgCQkJ CQkgJiYgcG9ydCA9PSBQT1JUX0IpCj4gPj4gIAkJCWRldl9wcml2LT5ob3RwbHVnLmlycV9wb3J0 W1BPUlRfQV0gPSBpbnRlbF9kaWdfcG9ydDsKPiA+PiAgCQllbHNlCj4gPj4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kcC5jCj4gPj4gaW5kZXggOGQzNGNhN2IyODdhLi44YmFmNmZlMDYzMTMgMTAwNjQ0Cj4g Pj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYwo+ID4+ICsrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMKPiA+PiBAQCAtNjA4Nyw3ICs2MDg3LDcgQEAgaW50 ZWxfZHBfaW5pdF9jb25uZWN0b3Ioc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqaW50ZWxfZGln X3BvcnQsCj4gPj4gIAkJYnJlYWs7Cj4gPj4gIAljYXNlIFBPUlRfQjoKPiA+PiAgCQlpbnRlbF9l bmNvZGVyLT5ocGRfcGluID0gSFBEX1BPUlRfQjsKPiA+PiAtCQlpZiAoSVNfQlJPWFRPTihkZXZf cHJpdikgJiYgKElOVEVMX1JFVklEKGRldikgPCBCWFRfUkVWSURfQjApKQo+ID4+ICsJCWlmIChJ U19CUk9YVE9OKGRldl9wcml2KSAmJiAoSU5URUxfUkVWSUQoZGV2KSA8PSBCWFRfUkVWSURfQTEp KQo+ID4+ICAJCQlpbnRlbF9lbmNvZGVyLT5ocGRfcGluID0gSFBEX1BPUlRfQTsKPiA+PiAgCQli cmVhazsKPiA+PiAgCWNhc2UgUE9SVF9DOgo+ID4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9oZG1pLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMK PiA+PiBpbmRleCAwM2Q4NTkwOWM2YWIuLjMyZTkxMTdlZThlMyAxMDA2NDQKPiA+PiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMKPiA+PiArKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9oZG1pLmMKPiA+PiBAQCAtMjA2OCw3ICsyMDY4LDcgQEAgdm9pZCBpbnRl bF9oZG1pX2luaXRfY29ubmVjdG9yKHN0cnVjdCBpbnRlbF9kaWdpdGFsX3BvcnQgKmludGVsX2Rp Z19wb3J0LAo+ID4+ICAJCSAqIE9uIEJYVCBBMC9BMSwgc3cgbmVlZHMgdG8gYWN0aXZhdGUgRERJ QSBIUEQgbG9naWMgYW5kCj4gPj4gIAkJICogaW50ZXJydXB0cyB0byBjaGVjayB0aGUgZXh0ZXJu YWwgcGFuZWwgY29ubmVjdGlvbi4KPiA+PiAgCQkgKi8KPiA+PiAtCQlpZiAoSVNfQlJPWFRPTihk ZXZfcHJpdikgJiYgKElOVEVMX1JFVklEKGRldikgPCBCWFRfUkVWSURfQjApKQo+ID4+ICsJCWlm IChJU19CUk9YVE9OKGRldl9wcml2KSAmJiAoSU5URUxfUkVWSUQoZGV2KSA8PSBCWFRfUkVWSURf QTEpKQo+ID4+ICAJCQlpbnRlbF9lbmNvZGVyLT5ocGRfcGluID0gSFBEX1BPUlRfQTsKPiA+PiAg CQllbHNlCj4gPj4gIAkJCWludGVsX2VuY29kZXItPmhwZF9waW4gPSBIUERfUE9SVF9COwo+ID4+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2xyYy5jCj4gPj4gaW5kZXggODI1ZmE3YThkZjg2Li5hY2Q0ZmEz MzJhODAgMTAwNjQ0Cj4gPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMK PiA+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYwo+ID4+IEBAIC0xOTg2 LDcgKzE5ODYsNyBAQCBzdGF0aWMgaW50IGxvZ2ljYWxfcmVuZGVyX3JpbmdfaW5pdChzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2KQo+ID4+ICAJCXJpbmctPmluaXRfaHcgPSBnZW44X2luaXRfcmVuZGVy X3Jpbmc7Cj4gPj4gIAlyaW5nLT5pbml0X2NvbnRleHQgPSBnZW44X2luaXRfcmNzX2NvbnRleHQ7 Cj4gPj4gIAlyaW5nLT5jbGVhbnVwID0gaW50ZWxfZmluaV9waXBlX2NvbnRyb2w7Cj4gPj4gLQlp ZiAoSVNfQlJPWFRPTihkZXYpICYmIElOVEVMX1JFVklEKGRldikgPCBCWFRfUkVWSURfQjApIHsK PiA+PiArCWlmIChJU19CUk9YVE9OKGRldikgJiYgSU5URUxfUkVWSUQoZGV2KSA8PSBCWFRfUkVW SURfQTEpIHsKPiA+PiAgCQlyaW5nLT5nZXRfc2Vxbm8gPSBieHRfYV9nZXRfc2Vxbm87Cj4gPj4g IAkJcmluZy0+c2V0X3NlcW5vID0gYnh0X2Ffc2V0X3NlcW5vOwo+ID4+ICAJfSBlbHNlIHsKPiA+ PiBAQCAtMjAzOCw3ICsyMDM4LDcgQEAgc3RhdGljIGludCBsb2dpY2FsX2JzZF9yaW5nX2luaXQo c3RydWN0IGRybV9kZXZpY2UgKmRldikKPiA+PiAgCQlHVF9DT05URVhUX1NXSVRDSF9JTlRFUlJV UFQgPDwgR0VOOF9WQ1MxX0lSUV9TSElGVDsKPiA+PiAgCj4gPj4gIAlyaW5nLT5pbml0X2h3ID0g Z2VuOF9pbml0X2NvbW1vbl9yaW5nOwo+ID4+IC0JaWYgKElTX0JST1hUT04oZGV2KSAmJiBJTlRF TF9SRVZJRChkZXYpIDwgQlhUX1JFVklEX0IwKSB7Cj4gPj4gKwlpZiAoSVNfQlJPWFRPTihkZXYp ICYmIElOVEVMX1JFVklEKGRldikgPD0gQlhUX1JFVklEX0ExKSB7Cj4gPj4gIAkJcmluZy0+Z2V0 X3NlcW5vID0gYnh0X2FfZ2V0X3NlcW5vOwo+ID4+ICAJCXJpbmctPnNldF9zZXFubyA9IGJ4dF9h X3NldF9zZXFubzsKPiA+PiAgCX0gZWxzZSB7Cj4gPj4gQEAgLTIwOTMsNyArMjA5Myw3IEBAIHN0 YXRpYyBpbnQgbG9naWNhbF9ibHRfcmluZ19pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4g Pj4gIAkJR1RfQ09OVEVYVF9TV0lUQ0hfSU5URVJSVVBUIDw8IEdFTjhfQkNTX0lSUV9TSElGVDsK PiA+PiAgCj4gPj4gIAlyaW5nLT5pbml0X2h3ID0gZ2VuOF9pbml0X2NvbW1vbl9yaW5nOwo+ID4+ IC0JaWYgKElTX0JST1hUT04oZGV2KSAmJiBJTlRFTF9SRVZJRChkZXYpIDwgQlhUX1JFVklEX0Iw KSB7Cj4gPj4gKwlpZiAoSVNfQlJPWFRPTihkZXYpICYmIElOVEVMX1JFVklEKGRldikgPD0gQlhU X1JFVklEX0ExKSB7Cj4gPj4gIAkJcmluZy0+Z2V0X3NlcW5vID0gYnh0X2FfZ2V0X3NlcW5vOwo+ ID4+ICAJCXJpbmctPnNldF9zZXFubyA9IGJ4dF9hX3NldF9zZXFubzsKPiA+PiAgCX0gZWxzZSB7 Cj4gPj4gQEAgLTIxMjMsNyArMjEyMyw3IEBAIHN0YXRpYyBpbnQgbG9naWNhbF92ZWJveF9yaW5n X2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiA+PiAgCQlHVF9DT05URVhUX1NXSVRDSF9J TlRFUlJVUFQgPDwgR0VOOF9WRUNTX0lSUV9TSElGVDsKPiA+PiAgCj4gPj4gIAlyaW5nLT5pbml0 X2h3ID0gZ2VuOF9pbml0X2NvbW1vbl9yaW5nOwo+ID4+IC0JaWYgKElTX0JST1hUT04oZGV2KSAm JiBJTlRFTF9SRVZJRChkZXYpIDwgQlhUX1JFVklEX0IwKSB7Cj4gPj4gKwlpZiAoSVNfQlJPWFRP TihkZXYpICYmIElOVEVMX1JFVklEKGRldikgPD0gQlhUX1JFVklEX0ExKSB7Cj4gPj4gIAkJcmlu Zy0+Z2V0X3NlcW5vID0gYnh0X2FfZ2V0X3NlcW5vOwo+ID4+ICAJCXJpbmctPnNldF9zZXFubyA9 IGJ4dF9hX3NldF9zZXFubzsKPiA+PiAgCX0gZWxzZSB7Cj4gPj4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9w bS5jCj4gPj4gaW5kZXggNjBkMTIwYzQ3MmFiLi5lMjU3OTFlODc0OGYgMTAwNjQ0Cj4gPj4gLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYwo+ID4+ICsrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX3BtLmMKPiA+PiBAQCAtNDM0OCw3ICs0MzQ4LDcgQEAgc3RhdGljIHZv aWQgZ2VuNl9zZXRfcnBzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHU4IHZhbCkKPiA+PiAgCXN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7Cj4gPj4g IAo+ID4+ICAJLyogV2FHc3ZEaXNhYmxlVHVyYm86IFdvcmthcm91bmQgdG8gZGlzYWJsZSB0dXJi byBvbiBCWFQgQSogKi8KPiA+PiAtCWlmIChJU19CUk9YVE9OKGRldikgJiYgKElOVEVMX1JFVklE KGRldikgPCBCWFRfUkVWSURfQjApKQo+ID4+ICsJaWYgKElTX0JST1hUT04oZGV2KSAmJiAoSU5U RUxfUkVWSUQoZGV2KSA8PSBCWFRfUkVWSURfQTEpKQo+ID4+ICAJCXJldHVybjsKPiA+PiAgCj4g Pj4gIAlXQVJOX09OKCFtdXRleF9pc19sb2NrZWQoJmRldl9wcml2LT5ycHMuaHdfbG9jaykpOwo+ ID4+IEBAIC00NjcyLDcgKzQ2NzIsNyBAQCBzdGF0aWMgdm9pZCBnZW45X2VuYWJsZV9ycHMoc3Ry dWN0IGRybV9kZXZpY2UgKmRldikKPiA+PiAgCWdlbjZfaW5pdF9ycHNfZnJlcXVlbmNpZXMoZGV2 KTsKPiA+PiAgCj4gPj4gIAkvKiBXYUdzdkRpc2FibGVUdXJibzogV29ya2Fyb3VuZCB0byBkaXNh YmxlIHR1cmJvIG9uIEJYVCBBKiAqLwo+ID4+IC0JaWYgKElTX0JST1hUT04oZGV2KSAmJiAoSU5U RUxfUkVWSUQoZGV2KSA8IEJYVF9SRVZJRF9CMCkpIHsKPiA+PiArCWlmIChJU19CUk9YVE9OKGRl dikgJiYgKElOVEVMX1JFVklEKGRldikgPD0gQlhUX1JFVklEX0ExKSkgewo+ID4+ICAJCWludGVs X3VuY29yZV9mb3JjZXdha2VfcHV0KGRldl9wcml2LCBGT1JDRVdBS0VfQUxMKTsKPiA+PiAgCQly ZXR1cm47Cj4gPj4gIAl9Cj4gPj4gQEAgLTQ3NTgsNyArNDc1OCw3IEBAIHN0YXRpYyB2b2lkIGdl bjlfZW5hYmxlX3JjNihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ID4+ICAJICogM2I6IEVuYWJs ZSBDb2Fyc2UgUG93ZXIgR2F0aW5nIG9ubHkgd2hlbiBSQzYgaXMgZW5hYmxlZC4KPiA+PiAgCSAq IFdhUnNEaXNhYmxlQ29hcnNlUG93ZXJHYXRpbmc6c2tsLGJ4dCAtIFJlbmRlci9NZWRpYSBQRyBu ZWVkIHRvIGJlIGRpc2FibGVkIHdpdGggUkM2Lgo+ID4+ICAJICovCj4gPj4gLQlpZiAoKElTX0JS T1hUT04oZGV2KSAmJiAoSU5URUxfUkVWSUQoZGV2KSA8IEJYVF9SRVZJRF9CMCkpIHx8Cj4gPj4g KwlpZiAoKElTX0JST1hUT04oZGV2KSAmJiAoSU5URUxfUkVWSUQoZGV2KSA8PSBCWFRfUkVWSURf QTEpKSB8fAo+ID4+ICAJICAgICgoSVNfU0tMX0dUMyhkZXYpIHx8IElTX1NLTF9HVDQoZGV2KSkg JiYgKElOVEVMX1JFVklEKGRldikgPD0gU0tMX1JFVklEX0UwKSkpCj4gPj4gIAkJSTkxNV9XUklU RShHRU45X1BHX0VOQUJMRSwgMCk7Cj4gPj4gIAllbHNlCj4gPj4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX3JpbmdidWZmZXIuYwo+ID4+IGluZGV4IGM4MmM3NGNhYTczYy4uMzc1M2U3NTE4ZDQ5 IDEwMDY0NAo+ID4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIu Ywo+ID4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYwo+ID4+ IEBAIC05MTYsMTQgKzkxNiwxNCBAQCBzdGF0aWMgaW50IGdlbjlfaW5pdF93b3JrYXJvdW5kcyhz dHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nKQo+ID4+ICAKPiA+PiAgCWlmICgoSVNfU0tZTEFL RShkZXYpICYmIChJTlRFTF9SRVZJRChkZXYpID09IFNLTF9SRVZJRF9BMCB8fAo+ID4+ICAJICAg IElOVEVMX1JFVklEKGRldikgPT0gU0tMX1JFVklEX0IwKSkgfHwKPiA+PiAtCSAgICAoSVNfQlJP WFRPTihkZXYpICYmIElOVEVMX1JFVklEKGRldikgPCBCWFRfUkVWSURfQjApKSB7Cj4gPj4gKwkg ICAgKElTX0JST1hUT04oZGV2KSAmJiBJTlRFTF9SRVZJRChkZXYpIDw9IEJYVF9SRVZJRF9BMSkp IHsKPiA+PiAgCQkvKiBXYURpc2FibGVEZ01pcnJvckZpeEluSGFsZlNsaWNlQ2hpY2tlbjU6c2ts LGJ4dCAqLwo+ID4+ICAJCVdBX0NMUl9CSVRfTUFTS0VEKEdFTjlfSEFMRl9TTElDRV9DSElDS0VO NSwKPiA+PiAgCQkJCSAgR0VOOV9ER19NSVJST1JfRklYX0VOQUJMRSk7Cj4gPj4gIAl9Cj4gPj4g IAo+ID4+ICAJaWYgKChJU19TS1lMQUtFKGRldikgJiYgSU5URUxfUkVWSUQoZGV2KSA8PSBTS0xf UkVWSURfQjApIHx8Cj4gPj4gLQkgICAgKElTX0JST1hUT04oZGV2KSAmJiBJTlRFTF9SRVZJRChk ZXYpIDwgQlhUX1JFVklEX0IwKSkgewo+ID4+ICsJICAgIChJU19CUk9YVE9OKGRldikgJiYgSU5U RUxfUkVWSUQoZGV2KSA8PSBCWFRfUkVWSURfQTEpKSB7Cj4gPj4gIAkJLyogV2FTZXREaXNhYmxl UGl4TWFza0NhbW1pbmdBbmRSaHdvSW5Db21tb25TbGljZUNoaWNrZW46c2tsLGJ4dCAqLwo+ID4+ ICAJCVdBX1NFVF9CSVRfTUFTS0VEKEdFTjdfQ09NTU9OX1NMSUNFX0NISUNLRU4xLAo+ID4+ICAJ CQkJICBHRU45X1JIV09fT1BUSU1JWkFUSU9OX0RJU0FCTEUpOwo+ID4+IEBAIC05NTIsNyArOTUy LDcgQEAgc3RhdGljIGludCBnZW45X2luaXRfd29ya2Fyb3VuZHMoc3RydWN0IGludGVsX2VuZ2lu ZV9jcyAqcmluZykKPiA+PiAgCj4gPj4gIAkvKiBXYURpc2FibGVNYXNrQmFzZWRDYW1taW5nSW5S Q0M6c2tsLGJ4dCAqLwo+ID4+ICAJaWYgKChJU19TS1lMQUtFKGRldikgJiYgSU5URUxfUkVWSUQo ZGV2KSA9PSBTS0xfUkVWSURfQzApIHx8Cj4gPj4gLQkgICAgKElTX0JST1hUT04oZGV2KSAmJiBJ TlRFTF9SRVZJRChkZXYpIDwgQlhUX1JFVklEX0IwKSkKPiA+PiArCSAgICAoSVNfQlJPWFRPTihk ZXYpICYmIElOVEVMX1JFVklEKGRldikgPD0gQlhUX1JFVklEX0ExKSkKPiA+PiAgCQlXQV9TRVRf QklUX01BU0tFRChTTElDRV9FQ09fQ0hJQ0tFTjAsCj4gPj4gIAkJCQkgIFBJWEVMX01BU0tfQ0FN TUlOR19ESVNBQkxFKTsKPiA+PiAgCj4gPj4gLS0gCj4gPj4gMi4xLjQKPiA+PiAKPiA+PiBfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+ID4+IEludGVsLWdm eCBtYWlsaW5nIGxpc3QKPiA+PiBJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4gPj4g aHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo+ ID4KPiA+IC0tIAo+ID4gVmlsbGUgU3lyasOkbMOkCj4gPiBJbnRlbCBPVEMKPiAKPiAtLSAKPiBK YW5pIE5pa3VsYSwgSW50ZWwgT3BlbiBTb3VyY2UgVGVjaG5vbG9neSBDZW50ZXIKCi0tIApWaWxs ZSBTeXJqw6Rsw6QKSW50ZWwgT1RDCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8v aW50ZWwtZ2Z4Cg==