From mboxrd@z Thu Jan 1 00:00:00 1970 From: Manasi Navare Subject: Re: [PATCH v2 2/4] drm/dsc: Define Display Stream Compression PPS infoframe Date: Wed, 16 May 2018 13:33:59 -0700 Message-ID: <20180516203358.GD2730@intel.com> References: <1526349950-1806-1-git-send-email-manasi.d.navare@intel.com> <1526349950-1806-3-git-send-email-manasi.d.navare@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: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Harry Wentland Cc: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gV2VkLCBNYXkgMTYsIDIwMTggYXQgMDI6MTQ6NTZQTSAtMDQwMCwgSGFycnkgV2VudGxhbmQg d3JvdGU6Cj4gT24gMjAxOC0wNS0xNCAxMDowNSBQTSwgTWFuYXNpIE5hdmFyZSB3cm90ZToKPiA+ IFRoaXMgcGF0Y2ggZGVmaW5lcyBhIG5ldyBoZWFkZXIgZmlsZSBmb3IgYWxsIHRoZSBEU0MgMS4y IHN0cnVjdHVyZXMKPiA+IGFuZCBjcmVhdGVzIGEgc3RydWN0dXJlIGZvciBQUFMgaW5mb2ZyYW1l IHdoaWNoIHdpbGwgYmUgdXNlZCB0byBzZW5kCj4gPiBwaWN0dXJlIHBhcmFtZXRlciBzZXQgc2Vj b25kYXJ5IGRhdGEgcGFja2V0IGZvciBkaXNwbGF5IHN0cmVhbSBjb21wcmVzc2lvbi4KPiA+IEFs bCB0aGUgUFBTIGluZm9mcmFtZSBzeW50YXggZWxlbWVudHMgYXJlIHRha2VuIGZyb20gRFNDIDEu MiBzcGVjaWZpY2F0aW9uCj4gPiBmcm9tIFZFU0EuCj4gPiAKPiA+IHYyOgo+ID4gKiBGaXggdGhl IGNvbW1lbnRzIGZvciBrZXJuZWwtZG9jCj4gPiAKPiA+IENjOiBkcmktZGV2ZWxAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnCj4gPiBDYzogSmFuaSBOaWt1bGEgPGphbmkubmlrdWxhQGxpbnV4LmludGVs LmNvbT4KPiA+IENjOiBWaWxsZSBTeXJqYWxhIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNv bT4KPiA+IENjOiBBbnVzaGEgU3JpdmF0c2EgPGFudXNoYS5zcml2YXRzYUBpbnRlbC5jb20+Cj4g PiBTaWduZWQtb2ZmLWJ5OiBNYW5hc2kgTmF2YXJlIDxtYW5hc2kuZC5uYXZhcmVAaW50ZWwuY29t Pgo+ID4gLS0tCj4gPiAgaW5jbHVkZS9kcm0vZHJtX2RzYy5oIHwgNDM3ICsrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCj4gPiAgMSBmaWxlIGNoYW5nZWQs IDQzNyBpbnNlcnRpb25zKCspCj4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvZHJtL2Ry bV9kc2MuaAo+ID4gCj4gPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2RzYy5oIGIvaW5j bHVkZS9kcm0vZHJtX2RzYy5oCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+ID4gaW5kZXggMDAw MDAwMC4uNWVlNzJlOAo+ID4gLS0tIC9kZXYvbnVsbAo+ID4gKysrIGIvaW5jbHVkZS9kcm0vZHJt X2RzYy5oCj4gPiBAQCAtMCwwICsxLDQzNyBAQAo+ID4gKy8qCj4gPiArICogQ29weXJpZ2h0IChD KSAyMDE4IEludGVsIENvcnAuCj4gPiArICoKPiA+ICsgKiBQZXJtaXNzaW9uIGlzIGhlcmVieSBn cmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYQo+ID4gKyAq IGNvcHkgb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVz ICh0aGUgIlNvZnR3YXJlIiksCj4gPiArICogdG8gZGVhbCBpbiB0aGUgU29mdHdhcmUgd2l0aG91 dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbgo+ID4gKyAqIHRoZSBy aWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBz dWJsaWNlbnNlLAo+ID4gKyAqIGFuZC9vciBzZWxsIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFu ZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZQo+ID4gKyAqIFNvZnR3YXJlIGlzIGZ1cm5p c2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6Cj4gPiAr ICoKPiA+ICsgKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9u IG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbgo+ID4gKyAqIGFsbCBjb3BpZXMgb3Igc3Vic3Rh bnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgo+ID4gKyAqCj4gPiArICogVEhFIFNPRlRX QVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVY UFJFU1MgT1IKPiA+ICsgKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRI RSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKPiA+ICsgKiBGSVRORVNTIEZPUiBBIFBB UlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiAgSU4gTk8gRVZFTlQgU0hBTEwK PiA+ICsgKiBUSEUgQ09QWVJJR0hUIEhPTERFUihTKSBPUiBBVVRIT1IoUykgQkUgTElBQkxFIEZP UiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IKPiA+ICsgKiBPVEhFUiBMSUFCSUxJVFksIFdIRVRIRVIg SU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwKPiA+ICsgKiBBUklT SU5HIEZST00sIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRI RSBVU0UgT1IKPiA+ICsgKiBPVEhFUiBERUFMSU5HUyBJTiBUSEUgU09GVFdBUkUuCj4gPiArICoK PiA+ICsgKiBBdXRob3JzOgo+ID4gKyAqIE1hbmFzaSBOYXZhcmUgPG1hbmFzaS5kLm5hdmFyZUBp bnRlbC5jb20+Cj4gPiArICovCj4gPiArCj4gPiArI2lmbmRlZiBEUk1fRFNDX0hfCj4gPiArI2Rl ZmluZSBEUk1fRFNDX0hfCj4gPiArCj4gPiArI2luY2x1ZGUgPGRybS9kcm1fZHBfaGVscGVyLmg+ Cj4gPiArCj4gPiArI2RlZmluZSBEU0NfTlVNX0JVRl9SQU5HRVMJMTUKPiA+ICsKPiA+ICsvKioK PiA+ICsgKiBzdHJ1Y3QgcGljdHVyZV9wYXJhbWV0ZXJfc2V0IC0gUmVwcmVzZW50cyAxMjggYnl0 ZXMgb2YgUGljdHVyZSBQYXJhbWV0ZXIgU2V0Cj4gPiArICoKPiA+ICsgKiBUaGUgVkVTQSBEU0Mg c3RhbmRhcmQgZGVmaW5lcyBwaWN0dXJlIHBhcmFtZXRlciBzZXQgKFBQUykgd2hpY2ggZGlzcGxh eSBzdHJlYW0KPiA+ICsgKiBjb21wcmVzc2lvbiBlbmNvZGVycyBtdXN0IGNvbW11bmljYXRlIHRv IGRlY29kZXJzLiBUaGUgUFBTIGlzIGVuY2Fwc3VsYXRlZAo+ID4gKyAqIGluIDEyOCBieXRlcyAo UFBTIDAgdGhyb3VnaCBQUFMgMTI3KS4gVGhlIGZpZWxkcyBpbiB0aGlzIHN0cnVjdHVyZSBhcmUg YXMgcGVyCj4gPiArICogVGFibGUgNC4xIGluIFZlc2EgRFNDIHNwZWNpZmljYXRpb24gdjEuMS92 MS4yLgo+ID4gKyAqIFRoZSBQUFMgZmllbGRzIHRoYXQgc3BhbiBvdmVyIG1vcmUgdGhhbiBhIGJ5 dGUgc2hvdWxkIGJlIHN0b3JlZCBpbiBCaWcgRW5kaWFuCj4gPiArICogZm9ybWF0Lgo+ID4gKyAq Lwo+ID4gK3N0cnVjdCBwaWN0dXJlX3BhcmFtZXRlcl9zZXQgewo+ID4gKwkvKioKPiA+ICsJICog QGRzY192ZXJzaW9uX21pbm9yOgo+ID4gKwkgKiBQUFMwWzM6MF0gLSBDb250YWlucyBNaW5vciB2 ZXJzaW9uIG9mIERTQwo+ID4gKwkgKi8KPiA+ICsJdTggZHNjX3ZlcnNpb25fbWlub3I6NDsKPiA+ ICsJLyoqCj4gPiArCSAqIEBkc2NfdmVyc2lvbl9tYWpvcjoKPiA+ICsJICogUFBTMFs3OjRdIC0g Q29udGFpbnMgbWFqb3IgdmVyc2lvbiBvZiBEU0MKPiA+ICsJICovCj4gPiArCXU4IGRzY192ZXJz aW9uX21ham9yOjQ7Cj4gPiArCS8qKgo+ID4gKwkgKiBAcHBzX2lkZW50aWZpZXI6Cj4gPiArCSAq IFBQUzFbNzowXSAtIEFwcGxpY2F0aW9uIHNwZWNpZmljIGlkZW50aWZpZXIgdGhhdCBjYW4gYmUK PiA+ICsJICogdXNlZCB0byBkaWZmZXJlbnRpYXRlIGJldHdlZW4gZGlmZmVyZW50IFBQUyB0YWJs ZXMuCj4gPiArCSAqLwo+ID4gKwl1OCBwcHNfaWRlbnRpZmllcjsKPiA+ICsJLyoqCj4gPiArCSAq IEBwcHMyX3Jlc2VydmVkOgo+ID4gKwkgKiBQUFMyWzc6MF0tIFJFU0VSVkVEIEJ5dGUKPiA+ICsJ ICovCj4gPiArCXU4IHBwczJfcmVzZXJ2ZWQ7Cj4gPiArCS8qKgo+ID4gKwkgKiBAbGluZWJ1Zl9k ZXB0aDoKPiA+ICsJICogUFBTM1szOjBdIC0gQ29udGFpbnMgbGluZWJ1ZmZlciBiaXQgZGVwdGgg dXNlZCB0byBnZW5lcmF0ZQo+ID4gKwkgKiB0aGUgYml0c3RyZWFtLiAoMHgwIC0gMTYgYml0cyBm b3IgRFNjIDEuMiwgMHg4IC0gOCBiaXRzLAo+ID4gKwkgKiAweEEgLSAxMCBiaXRzLCAweEIgLSAx MSBiaXRzLCAweEMgLSAxMiBiaXRzLCAweEQgLSAxMyBiaXRzLAo+ID4gKwkgKiAweEUgLSAxNCBi aXRzIGZvciBEU0MxLjIsIDB4RiAtIDE0IGJpdHMgZm9yIERTQyAxLjIuCj4gPiArCSAqLwo+ID4g Kwl1OCBsaW5lYnVmX2RlcHRoOjQ7Cj4gPiArCS8qKgo+ID4gKwkgKiBAYml0c19wZXJfY29tcG9u ZW50Ogo+ID4gKwkgKiBQUFMzWzc6NF0gLSBCaXRzIHBlciBjb21wb25lbnQgZm8gcnRoZSBvcmln aW5hbCBwaXhlbHMKPiAKPiB0eXBvOiAiZm9yIHRoZSIKClllcyB3bGwgZml4IHRoYXQuCgo+IAo+ ID4gKwkgKiBvZiB0aGUgZW5jb2RlZCBwaWN0dXJlLgo+ID4gKwkgKi8KPiAKPiBXb3VsZCBpdCBt YWtlIHNlbnNlIHRvIGluZGljYXRlIGluIHRoZSBjb21tZW50cyB3aGF0IHRoZSB2YWx1ZXMgbWVh bj8KPiAKPiBGcm9tIHRoZSBzcGVjOgo+IDB4MCA9IDE2YnBjIChhbGxvd2VkIG9ubHkgd2hlbiBk c2NfdmVyc2lvbl9taW5vciA9IDB4MikuCj4gMHg4ID0gOGJwYy4KPiAweEEgPSAxMGJwYy4KPiAw eEMgPSAxMmJwYy4KPiAweEUgPSAxNGJwYyAoYWxsb3dlZCBvbmx5IHdoZW4gZHNjX3ZlcnNpb25f bWlub3IgPSAweDIpLgo+IEFsbCBvdGhlciBlbmNvZGluZ3MgYXJlIFJFU0VSVkVELgo+IAo+IEhh cnJ5CgpUaGlzIGlzIGRlZmluaXRlbHkgYSBnb29kIHBvaW50LiBJIGNhbiBhZGQgdGhlc2UgaW4g dGhlIGJsb2NrIGNvbW1lbnQgZm9yCmJpdHNfcGVyX2NvbXBvbmVudCBsaWtlIEkgaGF2ZSBhZGRl ZCBmb3IgbGluZWJ1Zl9kZXB0aC4KClJlZ2FyZHMKTWFuYXNpCgo+IAo+ID4gKwl1OCBiaXRzX3Bl cl9jb21wb25lbnQ6NDsKPiA+ICsJLyoqCj4gPiArCSAqIEBicHBfaGlnaDoKPiA+ICsJICogUFBT NFsxOjBdIC0gVGhlc2UgYXJlIHRoZSBtb3N0IHNpZ25pZmljYW50IDIgYml0cyBvZgo+ID4gKwkg KiBjb21wcmVzc2VkIEJQUCBiaXRzX3Blcl9waXhlbFs5OjBdIHN5bnRheCBlbGVtZW50Lgo+ID4g KwkgKi8KPiA+ICsJdTggYnBwX2hpZ2g6MjsKPiA+ICsJLyoqCj4gPiArCSAqIEB2YnJfZW5hYmxl Ogo+ID4gKwkgKiBQUFM0WzJdIC0gMCA9IFZCUiBkaXNhYmxlZCwgMSA9IFZCUiBlbmFibGVkCj4g PiArCSAqLwo+ID4gKwl1OCB2YnJfZW5hYmxlOjE7Cj4gPiArCS8qKgo+ID4gKwkgKiBAc2ltcGxl XzQyMjoKPiA+ICsJICogUFBTNFszXSAtIEluZGljYXRlcyBpZiBkZWNvZGVyIGRyb3BzIHNhbXBs ZXMgdG8KPiA+ICsJICogcmVjb25zdHJ1Y3QgdGhlIDQ6MjoyIHBpY3R1cmUuCj4gPiArCSAqLwo+ ID4gKwl1OCBzaW1wbGVfNDIyOjE7Cj4gPiArCS8qKgo+ID4gKwkgKiBAY29udmVydF9yZ2I6Cj4g PiArCSAqIFBQUzRbNF0gLSBJbmRpY2F0ZXMgaWYgRFNDIGNvbG9yIHNwYWNlIGNvbnZlcnNpb24g aXMgYWN0aXZlCj4gPiArCSAqLwo+ID4gKwl1OCBjb252ZXJ0X3JnYjoxOwo+ID4gKwkvKioKPiA+ ICsJICogQGJsb2NrX3ByZWRfZW5hYmxlOgo+ID4gKwkgKiBQUFM0WzVdIC0gSW5kaWNhdGVzIGlm IEJQIGlzIHVzZWQgdG8gY29kZSBhbnkgZ3JvdXBzIGluIHBpY3R1cmUKPiA+ICsJICovCj4gPiAr CXU4IGJsb2NrX3ByZWRfZW5hYmxlOjE7Cj4gPiArCS8qKgo+ID4gKwkgKiBAcHBzNF9yZXNlcnZl ZDoKPiA+ICsJICogUFBTNFs3OjZdIC0gUmVzZXZlZCBiaXRzCj4gPiArCSAqLwo+ID4gKwl1OCBw cHM0X3Jlc2VydmVkOjI7Cj4gPiArCS8qKgo+ID4gKwkgKiBAYnBwX2xvdzoKPiA+ICsJICogUFBT NVs3OjBdIC0gVGhpcyBpbmRpY2F0ZXMgdGhlIGxvd2VyIHNpZ25pZmljYW50IDggYml0cyBvZgo+ ID4gKwkgKiB0aGUgY29tcHJlc3NlZCBCUFAgYml0c19wZXJfcGl4ZWxbOTowXSBlbGVtZW50Lgo+ ID4gKwkgKi8KPiA+ICsJdTggYnBwX2xvdzsKPiA+ICsJLyoqCj4gPiArCSAqIEBwaWNfaGVpZ2h0 Ogo+ID4gKwkgKiBQUFM2Wzc6MF0sIFBQUzdbNzowXSAtICBTcGVjaWZpZXMgdGhlIG51bWJlciBv ZiBwaXhlbCByb3dzIHdpdGhpbgo+ID4gKwkgKiB0aGUgcmFzdGVyLgo+ID4gKwkgKi8KPiA+ICsJ dTE2IHBpY19oZWlnaHQ7Cj4gPiArCS8qKgo+ID4gKwkgKiBAcGljX3dpZHRoOgo+ID4gKwkgKiBQ UFM4Wzc6MF0sIFBQUzlbNzowXSAtIE51bWJlciBvZiBwaXhlbCBjb2x1bW5zIHdpdGhpbiB0aGUg cmFzdGVyLgo+ID4gKwkgKi8KPiA+ICsJdTE2IHBpY193aWR0aDsKPiA+ICsJLyoqCj4gPiArCSAq IEBzbGljZV9oZWlnaHQ6Cj4gPiArCSAqIFBQUzEwWzc6MF0sIFBQUzExWzc6MF0gLSBTbGljZSBo ZWlnaHQgaW4gdW5pdHMgb2YgcGl4ZWxzLgo+ID4gKwkgKi8KPiA+ICsJdTE2IHNsaWNlX2hlaWdo dDsKPiA+ICsJLyoqCj4gPiArCSAqIEBzbGljZV93aWR0aDoKPiA+ICsJICogUFBTMTJbNzowXSwg UFBTMTNbNzowXSAtIFNsaWNlIHdpZHRoIGluIHRlcm1zIG9mIHBpeGVscy4KPiA+ICsJICovCj4g PiArCXUxNiBzbGljZV93aWR0aDsKPiA+ICsJLyoqCj4gPiArCSAqIEBjaHVua19zaXplOgo+ID4g KwkgKiBQUFMxNFs3OjBdLCBQUFMxNVs3OjBdIC0gU2l6ZSBpbiB1bml0cyBvZiBieXRlcyBvZiB0 aGUgY2h1bmtzCj4gPiArCSAqIHRoYXQgYXJlIHVzZWQgZm9yIHNsaWNlIG11bHRpcGxleGluZy4K PiA+ICsJICovCj4gPiArCXUxNiBjaHVua19zaXplOwo+ID4gKwkvKioKPiA+ICsJICogQGluaXRp YWxfeG1pdF9kZWxheV9oaWdoOgo+ID4gKwkgKiBQUFMxNlsxOjBdIC0gTW9zdCBTaWduaWZpY2Fu dCB0d28gYml0cyBvZiBpbml0aWFsIHRyYW5zbWlzc2lvbiBkZWxheS4KPiA+ICsJICogSXQgc3Bl Y2lmaWVzIHRoZSBudW1iZXIgb2YgcGl4ZWwgdGltZXMgdGhhdCB0aGUgZW5jb2RlciB3YWl0cyBi ZWZvcmUKPiA+ICsJICogdHJhbnNtaXR0aW5nIGRhdGEgZnJvbSBpdHMgcmF0ZSBidWZmZXIuCj4g PiArCSAqLwo+ID4gKwl1OCBpbml0aWFsX3htaXRfZGVsYXlfaGlnaDoyOwo+ID4gKwkvKioKPiA+ ICsJICogQHBwczE2X3Jlc2VydmVkOgo+ID4gKwkgKiBQUFMxNls3OjJdIC0gUmVzZXJ2ZWQKPiA+ ICsJICovCj4gPiArCXU4IHBwczE2X3Jlc2VydmVkOjY7Cj4gPiArCS8qKgo+ID4gKwkgKiBAaW5p dGlhbF94bWl0X2RlbGF5X2xvdzoKPiA+ICsJICogUFBTMTdbNzowXSAtIExlYXN0IHNpZ25pZmlj YW50IDggYml0cyBvZiBpbml0aWFsIHRyYW5zbWlzc2lvbiBkZWxheS4KPiA+ICsJICovCj4gPiAr CXU4IGluaXRpYWxfeG1pdF9kZWxheV9sb3c7Cj4gPiArCS8qKgo+ID4gKwkgKiBAaW5pdGlhbF9k ZWNfZGVsYXk6Cj4gPiArCSAqCj4gPiArCSAqIFBQUzE4Wzc6MF0sIFBQUzE5Wzc6MF0gLSBJbml0 aWFsIGRlY29kaW5nIGRlbGF5IHdoaWNoIGlzIHRoZSBudW1iZXIKPiA+ICsJICogb2YgcGl4ZWwg dGltZXMgdGhhdCB0aGUgZGVjb2RlciBhY2N1bXVsYXRlcyBkYXRhIGluIGl0cyByYXRlIGJ1ZmZl cgo+ID4gKwkgKiBiZWZvcmUgc3RhcnRpbmcgdG8gZGVjb2RlIGFuZCBvdXRwdXQgcGl4ZWxzLgo+ ID4gKwkgKi8KPiA+ICsJdTE2IGluaXRpYWxfZGVjX2RlbGF5Owo+ID4gKwkvKioKPiA+ICsJICog QHBwczIwX3Jlc2VydmVkOgo+ID4gKwkgKgo+ID4gKwkgKiBQUFMyMFs3OjBdIC0gUmVzZXJ2ZWQK PiA+ICsJICovCj4gPiArCXU4IHBwczIwX3Jlc2VydmVkOwo+ID4gKwkvKioKPiA+ICsJICogQGlu aXRpYWxfc2NhbGVfdmFsdWU6Cj4gPiArCSAqIFBQUzIxWzU6MF0gLSBJbml0aWFsIHJjWGZvcm1T Y2FsZSBmYWN0b3IgdXNlZCBhdCBiZWdpbm5pbmcKPiA+ICsJICogb2YgYSBzbGljZS4KPiA+ICsJ ICovCj4gPiArCXU4IGluaXRpYWxfc2NhbGVfdmFsdWU6NjsKPiA+ICsJLyoqCj4gPiArCSAqIEBw cHMyMV9yZXNlcnZlZDoKPiA+ICsJICogUFBTMjFbNzo2XSAtIFJlc2VydmVkCj4gPiArCSAqLwo+ ID4gKwl1OCBwcHMyMV9yZXNlcnZlZDoyOwo+ID4gKwkvKioKPiA+ICsJICogQHNjYWxlX2luY3Jl bWVudF9pbnRlcnZhbDoKPiA+ICsJICogUFBTMjJbNzowXSwgUFBTMjNbNzowXSAtIE51bWJlciBv ZiBncm91cCB0aW1lcyBiZXR3ZWVuIGluY3JlbWVudGluZwo+ID4gKwkgKiB0aGUgcmNYZm9ybVNj YWxlIGZhY3RvciBhdCBlbmQgb2YgYSBzbGljZS4KPiA+ICsJICovCj4gPiArCXUxNiBzY2FsZV9p bmNyZW1lbnRfaW50ZXJ2YWw7Cj4gPiArCS8qKgo+ID4gKwkgKiBAc2NhbGVfZGVjcmVtZW50X2lu dGVydmFsX2hpZ2g6Cj4gPiArCSAqIFBQUzI0WzM6MF0gLSBIaWdoZXIgNCBiaXRzIGluZGljYXRp bmcgbnVtYmVyIG9mIGdyb3VwIHRpbWVzIGJldHdlZW4KPiA+ICsJICogZGVjcmVtZW50aW5nIHRo ZSByY1hmb3JtU2NhbGUgZmFjdG9yIGF0IGJlZ2lubmluZyBvZiBhIHNsaWNlLgo+ID4gKwkgKi8K PiA+ICsJdTggc2NhbGVfZGVjcmVtZW50X2ludGVydmFsX2hpZ2g6NDsKPiA+ICsJLyoqCj4gPiAr CSAqIEBwcHMyNF9yZXNlcnZlZDoKPiA+ICsJICogUFBTMjRbNzo0XSAtIFJlc2VydmVkCj4gPiAr CSAqLwo+ID4gKwl1OCBwcHMyNF9yZXNlcnZlZDo0Owo+ID4gKwkvKioKPiA+ICsJICogQHNjYWxl X2RlY3JlbWVudF9pbnRlcnZhbF9sb3c6Cj4gPiArCSAqIFBQUzI1Wzc6MF0gLSBMb3dlciA4IGJp dHMgb2Ygc2NhbGUgZGVjcmVtZW50IGludGVydmFsCj4gPiArCSAqLwo+ID4gKwl1OCBzY2FsZV9k ZWNyZW1lbnRfaW50ZXJ2YWxfbG93Owo+ID4gKwkvKioKPiA+ICsJICogQHBwczI2X3Jlc2VydmVk Ogo+ID4gKwkgKiBQUFMyNls3OjBdCj4gPiArCSAqLwo+ID4gKwl1OCBwcHMyNl9yZXNlcnZlZDsK PiA+ICsJLyoqCj4gPiArCSAqIEBmaXJzdF9saW5lX2JwZ19vZmZzZXQ6Cj4gPiArCSAqIFBQUzI3 WzQ6MF0gLSBOdW1iZXIgb2YgYWRkaXRpb25hbCBiaXRzIHRoYXQgYXJlIGFsbG9jYXRlZAo+ID4g KwkgKiBmb3IgZWFjaCBncm91cCBvbiBmaXJzdCBsaW5lIG9mIGEgc2xpY2UuCj4gPiArCSAqLwo+ ID4gKwl1OCBmaXJzdF9saW5lX2JwZ19vZmZzZXQ6NTsKPiA+ICsJLyoqCj4gPiArCSAqIEBwcHMy N19yZXNlcnZlZDoKPiA+ICsJICogUFBTMjdbNzo1XQo+ID4gKwkgKi8KPiA+ICsJdTggcHBzMjdf cmVzZXJ2ZWQ6MzsKPiA+ICsJLyoqCj4gPiArCSAqIEBuZmxfYnBnX29mZnNldDoKPiA+ICsJICog UFBTMjhbNzowXSwgUFBTMjlbNzowXSAtIE51bWJlciBvZiBiaXRzIGluY2x1ZGluZyBmcmFjIGJp dHMKPiA+ICsJICogZGVhbGxvY2F0ZWQgZm9yIGVhY2ggZ3JvdXAgZm9yIGdyb3VwcyBhZnRlciB0 aGUgZmlyc3QgbGluZSBvZiBzbGljZS4KPiA+ICsJICovCj4gPiArCXUxNiBuZmxfYnBnX29mZnNl dDsKPiA+ICsJLyoqCj4gPiArCSAqIEBzbGljZV9icGdfb2Zmc2V0Ogo+ID4gKwkgKiBQUFMzMCwg UFBTMzFbNzowXSAtIE51bWJlciBvZiBiaXRzIHRoYXQgYXJlIGRlYWxsb2NhdGVkIGZvciBlYWNo IGdyb3VwCj4gPiArCSAqIHRvIGVuZm9yY2UgdGhlIHNsaWNlIGNvbnN0cmFpbnQuCj4gPiArCSAq Lwo+ID4gKwl1MTYgc2xpY2VfYnBnX29mZnNldDsKPiA+ICsJLyoqCj4gPiArCSAqIEBpbml0aWFs X29mZnNldDoKPiA+ICsJICogUFBTMzIsMzNbNzowXSAtIEluaXRpYWwgdmFsdWUgZm9yIHJjWGZv cm1PZmZzZXQKPiA+ICsJICovCj4gPiArCXUxNiBpbml0aWFsX29mZnNldDsKPiA+ICsJLyoqCj4g PiArCSAqIEBmaW5hbF9vZmZzZXQ6Cj4gPiArCSAqIFBQUzM0LDM1Wzc6MF0gLSBNYXhpbXVtIGVu ZC1vZi1zbGljZSB2YWx1ZSBmb3IgcmNYZm9ybU9mZnNldAo+ID4gKwkgKi8KPiA+ICsJdTE2IGZp bmFsX29mZnNldDsKPiA+ICsJLyoqCj4gPiArCSAqIEBmbGF0bmVzc19taW5fcXA6Cj4gPiArCSAq IFBQUzM2WzQ6MF0gLSBNaW5pbXVtIFFQIGF0IHdoaWNoIGZsYXRuZXNzIGlzIHNpZ25hbGVkIGFu ZAo+ID4gKwkgKiBmbGF0bmVzcyBRUCBhZGp1c3RtZW50IGlzIG1hZGUuCj4gPiArCSAqLwo+ID4g Kwl1OCBmbGF0bmVzc19taW5fcXA6NTsKPiA+ICsJLyoqCj4gPiArCSAqIEBwcHMzNl9yZXNlcnZl ZDoKPiA+ICsJICogUFBTMzZbNzo1XSAtIFJlc2VydmVkCj4gPiArCSAqLwo+ID4gKwl1OCBwcHMz Nl9yZXNlcnZlZDozOwo+ID4gKwkvKioKPiA+ICsJICogQGZsYXRuZXNzX21heF9xcDoKPiA+ICsJ ICogUFBTMzdbNDowXSAtIE1heCBRUCBhdCB3aGljaCBmbGF0bmVzcyBpcyBzaWduYWxsZWQgYW5k Cj4gPiArCSAqIHRoZSBmbGF0bmVzcyBhZGp1c3RtZW50IGlzIG1hZGUuCj4gPiArCSAqLwo+ID4g Kwl1OCBmbGF0bmVzc19tYXhfcXA6NTsKPiA+ICsJLyoqCj4gPiArCSAqIEBwcHMzN19yZXNlcnZl ZDoKPiA+ICsJICogUFBTMzdbNzo1XQo+ID4gKwkgKi8KPiA+ICsJdTggcHBzMzdfcmVzZXJ2ZWQ6 MzsKPiA+ICsJLyoqCj4gPiArCSAqIEByY19tb2RlbF9zaXplOgo+ID4gKwkgKiBQUFMzOCwzOVs3 OjBdIC0gTnVtYmVyIG9mIGJpdHMgd2l0aGluIFJDIE1vZGVsLgo+ID4gKwkgKi8KPiA+ICsJdTE2 IHJjX21vZGVsX3NpemU7Cj4gPiArCS8qKgo+ID4gKwkgKiBAcmNfZWRnZV9mYWN0b3I6Cj4gPiAr CSAqIFBQUzQwWzM6MF0gLSBSYXRpbyBvZiBjdXJyZW50IGFjdGl2aXR5IHZzLCBwcmV2aW91cwo+ ID4gKwkgKiBhY3Rpdml0eSB0byBkZXRlcm1pbmUgcHJlc2VuY2Ugb2YgZWRnZS4KPiA+ICsJICov Cj4gPiArCXU4IHJjX2VkZ2VfZmFjdG9yOjQ7Cj4gPiArCS8qKgo+ID4gKwkgKiBAcHBzNDBfcmVz ZXJ2ZWQ6Cj4gPiArCSAqIFBQUzQwWzc6NF0KPiA+ICsJICovCj4gPiArCXU4IHBwczQwX3Jlc2Vy dmVkOjQ7Cj4gPiArCS8qKgo+ID4gKwkgKiBAcmNfcXVhbnRfaW5jcl9saW1pdDA6Cj4gPiArCSAq IFBQUzQxWzQ6MF0gLSBRUCB0aHJlc2hvbGQgdXNlZCBpbiBzaG9ydCB0ZXJtIFJDCj4gPiArCSAq Lwo+ID4gKwl1OCByY19xdWFudF9pbmNyX2xpbWl0MDo1Owo+ID4gKwkvKioKPiA+ICsJICogQHBw czQxX3Jlc2VydmVkOgo+ID4gKwkgKiBQUFM0MVs3OjVdCj4gPiArCSAqLwo+ID4gKwl1OCBwcHM0 MV9yZXNlcnZlZDozOwo+ID4gKwkvKioKPiA+ICsJICogQHJjX3F1YW50X2luY3JfbGltaXQxOgo+ ID4gKwkgKiBQUFM0Mls0OjBdIC0gUVAgdGhyZXNob2xkIHVzZWQgaW4gc2hvcnQgdGVybSBSQwo+ ID4gKwkgKi8KPiA+ICsJdTggcmNfcXVhbnRfaW5jcl9saW1pdDE6NTsKPiA+ICsJLyoqCj4gPiAr CSAqIEBwcHM0Ml9yZXNlcnZlZDoKPiA+ICsJICogUFBTNDJbNzo1XQo+ID4gKwkgKi8KPiA+ICsJ dTggcHBzNDJfcmVzZXJ2ZWQ6MzsKPiA+ICsJLyoqCj4gPiArCSAqIEByY190Z3Rfb2Zmc2V0X2xv Ogo+ID4gKwkgKiBMb3dlciBlbmQgb2YgdGhlIHZhcmlhYmlsaXR5IHJhbmdlIGFyb3VuZCB0aGUg dGFyZ2V0Cj4gPiArCSAqIGJpdHMgcGVyIGdyb3VwIHRoYXQgaXMgYWxsb3dlZCBieSBzaG9ydCB0 ZXJtIFJDLgo+ID4gKwkgKi8KPiA+ICsJdTggcmNfdGd0X29mZnNldF9sbzo0Owo+ID4gKwkvKioK PiA+ICsJICogQHJjX3RndF9vZmZzZXRfaGk6Cj4gPiArCSAqIFVwcGVyIGVuZCBvZiB0aGUgdmFy aWFiaWxpdHkgcmFuZ2UgYXJvdW5kIHRoZSB0YXJnZXQKPiA+ICsJICogYml0cyBwZXIgZ3JvdXAg dGhhdCBpIGFsbG93ZWQgYnkgc2hvcnQgdGVybSByYy4KPiA+ICsJICovCj4gPiArCXU4IHJjX3Rn dF9vZmZzZXRfaGk6NDsKPiA+ICsJLyoqCj4gPiArCSAqIEByY19idWZfdGhyZXNoOgo+ID4gKwkg KiBQUFM0NFs3OjBdIC0gUFBTNTdbNzowXSAtIFNwZWNpZmllcyB0aGUgdGhyZXNob2xkcyBpbiBS QyBtb2RlbCBmb3IKPiA+ICsJICogdGhlIDE1IHJhbmdlcyBkZWZpbmVkIGJ5IDE0IHRocmVzaG9s ZHMuCj4gPiArCSAqLwo+ID4gKwl1OCByY19idWZfdGhyZXNoW0RTQ19OVU1fQlVGX1JBTkdFUyAt IDFdOwo+ID4gKwkvKioKPiA+ICsJICogQHJjX3JhbmdlX3BhcmFtZXRlcnM6Cj4gPiArCSAqIFBQ UzU4Wzc6MF0gLSBQUFM4N1s3OjBdCj4gPiArCSAqIFBhcmFtZXRlcnMgdGhhdCBjb3JyZXNwb25k IHRvIGVhY2ggb2YgdGhlIDE1IHJhbmdlcy4KPiA+ICsJICovCj4gPiArCXUxNiByY19yYW5nZV9w YXJhbWV0ZXJzW0RTQ19OVU1fQlVGX1JBTkdFU107Cj4gPiArCS8qKgo+ID4gKwkgKiBAbmF0aXZl XzQyMjoKPiA+ICsJICogUFBTODhbMF0gLSAwID0gTmF0aXZlIDQ6MjoyIG5vdCB1c2VkCj4gPiAr CSAqIDEgPSBOYXRpdmUgNDoyOjIgdXNlZAo+ID4gKwkgKi8KPiA+ICsJdTggbmF0aXZlXzQyMjox Owo+ID4gKwkvKioKPiA+ICsJICogQG5hdGl2ZV80MjA6Cj4gPiArCSAqIFBQUzg4WzFdIC0gMCA9 IE5hdGl2ZSA0OjI6MCBub3QgdXNlZAo+ID4gKwkgKiAxID0gTmF0aXZlIDQ6MjowIG5vdCB1c2Vk Lgo+ID4gKwkgKi8KPiA+ICsJdTggbmF0aXZlXzQyMDoxOwo+ID4gKwkvKioKPiA+ICsJICogQHBw czg4X3Jlc2VydmVkOgo+ID4gKwkgKiBQUFNbNzoyXSAtIFJlc2VydmVkIDYgYml0cwo+ID4gKwkg Ki8KPiA+ICsJdTggcHBzODhfcmVzZXJ2ZWQ6NjsKPiA+ICsJLyoqCj4gPiArCSAqIEBzZWNvbmRf bGluZV9icGdfb2Zmc2V0Ogo+ID4gKwkgKiBQUFM4OVs0OjBdIC0gQWRkaXRpb25hbCBiaXRzL2dy b3VwIGJ1ZGdldCBmb3IgdGhlCj4gPiArCSAqIHNlY29uZCBsaW5lIG9mIGEgc2xpY2UgaW4gTmF0 aXZlIDQ6MjowIG1vZGUuCj4gPiArCSAqIFNldCB0byAwIGlmIERTQyBtaW5vciB2ZXJzaW9uIGlz IDEgb3IgbmF0aXZlNDIwIGlzIDAuCj4gPiArCSAqLwo+ID4gKwl1OCBzZWNvbmRfbGluZV9icGdf b2Zmc2V0OjU7Cj4gPiArCS8qKgo+ID4gKwkgKiBAcHBzODlfcmVzZXJ2ZWQ6Cj4gPiArCSAqIFBQ Uzg5Wzc6NV0gLSBSZXNlcnZlZAo+ID4gKwkgKi8KPiA+ICsJdTggcHBzODlfcmVzZXJ2ZWQ6MzsK PiA+ICsJLyoqCj4gPiArCSAqIEBuc2xfYnBnX29mZnNldDoKPiA+ICsJICogUFBTOTBbNzowXSwg UFBTOTFbNzowXSAtIE51bWJlciBvZiBiaXRzIHRoYXQgYXJlIGRlYWxsb2NhdGVkCj4gPiArCSAq IGZvciBlYWNoIGdyb3VwIHRoYXQgaXMgbm90IGluIHRoZSBzZWNvbmQgbGluZSBvZiBhIHNsaWNl Lgo+ID4gKwkgKi8KPiA+ICsJdTE2IG5zbF9icGdfb2Zmc2V0Owo+ID4gKwkvKioKPiA+ICsJICog QHNlY29uZF9saW5lX29mZnNldF9hZGo6Cj4gPiArCSAqIFBQUzkyWzc6MF0sIFBQUzkzWzc6MF0g LSBVc2VkIGFzIG9mZnNldCBhZGp1c3RtZW50IGZvciB0aGUgc2Vjb25kCj4gPiArCSAqIGxpbmUg aW4gTmF0aXZlIDQ6MjowIG1vZGUuCj4gPiArCSAqLwo+ID4gKwl1MTYgc2Vjb25kX2xpbmVfb2Zm c2V0X2FkajsKPiA+ICsJLyoqCj4gPiArCSAqIEBwcHNfbG9uZ185NF9yZXNlcnZlZDoKPiA+ICsJ ICogUFBTIDk0LCA5NSwgOTYsIDk3IC0gUmVzZXJ2ZWQKPiA+ICsJICovCj4gPiArCXUzMiBwcHNf bG9uZ185NF9yZXNlcnZlZDsKPiA+ICsJLyoqCj4gPiArCSAqIEBwcHNfbG9uZ185OF9yZXNlcnZl ZDoKPiA+ICsJICogUFBTIDk4LCA5OSwgMTAwLCAxMDEgLSBSZXNlcnZlZAo+ID4gKwkgKi8KPiA+ ICsJdTMyIHBwc19sb25nXzk4X3Jlc2VydmVkOwo+ID4gKwkvKioKPiA+ICsJICogQHBwc19sb25n XzEwMl9yZXNlcnZlZDoKPiA+ICsJICogUFBTIDEwMiwgMTAzLCAxMDQsIDEwNSAtIFJlc2VydmVk Cj4gPiArCSAqLwo+ID4gKwl1MzIgcHBzX2xvbmdfMTAyX3Jlc2VydmVkOwo+ID4gKwkvKioKPiA+ ICsJICogQHBwc19sb25nXzEwNl9yZXNlcnZlZDoKPiA+ICsJICogUFBTIDEwNiwgMTA3LCAxMDgs IDEwOSAtIHJlc2VydmVkCj4gPiArCSAqLwo+ID4gKwl1MzIgcHBzX2xvbmdfMTA2X3Jlc2VydmVk Owo+ID4gKwkvKioKPiA+ICsJICogQHBwc19sb25nXzExMF9yZXNlcnZlZDoKPiA+ICsJICogUFBT IDExMCwgMTExLCAxMTIsIDExMyAtIHJlc2VydmVkCj4gPiArCSAqLwo+ID4gKwl1MzIgcHBzX2xv bmdfMTEwX3Jlc2VydmVkOwo+ID4gKwkvKioKPiA+ICsJICogQHBwc19sb25nXzExNF9yZXNlcnZl ZDoKPiA+ICsJICogUFBTIDExNCAtIDExNyAtIHJlc2VydmVkCj4gPiArCSAqLwo+ID4gKwl1MzIg cHBzX2xvbmdfMTE0X3Jlc2VydmVkOwo+ID4gKwkvKioKPiA+ICsJICogQHBwc19sb25nXzExOF9y ZXNlcnZlZDoKPiA+ICsJICogUFBTIDExOCAtIDEyMSAtIHJlc2VydmVkCj4gPiArCSAqLwo+ID4g Kwl1MzIgcHBzX2xvbmdfMTE4X3Jlc2VydmVkOwo+ID4gKwkvKioKPiA+ICsJICogQHBwc19sb25n XzEyMl9yZXNlcnZlZDoKPiA+ICsJICogUFBTIDEyMi0gMTI1IC0gcmVzZXJ2ZWQKPiA+ICsJICov Cj4gPiArCXUzMiBwcHNfbG9uZ18xMjJfcmVzZXJ2ZWQ7Cj4gPiArCS8qKgo+ID4gKwkgKiBAcHBz X3Nob3J0XzEyNl9yZXNlcnZlZDoKPiA+ICsJICogUFBTIDEyNiwgMTI3IC0gcmVzZXJ2ZWQKPiA+ ICsJICovCj4gPiArCXUxNiBwcHNfc2hvcnRfMTI2X3Jlc2VydmVkOwo+ID4gK307Cj4gPiArCj4g PiArLyoqCj4gPiArKiBzdHJ1Y3QgZHJtX2RzY19wcHNfaW5mb2ZyYW1lIC0gRFNDIGluZm9mcmFt ZSBjYXJyeWluZyB0aGUgUGljdHVyZSBQYXJhbWV0ZXIgU2V0IE1ldGFkYXRhCj4gPiArKgo+ID4g KyogVGhpcyBzdHJ1Y3R1cmUgcmVwcmVzZW50cyB0aGUgRFNDIFBQUyBpbmZvZnJhbWUgcmVxdWly ZWQgdG8gc2VuZCB0aGUgUGljdHVyZSBQYXJhbWV0ZXIgU2V0Cj4gPiArKiBtZXRhZGF0YSByZXF1 aXJlZCBiZWZvcmUgZW5hYmxpbmcgVkVTQSBEaXNwbGF5IFN0cmVhbSBDb21wcmVzc2lvbi4gVGhp cyBpcyBiYXNlZCBvbiB0aGUKPiA+ICsqIERQIFNlY29uZGFyeSBEYXRhIFBhY2tldCBzdHJ1Y3R1 cmUgYW5kIGNvbXByaXNlcyBvZiBTRFAgSGVhZGVyIGFzIGRlZmluZWQgaW4gZHJtX2RwX2hlbHBl ci5oCj4gPiArKiBhbmQgUFBTIHBheWxvYWQuCj4gPiArKgo+ID4gKyogQHBwc19oZWFkZXI6Cj4g PiArKgo+ID4gKyogSGVhZGVyIGZvciBQUFMgYXMgcGVyIERQIFNEUCBoZWFkZXIgZm9ybWF0Cj4g PiArKgo+ID4gKyogQHBwc19wYXlsb2FkOgo+ID4gKyoKPiA+ICsqIFBQUyBwYXlsb2FkIGZpZWxk cyBhcyBwZXIgRFNDIHNwZWNpZmljYXRpb24gVGFibGUgNC0xCj4gPiArKi8KPiA+ICtzdHJ1Y3Qg ZHJtX2RzY19wcHNfaW5mb2ZyYW1lIHsKPiA+ICsJc3RydWN0IGRwX3NkcF9oZWFkZXIgcHBzX2hl YWRlcjsKPiA+ICsJc3RydWN0IHBpY3R1cmVfcGFyYW1ldGVyX3NldCBwcHNfcGF5bG9hZDsKPiA+ ICt9IF9fcGFja2VkOwo+ID4gKwo+ID4gKyNlbmRpZiAvKiBfRFJNX0RTQ19IXyAqLwo+ID4gCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBt YWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=