From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [v2 5/6] i915/dp/fec: Configure the Forward Error Correction bits. Date: Mon, 22 Oct 2018 21:26:06 +0300 Message-ID: <20181022182606.GP9144@intel.com> References: <20181015215037.13901-1-anusha.srivatsa@intel.com> <20181015215037.13901-6-anusha.srivatsa@intel.com> <20181019183911.GW9144@intel.com> <20181019192442.GN8224@intel.com> <20181019195829.GE9144@intel.com> <20181019202905.GA31686@intel.com> <20181019231146.GG9144@intel.com> <83F5C7385F545743AD4FB2A62F75B07347F7AC05@ORSMSX108.amr.corp.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 0D85989CF6 for ; Mon, 22 Oct 2018 18:26:10 +0000 (UTC) Content-Disposition: inline In-Reply-To: <83F5C7385F545743AD4FB2A62F75B07347F7AC05@ORSMSX108.amr.corp.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: "Srivatsa, Anusha" Cc: "intel-gfx@lists.freedesktop.org" List-Id: intel-gfx@lists.freedesktop.org T24gTW9uLCBPY3QgMjIsIDIwMTggYXQgMDY6MDQ6MjhQTSArMDAwMCwgU3JpdmF0c2EsIEFudXNo YSB3cm90ZToKPiAKPiAKPiA+LS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0KPiA+RnJvbTogVmls bGUgU3lyasOkbMOkIFttYWlsdG86dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb21dCj4gPlNl bnQ6IEZyaWRheSwgT2N0b2JlciAxOSwgMjAxOCA0OjEyIFBNCj4gPlRvOiBOYXZhcmUsIE1hbmFz aSBEIDxtYW5hc2kuZC5uYXZhcmVAaW50ZWwuY29tPgo+ID5DYzogU3JpdmF0c2EsIEFudXNoYSA8 YW51c2hhLnNyaXZhdHNhQGludGVsLmNvbT47IGludGVsLQo+ID5nZnhAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnOyBTaW5naCwgR2F1cmF2IEsgPGdhdXJhdi5rLnNpbmdoQGludGVsLmNvbT47IEphbmkK PiA+TmlrdWxhIDxqYW5pLm5pa3VsYUBsaW51eC5pbnRlbC5jb20+Cj4gPlN1YmplY3Q6IFJlOiBb djIgNS82XSBpOTE1L2RwL2ZlYzogQ29uZmlndXJlIHRoZSBGb3J3YXJkIEVycm9yIENvcnJlY3Rp b24gYml0cy4KPiA+Cj4gPk9uIEZyaSwgT2N0IDE5LCAyMDE4IGF0IDAxOjI5OjA1UE0gLTA3MDAs IE1hbmFzaSBOYXZhcmUgd3JvdGU6Cj4gPj4gT24gRnJpLCBPY3QgMTksIDIwMTggYXQgMTA6NTg6 MjlQTSArMDMwMCwgVmlsbGUgU3lyasOkbMOkIHdyb3RlOgo+ID4+ID4gT24gRnJpLCBPY3QgMTks IDIwMTggYXQgMTI6MjQ6NDNQTSAtMDcwMCwgTWFuYXNpIE5hdmFyZSB3cm90ZToKPiA+PiA+ID4g T24gRnJpLCBPY3QgMTksIDIwMTggYXQgMDk6Mzk6MTFQTSArMDMwMCwgVmlsbGUgU3lyasOkbMOk IHdyb3RlOgo+ID4+ID4gPiA+IE9uIE1vbiwgT2N0IDE1LCAyMDE4IGF0IDAyOjUwOjM2UE0gLTA3 MDAsIEFudXNoYSBTcml2YXRzYSB3cm90ZToKPiA+PiA+ID4gPiA+IElmIEZFQyBpcyBzdXBwb3J0 ZWQsIHRoZSBjb3JyZXNwb25kaW5nIERQX1RQX0NUTCByZWdpc3RlciBiaXRzCj4gPj4gPiA+ID4g PiBoYXZlIHRvIGJlIGNvbmZpZ3VyZWQuCj4gPj4gPiA+ID4gPgo+ID4+ID4gPiA+ID4gVGhlIGRy aXZlciBoYXMgdG8gcHJvZ3JhbSB0aGUgRkVDX0VOQUJMRSBpbiBEUF9UUF9DVExbMzBdCj4gPj4g PiA+ID4gPiByZWdpc3RlciBhbmQgd2FpdCB0aWxsIEZFQ19TVEFUVVMgaW4gRFBfVFBfQ1RMWzI4 XSBpcyAxLgo+ID4+ID4gPiA+ID4gQWxzbyBhZGQgdGhlIHdhcm4gbWVzc2FnZSB0byBtYWtlIHN1 cmUgdGhhdCB0aGUgY29udHJvbAo+ID4+ID4gPiA+ID4gcmVnaXN0ZXIgaXMgYWxyZWFkeSBhY3Rp dmUgd2hpbGUgZW5hYmxpbmcgRkVDLgo+ID4+ID4gPiA+ID4KPiA+PiA+ID4gPiA+IHYyOgo+ID4+ ID4gPiA+ID4gLSBDaGFuZ2UgY29tbWl0IG1lc3NhZ2UuIENvbmZpZ3VyZSBmZWMgc3RhdGUgYWZ0 ZXIKPiA+PiA+ID4gPiA+ICAgbGluayB0cmFpbmluZyAoTWFuYXNpLCBHYXVyYXYpCj4gPj4gPiA+ ID4gPiAtIFJlbW92ZSByZWR1bmRlbnQgY2hlY2tzIChNYW5hc2kpCj4gPj4gPiA+ID4gPiAtIFJl bW92ZSB0aGUgcmVnaXN0ZXJzIHRoYXQgZ2V0IGFkZGVkIGF1dG9tYWdpY2FsbHkgKEFudXNoYSkK PiA+PiA+ID4gPiA+Cj4gPj4gPiA+ID4gPiB2Mzogcy9pbnRlbF9kcF9zZXRfZmVjX3N0YXRlKCkv aW50ZWxfZHBfZW5hYmxlX2ZlY19zdGF0ZSgpCj4gPj4gPiA+ID4gPiAoR2F1cmF2KQo+ID4+ID4g PiA+ID4KPiA+PiA+ID4gPiA+IHY0OiByZWJhc2VkLgo+ID4+ID4gPiA+ID4KPiA+PiA+ID4gPiA+ IENjOiBHYXVyYXYgSyBTaW5naCA8Z2F1cmF2Lmsuc2luZ2hAaW50ZWwuY29tPgo+ID4+ID4gPiA+ ID4gQ2M6IEphbmkgTmlrdWxhIDxqYW5pLm5pa3VsYUBsaW51eC5pbnRlbC5jb20+Cj4gPj4gPiA+ ID4gPiBDYzogVmlsbGUgU3lyamFsYSA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+Cj4g Pj4gPiA+ID4gPiBDYzogTWFuYXNpIE5hdmFyZSA8bWFuYXNpLmQubmF2YXJlQGludGVsLmNvbT4K PiA+PiA+ID4gPiA+IFNpZ25lZC1vZmYtYnk6IEFudXNoYSBTcml2YXRzYSA8YW51c2hhLnNyaXZh dHNhQGludGVsLmNvbT4KPiA+PiA+ID4gPiA+IC0tLQo+ID4+ID4gPiA+ID4gIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfcmVnLmggIHwgIDIgKysKPiA+PiA+ID4gPiA+IGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2RkaS5jIHwgIDIgKysKPiA+PiA+ID4gPiA+IGRyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2RwLmMgIHwgMjcKPiA+PiA+ID4gPiA+ICsrKysrKysrKysrKysrKysrKysrKysr KysrKyAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiA+PiA+ID4gPiA+IHwgIDMg KystCj4gPj4gPiA+ID4gPiAgNCBmaWxlcyBjaGFuZ2VkLCAzMyBpbnNlcnRpb25zKCspLCAxIGRl bGV0aW9uKC0pCj4gPj4gPiA+ID4gPgo+ID4+ID4gPiA+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfcmVnLmgKPiA+PiA+ID4gPiA+IGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9yZWcuaCBpbmRleAo+ID4+ID4gPiA+ID4gYmNkZTc4YmMwMDI3Li5jOGQ3ZmRjZDc4 MjMgMTAwNjQ0Cj4gPj4gPiA+ID4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3Jl Zy5oCj4gPj4gPiA+ID4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oCj4g Pj4gPiA+ID4gPiBAQCAtOTA5Myw2ICs5MDkzLDcgQEAgZW51bSBza2xfcG93ZXJfZ2F0ZSB7Cj4g Pj4gPiA+ID4gPiAgI2RlZmluZSBfRFBfVFBfQ1RMX0IJCQkweDY0MTQwCj4gPj4gPiA+ID4gPiAg I2RlZmluZSBEUF9UUF9DVEwocG9ydCkgX01NSU9fUE9SVChwb3J0LCBfRFBfVFBfQ1RMX0EsCj4g Pl9EUF9UUF9DVExfQikKPiA+PiA+ID4gPiA+ICAjZGVmaW5lICBEUF9UUF9DVExfRU5BQkxFCQkJ KDEgPDwgMzEpCj4gPj4gPiA+ID4gPiArI2RlZmluZSAgRFBfVFBfQ1RMX0ZFQ19FTkFCTEUJCQko MSA8PCAzMCkKPiA+PiA+ID4gPiA+ICAjZGVmaW5lICBEUF9UUF9DVExfTU9ERV9TU1QJCQkoMCA8 PCAyNykKPiA+PiA+ID4gPiA+ICAjZGVmaW5lICBEUF9UUF9DVExfTU9ERV9NU1QJCQkoMSA8PCAy NykKPiA+PiA+ID4gPiA+ICAjZGVmaW5lICBEUF9UUF9DVExfRk9SQ0VfQUNUCQkJKDEgPDwgMjUp Cj4gPj4gPiA+ID4gPiBAQCAtOTExMSw2ICs5MTEyLDcgQEAgZW51bSBza2xfcG93ZXJfZ2F0ZSB7 Cj4gPj4gPiA+ID4gPiAgI2RlZmluZSBfRFBfVFBfU1RBVFVTX0EJCQkweDY0MDQ0Cj4gPj4gPiA+ ID4gPiAgI2RlZmluZSBfRFBfVFBfU1RBVFVTX0IJCQkweDY0MTQ0Cj4gPj4gPiA+ID4gPiAgI2Rl ZmluZSBEUF9UUF9TVEFUVVMocG9ydCkgX01NSU9fUE9SVChwb3J0LCBfRFBfVFBfU1RBVFVTX0Es Cj4gPj4gPiA+ID4gPiBfRFBfVFBfU1RBVFVTX0IpCj4gPj4gPiA+ID4gPiArI2RlZmluZSAgRFBf VFBfU1RBVFVTX0ZFQ19FTkFCTEVfTElWRQkJKDEgPDwgMjgpCj4gPj4gPiA+ID4gPiAgI2RlZmlu ZSAgRFBfVFBfU1RBVFVTX0lETEVfRE9ORQkJCSgxIDw8IDI1KQo+ID4+ID4gPiA+ID4gICNkZWZp bmUgIERQX1RQX1NUQVRVU19BQ1RfU0VOVAkJCSgxIDw8IDI0KQo+ID4+ID4gPiA+ID4gICNkZWZp bmUgIERQX1RQX1NUQVRVU19NT0RFX1NUQVRVU19NU1QJCSgxIDw8IDIzKQo+ID4+ID4gPiA+ID4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jCj4gPj4gPiA+ID4g PiBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jCj4gPj4gPiA+ID4gPiBpbmRleCBm NTMxOTAwMTY1YmYuLjY3YzAxM2VhNGQzOSAxMDA2NDQKPiA+PiA+ID4gPiA+IC0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jCj4gPj4gPiA+ID4gPiArKysgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9kZGkuYwo+ID4+ID4gPiA+ID4gQEAgLTI5MTEsNiArMjkxMSw4IEBA IHN0YXRpYyB2b2lkIGludGVsX2RkaV9wcmVfZW5hYmxlX2RwKHN0cnVjdAo+ID5pbnRlbF9lbmNv ZGVyICplbmNvZGVyLAo+ID4+ID4gPiA+ID4gIAkJCQkJICAgICAgRFBfREVDT01QUkVTU0lPTl9F Tik7Cj4gPj4gPiA+ID4gPiAgCWludGVsX2RwX3Npbmtfc2V0X2ZlY19yZWFkeShpbnRlbF9kcCwg Y3J0Y19zdGF0ZSwKPiA+RFBfRkVDX1JFQURZKTsKPiA+PiA+ID4gPiA+ICAJaW50ZWxfZHBfc3Rh cnRfbGlua190cmFpbihpbnRlbF9kcCk7Cj4gPj4gPiA+ID4gPiArCWludGVsX2RwX2VuYWJsZV9m ZWNfc3RhdGUoaW50ZWxfZHAsIGNydGNfc3RhdGUpOwo+ID4+ID4gPiA+Cj4gPj4gPiA+ID4gVGhp cyBkb2Vzbid0IGxvb2sgbGlrZSB0aGUgY29ycmVjdCBzcG90LiBBY2NvcmRpbmcgdG8gdGhlIHNw ZWMKPiA+PiA+ID4gPiBpdCBzaG91bGQgYmUgYWZ0ZXIgc3RvcF9saW5rX3RyYWluKCkgKHdoZXJl IHdlIHNldCBEUF9UUF9DVEwgdG8KPiA+PiA+ID4gPiB0byBub3JtYWwpLgo+ID4+ID4gPiA+Cj4g Pj4gPiA+Cj4gPj4gPiA+IFllcyBJIHNlZSBpbiB0aGUgZGlzcGxheSBwb3J0IGVuYWJsaW5nIHNl cXVlbmNlIHBhZ2Ugb2YgdGhlIHNwZWMsCj4gPj4gPiA+IHRoYXQgaXQgc2F5cyBlbmFibGUgRkVD IGFmdGVyIERQX1RQX0NUTCBpcyBzZXQgdG8gTm9ybWFsLiBBbHNvIHRoZQo+ID4+ID4gPiBGRUMg cGFnZSBzYXlzIHRoYXQgdGhpcyBzaG91bGQgYmUgZW5hYmxlZCBvbmx5IGFmdGVyIGVuc3VyaW5n IHRoYXQKPiA+PiA+ID4gbGluayB0cmFpbmluZyBjb21wbGV0ZWQuIFNvIGFjY29yZGluZyB0byB0 aGF0IHRoaXMgY2FsbCBzaG91bGQgaGFwcGVuIGFmdGVyCj4gPmludGVsX2RwX3N0b3BfbGlua190 cmFpbigpLgo+ID4+ID4gPiBTbyB5ZXMgbW92ZSB0aGlzIHRvIGFmdGVyIGludGVsX2RwX3N0b3Bf bGlua190cmFpbmluZygpLgo+ID4+ID4gPgo+ID4+ID4gPiA+ID4gKwo+ID4+ID4gPiA+ID4gIAlp ZiAocG9ydCAhPSBQT1JUX0EgfHwgSU5URUxfR0VOKGRldl9wcml2KSA+PSA5KQo+ID4+ID4gPiA+ ID4gIAkJaW50ZWxfZHBfc3RvcF9saW5rX3RyYWluKGludGVsX2RwKTsKPiA+PiA+ID4gPiA+Cj4g Pj4gPiA+ID4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYwo+ ID4+ID4gPiA+ID4gYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jIGluZGV4Cj4gPj4g PiA+ID4gPiBiNGU4YWYzMTQyYTIuLmI5Zjg1NTAyZDlmZiAxMDA2NDQKPiA+PiA+ID4gPiA+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMKPiA+PiA+ID4gPiA+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMKPiA+PiA+ID4gPiA+IEBAIC0zMDE3LDYgKzMw MTcsMzMgQEAgdm9pZCBpbnRlbF9kcF9zaW5rX3NldF9mZWNfcmVhZHkoc3RydWN0Cj4gPmludGVs X2RwICppbnRlbF9kcCwKPiA+PiA+ID4gPiA+ICAJCURSTV9ERUJVR19LTVMoIkZhaWxlZCB0byBn ZXQgRkVDIGVuYWJsZWQgaW4KPiA+c2lua1xuIik7ICB9Cj4gPj4gPiA+ID4gPgo+ID4+ID4gPiA+ ID4gK3ZvaWQgaW50ZWxfZHBfZW5hYmxlX2ZlY19zdGF0ZShzdHJ1Y3QgaW50ZWxfZHAgKmludGVs X2RwLAo+ID4+ID4gPiA+ID4gKwkJCSAgICAgICBjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0 ZSAqY3J0Y19zdGF0ZSkgewo+ID4+ID4gPiA+ID4gKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYgPSBkcF90b19pOTE1KGludGVsX2RwKTsKPiA+PiA+ID4gPiA+ICsJc3RydWN0IGlu dGVsX2RpZ2l0YWxfcG9ydCAqaW50ZWxfZGlnX3BvcnQgPQo+ID5kcF90b19kaWdfcG9ydChpbnRl bF9kcCk7Cj4gPj4gPiA+ID4gPiArCWVudW0gcG9ydCBwb3J0ID0gaW50ZWxfZGlnX3BvcnQtPmJh c2UucG9ydDsKPiA+PiA+ID4gPiA+ICsJdTMyIHZhbDsKPiA+PiA+ID4gPiA+ICsKPiA+PiA+ID4g PiA+ICsJLyogRkVDIHN1cHBvcnQgZXhpc3RzIGZvciBEUCAxLjQgb25seSAqLwo+ID4+ID4gPiA+ ID4gKwlpZiAoaW50ZWxfZHBfaXNfZWRwKGludGVsX2RwKSkKPiA+PiA+ID4gPiA+ICsJCXJldHVy bjsKPiA+PiA+ID4gPiA+ICsKPiA+PiA+ID4gPiA+ICsJLyogSWYgRGlzcGxheSBDb21wcmVzc2lv biBpcyBub3QgZW5hYmxlZCwgRkVDIG5lZWQgbm90IGJlCj4gPmNvbmZpZ3VyZWQgKi8KPiA+PiA+ ID4gPiA+ICsJaWYgKCFjcnRjX3N0YXRlLT5kc2NfcGFyYW1zLmNvbXByZXNzaW9uX2VuYWJsZSkK PiA+PiA+ID4gPiA+ICsJCXJldHVybjsKPiA+PiA+ID4gPiA+ICsKPiA+PiA+ID4gPiA+ICsJdmFs ID0gSTkxNV9SRUFEKERQX1RQX0NUTChwb3J0KSk7Cj4gPj4gPiA+ID4gPiArCXZhbCB8PSBEUF9U UF9DVExfRkVDX0VOQUJMRTsKPiA+PiA+ID4gPiA+ICsJSTkxNV9XUklURShEUF9UUF9DVEwocG9y dCksIHZhbCk7Cj4gPj4gPiA+ID4gPiArCj4gPj4gPiA+ID4gPiArCWlmIChpbnRlbF93YWl0X2Zv cl9yZWdpc3RlcihkZXZfcHJpdiwgRFBfVFBfU1RBVFVTKHBvcnQpLAo+ID4+ID4gPiA+ID4gKwkJ CQkgICAgRFBfVFBfU1RBVFVTX0ZFQ19FTkFCTEVfTElWRSwKPiA+PiA+ID4gPiA+ICsJCQkJICAg IERQX1RQX1NUQVRVU19GRUNfRU5BQkxFX0xJVkUsCj4gPj4gPiA+ID4gPiArCQkJCSAgICAxKSkK PiA+PiA+ID4gPiA+ICsJCURSTV9FUlJPUigiVGltZWQgb3V0IHdhaXRpbmcgZm9yIEZFQyBFbmFi bGUKPiA+U3RhdHVzXG4iKTsgfQo+ID4+ID4gPiA+Cj4gPj4gPiA+ID4gVGhlcmUgaXMgbm8gcmVh c29uIHRvIHN0aWNrIHRoZXNlIGludG8gaW50ZWxfZHAuYyB3aGVuIHRoZSBvbmx5Cj4gPj4gPiA+ ID4gY2FsbGVyIGlzIGluIGludGVsX2RkaS5jLgo+ID4+ID4gPiA+Cj4gPj4gPiA+Cj4gPj4gPiA+ IFNvIG1heSBiZSBtb3ZlIHRoZSBzZXRfZHNjX3N0YXRlIGZ1bmN0aW9uIGFsc28gZnJvbSBpbnRl bF9kcC5jIHRvCj4gPj4gPiA+IGludGVsX2RkaS5jIE9yIGRvZXMgaXQgbWFrZSBzZW5zZSB0byBt b3ZlIGFsbCB0aGVzZSBEU0MgcmVsYXRlZCBmdW5jdGlvbnMKPiA+aW5jbHVkaW5nIGZlYyB0byBp bnRlbF9kc2MuYz8KPiA+PiA+ID4KPiA+PiA+ID4gPiBXZSBhbHNvIHNlZW0gdG8gYmUgbWlzc2lu ZyBwbGF0Zm9ybSBjaGVja3MuIEZFQyBkb2Vzbid0IGFwcGVhcgo+ID4+ID4gPiA+IHRvIGJlIGEg dGhpbmcgcHJpb3IgdG8gSUNMLiBJIGd1ZXNzIHRoZSBlZHArY29tcHJlc3Npb25fZW5hYmxlCj4g Pj4gPiA+ID4gdGFrZXMgY2FyZSBvZiB0aGlzLCBidXQgSSB0aGluayBJJ2QgcmF0aGVyIHN0aWNr IGEgbmV3Cj4gPj4gPiA+ID4gZmVjX2VuYWJsZSBib29sIGludG8gdGhlIGNydGMgc3RhdGUuIFRo YXQgd2F5IHdlIGdldCBjYW4gYWRkIGl0IHRvIHRoZQo+ID5zdGF0ZSBjaGVja2VyIGFzIHdlbGwu Cj4gPj4gPiA+ID4KPiA+PiA+ID4KPiA+PiA+ID4gZmVjX2VuYWJsZSBjYW4gYmUgYWRkZWQgdG8g Y3J0Y19zdGF0ZS0+ZHNjX3BhcmFtcyBtYXkgYmU/Cj4gPj4gPgo+ID4+ID4gSXNuJ3QgRkVDIHNv bWV0aGluZyB0aGF0IGNhbiBiZSB1c2VkIHcvbyBEU0MgdG9vPwo+ID4+ID4KPiA+Pgo+ID4+IE5v cGUsIEZFQyBhbHdheXMgZ29lcyBoYW5kIGluIGhhbmQgd2l0aCBEU0Mgb24gZXh0ZXJuYWwgRFAg YW5kIHRoYXQKPiA+PiBEU0Mgb24gZXh0ZXJuYWwgRFAgY2Fubm90IGJlIGVuYWJsZWQgd2l0aG91 dCBGRUMuCj4gPgo+ID5TdXJlLCBEU0MgbmVlZHMgRkVDLiBCdXQgRkVDIGRvZXNuJ3QgbmVlZCBE U0MuIEF0IGxlYXN0IGlmIEknbSByZWFkaW5nIHRoZSBzcGVjCj4gPmNvcnJlY3RseS4KPiA+Cj4g PkZFQyBpcyBlbmFibGVkIGZvciB0aGUgZW50aXJlIG1haW4gbGluaywgc28gZXZlcnl0aGluZyBn ZXR0aW5nIHRyYW5zcG9ydGVkIG92ZXIgaXQKPiA+Z2V0IEZFQ2NlZC4gRFNDIG9uIHRoZSBvdGhl ciBoYW5kIG9wZXJhdGVzIG9uIG9uIGEgc3RyZWFtIGxldmVsLiBTbyBhc3N1bWluZyBhCj4gPk1T VCBicmFuY2ggZGV2aWNlIHRoYXQgY2FuIGRvIEZFQyBidXQgY2FuJ3QgZG8gRFNDIHlvdSBzaG91 bGQgYmUgYWJsZSB0cmFuc3BvcnQKPiA+Ym90aCBjb21wcmVzc2VkIGFuZCB1bmNvbXByZXNzZWQg c3RyZWFtcyB0aHJvdWdoIGl0IHNpbXVsdGFuZW91c2x5LiBLaW5kYQo+ID5tYWtlcyBtZSB0aGlu ayB0aGF0IHdlIHdhbnQgdG8gZW5hYmxlIEZFQyBmb3IgTVNUIHdoZW5ldmVyIHRoZSBkb3duc3Ry ZWFtCj4gPmRldmljZSBzdXBwb3J0cyBpdC4KPiAKPiBGRUMgZm9yIE1TVCBtb2RlcyBpcyBub3Qg c3VwcG9ydGVkIGZvciBJQ0wgcGxhdGZvcm0uIFdlIGNvdWxkIGV4dGVuZCB0aGlzIGZvciBmdXR1 cmUgcGxhdGZvcm1zICBmb3IgYnJhbmNoIGRldmljZXMgdGhhdCBzdXBwb3J0IEZFQy4KCkhtbS4g V2VsbCwgbG9va3MgbGlrZSB3ZSdsbCBoYXZlIHRvIHRoaW5rIGFib3V0IHRoYXQgc29vbiBlbm91 Z2ggYW55d2F5LApzbyBJTU8gYmV0dGVyIGRvIGl0IHJpZ2h0IGZyb20gdGhlIHN0YXJ0LiBBdm9p ZHMgaGF2aW5nIHRvIHJld3JpdGUgdGhlClNTVCBwYXRoIHlldCBhZ2FpbiB3aGVuIHdlIGFkZCB0 aGUgTVNUIHN1cHBvcnQuIEFuZCB3ZSdsbCBhbHNvIGdldCB0aGUKc3RhdGUgY2hlY2tlciBhcyBh IGJvbnVzLgoKPiAKPiA+QW5kIEkgc3VwcG9zZSB3ZSBjb3VsZCBhbHNvIGNvbnNpZGVyIHVzaW5n IEZFQyBvcHBvcnR1bmlzdGljYWxseSBmb3IKPiA+dW5jb21wcmVzc2VkIFNTVCB3aGVuIHdlIGhh dmUgdGhlIGV4dHJhIGxpbmsgYmFuZHdpZHRoIHRvIGhhbmRsZSB0aGUgZXh0cmEKPiA+b3Zlcmhl YWQuCj4gCj4gWWVzLiBUaGUgcmVxdWlyZW1lbnQgdGhvdWdoIGlzIGZvciBjb21wcmVzc2VkIHN0 cmVhbXMuIEkgYW0gbm90IHN1cmUgaWYgd2Ugd2lsbCBoYXZlIHRvIHBheSBhbnkgcG93ZXIgcGVu YWx0eSBmb3IgU1NULiBBbHNvIG15IHVuZGVyc3RhbmRpbmcgaXMgdGhhdCBpZiBhIGZldyBzeW1i b2xzIGluIGEgbm9uLWNvbXByZXNzZWQgc3RyZWFtIGFyZSBpbiBlcnJvciwgdGhlbiBvbmx5IHRo b3NlIHN5bWJvbHMgd2lsbCBiZSBpbiBlcnJvci4gVGhlc2UgZXJyb3JzIGRvIG5vdCBjYXVzZSBv dGhlciBwaXhlbHMgdG8gZ2V0IGNvcnJ1cHRlZC4gSW4gY29tcHJlc3NlZCBzdHJlYW1zLCBpZiBh IGZldyBzeW1ib2xzIGFyZSBpbiBlcnJvciwgaXQgY2FuIGNhdXNlIHRoZSBlbnRpcmUgc2xpY2Ug dG8gZ2V0IGNvcnJ1cHRlZC4gV2lsbCB3ZSBiZSBnZXR0aW5nIGFueSBtdWNoIHJldHVybiBvbiBu b24tY29tcHJlc3NlZCBzdHJlYW1zPwoKTm8gaWRlYS4KCi0tIApWaWxsZSBTeXJqw6Rsw6QKSW50 ZWwKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwt Z2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==