From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH v10 1/2] drm: content-type property for HDMI connector Date: Mon, 14 May 2018 21:41:34 +0300 Message-ID: <20180514184134.GX23723@intel.com> References: <20180508074457.3800-1-stanislav.lisovskiy@intel.com> <20180508074457.3800-2-stanislav.lisovskiy@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <20180508074457.3800-2-stanislav.lisovskiy@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: StanLis Cc: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gVHVlLCBNYXkgMDgsIDIwMTggYXQgMTA6NDQ6NTZBTSArMDMwMCwgU3RhbkxpcyB3cm90ZToK PiBGcm9tOiBTdGFuaXNsYXYgTGlzb3Zza2l5IDxzdGFuaXNsYXYubGlzb3Zza2l5QGludGVsLmNv bT4KPiAKPiBBZGRlZCBjb250ZW50X3R5cGUgcHJvcGVydHkgdG8gZHJtX2Nvbm5lY3Rvcl9zdGF0 ZQo+IGluIG9yZGVyIHRvIHByb3Blcmx5IGhhbmRsZSBleHRlcm5hbCBIRE1JIFRWIGNvbnRlbnQt dHlwZSBzZXR0aW5nLgo+IAo+IHYyOgo+ICAqIE1vdmVkIGhlbHBlciBmdW5jdGlvbiB3aGljaCBh dHRhY2hlcyBjb250ZW50IHR5cGUgcHJvcGVydHkKPiAgICB0byB0aGUgZHJtIGNvcmUsIGFzIHdh cyBzdWdnZXN0ZWQuCj4gICAgUmVtb3ZlZCByZWR1bmRhbnQgY29ubmVjdG9yIHN0YXRlIGluaXRp YWxpemF0aW9uLgo+IAo+IHYzOgo+ICAqIFJlbW92ZWQgY2FwcyBpbiBkcm1fY29udGVudF90eXBl X2VudW1fbGlzdC4KPiAgICBBZnRlciBzb21lIGRpc2N1c3Npb24gaXQgdHVybmVkIG91dCB0aGF0 IEhETUkgU3BlYyAxLjQKPiAgICB3YXMgd3JvbmdseSBhc3N1bWluZyB0aGF0IElUIENvbnRlbnQo aXRjKSBiaXQgZG9lc24ndCBhZmZlY3QKPiAgICBDb250ZW50IHR5cGUgc3RhdGVzLCBob3dldmVy IGl0YyBiaXQgbmVlZHMgdG8gYmUgbWFudXB1bGF0ZWQKPiAgICBhcyB3ZWxsLiBJbiBvcmRlciB0 byBub3QgZXhwb3NlIGFkZGl0aW9uYWwgcHJvcGVydHkgZm9yIGl0YywKPiAgICBmb3Igc2FrZSBv ZiBzaW1wbGljaXR5IGl0IHdhcyBkZWNpZGVkIHRvIGJpbmQgdGhvc2UgdG9nZXRoZXIKPiAgICBp biBzYW1lICJjb250ZW50IHR5cGUiIHByb3BlcnR5Lgo+IAo+IHY0Ogo+ICAqIEFkZGVkIGl0X2Nv bnRlbnQgY2hlY2tpbmcgaW4gaW50ZWxfZGlnaXRhbF9jb25uZWN0b3JfYXRvbWljX2NoZWNrLgo+ ICAgIEZpeGVkIGRvY3VtZW50YXRpb24gZm9yIG5ldyBjb250ZW50IHR5cGUgZW51bS4KPiAKPiB2 NToKPiAgKiBNb3ZlZCBwYXRjaCByZXZpc2lvbidzIGRlc2NyaXB0aW9uIHRvIGNvbW1pdCBtZXNz YWdlcy4KPiAKPiB2NjoKPiAgKiBNaW5vciBuYW1pbmcgZml4IGZvciB0aGUgY29udGVudCB0eXBl IGVudW1lcmF0aW9uIHN0cmluZy4KPiAKPiB2NzoKPiAgKiBGaXggcGFyYW1ldGVyIG5hbWUgZm9y IGRvY3VtZW50YXRpb24gYW5kIHBhcmFtZXRlciBhbGlnbm1lbnQKPiAgICBpbiBvcmRlciBub3Qg dG8gZ2V0IHdhcm5pbmcuIEFkZGVkIENvbnRlbnQgVHlwZSBkZXNjcmlwdGlvbiB0bwo+ICAgIG5l dyBIRE1JIGNvbm5lY3RvciBwcm9wZXJ0aWVzIHNlY3Rpb24uCj4gCj4gdjg6Cj4gICogVGhyb3du IGF3YXkgdW5uZWVkZWQgbnVtYmVycyBmcm9tIEhETUkgY29udGVudC10eXBlIHByb3BlcnR5Cj4g ICAgZGVzY3JpcHRpb24uIFN3aXRjaCB0byBzdHJpbmdzIGRlc3JpcHRpb24gaW5zdGVhZCBvZiBw bGFpbgo+ICAgIGRlZmluaXRpb25zLgo+IAo+IHY5Ogo+ICAqIE1vdmVkIGF3YXkgaGRtaSBzcGVj aWZpYyBjb250ZW50LXR5cGUgZW51bSBmcm9tCj4gICAgZHJtX2Nvbm5lY3Rvcl9zdGF0ZS4gQ29u dGVudCB0eXBlIHByb3BlcnR5IHNob3VsZCBwcm9iYWJseSBub3QKPiAgICBiZSBib3VuZCB0byBh bnkgc3BlY2lmaWMgY29ubmVjdG9yIGludGVyZmFjZSBpbgo+ICAgIGRybV9jb25uZWN0b3Jfc3Rh dGUuCj4gICAgU2FtZSBwcm9iYWJseSBzaG91bGQgYmUgZG9uZSB0byBoZG1pX3BpY3R1cmVfYXNw ZWN0X3JhdGlvbiBlbnVtCj4gICAgd2hpY2ggaXMgYWxzbyBjb250YWluZWQgaW4gZHJtX2Nvbm5l Y3Rvcl9zdGF0ZS4gQWRkZWQgc3BlY2lhbAo+ICAgIGhlbHBlciBmdW5jdGlvbiB0byBnZXQgZGVy aXZlIGhkbWkgc3BlY2lmaWMgcmVsZXZhbnQgaW5mb2ZyYW1lCj4gICAgZmllbGRzLgo+IAo+IHYx MDoKPiAgKiBBZGRlZCB1c2FnZSBkZXNjcmlwdGlvbiB0byBIRE1JIHByb3BlcnRpZXMga2VybmVs IGRvYy4KPiAKPiBBY2tlZC1ieTogSGFucyBWZXJrdWlsIDxoYW5zLnZlcmt1aWxAY2lzY28uY29t Pgo+IEFja2VkLWJ5OiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGZmd2xsLmNoPgo+IFNp Z25lZC1vZmYtYnk6IFN0YW5pc2xhdiBMaXNvdnNraXkgPHN0YW5pc2xhdi5saXNvdnNraXlAaW50 ZWwuY29tPgo+IC0tLQo+ICBEb2N1bWVudGF0aW9uL2dwdS9kcm0ta21zLnJzdCAgICAgICAgfCAg NiArKysKPiAgRG9jdW1lbnRhdGlvbi9ncHUva21zLXByb3BlcnRpZXMuY3N2IHwgIDEgKwo+ICBk cml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pYy5jICAgICAgICAgfCAgNCArKwo+ICBkcml2ZXJzL2dw dS9kcm0vZHJtX2Nvbm5lY3Rvci5jICAgICAgfCA4MCArKysrKysrKysrKysrKysrKysrKysrKysr KysrCj4gIGRyaXZlcnMvZ3B1L2RybS9kcm1fZWRpZC5jICAgICAgICAgICB8IDU1ICsrKysrKysr KysrKysrKysrKysKPiAgaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oICAgICAgICAgIHwgMTIg KysrKysKPiAgaW5jbHVkZS9kcm0vZHJtX2VkaWQuaCAgICAgICAgICAgICAgIHwgIDYgKysrCj4g IGluY2x1ZGUvZHJtL2RybV9tb2RlX2NvbmZpZy5oICAgICAgICB8ICA1ICsrCj4gIGluY2x1ZGUv dWFwaS9kcm0vZHJtX21vZGUuaCAgICAgICAgICB8ICA3ICsrKwo+ICA5IGZpbGVzIGNoYW5nZWQs IDE3NiBpbnNlcnRpb25zKCspCj4gCj4gZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ3B1L2Ry bS1rbXMucnN0IGIvRG9jdW1lbnRhdGlvbi9ncHUvZHJtLWttcy5yc3QKPiBpbmRleCAxZGZmZDFh YzRjZDQuLmUyMzNjMjYyNmJkMCAxMDA2NDQKPiAtLS0gYS9Eb2N1bWVudGF0aW9uL2dwdS9kcm0t a21zLnJzdAo+ICsrKyBiL0RvY3VtZW50YXRpb24vZ3B1L2RybS1rbXMucnN0Cj4gQEAgLTUxNyw2 ICs1MTcsMTIgQEAgU3RhbmRhcmQgQ29ubmVjdG9yIFByb3BlcnRpZXMKPiAgLi4ga2VybmVsLWRv Yzo6IGRyaXZlcnMvZ3B1L2RybS9kcm1fY29ubmVjdG9yLmMKPiAgICAgOmRvYzogc3RhbmRhcmQg Y29ubmVjdG9yIHByb3BlcnRpZXMKPiAgCj4gK0hETUkgU3BlY2lmaWMgQ29ubmVjdG9yIFByb3Bl cnRpZXMKPiArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiArCj4gKy4uIGtlcm5lbC1k b2M6OiBkcml2ZXJzL2dwdS9kcm0vZHJtX2Nvbm5lY3Rvci5jCj4gKyAgIDpkb2M6IEhETUkgY29u bmVjdG9yIHByb3BlcnRpZXMKPiArCj4gIFBsYW5lIENvbXBvc2l0aW9uIFByb3BlcnRpZXMKPiAg LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ICAKPiBkaWZmIC0tZ2l0IGEvRG9jdW1lbnRh dGlvbi9ncHUva21zLXByb3BlcnRpZXMuY3N2IGIvRG9jdW1lbnRhdGlvbi9ncHUva21zLXByb3Bl cnRpZXMuY3N2Cj4gaW5kZXggMDdlZDIyZWEzYmQ2Li5iZmRlMDRlZGRkMTQgMTAwNjQ0Cj4gLS0t IGEvRG9jdW1lbnRhdGlvbi9ncHUva21zLXByb3BlcnRpZXMuY3N2Cj4gKysrIGIvRG9jdW1lbnRh dGlvbi9ncHUva21zLXByb3BlcnRpZXMuY3N2Cj4gQEAgLTE3LDYgKzE3LDcgQEAgT3duZXIgTW9k dWxlL0RyaXZlcnMsR3JvdXAsUHJvcGVydHkgTmFtZSxUeXBlLFByb3BlcnR5IFZhbHVlcyxPYmpl Y3QgYXR0YWNoZWQsRGUKPiAgLFZpcnR1YWwgR1BVLOKAnHN1Z2dlc3RlZCBY4oCdLFJBTkdFLCJN aW49MCwgTWF4PTB4ZmZmZmZmZmYiLENvbm5lY3Rvcixwcm9wZXJ0eSB0byBzdWdnZXN0IGFuIFgg b2Zmc2V0IGZvciBhIGNvbm5lY3Rvcgo+ICAsLOKAnHN1Z2dlc3RlZCBZ4oCdLFJBTkdFLCJNaW49 MCwgTWF4PTB4ZmZmZmZmZmYiLENvbm5lY3Rvcixwcm9wZXJ0eSB0byBzdWdnZXN0IGFuIFkgb2Zm c2V0IGZvciBhIGNvbm5lY3Rvcgo+ICAsT3B0aW9uYWwsIiIiYXNwZWN0IHJhdGlvIiIiLEVOVU0s InsgIiJOb25lIiIsICIiNDozIiIsICIiMTY6OSIiIH0iLENvbm5lY3RvcixUREIKPiArLE9wdGlv bmFsLCIiImNvbnRlbnQgdHlwZSIiIixFTlVNLCJ7ICIiTm8gRGF0YSIiLCAiIkdyYXBoaWNzIiIs ICIiUGhvdG8iIiwgIiJDaW5lbWEiIiwgIiJHYW1lIiIgfSIsQ29ubmVjdG9yLFRCRAo+ICBpOTE1 LEdlbmVyaWMsIiIiQnJvYWRjYXN0IFJHQiIiIixFTlVNLCJ7ICIiQXV0b21hdGljIiIsICIiRnVs bCIiLCAiIkxpbWl0ZWQgMTY6MjM1IiIgfSIsQ29ubmVjdG9yLCJXaGVuIHRoaXMgcHJvcGVydHkg aXMgc2V0IHRvIExpbWl0ZWQgMTY6MjM1IGFuZCBDVE0gaXMgc2V0LCB0aGUgaGFyZHdhcmUgd2ls bCBiZSBwcm9ncmFtbWVkIHdpdGggdGhlIHJlc3VsdCBvZiB0aGUgbXVsdGlwbGljYXRpb24gb2Yg Q1RNIGJ5IHRoZSBsaW1pdGVkIHJhbmdlIG1hdHJpeCB0byBlbnN1cmUgdGhlIHBpeGVscyBub3Jt YWx5IGluIHRoZSByYW5nZSAwLi4xLjAgYXJlIHJlbWFwcGVkIHRvIHRoZSByYW5nZSAxNi8yNTUu LjIzNS8yNTUuIgo+ICAsLOKAnGF1ZGlv4oCdLEVOVU0sInsgIiJmb3JjZS1kdmkiIiwgIiJvZmYi IiwgIiJhdXRvIiIsICIib24iIiB9IixDb25uZWN0b3IsVEJECj4gICxTRFZPLVRWLOKAnG1vZGXi gJ0sRU5VTSwieyAiIk5UU0NfTSIiLCAiIk5UU0NfSiIiLCAiIk5UU0NfNDQzIiIsICIiUEFMX0Ii IiB9IGV0Yy4iLENvbm5lY3RvcixUQkQKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2Ry bV9hdG9taWMuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljLmMKPiBpbmRleCAzZDlhZTA1 N2E2Y2QuLjZjMWUxZTc3NDUxNyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0 b21pYy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWMuYwo+IEBAIC0xMjcwLDYg KzEyNzAsOCBAQCBzdGF0aWMgaW50IGRybV9hdG9taWNfY29ubmVjdG9yX3NldF9wcm9wZXJ0eShz dHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+ICAJCQlzdGF0ZS0+bGlua19zdGF0dXMg PSB2YWw7Cj4gIAl9IGVsc2UgaWYgKHByb3BlcnR5ID09IGNvbmZpZy0+YXNwZWN0X3JhdGlvX3By b3BlcnR5KSB7Cj4gIAkJc3RhdGUtPnBpY3R1cmVfYXNwZWN0X3JhdGlvID0gdmFsOwo+ICsJfSBl bHNlIGlmIChwcm9wZXJ0eSA9PSBjb25maWctPmNvbnRlbnRfdHlwZV9wcm9wZXJ0eSkgewo+ICsJ CXN0YXRlLT5jb250ZW50X3R5cGUgPSB2YWw7Cj4gIAl9IGVsc2UgaWYgKHByb3BlcnR5ID09IGNv bm5lY3Rvci0+c2NhbGluZ19tb2RlX3Byb3BlcnR5KSB7Cj4gIAkJc3RhdGUtPnNjYWxpbmdfbW9k ZSA9IHZhbDsKPiAgCX0gZWxzZSBpZiAocHJvcGVydHkgPT0gY29ubmVjdG9yLT5jb250ZW50X3By b3RlY3Rpb25fcHJvcGVydHkpIHsKPiBAQCAtMTM1NSw2ICsxMzU3LDggQEAgZHJtX2F0b21pY19j b25uZWN0b3JfZ2V0X3Byb3BlcnR5KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCj4g IAkJKnZhbCA9IHN0YXRlLT5saW5rX3N0YXR1czsKPiAgCX0gZWxzZSBpZiAocHJvcGVydHkgPT0g Y29uZmlnLT5hc3BlY3RfcmF0aW9fcHJvcGVydHkpIHsKPiAgCQkqdmFsID0gc3RhdGUtPnBpY3R1 cmVfYXNwZWN0X3JhdGlvOwo+ICsJfSBlbHNlIGlmIChwcm9wZXJ0eSA9PSBjb25maWctPmNvbnRl bnRfdHlwZV9wcm9wZXJ0eSkgewo+ICsJCSp2YWwgPSBzdGF0ZS0+Y29udGVudF90eXBlOwo+ICAJ fSBlbHNlIGlmIChwcm9wZXJ0eSA9PSBjb25uZWN0b3ItPnNjYWxpbmdfbW9kZV9wcm9wZXJ0eSkg ewo+ICAJCSp2YWwgPSBzdGF0ZS0+c2NhbGluZ19tb2RlOwo+ICAJfSBlbHNlIGlmIChwcm9wZXJ0 eSA9PSBjb25uZWN0b3ItPmNvbnRlbnRfcHJvdGVjdGlvbl9wcm9wZXJ0eSkgewo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2Nvbm5lY3Rvci5jIGIvZHJpdmVycy9ncHUvZHJtL2Ry bV9jb25uZWN0b3IuYwo+IGluZGV4IGIzY2RlODk3Y2Q4MC4uZjgzZjU0ZDQ1NTYxIDEwMDY0NAo+ IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fY29ubmVjdG9yLmMKPiArKysgYi9kcml2ZXJzL2dw dS9kcm0vZHJtX2Nvbm5lY3Rvci5jCj4gQEAgLTcyMCw2ICs3MjAsMTQgQEAgc3RhdGljIGNvbnN0 IHN0cnVjdCBkcm1fcHJvcF9lbnVtX2xpc3QgZHJtX2FzcGVjdF9yYXRpb19lbnVtX2xpc3RbXSA9 IHsKPiAgCXsgRFJNX01PREVfUElDVFVSRV9BU1BFQ1RfMTZfOSwgIjE2OjkiIH0sCj4gIH07Cj4g IAo+ICtzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9wcm9wX2VudW1fbGlzdCBkcm1fY29udGVudF90 eXBlX2VudW1fbGlzdFtdID0gewo+ICsJeyBEUk1fTU9ERV9DT05URU5UX1RZUEVfTk9fREFUQSwg Ik5vIERhdGEiIH0sCj4gKwl7IERSTV9NT0RFX0NPTlRFTlRfVFlQRV9HUkFQSElDUywgIkdyYXBo aWNzIiB9LAo+ICsJeyBEUk1fTU9ERV9DT05URU5UX1RZUEVfUEhPVE8sICJQaG90byIgfSwKPiAr CXsgRFJNX01PREVfQ09OVEVOVF9UWVBFX0NJTkVNQSwgIkNpbmVtYSIgfSwKPiArCXsgRFJNX01P REVfQ09OVEVOVF9UWVBFX0dBTUUsICJHYW1lIiB9LAo+ICt9Owo+ICsKPiAgc3RhdGljIGNvbnN0 IHN0cnVjdCBkcm1fcHJvcF9lbnVtX2xpc3QgZHJtX3BhbmVsX29yaWVudGF0aW9uX2VudW1fbGlz dFtdID0gewo+ICAJeyBEUk1fTU9ERV9QQU5FTF9PUklFTlRBVElPTl9OT1JNQUwsCSJOb3JtYWwi CX0sCj4gIAl7IERSTV9NT0RFX1BBTkVMX09SSUVOVEFUSU9OX0JPVFRPTV9VUCwJIlVwc2lkZSBE b3duIgl9LAo+IEBAIC05OTYsNiArMTAwNCw1MSBAQCBpbnQgZHJtX21vZGVfY3JlYXRlX2R2aV9p X3Byb3BlcnRpZXMoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAgfQo+ICBFWFBPUlRfU1lNQk9M KGRybV9tb2RlX2NyZWF0ZV9kdmlfaV9wcm9wZXJ0aWVzKTsKPiAgCj4gKwo+ICsvKioKPiArICog RE9DOiBIRE1JIGNvbm5lY3RvciBwcm9wZXJ0aWVzCj4gKyAqCj4gKyAqIGNvbnRlbnQgdHlwZSAo SERNSSBzcGVjaWZpYyk6Cj4gKyAqCUluZGljYXRlcyBjb250ZW50IHR5cGUgc2V0dGluZyB0byBi ZSB1c2VkIGluIEhETUkgaW5mb2ZyYW1lcyB0byBpbmRpY2F0ZQo+ICsgKgljb250ZW50IHR5cGUg Zm9yIHRoZSBleHRlcm5hbCBkZXZpY2UsIHNvIHRoYXQgaXQgYWRqdXN0cyBpdCdzIGRpc3BsYXkK PiArICoJc2V0dGluZ3MgYWNjb3JkaW5nbHkuCj4gKyAqCj4gKyAqCVRoZSB2YWx1ZSBvZiB0aGlz IHByb3BlcnR5IGNhbiBiZSBvbmUgb2YgdGhlIGZvbGxvd2luZzoKPiArICoKPiArICoJTm8gRGF0 YToKPiArICoJCUNvbnRlbnQgdHlwZSBpcyB1bmtub3duCj4gKyAqCUdyYXBoaWNzOgo+ICsgKgkJ Q29udGVudCB0eXBlIGlzIGdyYXBoaWNzCj4gKyAqCVBob3RvOgo+ICsgKgkJQ29udGVudCB0eXBl IGlzIHBob3RvCj4gKyAqCUNpbmVtYToKPiArICoJCUNvbnRlbnQgdHlwZSBpcyBjaW5lbWEKPiAr ICoJR2FtZToKPiArICoJCUNvbnRlbnQgdHlwZSBpcyBnYW1lCj4gKyAqCj4gKyAqCURyaXZlcnMg Y2FuIHNldCB1cCB0aGlzIHByb3BlcnR5IGJ5IGNhbGxpbmcKPiArICoJZHJtX2Nvbm5lY3Rvcl9h dHRhY2hfY29udGVudF90eXBlX3Byb3BlcnR5KCkuIERlY29kaW5nIHRvCj4gKyAqCWluZm9mcmFt ZSB2YWx1ZXMgaXMgZG9uZSB0aHJvdWdoCj4gKyAqCWRybV9oZG1pX2dldF9jb250ZW50X3R5cGVf ZnJvbV9wcm9wZXJ0eSgpIGFuZAo+ICsgKglkcm1faGRtaV9nZXRfaXRjX2JpdF9mcm9tX3Byb3Bl cnR5KCkuCj4gKyAqLwo+ICsKPiArLyoqCj4gKyAqIGRybV9jb25uZWN0b3JfYXR0YWNoX2NvbnRl bnRfdHlwZV9wcm9wZXJ0eSAtIGF0dGFjaCBjb250ZW50LXR5cGUgcHJvcGVydHkKPiArICogQGNv bm5lY3RvcjogY29ubmVjdG9yIHRvIGF0dGFjaCBjb250ZW50IHR5cGUgcHJvcGVydHkgb24uCj4g KyAqCj4gKyAqIENhbGxlZCBieSBhIGRyaXZlciB0aGUgZmlyc3QgdGltZSBhIEhETUkgY29ubmVj dG9yIGlzIG1hZGUuCj4gKyAqLwo+ICtpbnQgZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfY29udGVudF90 eXBlX3Byb3BlcnR5KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCj4gK3sKPiArCWlm ICghZHJtX21vZGVfY3JlYXRlX2NvbnRlbnRfdHlwZV9wcm9wZXJ0eShjb25uZWN0b3ItPmRldikp Cj4gKwkJZHJtX29iamVjdF9hdHRhY2hfcHJvcGVydHkoJmNvbm5lY3Rvci0+YmFzZSwKPiArCQkJ CQkgICBjb25uZWN0b3ItPmRldi0+bW9kZV9jb25maWcuY29udGVudF90eXBlX3Byb3BlcnR5LAo+ ICsJCQkJCSAgIERSTV9NT0RFX0NPTlRFTlRfVFlQRV9OT19EQVRBKTsKPiArCXJldHVybiAwOwo+ ICt9Cj4gK0VYUE9SVF9TWU1CT0woZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfY29udGVudF90eXBlX3By b3BlcnR5KTsKPiArCj4gIC8qKgo+ICAgKiBkcm1fY3JlYXRlX3R2X3Byb3BlcnRpZXMgLSBjcmVh dGUgVFYgc3BlY2lmaWMgY29ubmVjdG9yIHByb3BlcnRpZXMKPiAgICogQGRldjogRFJNIGRldmlj ZQo+IEBAIC0xMjYwLDYgKzEzMTMsMzMgQEAgaW50IGRybV9tb2RlX2NyZWF0ZV9hc3BlY3RfcmF0 aW9fcHJvcGVydHkoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAgfQo+ICBFWFBPUlRfU1lNQk9M KGRybV9tb2RlX2NyZWF0ZV9hc3BlY3RfcmF0aW9fcHJvcGVydHkpOwo+ICAKPiArLyoqCj4gKyAq IGRybV9tb2RlX2NyZWF0ZV9jb250ZW50X3R5cGVfcHJvcGVydHkgLSBjcmVhdGUgY29udGVudCB0 eXBlIHByb3BlcnR5Cj4gKyAqIEBkZXY6IERSTSBkZXZpY2UKPiArICoKPiArICogQ2FsbGVkIGJ5 IGEgZHJpdmVyIHRoZSBmaXJzdCB0aW1lIGl0J3MgbmVlZGVkLCBtdXN0IGJlIGF0dGFjaGVkIHRv IGRlc2lyZWQKPiArICogY29ubmVjdG9ycy4KPiArICoKPiArICogUmV0dXJuczoKPiArICogWmVy byBvbiBzdWNjZXNzLCBuZWdhdGl2ZSBlcnJubyBvbiBmYWlsdXJlLgo+ICsgKi8KPiAraW50IGRy bV9tb2RlX2NyZWF0ZV9jb250ZW50X3R5cGVfcHJvcGVydHkoc3RydWN0IGRybV9kZXZpY2UgKmRl dikKPiArewo+ICsJaWYgKGRldi0+bW9kZV9jb25maWcuY29udGVudF90eXBlX3Byb3BlcnR5KQo+ ICsJCXJldHVybiAwOwo+ICsKPiArCWRldi0+bW9kZV9jb25maWcuY29udGVudF90eXBlX3Byb3Bl cnR5ID0KPiArCQlkcm1fcHJvcGVydHlfY3JlYXRlX2VudW0oZGV2LCAwLCAiY29udGVudCB0eXBl IiwKPiArCQkJCQkgZHJtX2NvbnRlbnRfdHlwZV9lbnVtX2xpc3QsCj4gKwkJCQkJIEFSUkFZX1NJ WkUoZHJtX2NvbnRlbnRfdHlwZV9lbnVtX2xpc3QpKTsKPiArCj4gKwlpZiAoZGV2LT5tb2RlX2Nv bmZpZy5jb250ZW50X3R5cGVfcHJvcGVydHkgPT0gTlVMTCkKPiArCQlyZXR1cm4gLUVOT01FTTsK PiArCj4gKwlyZXR1cm4gMDsKPiArfQo+ICtFWFBPUlRfU1lNQk9MKGRybV9tb2RlX2NyZWF0ZV9j b250ZW50X3R5cGVfcHJvcGVydHkpOwo+ICsKPiAgLyoqCj4gICAqIGRybV9tb2RlX2NyZWF0ZV9z dWdnZXN0ZWRfb2Zmc2V0X3Byb3BlcnRpZXMgLSBjcmVhdGUgc3VnZ2VzdHMgb2Zmc2V0IHByb3Bl cnRpZXMKPiAgICogQGRldjogRFJNIGRldmljZQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vZHJtX2VkaWQuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZWRpZC5jCj4gaW5kZXggMTM0MDY5 ZjM2NDgyLi45ZWNkYTBiMmE0ZDggMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9l ZGlkLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2VkaWQuYwo+IEBAIC00ODY4LDYgKzQ4 NjgsMTQgQEAgZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZShzdHJ1Y3Qg aGRtaV9hdmlfaW5mb2ZyYW1lICpmcmFtZSwKPiAgCj4gIAlmcmFtZS0+cGljdHVyZV9hc3BlY3Qg PSBIRE1JX1BJQ1RVUkVfQVNQRUNUX05PTkU7Cj4gIAo+ICsJLyoKPiArCSAqIEFzIHNvbWUgZHJp dmVycyBkb24ndCBzdXBwb3J0IGF0b21pYywgd2UgY2FuJ3QgdXNlIGNvbm5lY3RvciBzdGF0ZS4K PiArCSAqIFNvIGp1c3QgaW5pdGlhbGl6ZSB0aGUgZnJhbWUgd2l0aCBkZWZhdWx0IHZhbHVlcywg anVzdCB0aGUgc2FtZSB3YXkKPiArCSAqIGFzIGl0J3MgZG9uZSB3aXRoIG90aGVyIHByb3BlcnRp ZXMgaGVyZS4KPiArCSAqLwo+ICsJZnJhbWUtPmNvbnRlbnRfdHlwZSA9IEhETUlfQ09OVEVOVF9U WVBFX0dSQVBISUNTOwo+ICsJZnJhbWUtPml0YyA9IDA7Cj4gKwo+ICAJLyoKPiAgCSAqIFBvcHVs YXRlIHBpY3R1cmUgYXNwZWN0IHJhdGlvIGZyb20gZWl0aGVyCj4gIAkgKiB1c2VyIGlucHV0IChp ZiBzcGVjaWZpZWQpIG9yIGZyb20gdGhlIENFQSBtb2RlIGxpc3QuCj4gQEAgLTQ4ODYsNiArNDg5 NCw1MyBAQCBkcm1faGRtaV9hdmlfaW5mb2ZyYW1lX2Zyb21fZGlzcGxheV9tb2RlKHN0cnVjdCBo ZG1pX2F2aV9pbmZvZnJhbWUgKmZyYW1lLAo+ICB9Cj4gIEVYUE9SVF9TWU1CT0woZHJtX2hkbWlf YXZpX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZSk7Cj4gIAo+ICsvKioKPiArICogZHJtX2hk bWlfZ2V0X2l0Y19iaXRfZnJvbV9wcm9wZXJ0eSgpIC0gZ2V0IHRoZSBIRE1JIElUIGNvbnRlbnQg Yml0Cj4gKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyb20gY29u dGVudCB0eXBlIHByb3BlcnR5Lgo+ICsgKiBjb250ZW50X3R5cGU6IENvbnRlbnQgdHlwZSBEUk0g cHJvcGVydHkgdmFsdWUKPiArICoKPiArICovCj4gK2Jvb2wKPiArZHJtX2hkbWlfZ2V0X2l0Y19i aXRfZnJvbV9wcm9wZXJ0eSh1bnNpZ25lZCBpbnQgY29udGVudF90eXBlKQo+ICt7Cj4gKwkvKiBX aGVuZXZlciBzb21ldGhpbmcgZWxzZSB0aGFuICJObyBEYXRhIiwgSVQgQ29udGVudCBiaXQgbXVz dCBiZSBzZXQgKi8KPiArCXJldHVybiBjb250ZW50X3R5cGUgIT0gRFJNX01PREVfQ09OVEVOVF9U WVBFX05PX0RBVEEgPyB0cnVlIDogZmFsc2U7CgpObyBuZWVkIGZvciB0aGUgPzogb3BlcmF0b3Ig aGVyZS4KCj4gK30KPiArRVhQT1JUX1NZTUJPTChkcm1faGRtaV9nZXRfaXRjX2JpdF9mcm9tX3By b3BlcnR5KTsKPiArCj4gKy8qKgo+ICsgKiBkcm1faGRtaV9nZXRfY29udGVudF90eXBlX2Zyb21f cHJvcGVydHkoKSAtIGdldCB0aGUgSERNSSBjb250ZW50IHR5cGUgYml0cwo+ICsgKiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyb20gY29udGVudCB0eXBlIHBy b3BlcnR5Lgo+ICsgKiBjb250ZW50X3R5cGU6IENvbnRlbnQgdHlwZSBEUk0gcHJvcGVydHkgdmFs dWUKPiArICoKPiArICovCj4gK2VudW0gaGRtaV9jb250ZW50X3R5cGUKPiArZHJtX2hkbWlfZ2V0 X2NvbnRlbnRfdHlwZV9mcm9tX3Byb3BlcnR5KHVuc2lnbmVkIGludCBjb250ZW50X3R5cGUpCj4g K3sKPiArCWVudW0gaGRtaV9jb250ZW50X3R5cGUgcmV0Owo+ICsKPiArCXN3aXRjaCAoY29udGVu dF90eXBlKSB7Cj4gKwljYXNlIERSTV9NT0RFX0NPTlRFTlRfVFlQRV9HUkFQSElDUzoKPiArCQly ZXQgPSBIRE1JX0NPTlRFTlRfVFlQRV9HUkFQSElDUzsKPiArCQlicmVhazsKPiArCWNhc2UgRFJN X01PREVfQ09OVEVOVF9UWVBFX0NJTkVNQToKPiArCQlyZXQgPSBIRE1JX0NPTlRFTlRfVFlQRV9D SU5FTUE7Cj4gKwkJYnJlYWs7Cj4gKwljYXNlIERSTV9NT0RFX0NPTlRFTlRfVFlQRV9HQU1FOgo+ ICsJCXJldCA9IEhETUlfQ09OVEVOVF9UWVBFX0dBTUU7Cj4gKwkJYnJlYWs7Cj4gKwljYXNlIERS TV9NT0RFX0NPTlRFTlRfVFlQRV9QSE9UTzoKPiArCQlyZXQgPSBIRE1JX0NPTlRFTlRfVFlQRV9Q SE9UTzsKPiArCQlicmVhazsKPiArCWRlZmF1bHQ6Cj4gKwkJLyogR3JhcGhpY3MgaXMgdGhlIGRl ZmF1bHQoMCkgKi8KPiArCQlyZXQgPSBIRE1JX0NPTlRFTlRfVFlQRV9HUkFQSElDUzsKPiArCX0K PiArCXJldHVybiByZXQ7CgoncmV0JyBpcyBwb2ludGxlc3MuIFlvdSBjYW4ganVzdCByZXR1cm4g ZGlyZWNseSBmcm9tIHRoZSBzd2l0Y2gKc3RhdGVtZW50LgoKPiArfQo+ICtFWFBPUlRfU1lNQk9M KGRybV9oZG1pX2dldF9jb250ZW50X3R5cGVfZnJvbV9wcm9wZXJ0eSk7CgpIbW0uIEFjdHVhbGx5 IGl0IHdvdWxkIHNlZW0gc2ltcGxlciBmb3IgZHJpdmVycyBpZiB5b3UganVzdCBleHBvcnRlZAph IHNpbmdsZSBmdW5jdGlvbiB3aGVyZSB5b3UgcGFzcyBpbiB0aGUgaW5mb2ZyYW1lIHRvIGJlIHBv cHVsYXRlZCBhbmQKYW5kIGNvbm5fc3RhdGUtPmNvbnRlbnRfdHlwZS4gVGhhdCdzIGhvdwpkcm1f aGRtaV9hdmlfaW5mb2ZyYW1lX3F1YW50X3JhbmdlKCkgYWxyZWFkeSB3b3JrcywgYW5kIGZvbGxv d2luZyBhbgphbHJlYWR5IGVzdGFibGlzaGVkIHBhdHRlcm4gd291bGQgYmUgZ29vZC4KCkxhdGVy IG9uIHdlIGRlZmluaXRlbHkgc2hvdWxkIGxvb2sgaW50byBtYWtlIGl0IGV2ZW4gc2ltcGxlciBm b3IgYXRvbWljCmRyaXZlcnMgYnkganVzdCBwYXNzaW5nIGluIHRoZSBhcHByb3ByaWF0ZSBzdGF0 ZXMuCgo+ICsKPiArCj4gIC8qKgo+ICAgKiBkcm1faGRtaV9hdmlfaW5mb2ZyYW1lX3F1YW50X3Jh bmdlKCkgLSBmaWxsIHRoZSBIRE1JIEFWSSBpbmZvZnJhbWUKPiAgICogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgcXVhbnRpemF0aW9uIHJhbmdlIGluZm9ybWF0aW9uCj4g ZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaCBiL2luY2x1ZGUvZHJtL2Ry bV9jb25uZWN0b3IuaAo+IGluZGV4IDY3NWNjM2Y4Y2Y4NS4uMTc4ZmEzZjNmNWY3IDEwMDY0NAo+ IC0tLSBhL2luY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaAo+ICsrKyBiL2luY2x1ZGUvZHJtL2Ry bV9jb25uZWN0b3IuaAo+IEBAIC00MTgsNiArNDE4LDE2IEBAIHN0cnVjdCBkcm1fY29ubmVjdG9y X3N0YXRlIHsKPiAgCSAqLwo+ICAJZW51bSBoZG1pX3BpY3R1cmVfYXNwZWN0IHBpY3R1cmVfYXNw ZWN0X3JhdGlvOwo+ICAKPiArCj4gKwkvKioKPiArCSAqIEBjb250ZW50X3R5cGU6IENvbm5lY3Rv ciBwcm9wZXJ0eSB0byBjb250cm9sIHRoZQo+ICsJICogSERNSSBpbmZvZnJhbWUgY29udGVudCB0 eXBlIHNldHRpbmcuCj4gKwkgKiBUaGUgJURSTV9NT0RFX0NPTlRFTlRfVFlQRV9cKiB2YWx1ZXMg bXVjaAo+ICsJICogbWF0Y2ggdGhlIHZhbHVlcy4KPiArCSAqLwo+ICsJdW5zaWduZWQgaW50IGNv bnRlbnRfdHlwZTsKPiArCj4gKwo+ICAJLyoqCj4gIAkgKiBAc2NhbGluZ19tb2RlOiBDb25uZWN0 b3IgcHJvcGVydHkgdG8gY29udHJvbCB0aGUKPiAgCSAqIHVwc2NhbGluZywgbW9zdGx5IHVzZWQg Zm9yIGJ1aWx0LWluIHBhbmVscy4KPiBAQCAtMTA4OSwxMSArMTA5OSwxMyBAQCBpbnQgZHJtX21v ZGVfY3JlYXRlX3R2X3Byb3BlcnRpZXMoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiAgCQkJCSAg dW5zaWduZWQgaW50IG51bV9tb2RlcywKPiAgCQkJCSAgY29uc3QgY2hhciAqIGNvbnN0IG1vZGVz W10pOwo+ICBpbnQgZHJtX21vZGVfY3JlYXRlX3NjYWxpbmdfbW9kZV9wcm9wZXJ0eShzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2KTsKPiAraW50IGRybV9jb25uZWN0b3JfYXR0YWNoX2NvbnRlbnRfdHlw ZV9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqZGV2KTsKPiAgaW50IGRybV9jb25uZWN0 b3JfYXR0YWNoX3NjYWxpbmdfbW9kZV9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29u bmVjdG9yLAo+ICAJCQkJCSAgICAgICB1MzIgc2NhbGluZ19tb2RlX21hc2spOwo+ICBpbnQgZHJt X2Nvbm5lY3Rvcl9hdHRhY2hfY29udGVudF9wcm90ZWN0aW9uX3Byb3BlcnR5KAo+ICAJCXN0cnVj dCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpOwo+ICBpbnQgZHJtX21vZGVfY3JlYXRlX2FzcGVj dF9yYXRpb19wcm9wZXJ0eShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKPiAraW50IGRybV9tb2Rl X2NyZWF0ZV9jb250ZW50X3R5cGVfcHJvcGVydHkoc3RydWN0IGRybV9kZXZpY2UgKmRldik7Cj4g IGludCBkcm1fbW9kZV9jcmVhdGVfc3VnZ2VzdGVkX29mZnNldF9wcm9wZXJ0aWVzKHN0cnVjdCBk cm1fZGV2aWNlICpkZXYpOwo+ICAKPiAgaW50IGRybV9tb2RlX2Nvbm5lY3Rvcl9zZXRfcGF0aF9w cm9wZXJ0eShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+IGRpZmYgLS1naXQgYS9p bmNsdWRlL2RybS9kcm1fZWRpZC5oIGIvaW5jbHVkZS9kcm0vZHJtX2VkaWQuaAo+IGluZGV4IDhk ODlhOWMzNzQ4ZC4uNGUyNjRjNGQ4YTliIDEwMDY0NAo+IC0tLSBhL2luY2x1ZGUvZHJtL2RybV9l ZGlkLmgKPiArKysgYi9pbmNsdWRlL2RybS9kcm1fZWRpZC5oCj4gQEAgLTM1MCw2ICszNTAsMTIg QEAgZHJtX2xvYWRfZWRpZF9maXJtd2FyZShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9y KQo+ICB9Cj4gICNlbmRpZgo+ICAKPiArYm9vbAo+ICtkcm1faGRtaV9nZXRfaXRjX2JpdF9mcm9t X3Byb3BlcnR5KHVuc2lnbmVkIGludCBjb250ZW50X3R5cGUpOwo+ICsKPiArZW51bSBoZG1pX2Nv bnRlbnRfdHlwZQo+ICtkcm1faGRtaV9nZXRfY29udGVudF90eXBlX2Zyb21fcHJvcGVydHkodW5z aWduZWQgaW50IGNvbnRlbnRfdHlwZSk7Cj4gKwo+ICBpbnQKPiAgZHJtX2hkbWlfYXZpX2luZm9m cmFtZV9mcm9tX2Rpc3BsYXlfbW9kZShzdHJ1Y3QgaGRtaV9hdmlfaW5mb2ZyYW1lICpmcmFtZSwK PiAgCQkJCQkgY29uc3Qgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUsCj4gZGlmZiAtLWdp dCBhL2luY2x1ZGUvZHJtL2RybV9tb2RlX2NvbmZpZy5oIGIvaW5jbHVkZS9kcm0vZHJtX21vZGVf Y29uZmlnLmgKPiBpbmRleCAzM2IzYTk2ZDY2ZDAuLmZiNDU4MzkxNzlkZCAxMDA2NDQKPiAtLS0g YS9pbmNsdWRlL2RybS9kcm1fbW9kZV9jb25maWcuaAo+ICsrKyBiL2luY2x1ZGUvZHJtL2RybV9t b2RlX2NvbmZpZy5oCj4gQEAgLTcyNiw2ICs3MjYsMTEgQEAgc3RydWN0IGRybV9tb2RlX2NvbmZp ZyB7Cj4gIAkgKiBIRE1JIGluZm9mcmFtZSBhc3BlY3QgcmF0aW8gc2V0dGluZy4KPiAgCSAqLwo+ ICAJc3RydWN0IGRybV9wcm9wZXJ0eSAqYXNwZWN0X3JhdGlvX3Byb3BlcnR5Owo+ICsJLyoqCj4g KwkgKiBAY29udGVudF90eXBlX3Byb3BlcnR5OiBPcHRpb25hbCBjb25uZWN0b3IgcHJvcGVydHkg dG8gY29udHJvbCB0aGUKPiArCSAqIEhETUkgaW5mb2ZyYW1lIGNvbnRlbnQgdHlwZSBzZXR0aW5n Lgo+ICsJICovCj4gKwlzdHJ1Y3QgZHJtX3Byb3BlcnR5ICpjb250ZW50X3R5cGVfcHJvcGVydHk7 Cj4gIAkvKioKPiAgCSAqIEBkZWdhbW1hX2x1dF9wcm9wZXJ0eTogT3B0aW9uYWwgQ1JUQyBwcm9w ZXJ0eSB0byBzZXQgdGhlIExVVCB1c2VkIHRvCj4gIAkgKiBjb252ZXJ0IHRoZSBmcmFtZWJ1ZmZl cidzIGNvbG9ycyB0byBsaW5lYXIgZ2FtbWEuCj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWFwaS9k cm0vZHJtX21vZGUuaCBiL2luY2x1ZGUvdWFwaS9kcm0vZHJtX21vZGUuaAo+IGluZGV4IDUwYmNm NDIxNGZmOS4uY2FkOWUwOWZmYWVlIDEwMDY0NAo+IC0tLSBhL2luY2x1ZGUvdWFwaS9kcm0vZHJt X21vZGUuaAo+ICsrKyBiL2luY2x1ZGUvdWFwaS9kcm0vZHJtX21vZGUuaAo+IEBAIC05NCw2ICs5 NCwxMyBAQCBleHRlcm4gIkMiIHsKPiAgI2RlZmluZSBEUk1fTU9ERV9QSUNUVVJFX0FTUEVDVF80 XzMJCTEKPiAgI2RlZmluZSBEUk1fTU9ERV9QSUNUVVJFX0FTUEVDVF8xNl85CQkyCj4gIAo+ICsv KiBDb250ZW50IHR5cGUgb3B0aW9ucyAqLwo+ICsjZGVmaW5lIERSTV9NT0RFX0NPTlRFTlRfVFlQ RV9OT19EQVRBCQkwCj4gKyNkZWZpbmUgRFJNX01PREVfQ09OVEVOVF9UWVBFX0dSQVBISUNTCQkx Cj4gKyNkZWZpbmUgRFJNX01PREVfQ09OVEVOVF9UWVBFX1BIT1RPCQkyCj4gKyNkZWZpbmUgRFJN X01PREVfQ09OVEVOVF9UWVBFX0NJTkVNQQkJMwo+ICsjZGVmaW5lIERSTV9NT0RFX0NPTlRFTlRf VFlQRV9HQU1FCQk0Cj4gKwo+ICAvKiBBc3BlY3QgcmF0aW8gZmxhZyBiaXRtYXNrICg0IGJpdHMg MjI6MTkpICovCj4gICNkZWZpbmUgRFJNX01PREVfRkxBR19QSUNfQVJfTUFTSwkJKDB4MEY8PDE5 KQo+ICAjZGVmaW5lICBEUk1fTU9ERV9GTEFHX1BJQ19BUl9OT05FIFwKPiAtLSAKPiAyLjE3LjAK Ci0tIApWaWxsZSBTeXJqw6Rsw6QKSW50ZWwKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlz dGluZm8vaW50ZWwtZ2Z4Cg==