From mboxrd@z Thu Jan 1 00:00:00 1970 From: Manasi Navare Subject: Re: [PATCH] drm/dsc: Add kernel documentation for DRM DP DSC helpers Date: Tue, 5 Feb 2019 09:44:17 -0800 Message-ID: <20190205174416.GA8489@intel.com> References: <20190204234022.4170-1-manasi.d.navare@intel.com> <20190205095512.GD3271@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <20190205095512.GD3271@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Daniel Vetter Cc: Daniel Vetter , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gVHVlLCBGZWIgMDUsIDIwMTkgYXQgMTA6NTU6MTJBTSArMDEwMCwgRGFuaWVsIFZldHRlciB3 cm90ZToKPiBPbiBNb24sIEZlYiAwNCwgMjAxOSBhdCAwMzo0MDoyMlBNIC0wODAwLCBNYW5hc2kg TmF2YXJlIHdyb3RlOgo+ID4gVGhpcyBwYXRjaCBhZGRzIGFwcHJvcGlhdGUga2VybmVsIGRvY3Vt ZW50YXRpb24gZm9yIERSTSBEUCBoZWxwZXJzCj4gPiB1c2VkIGZvciBlbmFibGluZyBEaXNwbGF5 IFN0cmVhbSBjb21wcmVzc2lvbiBmdW5jdGlvbmFsaXR5IGluCj4gPiBkcm1fZHBfaGVscGVyLmgg YW5kIGRybV9kcF9oZWxwZXIuYyBhcyB3ZWxsIGFzIGZvciB0aGUgRFNDIHNwZWMKPiA+IHJlbGF0 ZWQgc3RydWN0dXJlIGRlZmluaXRpb25zIGFuZCBoZWxwZXJzIGluIGRybV9kc2MuYyBhbmQgZHJt X2RzYy5oCj4gPiBBbHNvIGFkZCBsaW5rcyBiZXR3ZWVuIHRoZSBmdW5jdGlvbnMgYW5kIHN0cnVj dHVyZXMgaW4gdGhlIGRvY3VtZW50YXRpb24uCj4gPiAKPiA+IFN1Z2dlc3RlZC1ieTogRGFuaWVs IFZldHRlciA8ZGFuaWVsLnZldHRlckBpbnRlbC5jb20+Cj4gPiBTdWdnZXN0ZWQtYnk6IFNlYW4g UGF1bCA8c2VhbkBwb29ybHkucnVuPgo+ID4gQ2M6IERhbmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0 ZXJAaW50ZWwuY29tPgo+ID4gQ2M6IFNlYW4gUGF1bCA8c2VhbkBwb29ybHkucnVuPgo+ID4gU2ln bmVkLW9mZi1ieTogTWFuYXNpIE5hdmFyZSA8bWFuYXNpLmQubmF2YXJlQGludGVsLmNvbT4KPiAK PiBBd2Vzb21lLCBtb3JlIGRvY3MhCj4gCj4gPiAtLS0KPiA+ICBkcml2ZXJzL2dwdS9kcm0vZHJt X2RwX2hlbHBlci5jIHwgIDQyICsrKysrKysrKy0KPiA+ICBkcml2ZXJzL2dwdS9kcm0vZHJtX2Rz Yy5jICAgICAgIHwgIDEzICsrLQo+ID4gIGluY2x1ZGUvZHJtL2RybV9kcF9oZWxwZXIuaCAgICAg fCAgMTUgKysrLQo+ID4gIGluY2x1ZGUvZHJtL2RybV9kc2MuaCAgICAgICAgICAgfCAxMzggKysr KysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KPiA+ICA0IGZpbGVzIGNoYW5nZWQsIDE0MiBp bnNlcnRpb25zKCspLCA2NiBkZWxldGlvbnMoLSkKPiA+IAo+ID4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9kcm1fZHBfaGVscGVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2RwX2hlbHBl ci5jCj4gPiBpbmRleCA1NDEyMGI2MzE5ZTcuLmU5ZTAyMzNmNWIyZiAxMDA2NDQKPiA+IC0tLSBh L2RyaXZlcnMvZ3B1L2RybS9kcm1fZHBfaGVscGVyLmMKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9kcm1fZHBfaGVscGVyLmMKPiA+IEBAIC0xMzYwLDcgKzEzNjAsMjAgQEAgaW50IGRybV9kcF9y ZWFkX2Rlc2Moc3RydWN0IGRybV9kcF9hdXggKmF1eCwgc3RydWN0IGRybV9kcF9kZXNjICpkZXNj LAo+ID4gIEVYUE9SVF9TWU1CT0woZHJtX2RwX3JlYWRfZGVzYyk7Cj4gPiAgCj4gPiAgLyoqCj4g PiAtICogRFJNIERQIEhlbHBlcnMgZm9yIERTQwo+ID4gKyAqIGRybV9kcF9kc2Nfc2lua19tYXhf c2xpY2VfY291bnQoKSAtIEdldCB0aGUgbWF4IHNsaWNlIGNvdW50Cj4gPiArICogc3VwcG9ydGVk IGJ5IHRoZSBEU0Mgc2luay4KPiA+ICsgKiBAZHNjX2RwY2Q6IERTQyBjYXBhYmlsaXRpZXMgZnJv bSBEUENECj4gPiArICogQGlzX2VkcDogdHJ1ZSBpZiBpdHMgZURQLCBmYWxzZSBmb3IgRFAKPiA+ ICsgKgo+ID4gKyAqIFJlYWQgdGhlIHNsaWNlIGNhcGFiaWxpdGllcyBEUENEIHJlZ2lzdGVyIGZy b20gRFNDIHNpbmsgdG8gZ2V0Cj4gPiArICogdGhlIG1heGltdW0gc2xpY2UgY291bnQgc3VwcG9y dGVkLiBUaGlzIGlzIHVzZWQgdG8gcG9wdWxhdGUKPiA+ICsgKiB0aGUgRFNDIHBhcmFtZXRlcnMg aW4gdGhlICZzdHJ1Y3QgZHJtX2RzY19jb25maWcgYnkgdGhlIGRyaXZlci4KPiA+ICsgKiBEcml2 ZXIgY3JlYXRlcyBhbiBpbmZvZnJhbWUgdXNpbmcgdGhlc2UgcGFyYW1ldGVycyB0byBwb3B1bGF0 ZQo+ID4gKyAqICZzdHJ1Y3QgZHJtX2RzY19wcHNfaW5mb2ZyYW1lLiBUaGVzZSBhcmUgc2VudCB0 byB0aGUgc2luayB1c2luZyBEU0MKPiA+ICsgKiBpbmZvZnJhbWUgdXNpbmcgdGhlIGhlbHBlciBm dW5jdGlvbiBkcm1fZHNjX3Bwc19pbmZvZnJhbWVfcGFjaygpCj4gPiArICoKPiA+ICsgKiBSZXR1 cm5zOgo+ID4gKyAqIE1heGltdW0gc2xpY2UgY291bnQgc3VwcG9ydGVkIGJ5IERTQyBzaW5rIG9y IDAgaXRzIGludmFsaWQKPiA+ICAgKi8KPiA+ICB1OCBkcm1fZHBfZHNjX3NpbmtfbWF4X3NsaWNl X2NvdW50KGNvbnN0IHU4IGRzY19kcGNkW0RQX0RTQ19SRUNFSVZFUl9DQVBfU0laRV0sCj4gPiAg CQkJCSAgIGJvb2wgaXNfZWRwKQo+ID4gQEAgLTE0MDUsNiArMTQxOCwxOSBAQCB1OCBkcm1fZHBf ZHNjX3NpbmtfbWF4X3NsaWNlX2NvdW50KGNvbnN0IHU4IGRzY19kcGNkW0RQX0RTQ19SRUNFSVZF Ul9DQVBfU0laRV0sCj4gPiAgfQo+ID4gIEVYUE9SVF9TWU1CT0woZHJtX2RwX2RzY19zaW5rX21h eF9zbGljZV9jb3VudCk7Cj4gPiAgCj4gPiArLyoqCj4gPiArICogZHJtX2RwX2RzY19zaW5rX2xp bmVfYnVmX2RlcHRoKCkgLSBHZXQgdGhlIGxpbmUgYnVmZmVyIGRlcHRoIGluIGJpdHMgd2hpY2gg aXMKPiA+ICsgKiBudW1iZXIgb2YgYml0cyBvZiBwcmVjaXNpb24gd2l0aGluIHRoZSBkZWNvZGVy IGxpbmUgYnVmZmVyIHN1cHBvcnRlZCBieQo+ID4gKyAqIHRoZSBEU0Mgc2luay4gVGhpcyBpcyB1 c2VkIHRvIHBvcHVsYXRlIHRoZSBEU0MgcGFyYW1ldGVycyBpbiB0aGUKPiA+ICsgKiAmc3RydWN0 IGRybV9kc2NfY29uZmlnIGJ5IHRoZSBkcml2ZXIuCj4gPiArICogRHJpdmVyIGNyZWF0ZXMgYW4g aW5mb2ZyYW1lIHVzaW5nIHRoZXNlIHBhcmFtZXRlcnMgdG8gcG9wdWxhdGUKPiA+ICsgKiAmc3Ry dWN0IGRybV9kc2NfcHBzX2luZm9mcmFtZS4gVGhlc2UgYXJlIHNlbnQgdG8gdGhlIHNpbmsgdXNp bmcgRFNDCj4gPiArICogaW5mb2ZyYW1lIHVzaW5nIHRoZSBoZWxwZXIgZnVuY3Rpb24gZHJtX2Rz Y19wcHNfaW5mb2ZyYW1lX3BhY2soKQo+IAo+IFRoZSBlbnRpcmUgYWJvdmUgYmxvY2sgZW5kcyB1 cCBiZWluZyB1c2VkIGFzIHRoZSAib25lLWxpbmUiIHN1bW1hcnksIGFuZAo+IG5vIGRlc2NyaXB0 aW9uLiBJIGd1ZXNzIHlvdSB3YW50ZWQgdG8gc3BsaXQgaXQgdXAgbGlrZSB0aGUgb25lIGFib3Zl Pwo+IAo+IFRoZSBkZXNjcmlwdGlvbiBzdGFydHMgYWZ0ZXIgdGhlIGZpcnN0IGVtcHR5IG5ld2xp bmUsIGV2ZXJ5dGhpbmcgYmVmb3JlCj4gdGhhdCBpcyB0aGUgc3VtbWFyeS4KClllcyBJIHdpbGwg c3BsaXQgdGhpcyBhcyBzdW1tYXJ5IGFuZCBkZXNjcmlwdGlvbi4gSSB0ZXN0ZWQgdGhpcyBpbiBo dG1sIGRvY3MKYnV0IG15IGV5ZXMgZmFpbGVkIHRvIGNhdGNoIHRoaXMuIFRoYW5rcyBmb3IgcG9p bnRpbmcgb3V0LgoKPiAKPiA+ICsgKiBAZHNjX2RwY2Q6IERTQyBjYXBhYmlsaXRpZXMgZnJvbSBE UENECj4gPiArICoKPiA+ICsgKiBSZXR1cm5zOgo+ID4gKyAqIExpbmUgYnVmZmVyIGRlcHRoIHN1 cHBvcnRlZCBieSBEU0MgcGFuZWwgb3IgMCBpdHMgaW52YWxpZAo+ID4gKyAqLwo+ID4gIHU4IGRy bV9kcF9kc2Nfc2lua19saW5lX2J1Zl9kZXB0aChjb25zdCB1OCBkc2NfZHBjZFtEUF9EU0NfUkVD RUlWRVJfQ0FQX1NJWkVdKQo+ID4gIHsKPiA+ICAJdTggbGluZV9idWZfZGVwdGggPSBkc2NfZHBj ZFtEUF9EU0NfTElORV9CVUZfQklUX0RFUFRIIC0gRFBfRFNDX1NVUFBPUlRdOwo+ID4gQEAgLTE0 MzQsNiArMTQ2MCwyMCBAQCB1OCBkcm1fZHBfZHNjX3NpbmtfbGluZV9idWZfZGVwdGgoY29uc3Qg dTggZHNjX2RwY2RbRFBfRFNDX1JFQ0VJVkVSX0NBUF9TSVpFXSkKPiA+ICB9Cj4gPiAgRVhQT1JU X1NZTUJPTChkcm1fZHBfZHNjX3NpbmtfbGluZV9idWZfZGVwdGgpOwo+ID4gIAo+ID4gKy8qKgo+ ID4gKyAqIGRybV9kcF9kc2Nfc2lua19zdXBwb3J0ZWRfaW5wdXRfYnBjcygpIC0gR2V0IGFsbCB0 aGUgaW5wdXQgYml0cyBwZXIgY29tcG9uZW50Cj4gPiArICogdmFsdWVzIHN1cHBvcnRlZCBieSB0 aGUgRFNDIHNpbmsuIFRoaXMgaXMgdXNlZCB0byBwb3B1bGF0ZSB0aGUgRFNDIHBhcmFtZXRlcnMK PiA+ICsgKiBpbiB0aGUgJnN0cnVjdCBkcm1fZHNjX2NvbmZpZyBieSB0aGUgZHJpdmVyLgo+ID4g KyAqIERyaXZlciBjcmVhdGVzIGFuIGluZm9mcmFtZSB1c2luZyB0aGVzZSBwYXJhbWV0ZXJzIHRv IHBvcHVsYXRlCj4gPiArICogJnN0cnVjdCBkcm1fZHNjX3Bwc19pbmZvZnJhbWUuIFRoZXNlIGFy ZSBzZW50IHRvIHRoZSBzaW5rIHVzaW5nIERTQwo+ID4gKyAqIGluZm9mcmFtZSB1c2luZyB0aGUg aGVscGVyIGZ1bmN0aW9uIGRybV9kc2NfcHBzX2luZm9mcmFtZV9wYWNrKCkKPiA+ICsgKiBAZHNj X2RwY2Q6IERTQyBjYXBhYmlsaXRpZXMgZnJvbSBEUENECj4gPiArICogQGRzY19icGM6IEFuIGFy cmF5IHRvIGJlIGZpbGxlZCBieSB0aGlzIGhlbHBlciB3aXRoIHN1cHBvcnRlZAo+ID4gKyAqICAg ICAgICAgICBpbnB1dCBicGNzLgo+ID4gKyAqCj4gPiArICogUmV0dXJuczoKPiA+ICsgKiBOdW1i ZXIgb2YgaW5wdXQgQlBDIHZhbHVlcyBwYXJzZWQgZnJvbSB0aGUgRFBDRAo+ID4gKyAqLwo+ID4g IGludCBkcm1fZHBfZHNjX3Npbmtfc3VwcG9ydGVkX2lucHV0X2JwY3MoY29uc3QgdTggZHNjX2Rw Y2RbRFBfRFNDX1JFQ0VJVkVSX0NBUF9TSVpFXSwKPiA+ICAJCQkJCSB1OCBkc2NfYnBjWzNdKQo+ ID4gIHsKPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2RzYy5jIGIvZHJpdmVy cy9ncHUvZHJtL2RybV9kc2MuYwo+ID4gaW5kZXggYmMyYjIzYWRiMDcyLi4wZmQ1NmZiZGY5YjQg MTAwNjQ0Cj4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2RzYy5jCj4gPiArKysgYi9kcml2 ZXJzL2dwdS9kcm0vZHJtX2RzYy5jCj4gPiBAQCAtMTcsNiArMTcsMTIgQEAKPiA+ICAvKioKPiA+ ICAgKiBET0M6IGRzYyBoZWxwZXJzCj4gPiAgICoKPiA+ICsgKiBWRVNBIHNwZWNpZmljYXRpb24g Zm9yIERQIDEuNCBhZGRzIGEgbmV3IGZlYXR1cmUgY2FsbGVkIERpc3BsYXkgU3RyZWFtCj4gPiAr ICogQ29tcHJlc3Npb24gKERTQykgdXNlZCB0byBjb21wcmVzcyB0aGUgcGl4ZWwgYml0cyBiZWZv cmUgc2VuZGluZyBpdCBvbgo+ID4gKyAqIERQL2VEUC9NSVBJIERTSSBpbnRlcmZhY2UuIERTQyBp cyByZXF1aXJlZCB0byBiZSBlbmFibGVkIHNvIHRoYXQgdGhlIGV4aXN0aW5nCj4gPiArICogZGlz cGxheSBpbnRlcmZhY2VzIGNhbiBzdXBwb3J0IGhpZ2ggcmVzb2x1dGlvbnMgYXQgaGlnaGVyIGZy YW1lcyByYXRlcyB1aXNuZwo+ID4gKyAqIHRoZSBtYXhpbXVtIGF2YWlsYWJsZSBsaW5rIGNhcGFj aXR5IG9mIHRoZXNlIGludGVyZmFjZXMuCj4gPiArICoKPiA+ICAgKiBUaGVzZSBmdW5jdGlvbnMg Y29udGFpbiBzb21lIGNvbW1vbiBsb2dpYyBhbmQgaGVscGVycyB0byBkZWFsIHdpdGggVkVTQQo+ ID4gICAqIERpc3BsYXkgU3RyZWFtIENvbXByZXNzaW9uIHN0YW5kYXJkIHJlcXVpcmVkIGZvciBE U0Mgb24gRGlzcGxheSBQb3J0L2VEUCBvcgo+ID4gICAqIE1JUEkgZGlzcGxheSBpbnRlcmZhY2Vz Lgo+ID4gQEAgLTI2LDYgKzMyLDcgQEAKPiA+ICAgKiBkcm1fZHNjX2RwX3Bwc19oZWFkZXJfaW5p dCgpIC0gSW5pdGlhbGl6ZXMgdGhlIFBQUyBIZWFkZXIKPiA+ICAgKiBmb3IgRGlzcGxheVBvcnQg YXMgcGVyIHRoZSBEUCAxLjQgc3BlYy4KPiA+ICAgKiBAcHBzX3NkcDogU2Vjb25kYXJ5IGRhdGEg cGFja2V0IGZvciBEU0MgUGljdHVyZSBQYXJhbWV0ZXIgU2V0Cj4gPiArICogICAgICAgICAgIGFz IGRlZmluZWQgaW4gJnN0cnVjdCBkcm1fZHNjX3Bwc19pbmZvZnJhbWUKPiA+ICAgKi8KPiA+ICB2 b2lkIGRybV9kc2NfZHBfcHBzX2hlYWRlcl9pbml0KHN0cnVjdCBkcm1fZHNjX3Bwc19pbmZvZnJh bWUgKnBwc19zZHApCj4gPiAgewo+ID4gQEAgLTQ0LDkgKzUxLDExIEBAIEVYUE9SVF9TWU1CT0wo ZHJtX2RzY19kcF9wcHNfaGVhZGVyX2luaXQpOwo+ID4gICAqIHRoYXQgc3BhbiBtb3JlIHRoYW4g MSBieXRlLgo+ID4gICAqCj4gPiAgICogQHBwc19zZHA6Cj4gPiAtICogU2Vjb25kYXJ5IGRhdGEg cGFja2V0IGZvciBEU0MgUGljdHVyZSBQYXJhbWV0ZXIgU2V0Cj4gPiArICogU2Vjb25kYXJ5IGRh dGEgcGFja2V0IGZvciBEU0MgUGljdHVyZSBQYXJhbWV0ZXIgU2V0LiBUaGlzIGlzIGRlZmluZWQK PiA+ICsgKiBieSAmc3RydWN0IGRybV9kc2NfcHBzX2luZm9mcmFtZQo+ID4gICAqIEBkc2NfY2Zn Ogo+ID4gLSAqIERTQyBDb25maWd1cmF0aW9uIGRhdGEgZmlsbGVkIGJ5IGRyaXZlcgo+ID4gKyAq IERTQyBDb25maWd1cmF0aW9uIGRhdGEgZmlsbGVkIGJ5IGRyaXZlciBhcyBkZWZpbmVkIGJ5Cj4g PiArICogJnN0cnVjdCBkcm1fZHNjX2NvbmZpZwo+ID4gICAqLwo+ID4gIHZvaWQgZHJtX2RzY19w cHNfaW5mb2ZyYW1lX3BhY2soc3RydWN0IGRybV9kc2NfcHBzX2luZm9mcmFtZSAqcHBzX3NkcCwK PiA+ICAJCQkJY29uc3Qgc3RydWN0IGRybV9kc2NfY29uZmlnICpkc2NfY2ZnKQo+ID4gZGlmZiAt LWdpdCBhL2luY2x1ZGUvZHJtL2RybV9kcF9oZWxwZXIuaCBiL2luY2x1ZGUvZHJtL2RybV9kcF9o ZWxwZXIuaAo+ID4gaW5kZXggNWRiN2ZiOGM4YjUwLi4yNzExY2RmYTBjMTMgMTAwNjQ0Cj4gPiAt LS0gYS9pbmNsdWRlL2RybS9kcm1fZHBfaGVscGVyLmgKPiA+ICsrKyBiL2luY2x1ZGUvZHJtL2Ry bV9kcF9oZWxwZXIuaAo+ID4gQEAgLTEwNTIsMTEgKzEwNTIsMTggQEAgaW50IGRybV9kcF9id19j b2RlX3RvX2xpbmtfcmF0ZSh1OCBsaW5rX2J3KTsKPiA+ICAjZGVmaW5lIERQX1NEUF9WU0NfRVhU X0NFQQkJMHgyMSAvKiBEUCAxLjQgKi8KPiA+ICAvKiAweDgwKyBDRUEtODYxIGluZm9mcmFtZSB0 eXBlcyAqLwo+ID4gIAo+ID4gKy8qKgo+ID4gKyAqIHN0cnVjdCBkcF9zZHBfaGVhZGVyIC0gRFAg c2Vjb25kYXJ5IGRhdGEgcGFja2V0IGhlYWRlcgo+ID4gKyAqIEBIQjA6IFNlY29uZGFyeSBEYXRh IFBhY2tldCBJRAo+ID4gKyAqIEBIQjE6IFNlY29uZGFyeSBEYXRhIFBhY2tldCBUeXBlCj4gPiAr ICogQEhCMjogU2Vjb25kYXJ5IERhdGEgUGFja2V0IFNwZWNpZmljIGhlYWRlciwgQnl0ZSAwCj4g PiArICogQEhCMzogU2Vjb25kYXJ5IERhdGEgcGFja2V0IFNwZWNpZmljIGhlYWRlciwgQnl0ZSAx Cj4gPiArICovCj4gPiAgc3RydWN0IGRwX3NkcF9oZWFkZXIgewo+ID4gLQl1OCBIQjA7IC8qIFNl Y29uZGFyeSBEYXRhIFBhY2tldCBJRCAqLwo+ID4gLQl1OCBIQjE7IC8qIFNlY29uZGFyeSBEYXRh IFBhY2tldCBUeXBlICovCj4gPiAtCXU4IEhCMjsgLyogU2Vjb25kYXJ5IERhdGEgUGFja2V0IFNw ZWNpZmljIGhlYWRlciwgQnl0ZSAwICovCj4gPiAtCXU4IEhCMzsgLyogU2Vjb25kYXJ5IERhdGEg cGFja2V0IFNwZWNpZmljIGhlYWRlciwgQnl0ZSAxICovCj4gPiArCXU4IEhCMDsKPiA+ICsJdTgg SEIxOwo+ID4gKwl1OCBIQjI7Cj4gPiArCXU4IEhCMzsKPiA+ICB9IF9fcGFja2VkOwoKTWFraW5n IHRoaXMgYSBwYWNrZWQgc3RydWN0IHNob3VsZCBiZSBpbiBhIHNlcGFyYXRlIHBhdGNoIHJpZ2h0 PwpGdW5jdGlvbmFsIGNoYW5nZS4KCj4gPiAgCj4gPiAgI2RlZmluZSBFRFBfU0RQX0hFQURFUl9S RVZJU0lPTl9NQVNLCQkweDFGCj4gPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2RzYy5o IGIvaW5jbHVkZS9kcm0vZHJtX2RzYy5oCj4gPiBpbmRleCBkMDNmMWI4MzQyMWEuLmY1MGQyNjVh OTdlMiAxMDA2NDQKPiA+IC0tLSBhL2luY2x1ZGUvZHJtL2RybV9kc2MuaAo+ID4gKysrIGIvaW5j bHVkZS9kcm0vZHJtX2RzYy5oCj4gPiBAQCAtNDQsMTExICs0NCwxMjggQEAKPiA+ICAjZGVmaW5l IERTQ18xXzJfTUFYX0xJTkVCVUZfREVQVEhfVkFMCQkwCj4gPiAgI2RlZmluZSBEU0NfMV8xX01B WF9MSU5FQlVGX0RFUFRIX0JJVFMJCTEzCj4gPiAgCj4gPiAtLyogQ29uZmlndXJhdGlvbiBmb3Ig YSBzaW5nbGUgUmF0ZSBDb250cm9sIG1vZGVsIHJhbmdlICovCj4gPiArLyoqCj4gPiArICogc3Ry dWN0IGRybV9kc2NfcmNfcmFuZ2VfcGFyYW1ldGVycyAtIERTQyBSYXRlIENvbnRyb2wgcmFuZ2Ug cGFyYW1ldGVycwo+ID4gKyAqCj4gPiArICogQHJhbmdlX21pbl9xcDogTWluIFF1YW50aXphdGlv biBQYXJhbWV0ZXJzIGFsbG93ZWQgZm9yIHRoaXMgcmFuZ2UKPiA+ICsgKiBAcmFuZ2VfbWF4X3Fw OiBNYXggUXVhbnRpemF0aW9uIFBhcmFtZXRlcnMgYWxsb3dlZCBmb3IgdGhpcyByYW5nZQo+ID4g KyAqIEByYW5nZV9icGdfb2Zmc2V0OiBCaXRzL2dyb3VwIG9mZnNldCB0byBhcHBseSB0byB0YXJn ZXQgZm9yIHRoaXMgZ3JvdXAKPiA+ICsgKi8KPiA+ICBzdHJ1Y3QgZHJtX2RzY19yY19yYW5nZV9w YXJhbWV0ZXJzIHsKPiA+IC0JLyogTWluIFF1YW50aXphdGlvbiBQYXJhbWV0ZXJzIGFsbG93ZWQg Zm9yIHRoaXMgcmFuZ2UgKi8KPiA+ICAJdTggcmFuZ2VfbWluX3FwOwo+ID4gLQkvKiBNYXggUXVh bnRpemF0aW9uIFBhcmFtZXRlcnMgYWxsb3dlZCBmb3IgdGhpcyByYW5nZSAqLwo+ID4gIAl1OCBy YW5nZV9tYXhfcXA7Cj4gPiAtCS8qIEJpdHMvZ3JvdXAgb2Zmc2V0IHRvIGFwcGx5IHRvIHRhcmdl dCBmb3IgdGhpcyBncm91cCAqLwo+ID4gIAl1OCByYW5nZV9icGdfb2Zmc2V0Owo+IAo+IFNpbmNl IHlvdSBhbHJlYWR5IGhhdmUgaW5saW5lIGNvbW1lbnRzIEknZCBzdGljayB0byBpbmxpbmUga2Vy bmVsZG9jLgo+IFRob3NlIGNhbiBhbHNvIGJlIGp1c3Qgb25lIGxpbmUsIGUuZy4KPiAKPiAJLyoq IGZvbzogb25lLWxpbmUgZGVzY3JpcHRpb24gb2Ygd2hhdCBmb28gaXMgKi8KPiAJdTggZm9vOwo+ CgpPayB3aWxsIGNoYW5nZSBpdCBiYWNrCiAKPiA+ICB9Owo+ID4gIAo+ID4gKy8qKgo+ID4gKyAq IHN0cnVjdCBkcm1fZHNjX2NvbmZpZyAtIFBhcmFtZXRlcnMgcmVxdWlyZWQgdG8gY29uZmlndXJl IERTQwo+ID4gKyAqCj4gPiArICogQGxpbmVfYnVmX2RlcHRoOiBCaXRzIC8gY29tcG9uZW50IGZv ciBwcmV2aW91cyByZWNvbnN0cnVjdGVkIGxpbmUgYnVmZmVyCj4gPiArICogQGJpdHNfcGVyX2Nv bXBvbmVudDogQml0cyBwZXIgY29tcG9uZW50IHRvIGNvZGUgKDgvMTAvMTIpCj4gPiArICogQGNv bnZlcnRfcmdiOiBGbGFnIHRvIGluZGljYXRlIGlmIFJHQiAtIFlDb0NnIGNvbnZlcnNpb24gaXMg bmVlZGVkCj4gPiArICogICAgICAgICAgICAgICBUcnVlIGlmIFJHQiBpbnB1dCwgRmFsc2UgaWYg WUNvQ2cgaW5wdXQKPiA+ICsgKiBAc2xpY2VfY291bnQ6IE51bWJlciBmbyBzbGljZXMgcGVyIGxp bmUgdXNlZCBieSB0aGUgRFNDIGVuY29kZXIKPiA+ICsgKiBAc2xpY2Vfd2lkdGg6IFdpZHRoIG9m IGVhY2ggc2xpY2UgaW4gcGl4ZWxzCj4gPiArICogQHNsaWNlX2hlaWdodDogU2xpY2UgaGVpZ2h0 IGluIHBpeGVscwo+ID4gKyAqIEBlbmFibGU0MjI6IFRydWUgZm9yIDRfMl8yIHNhbXBsaW5nLCBm YWxzZSBmb3IgNF80XzQgc2FtcGxpbmcKPiA+ICsgKiBAcGljX3dpZHRoOiBXaWR0aCBvZiB0aGUg aW5wdXQgZGlzcGxheSBmcmFtZSBpbiBwaXhlbHMKPiA+ICsgKiBAcGljX2hlaWdodDogVmVydGlj YWwgaGVpZ2h0IG9mIHRoZSBpbnB1dCBkaXNwbGF5IGZyYW1lCj4gPiArICogQHJjX3RndF9vZmZz ZXRfaGlnaDogT2Zmc2V0IHRvIGJpdHMvZ3JvdXAgdXNlZCBieSBSQyB0byBkZXRlcm1pbmUgUVAK PiA+ICsgKiAgICAgICAgICAgICAgICAgICAgICBhZGp1c3RtZW50Cj4gPiArICogQHJjX3RndF9v ZmZzZXRfbG93OiBPZmZzZXQgdG8gYml0cy9ncm91cCB1c2VkIGJ5IFJDIHRvIGRldGVybWluZSBR UAo+ID4gKyAqICAgICAgICAgICAgICAgICAgICAgYWRqdXN0bWVudAo+ID4gKyAqIEBiaXRzX3Bl cl9waXhlbDogVGFyZ2V0IGJpdHMgcGVyIHBpeGVsIHdpdGggNCBmcmFjdGlvbmFsIGJpdHMuCj4g PiArICogICAgICAgICAgICAgICAgICBiaXRzX3Blcl9waXhlbCA8PCA0Cj4gPiArICogQHJjX2Vk Z2VfZmFjdG9yOiBGYWN0b3IgdG8gZGV0ZXJtaW5lIGlmIGFuIGVkZ2UgaXMgcHJlc2VudCBiYXNl ZCBvbiB0aGUKPiA+ICsgKiAgICAgICAgICAgICAgICAgIGJpdHMgcHJvZHVjZWQKPiA+ICsgKiBA cmNfcXVhbnRfaW5jcl9saW1pdDE6IFNsb3cgZG93biBpbmNyZW1lbnRpbmcgb25jZSB0aGUgcmFu Z2UgcmVhY2hlcyB0aGlzCj4gPiArICogICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZQo+ID4g KyAqIEByY19xdWFudF9pbmNyX2xpbWl0MDogU2xvdyBkb3duIGluY3JlbWVudGluZyBvbmNlIHRo ZSByYW5nZSByZWFjaGVzIHRoaXMKPiA+ICsgKiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVl Cj4gPiArICogQGluaXRpYWxfeG1pdF9kZWxheTogTnVtYmVyIG9mIHBpeGVscyB0byBkZWxheSB0 aGUgaW5pdGlhbCB0cmFuc21pc3Npb24KPiA+ICsgKiBAaW5pdGlhbF9kZWNfZGVsYXk6IEluaXRp YWwgZGVjb2RlciBkZWxheSwgbnVtYmVyIG9mIHBpeGVsIHRpbWVzIHRoYXQgdGhlCj4gPiArICog ICAgICAgICAgICAgICAgICAgICBkZWNvZXIgYWNjdW11bGF0ZXMgZGF0YSBpbiBpdHMgcmF0ZSBi dWZmZXIgYmVmb3JlCj4gPiArICogICAgICAgICAgICAgICAgICAgICBzdGFydGluZyB0byBkZWNv ZGUgYW5kIG91dHB1dCBwaXhlbHMuCj4gPiArICogQGJsb2NrX3ByZWRfZW5hYmxlOiBUcnVlIGlm IGJsb2NrIHByZWRpY3Rpb24gaXMgdXNlZCB0byBjb2RlIGFueSBncm91cHMKPiA+ICsgKiAgICAg ICAgICAgICAgICAgICAgIHdpdGhpbiB0aGUgcGljdHVyZS4KPiA+ICsgKiAgICAgICAgICAgICAg ICAgICAgIEZhbHNlIGlmIEJQIG5vdCB1c2VkCj4gPiArICogQGZpcnN0X2xpbmVfYnBnX29mZnNl dDogTnVtYmVyIG9mIGFkZGl0aW9uYWwgYml0cyBhbGxvY2F0ZWQgZm9yIGVhY2ggZ3JvdXAgb24K PiA+ICsgKiAgICAgICAgICAgICAgICAgICAgICAgICB0aGUgZmlyc3QgbGluZSBvZiBzbGljZS4K PiA+ICsgKiBAaW5pdGlhbF9vZmZzZXQ6IFZhbHVlIHRvIHVzZSBmb3IgUkMgbW9kZWwgb2Zmc2V0 IGF0IHNsaWNlIHN0YXJ0Cj4gPiArICogQHJjX2J1Zl90aHJlc2g6IFRocmVzaG9sZHMgZGVmaW5p bmcgZWFjaCBvZiB0aGUgYnVmZmVyIHJhbmdlcwo+ID4gKyAqIEByY19yYW5nZV9wYXJhbXM6IFBh cmFtZXRlcnMgZm9yIGVhY2ggb2YgdGhlIFJDIHJhbmdlcyBkZWZpbmVkIGluCj4gPiArICogICAg ICAgICAgICAgICAgICAgJnN0cnVjdCBkcm1fZHNjX3JjX3JhbmdlX3BhcmFtZXRlcnMKPiA+ICsg KiBAcmNfbW9kZWxfc2l6ZTogVG90YWwgc2l6ZSBvZiBSQyBtb2RlbAo+ID4gKyAqIEBmbGF0bmVz c19taW5fcXA6IE1pbmltdW0gUVAgd2hlcmUgZmxhdG5lc3MgaW5mb3JtYXRpb24gaXMgc2VudAo+ ID4gKyAqIEBmbGF0bmVzc19tYXhfcXA6IE1heGltdW0gUVAgd2hlcmUgZmxhdG5lc3MgaW5mb3Jt YXRpb24gaXMgc2VudAo+ID4gKyAqIEBpbml0aWFsX3NjYWxlX3ZhbHVlOiBJbml0aWFsIHZhbHVl IGZvciB0aGUgc2NhbGUgZmFjdG9yCj4gPiArICogQHNjYWxlX2RlY3JlbWVudF9pbnRlcnZhbDog U3BlY2lmaWVzIG51bWJlciBvZiBncm91cCB0aW1lcyBiZXR3ZWVuCj4gPiArICogICAgICAgICAg ICAgICAgICAgICAgICAgICAgZGVjcmVtZW50aW5nIHRoZSBzY2FsZSBmYWN0b3IgYXQgYmVnaW5u aW5nCj4gPiArICogICAgICAgICAgICAgICAgICAgICAgICAgICAgb2YgYSBzbGljZS4KPiA+ICsg KiBAc2NhbGVfaW5jcmVtZW50X2ludGVydmFsOiBOdW1iZXIgb2YgZ3JvdXAgdGltZXMgYmV0d2Vl biBpbmNyZW1lbnRpbmcKPiA+ICsgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGUgc2Nh bGUgZmFjdG9yIHZhbHVlIHVzZWQgYXQgdGhlIGJlZ2lubmluZwo+ID4gKyAqICAgICAgICAgICAg ICAgICAgICAgICAgICAgIG9mIGEgc2xpY2UuCj4gPiArICogQG5mbF9icGdfb2Zmc2V0OiBOb24g Zmlyc3QgbGluZSBCUEcgb2Zmc2V0IHRvIGJlIHVzZWQKPiA+ICsgKiBAc2xpY2VfYnBnX29mZnNl dDogQlBHIG9mZnNldCB1c2VkIHRvIGVuZm9yY2Ugc2xpY2UgYml0Cj4gPiArICogQGZpbmFsX29m ZnNldDogRmluYWwgUkMgbGluZWFyIHRyYW5zZm9ybWF0aW9uIG9mZnNldCB2YWx1ZQo+ID4gKyAq IEB2YnJfZW5hYmxlOiBUcnVlIGlmIFZCUiBtb2RlIGlzIGVuYWJsZWQsIGZhbHNlIGlmIGRpc2Fi bGVkCj4gPiArICogQG11eF93b3JkX3NpemU6IE11eCB3b3JkIHNpemUgKGluIGJpdHMpIGZvciBT U00gbW9kZQo+ID4gKyAqIEBzbGljZV9jaHVua19zaXplOiBUaGUgKG1heCkgc2l6ZSBpbiBieXRl cyBvZiB0aGUgImNodW5rcyIgdGhhdCBhcmUKPiA+ICsgKiAgICAgICAgICAgICAgICAgICAgdXNl ZCBpbiBzbGljZSBtdWx0aXBsZXhpbmcuCj4gPiArICogQHJjX2JpdHM6IFJhdGUgY29udHJvbCBi dWZmZXIgc2l6ZSBpbiBiaXRzCj4gPiArICogQGRzY192ZXJzaW9uX21pbm9yOiBEU0MgbWlub3Ig dmVyc2lvbgo+ID4gKyAqIEBkc2NfdmVyc2lvbl9tYWpvcjogRFNDIG1ham9yIHZlcnNpb24KPiA+ ICsgKiBAbmF0aXZlXzQyMjogVHJ1ZSBpZiBOYXRpdmUgNDoyOjIgc3VwcG9ydGVkLCBlbHNlIGZh bHNlCj4gPiArICogQG5hdGl2ZV80MjA6IFRydWUgaWYgTmF0aXZlIDQ6MjowIHN1cHBvcnRlZCBl bHNlIGZhbHNlLgo+ID4gKyAqIEBzZWNvbmRfbGluZV9icGdfb2Zmc2V0OiBBZGRpdGlvbmFsIGJp dHMvZ3JwIGZvciBzZWNvbm5kIGxpbmUgb2Ygc2xpY2UgZm9yCj4gPiArICogICAgICAgICAgICAg ICAgICAgICAgICAgIG5hdGl2ZSA0OjI6MAo+ID4gKyAqIEBuc2xfYnBnX29mZnNldDogTnVtIG9m IGJpdHMgZGVhbGxvY2F0ZWQgZm9yIGVhY2ggZ3JwIHRoYXQgaXMgbm90IGluIHNlY29uZAo+ID4g KyAqICAgICAgICAgICAgICAgICAgbGluZSBvZiBzbGljZQo+ID4gKyAqIEBzZWNvbmRfbGluZV9v ZmZzZXRfYWRqOiBPZmZzZXQgYWRqdXN0bWVudCBmb3Igc2Vjb25kIGxpbmUgaW4gTmF0aXZlIDQ6 MjowCj4gPiArICogICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGUKPiAKPiBZZWFoIEkgdGhp bmsgdGhpcyBpcyBhIGNsZWFyIGV4YW1wbGUgb2Ygd2hlcmUgc3RydWN0IGNvbW1lbnRzIGFsbCBp biB0aGUKPiB0b3AgaXMgbXVjaCB3b3JzZSB0aGFuIGlubGluZSBjb21tZW50cy4gUGxlYXNlIGdv IHdpdGggdGhlIGlubGluZSBzdHlsZQo+IGhlcmUuCj4gCj4gQ2hlZXJzLCBEYW5pZWwKPgoKT2th eSB3aWxsIGNoYW5nZSBhbGwgdGhlc2UgYmFjayBpbiB0aGUgaW5saW5lIGNvbW1lbnRpbmcgZm9y bWF0LgoKTWFuYXNpCiAKPiA+ICsgKi8KPiA+ICBzdHJ1Y3QgZHJtX2RzY19jb25maWcgewo+ID4g LQkvKiBCaXRzIC8gY29tcG9uZW50IGZvciBwcmV2aW91cyByZWNvbnN0cnVjdGVkIGxpbmUgYnVm ZmVyICovCj4gPiAgCXU4IGxpbmVfYnVmX2RlcHRoOwo+ID4gLQkvKiBCaXRzIHBlciBjb21wb25l bnQgdG8gY29kZSAobXVzdCBiZSA4LCAxMCwgb3IgMTIpICovCj4gPiAgCXU4IGJpdHNfcGVyX2Nv bXBvbmVudDsKPiA+IC0JLyoKPiA+IC0JICogRmxhZyBpbmRpY2F0aW5nIHRvIGRvIFJHQiAtIFlD b0NnIGNvbnZlcnNpb24KPiA+IC0JICogYW5kIGJhY2sgKHNob3VsZCBiZSAxIGZvciBSR0IgaW5w dXQpCj4gPiAtCSAqLwo+ID4gIAlib29sIGNvbnZlcnRfcmdiOwo+ID4gIAl1OCBzbGljZV9jb3Vu dDsKPiA+IC0JLyogU2xpY2UgV2lkdGggKi8KPiA+ICAJdTE2IHNsaWNlX3dpZHRoOwo+ID4gLQkv KiBTbGljZSBIZWlnaHQgKi8KPiA+ICAJdTE2IHNsaWNlX2hlaWdodDsKPiA+IC0JLyoKPiA+IC0J ICogNDoyOjIgZW5hYmxlIG1vZGUgKGZyb20gUFBTLCA0OjI6MiBjb252ZXJzaW9uIGhhcHBlbnMK PiA+IC0JICogb3V0c2lkZSBvZiBEU0MgZW5jb2RlL2RlY29kZSBhbGdvcml0aG0pCj4gPiAtCSAq Lwo+ID4gIAlib29sIGVuYWJsZTQyMjsKPiA+IC0JLyogUGljdHVyZSBXaWR0aCAqLwo+ID4gIAl1 MTYgcGljX3dpZHRoOwo+ID4gLQkvKiBQaWN0dXJlIEhlaWdodCAqLwo+ID4gIAl1MTYgcGljX2hl aWdodDsKPiA+IC0JLyogT2Zmc2V0IHRvIGJpdHMvZ3JvdXAgdXNlZCBieSBSQyB0byBkZXRlcm1p bmUgUVAgYWRqdXN0bWVudCAqLwo+ID4gIAl1OCByY190Z3Rfb2Zmc2V0X2hpZ2g7Cj4gPiAtCS8q IE9mZnNldCB0byBiaXRzL2dyb3VwIHVzZWQgYnkgUkMgdG8gZGV0ZXJtaW5lIFFQIGFkanVzdG1l bnQgKi8KPiA+ICAJdTggcmNfdGd0X29mZnNldF9sb3c7Cj4gPiAtCS8qIEJpdHMvcGl4ZWwgdGFy Z2V0IDw8IDQgKGllLiwgNCBmcmFjdGlvbmFsIGJpdHMpICovCj4gPiAgCXUxNiBiaXRzX3Blcl9w aXhlbDsKPiA+IC0JLyoKPiA+IC0JICogRmFjdG9yIHRvIGRldGVybWluZSBpZiBhbiBlZGdlIGlz IHByZXNlbnQgYmFzZWQKPiA+IC0JICogb24gdGhlIGJpdHMgcHJvZHVjZWQKPiA+IC0JICovCj4g PiAgCXU4IHJjX2VkZ2VfZmFjdG9yOwo+ID4gLQkvKiBTbG93IGRvd24gaW5jcmVtZW50aW5nIG9u Y2UgdGhlIHJhbmdlIHJlYWNoZXMgdGhpcyB2YWx1ZSAqLwo+ID4gIAl1OCByY19xdWFudF9pbmNy X2xpbWl0MTsKPiA+IC0JLyogU2xvdyBkb3duIGluY3JlbWVudGluZyBvbmNlIHRoZSByYW5nZSBy ZWFjaGVzIHRoaXMgdmFsdWUgKi8KPiA+ICAJdTggcmNfcXVhbnRfaW5jcl9saW1pdDA7Cj4gPiAt CS8qIE51bWJlciBvZiBwaXhlbHMgdG8gZGVsYXkgdGhlIGluaXRpYWwgdHJhbnNtaXNzaW9uICov Cj4gPiAgCXUxNiBpbml0aWFsX3htaXRfZGVsYXk7Cj4gPiAtCS8qIE51bWJlciBvZiBwaXhlbHMg dG8gZGVsYXkgdGhlIFZMRCBvbiB0aGUgZGVjb2Rlcixub3QgaW5jbHVkaW5nIFNTTSAqLwo+ID4g IAl1MTYgIGluaXRpYWxfZGVjX2RlbGF5Owo+ID4gLQkvKiBCbG9jayBwcmVkaWN0aW9uIGVuYWJs ZSAqLwo+ID4gIAlib29sIGJsb2NrX3ByZWRfZW5hYmxlOwo+ID4gLQkvKiBCaXRzL2dyb3VwIG9m ZnNldCB0byB1c2UgZm9yIGZpcnN0IGxpbmUgb2YgdGhlIHNsaWNlICovCj4gPiAgCXU4IGZpcnN0 X2xpbmVfYnBnX29mZnNldDsKPiA+IC0JLyogVmFsdWUgdG8gdXNlIGZvciBSQyBtb2RlbCBvZmZz ZXQgYXQgc2xpY2Ugc3RhcnQgKi8KPiA+ICAJdTE2IGluaXRpYWxfb2Zmc2V0Owo+ID4gLQkvKiBU aHJlc2hvbGRzIGRlZmluaW5nIGVhY2ggb2YgdGhlIGJ1ZmZlciByYW5nZXMgKi8KPiA+ICAJdTE2 IHJjX2J1Zl90aHJlc2hbRFNDX05VTV9CVUZfUkFOR0VTIC0gMV07Cj4gPiAtCS8qIFBhcmFtZXRl cnMgZm9yIGVhY2ggb2YgdGhlIFJDIHJhbmdlcyAqLwo+ID4gIAlzdHJ1Y3QgZHJtX2RzY19yY19y YW5nZV9wYXJhbWV0ZXJzIHJjX3JhbmdlX3BhcmFtc1tEU0NfTlVNX0JVRl9SQU5HRVNdOwo+ID4g LQkvKiBUb3RhbCBzaXplIG9mIFJDIG1vZGVsICovCj4gPiAgCXUxNiByY19tb2RlbF9zaXplOwo+ ID4gLQkvKiBNaW5pbXVtIFFQIHdoZXJlIGZsYXRuZXNzIGluZm9ybWF0aW9uIGlzIHNlbnQgKi8K PiA+ICAJdTggZmxhdG5lc3NfbWluX3FwOwo+ID4gLQkvKiBNYXhpbXVtIFFQIHdoZXJlIGZsYXRu ZXNzIGluZm9ybWF0aW9uIGlzIHNlbnQgKi8KPiA+ICAJdTggZmxhdG5lc3NfbWF4X3FwOwo+ID4g LQkvKiBJbml0aWFsIHZhbHVlIGZvciBzY2FsZSBmYWN0b3IgKi8KPiA+ICAJdTggaW5pdGlhbF9z Y2FsZV92YWx1ZTsKPiA+IC0JLyogRGVjcmVtZW50IHNjYWxlIGZhY3RvciBldmVyeSBzY2FsZV9k ZWNyZW1lbnRfaW50ZXJ2YWwgZ3JvdXBzICovCj4gPiAgCXUxNiBzY2FsZV9kZWNyZW1lbnRfaW50 ZXJ2YWw7Cj4gPiAtCS8qIEluY3JlbWVudCBzY2FsZSBmYWN0b3IgZXZlcnkgc2NhbGVfaW5jcmVt ZW50X2ludGVydmFsIGdyb3VwcyAqLwo+ID4gIAl1MTYgc2NhbGVfaW5jcmVtZW50X2ludGVydmFs Owo+ID4gLQkvKiBOb24tZmlyc3QgbGluZSBCUEcgb2Zmc2V0IHRvIHVzZSAqLwo+ID4gIAl1MTYg bmZsX2JwZ19vZmZzZXQ7Cj4gPiAtCS8qIEJQRyBvZmZzZXQgdXNlZCB0byBlbmZvcmNlIHNsaWNl IGJpdCAqLwo+ID4gIAl1MTYgc2xpY2VfYnBnX29mZnNldDsKPiA+IC0JLyogRmluYWwgUkMgbGlu ZWFyIHRyYW5zZm9ybWF0aW9uIG9mZnNldCB2YWx1ZSAqLwo+ID4gIAl1MTYgZmluYWxfb2Zmc2V0 Owo+ID4gLQkvKiBFbmFibGUgb24tb2ZmIFZCUiAoaWUuLCBkaXNhYmxlIHN0dWZmaW5nIGJpdHMp ICovCj4gPiAgCWJvb2wgdmJyX2VuYWJsZTsKPiA+IC0JLyogTXV4IHdvcmQgc2l6ZSAoaW4gYml0 cykgZm9yIFNTTSBtb2RlICovCj4gPiAgCXU4IG11eF93b3JkX3NpemU7Cj4gPiAtCS8qCj4gPiAt CSAqIFRoZSAobWF4KSBzaXplIGluIGJ5dGVzIG9mIHRoZSAiY2h1bmtzIiB0aGF0IGFyZQo+ID4g LQkgKiB1c2VkIGluIHNsaWNlIG11bHRpcGxleGluZwo+ID4gLQkgKi8KPiA+ICAJdTE2IHNsaWNl X2NodW5rX3NpemU7Cj4gPiAtCS8qIFJhdGUgQ29udHJvbCBidWZmZXIgc2l6IGluIGJpdHMgKi8K PiA+ICAJdTE2IHJjX2JpdHM7Cj4gPiAtCS8qIERTQyBNaW5vciBWZXJzaW9uICovCj4gPiAgCXU4 IGRzY192ZXJzaW9uX21pbm9yOwo+ID4gLQkvKiBEU0MgTWFqb3IgdmVyc2lvbiAqLwo+ID4gIAl1 OCBkc2NfdmVyc2lvbl9tYWpvcjsKPiA+IC0JLyogTmF0aXZlIDQ6MjoyIHN1cHBvcnQgKi8KPiA+ ICAJYm9vbCBuYXRpdmVfNDIyOwo+ID4gLQkvKiBOYXRpdmUgNDoyOjAgc3VwcG9ydCAqLwo+ID4g IAlib29sIG5hdGl2ZV80MjA7Cj4gPiAtCS8qIEFkZGl0aW9uYWwgYml0cy9ncnAgZm9yIHNlY29u bmQgbGluZSBvZiBzbGljZSBmb3IgbmF0aXZlIDQ6MjowICovCj4gPiAgCXU4IHNlY29uZF9saW5l X2JwZ19vZmZzZXQ7Cj4gPiAtCS8qIE51bSBvZiBiaXRzIGRlYWxsb2NhdGVkIGZvciBlYWNoIGdy cCB0aGF0IGlzIG5vdCBpbiBzZWNvbmQgbGluZSBvZiBzbGljZSAqLwo+ID4gIAl1MTYgbnNsX2Jw Z19vZmZzZXQ7Cj4gPiAtCS8qIE9mZnNldCBhZGogZnIgc2Vjb25kIGxpbmUgaW4gTmF0aXZlIDQ6 MjowIG1vZGUgKi8KPiA+ICAJdTE2IHNlY29uZF9saW5lX29mZnNldF9hZGo7Cj4gPiAgfTsKPiA+ ICAKPiA+IEBAIC00NjgsMTAgKzQ4NSwxMyBAQCBzdHJ1Y3QgZHJtX2RzY19waWN0dXJlX3BhcmFt ZXRlcl9zZXQgewo+ID4gICAqIFRoaXMgc3RydWN0dXJlIHJlcHJlc2VudHMgdGhlIERTQyBQUFMg aW5mb2ZyYW1lIHJlcXVpcmVkIHRvIHNlbmQgdGhlIFBpY3R1cmUKPiA+ICAgKiBQYXJhbWV0ZXIg U2V0IG1ldGFkYXRhIHJlcXVpcmVkIGJlZm9yZSBlbmFibGluZyBWRVNBIERpc3BsYXkgU3RyZWFt Cj4gPiAgICogQ29tcHJlc3Npb24uIFRoaXMgaXMgYmFzZWQgb24gdGhlIERQIFNlY29uZGFyeSBE YXRhIFBhY2tldCBzdHJ1Y3R1cmUgYW5kCj4gPiAtICogY29tcHJpc2VzIG9mIFNEUCBIZWFkZXIg YXMgZGVmaW5lZCBpbiBkcm1fZHBfaGVscGVyLmggYW5kIFBQUyBwYXlsb2FkLgo+ID4gKyAqIGNv bXByaXNlcyBvZiBTRFAgSGVhZGVyIGFzIGRlZmluZWQgJnN0cnVjdCBzdHJ1Y3QgZHBfc2RwX2hl YWRlciBpbiBkcm1fZHBfaGVscGVyLmgKPiA+ICsgKiBhbmQgUFBTIHBheWxvYWQgZGVmaW5lZCBp biAmc3RydWN0IGRybV9kc2NfcGljdHVyZV9wYXJhbWV0ZXJfc2V0Lgo+ID4gICAqCj4gPiAtICog QHBwc19oZWFkZXI6IEhlYWRlciBmb3IgUFBTIGFzIHBlciBEUCBTRFAgaGVhZGVyIGZvcm1hdAo+ ID4gKyAqIEBwcHNfaGVhZGVyOiBIZWFkZXIgZm9yIFBQUyBhcyBwZXIgRFAgU0RQIGhlYWRlciBm b3JtYXQgb2YgdHlwZQo+ID4gKyAqICAgICAgICAgICAgICAmc3RydWN0IGRwX3NkcF9oZWFkZXIK PiA+ICAgKiBAcHBzX3BheWxvYWQ6IFBQUyBwYXlsb2FkIGZpZWxkcyBhcyBwZXIgRFNDIHNwZWNp ZmljYXRpb24gVGFibGUgNC0xCj4gPiArICogICAgICAgICAgICAgICBhcyByZXByZXNlbnRlZCBp biAmc3RydWN0IGRybV9kc2NfcGljdHVyZV9wYXJhbWV0ZXJfc2V0Cj4gPiAgICovCj4gPiAgc3Ry dWN0IGRybV9kc2NfcHBzX2luZm9mcmFtZSB7Cj4gPiAgCXN0cnVjdCBkcF9zZHBfaGVhZGVyIHBw c19oZWFkZXI7Cj4gPiAtLSAKPiA+IDIuMTkuMQo+ID4gCj4gPiBfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+ID4gZHJpLWRldmVsIG1haWxpbmcgbGlzdAo+ ID4gZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+ID4gaHR0cHM6Ly9saXN0cy5mcmVl ZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwKPiAKPiAtLSAKPiBEYW5pZWwg VmV0dGVyCj4gU29mdHdhcmUgRW5naW5lZXIsIEludGVsIENvcnBvcmF0aW9uCj4gaHR0cDovL2Js b2cuZmZ3bGwuY2gKPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwo+IGRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKPiBkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCj4gaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9k cmktZGV2ZWwKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K SW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0 dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==