From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 5/5] drm/i915: Always use 9 bits of the LPC bridge device ID for PCH detection Date: Tue, 20 Jun 2017 17:52:35 +0300 Message-ID: <20170620145235.GT12629@intel.com> References: <20170620130310.13245-1-ville.syrjala@linux.intel.com> <20170620130310.13245-6-ville.syrjala@linux.intel.com> <87o9tihgn1.fsf@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by gabe.freedesktop.org (Postfix) with ESMTPS id 6CF696E364 for ; Tue, 20 Jun 2017 14:52:39 +0000 (UTC) Content-Disposition: inline In-Reply-To: <87o9tihgn1.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, Dhinakaran Pandiyan , Rodrigo Vivi List-Id: intel-gfx@lists.freedesktop.org T24gVHVlLCBKdW4gMjAsIDIwMTcgYXQgMDU6MzQ6NDJQTSArMDMwMCwgSmFuaSBOaWt1bGEgd3Jv dGU6Cj4gT24gVHVlLCAyMCBKdW4gMjAxNywgdmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20g d3JvdGU6Cj4gPiBGcm9tOiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50 ZWwuY29tPgo+ID4KPiA+IE1ha2UgdGhlIGNvZGUgbGVzcyBjb25mdXNpb25nIGJ5IGFsd2F5cyB1 c2luZyB0aGUgdG9wIDkgYml0cyBvZiB0aGUKPiA+IExQQyBicmlkZ2UgZGV2aWNlIElEIHRvIGRl dGVjdCB0aGUgUENIIHR5cGUuIFdlIG5lZWQgdG8gYWRkIGEgYml0IG9mCj4gPiBuZXcgY29kZSBm b3IgV1BULCBhbmQgd2UgbmVlZCB0byBhZGp1c3QgdGhlIEtCUCBJRCBhcyB3ZWxsLiBBbGwgdGhl Cj4gPiBvdGhlciBwcmUtQ05QIElEcyBhcmUgZmluZSBhcyBpcy4KPiAKPiBTZWVtcyB0byBtZSB0 aGlzIGZpeGVzIGEgKHRoZW9yZXRpY2FsPykgYnVnIHdpdGggS0JQIG1hdGNoaW5nIHNvbWUKPiBM ZXdpc2J1cmcgcGFydHMgKGEyeHgpLgoKSSBwcmVzdW1lIHRob3NlIHRoaW5ncyB3b3VsZG4ndCBo YXZlIGEgR1BVIGFueXdheSwgc28gY2FuJ3QgaGFwcGVuIEkKc3VwcG9zZS4KCj4gCj4gPiBUaGUg Q05QIElEIEkgZ3Vlc3NlZCBiYXNlZCBvbiB0aGUgS0JQICsgQ05QIExQIElEcy4gQnV0IHNvbWVv bmUgZWxzZQo+ID4gc2hvdWxkIHJlYWxseSB2ZXJpZnkgdGhpcy4KPiAKPiBTb3JyeSwgY291bGRu J3QgZmluZCBkZWZpbml0ZSBpbmZvIG9uIHRoaXMuCj4gCj4gPiBUaGUgdmlydHVhbGl6YXRpb24g Y2FzZXMgSSB0aGluayBhcmUgZmluZS4gVGhlc2UgUDJYIGFuZCBQM1ggSURzCj4gPiBhY3R1YWxs eSBqdXN0IGxvb2sgbGlrZSB0aGUgb2xkIFBJSVg0IGFuZCBQSUlYMyBJRHMgdG8gbWUuIE5vdCBz dXJlCj4gPiB3aHkgdGhleSdyZSBub3QgY2FsbGVkIFBJSVgzLzQgdGhvdWdoLiBUaGUgcWVtdSBv bmUgaGFzIGEgY29tbWVudAo+ID4gc2F5aW5nIHRoZSBmdWxsIElEIGlzIDB4MjkxOCB3aGljaCBp cyBmaW5lIHdpdGggOSBiaXRzLgo+IAo+IE5vciB0aGlzLiBUaGlzIHN0YXJ0cyBpZ25vcmluZyBz b21lIDcxeHggZGV2aWNlIGlkcywgYnV0IEknbSBndWVzc2luZwo+IHRoZXkncmUgbm90IHJlbGV2 YW50LgoKVGhlIDQ0ME1YIEkgZ3Vlc3MuIE5vdCBzdXJlIHdoeSBhbnkgdmlydHVhbCBtYWNoaW5l IHdvdWxkIHByZXNlbnQKdGhlIG1vYmlsZSB2YXJpYW50IHJhdGhlciB0aGFuIHRoZSBkZXNrdG9w IDQ0MEJYLiBTbyBJIHdvdWxkbid0CndvcnJ5IGFib3V0IGl0LCBhbmQgaWYgaXQgdHVybnMgb3V0 IHRoYXQgSSdtIHdyb25nIHdlIGNhbiBhbHdheXMKYWRkIHRoZSBleHRyYSBJRC4KCj4gCj4gTm90 IGFzIHN0cm9uZyBjb25maWRlbmNlIGFzIEknZCBsaWtlLCBidXQKPiAKPiBSZXZpZXdlZC1ieTog SmFuaSBOaWt1bGEgPGphbmkubmlrdWxhQGludGVsLmNvbT4KPiAKPiAKPiBQUy4gSSB0aG91Z2h0 IGFib3V0IHN3aXRjaGluZyB0aGlzIHRvIGFycmF5IGJhc2VkIG1hdGNoaW5nLiBJdCBjb3VsZAo+ IGRlZmluZSB0aGUgbWFzayBmb3IgZWFjaCBpZCB0byBiZSBtYXRjaGVkLCBzbyB5b3UgY291bGQg ZS5nLiBhZGQgcWVtdSBhcwo+IDB4MjkxOC4gQW5kIHlvdSBjb3VsZCBoYXZlIHRoZSBkZWJ1ZyBz dHJpbmdzIHRoZXJlIHRvby4gQnV0IEkgY291bGRuJ3QKPiB0aGluayBvZiBhIG5lYXQgd2F5IHRv IGRvIHRoZSBwbGF0Zm9ybS9wY2ggY3Jvc3MgY2hlY2tzIChjYWxsYmFja3MgZG9uJ3QKPiBjb3Vu dCBhcyBuZWF0KS4gU28gSSBndWVzcyB0aGlzIGlzIGdvb2QgZW5vdWdoIGZvciBub3cuCgpNeSBi cmFpbiB3ZW50IHRocm91Z2ggdGhlIHNhbWUgZXhlcmNpc2UsIGFuZCBjYW1lIHVwIHdpdGggdGhl IHNhbWUKcmVzdWx0IHVuZm9ydHVuYXRlbHkuCgo+IAo+IAo+ID4KPiA+IFNpZ25lZC1vZmYtYnk6 IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+Cj4gPiAtLS0K PiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jIHwgMzUgKysrKysrKysrKysrKysr KysrKystLS0tLS0tLS0tLS0tLS0KPiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5o IHwgMTUgKysrKysrKysrLS0tLS0tCj4gPiAgMiBmaWxlcyBjaGFuZ2VkLCAyOSBpbnNlcnRpb25z KCspLCAyMSBkZWxldGlvbnMoLSkKPiA+Cj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kcnYuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMKPiA+IGlu ZGV4IDE2ODFiZThkMjFmNi4uYmZiMzkwNDdmNWUxIDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9kcnYuYwo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9kcnYuYwo+ID4gQEAgLTE3MywyOSArMTczLDI1IEBAIHN0YXRpYyB2b2lkIGludGVsX2RldGVj dF9wY2goc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ID4gIAl3aGlsZSAoKHBj aCA9IHBjaV9nZXRfY2xhc3MoUENJX0NMQVNTX0JSSURHRV9JU0EgPDwgOCwgcGNoKSkpIHsKPiA+ ICAJCWlmIChwY2gtPnZlbmRvciA9PSBQQ0lfVkVORE9SX0lEX0lOVEVMKSB7Cj4gCj4gU29tZW9u ZSBzaG91bGQgc3dpdGNoIHRoaXMgdG8gImlmICh2ZW5kb3IgIT0gaW50ZWwpIGNvbnRpbnVlIiB3 aGVuIHRoZQo+IGR1c3QgaGFzIHNldHRsZWQsIGFuZCBmcmVlIHVwIHNvbWUgaG9yaXpvbnRhbCBz Y3JlZW4gcmVhbCBlc3RhdGUuCj4gCj4gPiAgCQkJdW5zaWduZWQgc2hvcnQgaWQgPSBwY2gtPmRl dmljZSAmIElOVEVMX1BDSF9ERVZJQ0VfSURfTUFTSzsKPiA+IC0JCQl1bnNpZ25lZCBzaG9ydCBp ZF9leHQgPSBwY2gtPmRldmljZSAmCj4gPiAtCQkJCUlOVEVMX1BDSF9ERVZJQ0VfSURfTUFTS19F WFQ7Cj4gPiArCj4gPiArCQkJZGV2X3ByaXYtPnBjaF9pZCA9IGlkOwo+ID4gIAo+ID4gIAkJCWlm IChpZCA9PSBJTlRFTF9QQ0hfSUJYX0RFVklDRV9JRF9UWVBFKSB7Cj4gPiAtCQkJCWRldl9wcml2 LT5wY2hfaWQgPSBpZDsKPiA+ICAJCQkJZGV2X3ByaXYtPnBjaF90eXBlID0gUENIX0lCWDsKPiA+ ICAJCQkJRFJNX0RFQlVHX0tNUygiRm91bmQgSWJleCBQZWFrIFBDSFxuIik7Cj4gPiAgCQkJCVdB Uk5fT04oIUlTX0dFTjUoZGV2X3ByaXYpKTsKPiA+ICAJCQl9IGVsc2UgaWYgKGlkID09IElOVEVM X1BDSF9DUFRfREVWSUNFX0lEX1RZUEUpIHsKPiA+IC0JCQkJZGV2X3ByaXYtPnBjaF9pZCA9IGlk Owo+ID4gIAkJCQlkZXZfcHJpdi0+cGNoX3R5cGUgPSBQQ0hfQ1BUOwo+ID4gIAkJCQlEUk1fREVC VUdfS01TKCJGb3VuZCBDb3VnYXJQb2ludCBQQ0hcbiIpOwo+ID4gIAkJCQlXQVJOX09OKCFJU19H RU42KGRldl9wcml2KSAmJgo+ID4gIAkJCQkJIUlTX0lWWUJSSURHRShkZXZfcHJpdikpOwo+ID4g IAkJCX0gZWxzZSBpZiAoaWQgPT0gSU5URUxfUENIX1BQVF9ERVZJQ0VfSURfVFlQRSkgewo+ID4g IAkJCQkvKiBQYW50aGVyUG9pbnQgaXMgQ1BUIGNvbXBhdGlibGUgKi8KPiA+IC0JCQkJZGV2X3By aXYtPnBjaF9pZCA9IGlkOwo+ID4gIAkJCQlkZXZfcHJpdi0+cGNoX3R5cGUgPSBQQ0hfQ1BUOwo+ ID4gIAkJCQlEUk1fREVCVUdfS01TKCJGb3VuZCBQYW50aGVyUG9pbnQgUENIXG4iKTsKPiA+ICAJ CQkJV0FSTl9PTighSVNfR0VONihkZXZfcHJpdikgJiYKPiA+ICAJCQkJCSFJU19JVllCUklER0Uo ZGV2X3ByaXYpKTsKPiA+ICAJCQl9IGVsc2UgaWYgKGlkID09IElOVEVMX1BDSF9MUFRfREVWSUNF X0lEX1RZUEUpIHsKPiA+IC0JCQkJZGV2X3ByaXYtPnBjaF9pZCA9IGlkOwo+ID4gIAkJCQlkZXZf cHJpdi0+cGNoX3R5cGUgPSBQQ0hfTFBUOwo+ID4gIAkJCQlEUk1fREVCVUdfS01TKCJGb3VuZCBM eW54UG9pbnQgUENIXG4iKTsKPiA+ICAJCQkJV0FSTl9PTighSVNfSEFTV0VMTChkZXZfcHJpdikg JiYKPiA+IEBAIC0yMDMsMzkgKzE5OSw0OSBAQCBzdGF0aWMgdm9pZCBpbnRlbF9kZXRlY3RfcGNo KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKPiA+ICAJCQkJV0FSTl9PTihJU19I U1dfVUxUKGRldl9wcml2KSB8fAo+ID4gIAkJCQkJSVNfQkRXX1VMVChkZXZfcHJpdikpOwo+ID4g IAkJCX0gZWxzZSBpZiAoaWQgPT0gSU5URUxfUENIX0xQVF9MUF9ERVZJQ0VfSURfVFlQRSkgewo+ ID4gLQkJCQlkZXZfcHJpdi0+cGNoX2lkID0gaWQ7Cj4gPiAgCQkJCWRldl9wcml2LT5wY2hfdHlw ZSA9IFBDSF9MUFQ7Cj4gPiAgCQkJCURSTV9ERUJVR19LTVMoIkZvdW5kIEx5bnhQb2ludCBMUCBQ Q0hcbiIpOwo+ID4gIAkJCQlXQVJOX09OKCFJU19IQVNXRUxMKGRldl9wcml2KSAmJgo+ID4gIAkJ CQkJIUlTX0JST0FEV0VMTChkZXZfcHJpdikpOwo+ID4gIAkJCQlXQVJOX09OKCFJU19IU1dfVUxU KGRldl9wcml2KSAmJgo+ID4gIAkJCQkJIUlTX0JEV19VTFQoZGV2X3ByaXYpKTsKPiA+ICsJCQl9 IGVsc2UgaWYgKGlkID09IElOVEVMX1BDSF9XUFRfREVWSUNFX0lEX1RZUEUpIHsKPiA+ICsJCQkJ LyogV2lsZGNhdFBvaW50IGlzIExQVCBjb21wYXRpYmxlICovCj4gPiArCQkJCWRldl9wcml2LT5w Y2hfdHlwZSA9IFBDSF9MUFQ7Cj4gPiArCQkJCURSTV9ERUJVR19LTVMoIkZvdW5kIFdpbGRjYXRQ b2ludCBQQ0hcbiIpOwo+ID4gKwkJCQlXQVJOX09OKCFJU19IQVNXRUxMKGRldl9wcml2KSAmJgo+ ID4gKwkJCQkJIUlTX0JST0FEV0VMTChkZXZfcHJpdikpOwo+ID4gKwkJCQlXQVJOX09OKElTX0hT V19VTFQoZGV2X3ByaXYpIHx8Cj4gPiArCQkJCQlJU19CRFdfVUxUKGRldl9wcml2KSk7Cj4gPiAr CQkJfSBlbHNlIGlmIChpZCA9PSBJTlRFTF9QQ0hfV1BUX0xQX0RFVklDRV9JRF9UWVBFKSB7Cj4g PiArCQkJCS8qIFdpbGRjYXRQb2ludCBpcyBMUFQgY29tcGF0aWJsZSAqLwo+ID4gKwkJCQlkZXZf cHJpdi0+cGNoX3R5cGUgPSBQQ0hfTFBUOwo+ID4gKwkJCQlEUk1fREVCVUdfS01TKCJGb3VuZCBX aWxkY2F0UG9pbnQgTFAgUENIXG4iKTsKPiA+ICsJCQkJV0FSTl9PTighSVNfSEFTV0VMTChkZXZf cHJpdikgJiYKPiA+ICsJCQkJCSFJU19CUk9BRFdFTEwoZGV2X3ByaXYpKTsKPiA+ICsJCQkJV0FS Tl9PTighSVNfSFNXX1VMVChkZXZfcHJpdikgJiYKPiA+ICsJCQkJCSFJU19CRFdfVUxUKGRldl9w cml2KSk7Cj4gPiAgCQkJfSBlbHNlIGlmIChpZCA9PSBJTlRFTF9QQ0hfU1BUX0RFVklDRV9JRF9U WVBFKSB7Cj4gPiAtCQkJCWRldl9wcml2LT5wY2hfaWQgPSBpZDsKPiA+ICAJCQkJZGV2X3ByaXYt PnBjaF90eXBlID0gUENIX1NQVDsKPiA+ICAJCQkJRFJNX0RFQlVHX0tNUygiRm91bmQgU3Vucmlz ZVBvaW50IFBDSFxuIik7Cj4gPiAgCQkJCVdBUk5fT04oIUlTX1NLWUxBS0UoZGV2X3ByaXYpICYm Cj4gPiAgCQkJCQkhSVNfS0FCWUxBS0UoZGV2X3ByaXYpKTsKPiA+IC0JCQl9IGVsc2UgaWYgKGlk X2V4dCA9PSBJTlRFTF9QQ0hfU1BUX0xQX0RFVklDRV9JRF9UWVBFKSB7Cj4gPiAtCQkJCWRldl9w cml2LT5wY2hfaWQgPSBpZF9leHQ7Cj4gPiArCQkJfSBlbHNlIGlmIChpZCA9PSBJTlRFTF9QQ0hf U1BUX0xQX0RFVklDRV9JRF9UWVBFKSB7Cj4gPiAgCQkJCWRldl9wcml2LT5wY2hfdHlwZSA9IFBD SF9TUFQ7Cj4gPiAgCQkJCURSTV9ERUJVR19LTVMoIkZvdW5kIFN1bnJpc2VQb2ludCBMUCBQQ0hc biIpOwo+ID4gIAkJCQlXQVJOX09OKCFJU19TS1lMQUtFKGRldl9wcml2KSAmJgo+ID4gIAkJCQkJ IUlTX0tBQllMQUtFKGRldl9wcml2KSk7Cj4gPiAgCQkJfSBlbHNlIGlmIChpZCA9PSBJTlRFTF9Q Q0hfS0JQX0RFVklDRV9JRF9UWVBFKSB7Cj4gPiAtCQkJCWRldl9wcml2LT5wY2hfaWQgPSBpZDsK PiA+ICAJCQkJZGV2X3ByaXYtPnBjaF90eXBlID0gUENIX0tCUDsKPiA+ICAJCQkJRFJNX0RFQlVH X0tNUygiRm91bmQgS2FieVBvaW50IFBDSFxuIik7Cj4gPiAgCQkJCVdBUk5fT04oIUlTX1NLWUxB S0UoZGV2X3ByaXYpICYmCj4gPiAgCQkJCQkhSVNfS0FCWUxBS0UoZGV2X3ByaXYpKTsKPiA+ICAJ CQl9IGVsc2UgaWYgKGlkID09IElOVEVMX1BDSF9DTlBfREVWSUNFX0lEX1RZUEUpIHsKPiA+IC0J CQkJZGV2X3ByaXYtPnBjaF9pZCA9IGlkOwo+ID4gIAkJCQlkZXZfcHJpdi0+cGNoX3R5cGUgPSBQ Q0hfQ05QOwo+ID4gIAkJCQlEUk1fREVCVUdfS01TKCJGb3VuZCBDYW5ub25Qb2ludCBQQ0hcbiIp Owo+ID4gIAkJCQlXQVJOX09OKCFJU19DQU5OT05MQUtFKGRldl9wcml2KSAmJgo+ID4gIAkJCQkJ IUlTX0NPRkZFRUxBS0UoZGV2X3ByaXYpKTsKPiA+IC0JCQl9IGVsc2UgaWYgKGlkX2V4dCA9PSBJ TlRFTF9QQ0hfQ05QX0xQX0RFVklDRV9JRF9UWVBFKSB7Cj4gPiAtCQkJCWRldl9wcml2LT5wY2hf aWQgPSBpZF9leHQ7Cj4gPiArCQkJfSBlbHNlIGlmIChpZCA9PSBJTlRFTF9QQ0hfQ05QX0xQX0RF VklDRV9JRF9UWVBFKSB7Cj4gPiAgCQkJCWRldl9wcml2LT5wY2hfdHlwZSA9IFBDSF9DTlA7Cj4g PiAgCQkJCURSTV9ERUJVR19LTVMoIkZvdW5kIENhbm5vblBvaW50IExQIFBDSFxuIik7Cj4gPiAg CQkJCVdBUk5fT04oIUlTX0NBTk5PTkxBS0UoZGV2X3ByaXYpICYmCj4gPiBAQCAtMjQ3LDcgKzI1 Myw2IEBAIHN0YXRpYyB2b2lkIGludGVsX2RldGVjdF9wY2goc3RydWN0IGRybV9pOTE1X3ByaXZh dGUgKmRldl9wcml2KQo+ID4gIAkJCQkJICAgIFBDSV9TVUJWRU5ET1JfSURfUkVESEFUX1FVTVJB TkVUICYmCj4gPiAgCQkJCSAgICBwY2gtPnN1YnN5c3RlbV9kZXZpY2UgPT0KPiA+ICAJCQkJCSAg ICBQQ0lfU1VCREVWSUNFX0lEX1FFTVUpKSB7Cj4gPiAtCQkJCWRldl9wcml2LT5wY2hfaWQgPSBp ZDsKPiA+ICAJCQkJZGV2X3ByaXYtPnBjaF90eXBlID0KPiA+ICAJCQkJCWludGVsX3ZpcnRfZGV0 ZWN0X3BjaChkZXZfcHJpdik7Cj4gPiAgCQkJfSBlbHNlCj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2 LmgKPiA+IGluZGV4IDFiOTdlYjA5OGZmZS4uNGE4ODRjZjliNDdkIDEwMDY0NAo+ID4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kcnYuaAo+ID4gQEAgLTI5OTYsMTcgKzI5OTYsMTggQEAgaW50ZWxfaW5mbyhj b25zdCBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4gPiAgCj4gPiAgI2RlZmlu ZSBIQVNfUE9PTEVEX0VVKGRldl9wcml2KQkoKGRldl9wcml2KS0+aW5mby5oYXNfcG9vbGVkX2V1 KQo+ID4gIAo+ID4gLSNkZWZpbmUgSU5URUxfUENIX0RFVklDRV9JRF9NQVNLCQkweGZmMDAKPiA+ IC0jZGVmaW5lIElOVEVMX1BDSF9ERVZJQ0VfSURfTUFTS19FWFQJCTB4ZmY4MAo+ID4gKyNkZWZp bmUgSU5URUxfUENIX0RFVklDRV9JRF9NQVNLCQkweGZmODAKPiA+ICAjZGVmaW5lIElOVEVMX1BD SF9JQlhfREVWSUNFX0lEX1RZUEUJCTB4M2IwMAo+ID4gICNkZWZpbmUgSU5URUxfUENIX0NQVF9E RVZJQ0VfSURfVFlQRQkJMHgxYzAwCj4gPiAgI2RlZmluZSBJTlRFTF9QQ0hfUFBUX0RFVklDRV9J RF9UWVBFCQkweDFlMDAKPiA+ICAjZGVmaW5lIElOVEVMX1BDSF9MUFRfREVWSUNFX0lEX1RZUEUJ CTB4OGMwMAo+ID4gICNkZWZpbmUgSU5URUxfUENIX0xQVF9MUF9ERVZJQ0VfSURfVFlQRQkJMHg5 YzAwCj4gPiArI2RlZmluZSBJTlRFTF9QQ0hfV1BUX0RFVklDRV9JRF9UWVBFCQkweDhjODAKPiA+ ICsjZGVmaW5lIElOVEVMX1BDSF9XUFRfTFBfREVWSUNFX0lEX1RZUEUJCTB4OWM4MAo+ID4gICNk ZWZpbmUgSU5URUxfUENIX1NQVF9ERVZJQ0VfSURfVFlQRQkJMHhBMTAwCj4gPiAgI2RlZmluZSBJ TlRFTF9QQ0hfU1BUX0xQX0RFVklDRV9JRF9UWVBFCQkweDlEMDAKPiA+IC0jZGVmaW5lIElOVEVM X1BDSF9LQlBfREVWSUNFX0lEX1RZUEUJCTB4QTIwMAo+ID4gLSNkZWZpbmUgSU5URUxfUENIX0NO UF9ERVZJQ0VfSURfVFlQRQkJMHhBMzAwCj4gPiArI2RlZmluZSBJTlRFTF9QQ0hfS0JQX0RFVklD RV9JRF9UWVBFCQkweEEyODAKPiA+ICsjZGVmaW5lIElOVEVMX1BDSF9DTlBfREVWSUNFX0lEX1RZ UEUJCTB4QTM4MAo+ID4gICNkZWZpbmUgSU5URUxfUENIX0NOUF9MUF9ERVZJQ0VfSURfVFlQRQkJ MHg5RDgwCj4gPiAgI2RlZmluZSBJTlRFTF9QQ0hfUDJYX0RFVklDRV9JRF9UWVBFCQkweDcxMDAK PiA+ICAjZGVmaW5lIElOVEVMX1BDSF9QM1hfREVWSUNFX0lEX1RZUEUJCTB4NzAwMAo+ID4gQEAg LTMwMjAsOSArMzAyMSwxMSBAQCBpbnRlbF9pbmZvKGNvbnN0IHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdikKPiA+ICAjZGVmaW5lIEhBU19QQ0hfU1BUKGRldl9wcml2KSAoSU5URUxf UENIX1RZUEUoZGV2X3ByaXYpID09IFBDSF9TUFQpCj4gPiAgI2RlZmluZSBIQVNfUENIX0xQVChk ZXZfcHJpdikgKElOVEVMX1BDSF9UWVBFKGRldl9wcml2KSA9PSBQQ0hfTFBUKQo+ID4gICNkZWZp bmUgSEFTX1BDSF9MUFRfTFAoZGV2X3ByaXYpIFwKPiA+IC0JKChkZXZfcHJpdiktPnBjaF9pZCA9 PSBJTlRFTF9QQ0hfTFBUX0xQX0RFVklDRV9JRF9UWVBFKQo+ID4gKwkoKGRldl9wcml2KS0+cGNo X2lkID09IElOVEVMX1BDSF9MUFRfTFBfREVWSUNFX0lEX1RZUEUgfHwgXAo+ID4gKwkgKGRldl9w cml2KS0+cGNoX2lkID09IElOVEVMX1BDSF9XUFRfTFBfREVWSUNFX0lEX1RZUEUpCj4gPiAgI2Rl ZmluZSBIQVNfUENIX0xQVF9IKGRldl9wcml2KSBcCj4gPiAtCSgoZGV2X3ByaXYpLT5wY2hfaWQg PT0gSU5URUxfUENIX0xQVF9ERVZJQ0VfSURfVFlQRSkKPiA+ICsJKChkZXZfcHJpdiktPnBjaF9p ZCA9PSBJTlRFTF9QQ0hfTFBUX0RFVklDRV9JRF9UWVBFIHx8IFwKPiA+ICsJIChkZXZfcHJpdikt PnBjaF9pZCA9PSBJTlRFTF9QQ0hfV1BUX0RFVklDRV9JRF9UWVBFKQo+ID4gICNkZWZpbmUgSEFT X1BDSF9DUFQoZGV2X3ByaXYpIChJTlRFTF9QQ0hfVFlQRShkZXZfcHJpdikgPT0gUENIX0NQVCkK PiA+ICAjZGVmaW5lIEhBU19QQ0hfSUJYKGRldl9wcml2KSAoSU5URUxfUENIX1RZUEUoZGV2X3By aXYpID09IFBDSF9JQlgpCj4gPiAgI2RlZmluZSBIQVNfUENIX05PUChkZXZfcHJpdikgKElOVEVM X1BDSF9UWVBFKGRldl9wcml2KSA9PSBQQ0hfTk9QKQo+IAo+IC0tIAo+IEphbmkgTmlrdWxhLCBJ bnRlbCBPcGVuIFNvdXJjZSBUZWNobm9sb2d5IENlbnRlcgoKLS0gClZpbGxlIFN5cmrDpGzDpApJ bnRlbCBPVEMKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K SW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0 dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==