From mboxrd@z Thu Jan 1 00:00:00 1970 From: Harry Wentland Subject: Re: [PATCH v2 07/23] drm/dsc: Define Display Stream Compression PPS infoframe Date: Thu, 23 Aug 2018 15:40:12 -0400 Message-ID: <90d9f309-193f-aa6a-930d-e923c3aeadf7@amd.com> References: <1533071239-28815-1-git-send-email-manasi.d.navare@intel.com> <1533071239-28815-8-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: In-Reply-To: <1533071239-28815-8-git-send-email-manasi.d.navare@intel.com> Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Manasi Navare , intel-gfx@lists.freedesktop.org Cc: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gMjAxOC0wNy0zMSAwNTowNyBQTSwgTWFuYXNpIE5hdmFyZSB3cm90ZToKPiBUaGlzIHBhdGNo IGRlZmluZXMgYSBuZXcgaGVhZGVyIGZpbGUgZm9yIGFsbCB0aGUgRFNDIDEuMiBzdHJ1Y3R1cmVz Cj4gYW5kIGNyZWF0ZXMgYSBzdHJ1Y3R1cmUgZm9yIFBQUyBpbmZvZnJhbWUgd2hpY2ggd2lsbCBi ZSB1c2VkIHRvIHNlbmQKPiBwaWN0dXJlIHBhcmFtZXRlciBzZXQgc2Vjb25kYXJ5IGRhdGEgcGFj a2V0IGZvciBkaXNwbGF5IHN0cmVhbSBjb21wcmVzc2lvbi4KPiBBbGwgdGhlIFBQUyBpbmZvZnJh bWUgc3ludGF4IGVsZW1lbnRzIGFyZSB0YWtlbiBmcm9tIERTQyAxLjIgc3BlY2lmaWNhdGlvbgo+ IGZyb20gVkVTQS4KPiAKPiBDYzogR2F1cmF2IEsgU2luZ2ggPGdhdXJhdi5rLnNpbmdoQGludGVs LmNvbT4KPiBDYzogZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+IENjOiBKYW5pIE5p a3VsYSA8amFuaS5uaWt1bGFAbGludXguaW50ZWwuY29tPgo+IENjOiBWaWxsZSBTeXJqYWxhIDx2 aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KPiBDYzogQW51c2hhIFNyaXZhdHNhIDxhbnVz aGEuc3JpdmF0c2FAaW50ZWwuY29tPgo+IENjOiBIYXJyeSBXZW50bGFuZCA8aGFycnkud2VudGxh bmRAYW1kLmNvbT4KPiBTaWduZWQtb2ZmLWJ5OiBNYW5hc2kgTmF2YXJlIDxtYW5hc2kuZC5uYXZh cmVAaW50ZWwuY29tPgoKTG9va3MgbGlrZSB0aGlzIHZlcnNpb24gYmFzaWNhbGx5IHJlbW92ZXMg dGhlIGJpdGZpZWxkIGRlZmluaXRpb25zIGFuZCBhZGRzIHRob3NlCmluIHRoZSBjb21tZW50cywg Y29tcGFyZWQgdG8gdGhlIHJldmlldyBpbiBNYXkuCgpSZXZpZXdlZC1ieTogSGFycnkgV2VudGxh bmQgPGhhcnJ5LndlbnRsYW5kQGFtZC5jb20+CgpIYXJyeQoKPiAtLS0KPiAgaW5jbHVkZS9kcm0v ZHJtX2RzYy5oIHwgMzY1ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrCj4gIDEgZmlsZSBjaGFuZ2VkLCAzNjUgaW5zZXJ0aW9ucygrKQo+ICBjcmVhdGUg bW9kZSAxMDA2NDQgaW5jbHVkZS9kcm0vZHJtX2RzYy5oCj4gCj4gZGlmZiAtLWdpdCBhL2luY2x1 ZGUvZHJtL2RybV9kc2MuaCBiL2luY2x1ZGUvZHJtL2RybV9kc2MuaAo+IG5ldyBmaWxlIG1vZGUg MTAwNjQ0Cj4gaW5kZXggMDAwMDAwMC4uNjc4ZThlNgo+IC0tLSAvZGV2L251bGwKPiArKysgYi9p bmNsdWRlL2RybS9kcm1fZHNjLmgKPiBAQCAtMCwwICsxLDM2NSBAQAo+ICsvKgo+ICsgKiBDb3B5 cmlnaHQgKEMpIDIwMTggSW50ZWwgQ29ycC4KPiArICoKPiArICogUGVybWlzc2lvbiBpcyBoZXJl YnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEKPiAr ICogY29weSBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmls ZXMgKHRoZSAiU29mdHdhcmUiKSwKPiArICogdG8gZGVhbCBpbiB0aGUgU29mdHdhcmUgd2l0aG91 dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbgo+ICsgKiB0aGUgcmln aHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3Vi bGljZW5zZSwKPiArICogYW5kL29yIHNlbGwgY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRv IHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlCj4gKyAqIFNvZnR3YXJlIGlzIGZ1cm5pc2hlZCB0 byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6Cj4gKyAqCj4gKyAq IFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNo YWxsIGJlIGluY2x1ZGVkIGluCj4gKyAqIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlv bnMgb2YgdGhlIFNvZnR3YXJlLgo+ICsgKgo+ICsgKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQg IkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgo+ICsgKiBJ TVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1F UkNIQU5UQUJJTElUWSwKPiArICogRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5E IE5PTklORlJJTkdFTUVOVC4gIElOIE5PIEVWRU5UIFNIQUxMCj4gKyAqIFRIRSBDT1BZUklHSFQg SE9MREVSKFMpIE9SIEFVVEhPUihTKSBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBP Ugo+ICsgKiBPVEhFUiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNU LCBUT1JUIE9SIE9USEVSV0lTRSwKPiArICogQVJJU0lORyBGUk9NLCBPVVQgT0YgT1IgSU4gQ09O TkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SCj4gKyAqIE9USEVSIERFQUxJ TkdTIElOIFRIRSBTT0ZUV0FSRS4KPiArICoKPiArICogQXV0aG9yczoKPiArICogTWFuYXNpIE5h dmFyZSA8bWFuYXNpLmQubmF2YXJlQGludGVsLmNvbT4KPiArICovCj4gKwo+ICsjaWZuZGVmIERS TV9EU0NfSF8KPiArI2RlZmluZSBEUk1fRFNDX0hfCj4gKwo+ICsjaW5jbHVkZSA8ZHJtL2RybV9k cF9oZWxwZXIuaD4KPiArCj4gKy8qIFZFU0EgRGlzcGxheSBTdHJlYW0gQ29tcHJlc3Npb24gRFND IDEuMiBjb25zdGFudHMgKi8KPiArI2RlZmluZSBEU0NfTlVNX0JVRl9SQU5HRVMJMTUKPiArCj4g Ky8qKgo+ICsgKiBzdHJ1Y3QgcGljdHVyZV9wYXJhbWV0ZXJfc2V0IC0gUmVwcmVzZW50cyAxMjgg Ynl0ZXMgb2YgUGljdHVyZSBQYXJhbWV0ZXIgU2V0Cj4gKyAqCj4gKyAqIFRoZSBWRVNBIERTQyBz dGFuZGFyZCBkZWZpbmVzIHBpY3R1cmUgcGFyYW1ldGVyIHNldCAoUFBTKSB3aGljaCBkaXNwbGF5 Cj4gKyAqIHN0cmVhbSBjb21wcmVzc2lvbiBlbmNvZGVycyBtdXN0IGNvbW11bmljYXRlIHRvIGRl Y29kZXJzLgo+ICsgKiBUaGUgUFBTIGlzIGVuY2Fwc3VsYXRlZCBpbiAxMjggYnl0ZXMgKFBQUyAw IHRocm91Z2ggUFBTIDEyNykuIFRoZSBmaWVsZHMgaW4KPiArICogdGhpcyBzdHJ1Y3R1cmUgYXJl IGFzIHBlciBUYWJsZSA0LjEgaW4gVmVzYSBEU0Mgc3BlY2lmaWNhdGlvbiB2MS4xL3YxLjIuCj4g KyAqIFRoZSBQUFMgZmllbGRzIHRoYXQgc3BhbiBvdmVyIG1vcmUgdGhhbiBhIGJ5dGUgc2hvdWxk IGJlIHN0b3JlZCBpbiBCaWcgRW5kaWFuCj4gKyAqIGZvcm1hdC4KPiArICovCj4gK3N0cnVjdCBw aWN0dXJlX3BhcmFtZXRlcl9zZXQgewo+ICsJLyoqCj4gKwkgKiBAZHNjX3ZlcnNpb246Cj4gKwkg KiBQUFMwWzM6MF0gLSBkc2NfdmVyc2lvbl9taW5vcjogQ29udGFpbnMgTWlub3IgdmVyc2lvbiBv ZiBEU0MKPiArCSAqIFBQUzBbNzo0XSAtIGRzY192ZXJzaW9uX21ham9yOiBDb250YWlucyBtYWpv ciB2ZXJzaW9uIG9mIERTQwo+ICsJICovCj4gKwl1OCBkc2NfdmVyc2lvbjsKPiArCS8qKgo+ICsJ ICogQHBwc19pZGVudGlmaWVyOgo+ICsJICogUFBTMVs3OjBdIC0gQXBwbGljYXRpb24gc3BlY2lm aWMgaWRlbnRpZmllciB0aGF0IGNhbiBiZQo+ICsJICogdXNlZCB0byBkaWZmZXJlbnRpYXRlIGJl dHdlZW4gZGlmZmVyZW50IFBQUyB0YWJsZXMuCj4gKwkgKi8KPiArCXU4IHBwc19pZGVudGlmaWVy Owo+ICsJLyoqCj4gKwkgKiBAcHBzX3Jlc2VydmVkOgo+ICsJICogUFBTMls3OjBdLSBSRVNFUlZF RCBCeXRlCj4gKwkgKi8KPiArCXU4IHBwc19yZXNlcnZlZDsKPiArCS8qKgo+ICsJICogQHBwc18z Ogo+ICsJICogUFBTM1szOjBdIC0gbGluZWJ1Zl9kZXB0aDogQ29udGFpbnMgbGluZWJ1ZmZlciBi aXQgZGVwdGggdXNlZCB0bwo+ICsJICogZ2VuZXJhdGUgdGhlIGJpdHN0cmVhbS4gKDB4MCAtIDE2 IGJpdHMgZm9yIERTQyAxLjIsIDB4OCAtIDggYml0cywKPiArCSAqIDB4QSAtIDEwIGJpdHMsIDB4 QiAtIDExIGJpdHMsIDB4QyAtIDEyIGJpdHMsIDB4RCAtIDEzIGJpdHMsCj4gKwkgKiAweEUgLSAx NCBiaXRzIGZvciBEU0MxLjIsIDB4RiAtIDE0IGJpdHMgZm9yIERTQyAxLjIuCj4gKwkgKiBQUFMz Wzc6NF0gLSBiaXRzX3Blcl9jb21wb25lbnQ6IEJpdHMgcGVyIGNvbXBvbmVudCBmb3IgdGhlIG9y aWdpbmFsCj4gKwkgKiBwaXhlbHMgb2YgdGhlIGVuY29kZWQgcGljdHVyZS4KPiArCSAqIDB4MCA9 IDE2YnBjIChhbGxvd2VkIG9ubHkgd2hlbiBkc2NfdmVyc2lvbl9taW5vciA9IDB4MikKPiArCSAq IDB4OCA9IDhicGMsIDB4QSA9IDEwYnBjLCAweEMgPSAxMmJwYywgMHhFID0gMTRicGMgKGFsc28K PiArCSAqIGFsbG93ZWQgb25seSB3aGVuIGRzY19taW5vcl92ZXJzaW9uID0gMHgyKQo+ICsJICov Cj4gKwl1OCBwcHNfMzsKPiArCS8qKgo+ICsJICogQHBwc180Ogo+ICsJICogUFBTNFsxOjBdIC1U aGVzZSBhcmUgdGhlIG1vc3Qgc2lnbmlmaWNhbnQgMiBiaXRzIG9mCj4gKwkgKiBjb21wcmVzc2Vk IEJQUCBiaXRzX3Blcl9waXhlbFs5OjBdIHN5bnRheCBlbGVtZW50Lgo+ICsJICogUFBTNFsyXSAt IHZicl9lbmFibGU6IDAgPSBWQlIgZGlzYWJsZWQsIDEgPSBWQlIgZW5hYmxlZAo+ICsJICogUFBT NFszXSAtIHNpbXBsZV80MjI6IEluZGljYXRlcyBpZiBkZWNvZGVyIGRyb3BzIHNhbXBsZXMgdG8K PiArCSAqIHJlY29uc3RydWN0IHRoZSA0OjI6MiBwaWN0dXJlLgo+ICsJICogUFBTNFs0XSAtIENv bnZlcnRfcmdiOiBJbmRpY2F0ZXMgaWYgRFNDIGNvbG9yIHNwYWNlIGNvbnZlcnNpb24gaXMKPiAr CSAqIGFjdGl2ZS4KPiArCSAqIFBQUzRbNV0gLSBibG9ia19wcmVkX2VuYWJsZTogSW5kaWNhdGVz IGlmIEJQIGlzIHVzZWQgdG8gY29kZSBhbnkKPiArCSAqIGdyb3VwcyBpbiBwaWN0dXJlCj4gKwkg KiBQUFM0Wzc6Nl0gLSBSZXNldmVkIGJpdHMKPiArCSAqLwo+ICsJdTggcHBzXzQ7Cj4gKwkvKioK PiArCSAqIEBiaXRzX3Blcl9waXhlbF9sb3c6Cj4gKwkgKiBQUFM1Wzc6MF0gLSBUaGlzIGluZGlj YXRlcyB0aGUgbG93ZXIgc2lnbmlmaWNhbnQgOCBiaXRzIG9mCj4gKwkgKiB0aGUgY29tcHJlc3Nl ZCBCUFAgYml0c19wZXJfcGl4ZWxbOTowXSBlbGVtZW50Lgo+ICsJICovCj4gKwl1OCBiaXRzX3Bl cl9waXhlbF9sb3c7Cj4gKwkvKioKPiArCSAqIEBwaWNfaGVpZ2h0Ogo+ICsJICogUFBTNls3OjBd LCBQUFM3Wzc6MF0gLXBpY19oZWlnaHQ6IFNwZWNpZmllcyB0aGUgbnVtYmVyIG9mIHBpeGVsIHJv d3MKPiArCSAqIHdpdGhpbiB0aGUgcmFzdGVyLgo+ICsJICovCj4gKwlfX2JlMTYgcGljX2hlaWdo dDsKPiArCS8qKgo+ICsJICogQHBpY193aWR0aDoKPiArCSAqIFBQUzhbNzowXSwgUFBTOVs3OjBd IC0gcGljX3dpZHRoOiBOdW1iZXIgb2YgcGl4ZWwgY29sdW1ucyB3aXRoaW4KPiArCSAqIHRoZSBy YXN0ZXIuCj4gKwkgKi8KPiArCV9fYmUxNiBwaWNfd2lkdGg7Cj4gKwkvKioKPiArCSAqIEBzbGlj ZV9oZWlnaHQ6Cj4gKwkgKiBQUFMxMFs3OjBdLCBQUFMxMVs3OjBdIC0gU2xpY2UgaGVpZ2h0IGlu IHVuaXRzIG9mIHBpeGVscy4KPiArCSAqLwo+ICsJX19iZTE2IHNsaWNlX2hlaWdodDsKPiArCS8q Kgo+ICsJICogQHNsaWNlX3dpZHRoOgo+ICsJICogUFBTMTJbNzowXSwgUFBTMTNbNzowXSAtIFNs aWNlIHdpZHRoIGluIHRlcm1zIG9mIHBpeGVscy4KPiArCSAqLwo+ICsJX19iZTE2IHNsaWNlX3dp ZHRoOwo+ICsJLyoqCj4gKwkgKiBAY2h1bmtfc2l6ZToKPiArCSAqIFBQUzE0Wzc6MF0sIFBQUzE1 Wzc6MF0gLSBTaXplIGluIHVuaXRzIG9mIGJ5dGVzIG9mIHRoZSBjaHVua3MKPiArCSAqIHRoYXQg YXJlIHVzZWQgZm9yIHNsaWNlIG11bHRpcGxleGluZy4KPiArCSAqLwo+ICsJX19iZTE2IGNodW5r X3NpemU7Cj4gKwkvKioKPiArCSAqIEBpbml0aWFsX3htaXRfZGVsYXlfaGlnaDoKPiArCSAqIFBQ UzE2WzE6MF0gLSBNb3N0IFNpZ25pZmljYW50IHR3byBiaXRzIG9mIGluaXRpYWwgdHJhbnNtaXNz aW9uIGRlbGF5Lgo+ICsJICogSXQgc3BlY2lmaWVzIHRoZSBudW1iZXIgb2YgcGl4ZWwgdGltZXMg dGhhdCB0aGUgZW5jb2RlciB3YWl0cyBiZWZvcmUKPiArCSAqIHRyYW5zbWl0dGluZyBkYXRhIGZy b20gaXRzIHJhdGUgYnVmZmVyLgo+ICsJICogUFBTMTZbNzoyXSAtIFJlc2VydmVkCj4gKwkgKi8K PiArCXU4IGluaXRpYWxfeG1pdF9kZWxheV9oaWdoOwo+ICsJLyoqCj4gKwkgKiBAaW5pdGlhbF94 bWl0X2RlbGF5X2xvdzoKPiArCSAqIFBQUzE3Wzc6MF0gLSBMZWFzdCBzaWduaWZpY2FudCA4IGJp dHMgb2YgaW5pdGlhbCB0cmFuc21pc3Npb24gZGVsYXkuCj4gKwkgKi8KPiArCXU4IGluaXRpYWxf eG1pdF9kZWxheV9sb3c7Cj4gKwkvKioKPiArCSAqIEBpbml0aWFsX2RlY19kZWxheToKPiArCSAq Cj4gKwkgKiBQUFMxOFs3OjBdLCBQUFMxOVs3OjBdIC0gSW5pdGlhbCBkZWNvZGluZyBkZWxheSB3 aGljaCBpcyB0aGUgbnVtYmVyCj4gKwkgKiBvZiBwaXhlbCB0aW1lcyB0aGF0IHRoZSBkZWNvZGVy IGFjY3VtdWxhdGVzIGRhdGEgaW4gaXRzIHJhdGUgYnVmZmVyCj4gKwkgKiBiZWZvcmUgc3RhcnRp bmcgdG8gZGVjb2RlIGFuZCBvdXRwdXQgcGl4ZWxzLgo+ICsJICovCj4gKwlfX2JlMTYgaW5pdGlh bF9kZWNfZGVsYXk7Cj4gKwkvKioKPiArCSAqIEBwcHMyMF9yZXNlcnZlZDoKPiArCSAqCj4gKwkg KiBQUFMyMFs3OjBdIC0gUmVzZXJ2ZWQKPiArCSAqLwo+ICsJdTggcHBzMjBfcmVzZXJ2ZWQ7Cj4g KwkvKioKPiArCSAqIEBpbml0aWFsX3NjYWxlX3ZhbHVlOgo+ICsJICogUFBTMjFbNTowXSAtIElu aXRpYWwgcmNYZm9ybVNjYWxlIGZhY3RvciB1c2VkIGF0IGJlZ2lubmluZwo+ICsJICogb2YgYSBz bGljZS4KPiArCSAqIFBQUzIxWzc6Nl0gLSBSZXNlcnZlZAo+ICsJICovCj4gKwl1OCBpbml0aWFs X3NjYWxlX3ZhbHVlOwo+ICsJLyoqCj4gKwkgKiBAc2NhbGVfaW5jcmVtZW50X2ludGVydmFsOgo+ ICsJICogUFBTMjJbNzowXSwgUFBTMjNbNzowXSAtIE51bWJlciBvZiBncm91cCB0aW1lcyBiZXR3 ZWVuIGluY3JlbWVudGluZwo+ICsJICogdGhlIHJjWGZvcm1TY2FsZSBmYWN0b3IgYXQgZW5kIG9m IGEgc2xpY2UuCj4gKwkgKi8KPiArCV9fYmUxNiBzY2FsZV9pbmNyZW1lbnRfaW50ZXJ2YWw7Cj4g KwkvKioKPiArCSAqIEBzY2FsZV9kZWNyZW1lbnRfaW50ZXJ2YWxfaGlnaDoKPiArCSAqIFBQUzI0 WzM6MF0gLSBIaWdoZXIgNCBiaXRzIGluZGljYXRpbmcgbnVtYmVyIG9mIGdyb3VwIHRpbWVzIGJl dHdlZW4KPiArCSAqIGRlY3JlbWVudGluZyB0aGUgcmNYZm9ybVNjYWxlIGZhY3RvciBhdCBiZWdp bm5pbmcgb2YgYSBzbGljZS4KPiArCSAqIFBQUzI0Wzc6NF0gLSBSZXNlcnZlZAo+ICsJICovCj4g Kwl1OCBzY2FsZV9kZWNyZW1lbnRfaW50ZXJ2YWxfaGlnaDsKPiArCS8qKgo+ICsJICogQHNjYWxl X2RlY3JlbWVudF9pbnRlcnZhbF9sb3c6Cj4gKwkgKiBQUFMyNVs3OjBdIC0gTG93ZXIgOCBiaXRz IG9mIHNjYWxlIGRlY3JlbWVudCBpbnRlcnZhbAo+ICsJICovCj4gKwl1OCBzY2FsZV9kZWNyZW1l bnRfaW50ZXJ2YWxfbG93Owo+ICsJLyoqCj4gKwkgKiBAcHBzMjZfcmVzZXJ2ZWQ6Cj4gKwkgKiBQ UFMyNls3OjBdCj4gKwkgKi8KPiArCXU4IHBwczI2X3Jlc2VydmVkOwo+ICsJLyoqCj4gKwkgKiBA Zmlyc3RfbGluZV9icGdfb2Zmc2V0Ogo+ICsJICogUFBTMjdbNDowXSAtIE51bWJlciBvZiBhZGRp dGlvbmFsIGJpdHMgdGhhdCBhcmUgYWxsb2NhdGVkCj4gKwkgKiBmb3IgZWFjaCBncm91cCBvbiBm aXJzdCBsaW5lIG9mIGEgc2xpY2UuCj4gKwkgKiBQUFMyN1s3OjVdIC0gUmVzZXJ2ZWQKPiArCSAq Lwo+ICsJdTggZmlyc3RfbGluZV9icGdfb2Zmc2V0Owo+ICsJLyoqCj4gKwkgKiBAbmZsX2JwZ19v ZmZzZXQ6Cj4gKwkgKiBQUFMyOFs3OjBdLCBQUFMyOVs3OjBdIC0gTnVtYmVyIG9mIGJpdHMgaW5j bHVkaW5nIGZyYWMgYml0cwo+ICsJICogZGVhbGxvY2F0ZWQgZm9yIGVhY2ggZ3JvdXAgZm9yIGdy b3VwcyBhZnRlciB0aGUgZmlyc3QgbGluZSBvZiBzbGljZS4KPiArCSAqLwo+ICsJX19iZTE2IG5m bF9icGdfb2Zmc2V0Owo+ICsJLyoqCj4gKwkgKiBAc2xpY2VfYnBnX29mZnNldDoKPiArCSAqIFBQ UzMwLCBQUFMzMVs3OjBdIC0gTnVtYmVyIG9mIGJpdHMgdGhhdCBhcmUgZGVhbGxvY2F0ZWQgZm9y IGVhY2gKPiArCSAqIGdyb3VwIHRvIGVuZm9yY2UgdGhlIHNsaWNlIGNvbnN0cmFpbnQuCj4gKwkg Ki8KPiArCV9fYmUxNiBzbGljZV9icGdfb2Zmc2V0Owo+ICsJLyoqCj4gKwkgKiBAaW5pdGlhbF9v ZmZzZXQ6Cj4gKwkgKiBQUFMzMiwzM1s3OjBdIC0gSW5pdGlhbCB2YWx1ZSBmb3IgcmNYZm9ybU9m ZnNldAo+ICsJICovCj4gKwlfX2JlMTYgaW5pdGlhbF9vZmZzZXQ7Cj4gKwkvKioKPiArCSAqIEBm aW5hbF9vZmZzZXQ6Cj4gKwkgKiBQUFMzNCwzNVs3OjBdIC0gTWF4aW11bSBlbmQtb2Ytc2xpY2Ug dmFsdWUgZm9yIHJjWGZvcm1PZmZzZXQKPiArCSAqLwo+ICsJX19iZTE2IGZpbmFsX29mZnNldDsK PiArCS8qKgo+ICsJICogQGZsYXRuZXNzX21pbl9xcDoKPiArCSAqIFBQUzM2WzQ6MF0gLSBNaW5p bXVtIFFQIGF0IHdoaWNoIGZsYXRuZXNzIGlzIHNpZ25hbGVkIGFuZAo+ICsJICogZmxhdG5lc3Mg UVAgYWRqdXN0bWVudCBpcyBtYWRlLgo+ICsJICogUFBTMzZbNzo1XSAtIFJlc2VydmVkCj4gKwkg Ki8KPiArCXU4IGZsYXRuZXNzX21pbl9xcDsKPiArCS8qKgo+ICsJICogQGZsYXRuZXNzX21heF9x cDoKPiArCSAqIFBQUzM3WzQ6MF0gLSBNYXggUVAgYXQgd2hpY2ggZmxhdG5lc3MgaXMgc2lnbmFs bGVkIGFuZAo+ICsJICogdGhlIGZsYXRuZXNzIGFkanVzdG1lbnQgaXMgbWFkZS4KPiArCSAqIFBQ UzM3Wzc6NV0gLSBSZXNlcnZlZAo+ICsJICovCj4gKwl1OCBmbGF0bmVzc19tYXhfcXA7Cj4gKwkv KioKPiArCSAqIEByY19tb2RlbF9zaXplOgo+ICsJICogUFBTMzgsMzlbNzowXSAtIE51bWJlciBv ZiBiaXRzIHdpdGhpbiBSQyBNb2RlbC4KPiArCSAqLwo+ICsJX19iZTE2IHJjX21vZGVsX3NpemU7 Cj4gKwkvKioKPiArCSAqIEByY19lZGdlX2ZhY3RvcjoKPiArCSAqIFBQUzQwWzM6MF0gLSBSYXRp byBvZiBjdXJyZW50IGFjdGl2aXR5IHZzLCBwcmV2aW91cwo+ICsJICogYWN0aXZpdHkgdG8gZGV0 ZXJtaW5lIHByZXNlbmNlIG9mIGVkZ2UuCj4gKwkgKiBQUFM0MFs3OjRdIC0gUmVzZXJ2ZWQKPiAr CSAqLwo+ICsJdTggcmNfZWRnZV9mYWN0b3I7Cj4gKwkvKioKPiArCSAqIEByY19xdWFudF9pbmNy X2xpbWl0MDoKPiArCSAqIFBQUzQxWzQ6MF0gLSBRUCB0aHJlc2hvbGQgdXNlZCBpbiBzaG9ydCB0 ZXJtIFJDCj4gKwkgKiBQUFM0MVs3OjVdIC0gUmVzZXJ2ZWQKPiArCSAqLwo+ICsJdTggcmNfcXVh bnRfaW5jcl9saW1pdDA7Cj4gKwkvKioKPiArCSAqIEByY19xdWFudF9pbmNyX2xpbWl0MToKPiAr CSAqIFBQUzQyWzQ6MF0gLSBRUCB0aHJlc2hvbGQgdXNlZCBpbiBzaG9ydCB0ZXJtIFJDCj4gKwkg KiBQUFM0Mls3OjVdIC0gUmVzZXJ2ZWQKPiArCSAqLwo+ICsJdTggcmNfcXVhbnRfaW5jcl9saW1p dDE7Cj4gKwkvKioKPiArCSAqIEByY190Z3Rfb2Zmc2V0Ogo+ICsJICogUFBTNDNbMzowXSAtIExv d2VyIGVuZCBvZiB0aGUgdmFyaWFiaWxpdHkgcmFuZ2UgYXJvdW5kIHRoZSB0YXJnZXQKPiArCSAq IGJpdHMgcGVyIGdyb3VwIHRoYXQgaXMgYWxsb3dlZCBieSBzaG9ydCB0ZXJtIFJDLgo+ICsJICog UFBTNDNbNzo0XS0gVXBwZXIgZW5kIG9mIHRoZSB2YXJpYWJpbGl0eSByYW5nZSBhcm91bmQgdGhl IHRhcmdldAo+ICsJICogYml0cyBwZXIgZ3JvdXAgdGhhdCBpIGFsbG93ZWQgYnkgc2hvcnQgdGVy bSByYy4KPiArCSAqLwo+ICsJdTggcmNfdGd0X29mZnNldDsKPiArCS8qKgo+ICsJICogQHJjX2J1 Zl90aHJlc2g6Cj4gKwkgKiBQUFM0NFs3OjBdIC0gUFBTNTdbNzowXSAtIFNwZWNpZmllcyB0aGUg dGhyZXNob2xkcyBpbiBSQyBtb2RlbCBmb3IKPiArCSAqIHRoZSAxNSByYW5nZXMgZGVmaW5lZCBi eSAxNCB0aHJlc2hvbGRzLgo+ICsJICovCj4gKwl1OCByY19idWZfdGhyZXNoW0RTQ19OVU1fQlVG X1JBTkdFUyAtIDFdOwo+ICsJLyoqCj4gKwkgKiBAcmNfcmFuZ2VfcGFyYW1ldGVyczoKPiArCSAq IFBQUzU4Wzc6MF0gLSBQUFM4N1s3OjBdCj4gKwkgKiBQYXJhbWV0ZXJzIHRoYXQgY29ycmVzcG9u ZCB0byBlYWNoIG9mIHRoZSAxNSByYW5nZXMuCj4gKwkgKi8KPiArCV9fYmUxNiByY19yYW5nZV9w YXJhbWV0ZXJzW0RTQ19OVU1fQlVGX1JBTkdFU107Cj4gKwkvKioKPiArCSAqIEBuYXRpdmVfNDIy XzQyMDoKPiArCSAqIFBQUzg4WzBdIC0gMCA9IE5hdGl2ZSA0OjI6MiBub3QgdXNlZAo+ICsJICog MSA9IE5hdGl2ZSA0OjI6MiB1c2VkCj4gKwkgKiBQUFM4OFsxXSAtIDAgPSBOYXRpdmUgNDoyOjAg bm90IHVzZQo+ICsJICogMSA9IE5hdGl2ZSA0OjI6MCB1c2VkCj4gKwkgKiBQUFM4OFs3OjJdIC0g UmVzZXJ2ZWQgNiBiaXRzCj4gKwkgKi8KPiArCXU4IG5hdGl2ZV80MjJfNDIwOwo+ICsJLyoqCj4g KwkgKiBAc2Vjb25kX2xpbmVfYnBnX29mZnNldDoKPiArCSAqIFBQUzg5WzQ6MF0gLSBBZGRpdGlv bmFsIGJpdHMvZ3JvdXAgYnVkZ2V0IGZvciB0aGUKPiArCSAqIHNlY29uZCBsaW5lIG9mIGEgc2xp Y2UgaW4gTmF0aXZlIDQ6MjowIG1vZGUuCj4gKwkgKiBTZXQgdG8gMCBpZiBEU0MgbWlub3IgdmVy c2lvbiBpcyAxIG9yIG5hdGl2ZTQyMCBpcyAwLgo+ICsJICogUFBTODlbNzo1XSAtIFJlc2VydmVk Cj4gKwkgKi8KPiArCXU4IHNlY29uZF9saW5lX2JwZ19vZmZzZXQ7Cj4gKwkvKioKPiArCSAqIEBu c2xfYnBnX29mZnNldDoKPiArCSAqIFBQUzkwWzc6MF0sIFBQUzkxWzc6MF0gLSBOdW1iZXIgb2Yg Yml0cyB0aGF0IGFyZSBkZWFsbG9jYXRlZAo+ICsJICogZm9yIGVhY2ggZ3JvdXAgdGhhdCBpcyBu b3QgaW4gdGhlIHNlY29uZCBsaW5lIG9mIGEgc2xpY2UuCj4gKwkgKi8KPiArCV9fYmUxNiBuc2xf YnBnX29mZnNldDsKPiArCS8qKgo+ICsJICogQHNlY29uZF9saW5lX29mZnNldF9hZGo6Cj4gKwkg KiBQUFM5Mls3OjBdLCBQUFM5M1s3OjBdIC0gVXNlZCBhcyBvZmZzZXQgYWRqdXN0bWVudCBmb3Ig dGhlIHNlY29uZAo+ICsJICogbGluZSBpbiBOYXRpdmUgNDoyOjAgbW9kZS4KPiArCSAqLwo+ICsJ X19iZTE2IHNlY29uZF9saW5lX29mZnNldF9hZGo7Cj4gKwkvKioKPiArCSAqIEBwcHNfbG9uZ185 NF9yZXNlcnZlZDoKPiArCSAqIFBQUyA5NCwgOTUsIDk2LCA5NyAtIFJlc2VydmVkCj4gKwkgKi8K PiArCXUzMiBwcHNfbG9uZ185NF9yZXNlcnZlZDsKPiArCS8qKgo+ICsJICogQHBwc19sb25nXzk4 X3Jlc2VydmVkOgo+ICsJICogUFBTIDk4LCA5OSwgMTAwLCAxMDEgLSBSZXNlcnZlZAo+ICsJICov Cj4gKwl1MzIgcHBzX2xvbmdfOThfcmVzZXJ2ZWQ7Cj4gKwkvKioKPiArCSAqIEBwcHNfbG9uZ18x MDJfcmVzZXJ2ZWQ6Cj4gKwkgKiBQUFMgMTAyLCAxMDMsIDEwNCwgMTA1IC0gUmVzZXJ2ZWQKPiAr CSAqLwo+ICsJdTMyIHBwc19sb25nXzEwMl9yZXNlcnZlZDsKPiArCS8qKgo+ICsJICogQHBwc19s b25nXzEwNl9yZXNlcnZlZDoKPiArCSAqIFBQUyAxMDYsIDEwNywgMTA4LCAxMDkgLSByZXNlcnZl ZAo+ICsJICovCj4gKwl1MzIgcHBzX2xvbmdfMTA2X3Jlc2VydmVkOwo+ICsJLyoqCj4gKwkgKiBA cHBzX2xvbmdfMTEwX3Jlc2VydmVkOgo+ICsJICogUFBTIDExMCwgMTExLCAxMTIsIDExMyAtIHJl c2VydmVkCj4gKwkgKi8KPiArCXUzMiBwcHNfbG9uZ18xMTBfcmVzZXJ2ZWQ7Cj4gKwkvKioKPiAr CSAqIEBwcHNfbG9uZ18xMTRfcmVzZXJ2ZWQ6Cj4gKwkgKiBQUFMgMTE0IC0gMTE3IC0gcmVzZXJ2 ZWQKPiArCSAqLwo+ICsJdTMyIHBwc19sb25nXzExNF9yZXNlcnZlZDsKPiArCS8qKgo+ICsJICog QHBwc19sb25nXzExOF9yZXNlcnZlZDoKPiArCSAqIFBQUyAxMTggLSAxMjEgLSByZXNlcnZlZAo+ ICsJICovCj4gKwl1MzIgcHBzX2xvbmdfMTE4X3Jlc2VydmVkOwo+ICsJLyoqCj4gKwkgKiBAcHBz X2xvbmdfMTIyX3Jlc2VydmVkOgo+ICsJICogUFBTIDEyMi0gMTI1IC0gcmVzZXJ2ZWQKPiArCSAq Lwo+ICsJdTMyIHBwc19sb25nXzEyMl9yZXNlcnZlZDsKPiArCS8qKgo+ICsJICogQHBwc19zaG9y dF8xMjZfcmVzZXJ2ZWQ6Cj4gKwkgKiBQUFMgMTI2LCAxMjcgLSByZXNlcnZlZAo+ICsJICovCj4g KwlfX2JlMTYgcHBzX3Nob3J0XzEyNl9yZXNlcnZlZDsKPiArfTsKPiArCj4gKy8qKgo+ICsgKiBz dHJ1Y3QgZHJtX2RzY19wcHNfaW5mb2ZyYW1lIC0gRFNDIGluZm9mcmFtZSBjYXJyeWluZyB0aGUg UGljdHVyZSBQYXJhbWV0ZXIKPiArICogU2V0IE1ldGFkYXRhCj4gKyAqCj4gKyAqIFRoaXMgc3Ry dWN0dXJlIHJlcHJlc2VudHMgdGhlIERTQyBQUFMgaW5mb2ZyYW1lIHJlcXVpcmVkIHRvIHNlbmQg dGhlIFBpY3R1cmUKPiArICogUGFyYW1ldGVyIFNldCBtZXRhZGF0YSByZXF1aXJlZCBiZWZvcmUg ZW5hYmxpbmcgVkVTQSBEaXNwbGF5IFN0cmVhbQo+ICsgKiBDb21wcmVzc2lvbi4gVGhpcyBpcyBi YXNlZCBvbiB0aGUgRFAgU2Vjb25kYXJ5IERhdGEgUGFja2V0IHN0cnVjdHVyZSBhbmQKPiArICog Y29tcHJpc2VzIG9mIFNEUCBIZWFkZXIgYXMgZGVmaW5lZCBpbiBkcm1fZHBfaGVscGVyLmggYW5k IFBQUyBwYXlsb2FkLgo+ICsgKgo+ICsgKiBAcHBzX2hlYWRlcjoKPiArICoKPiArICogSGVhZGVy IGZvciBQUFMgYXMgcGVyIERQIFNEUCBoZWFkZXIgZm9ybWF0Cj4gKyAqCj4gKyAqIEBwcHNfcGF5 bG9hZDoKPiArICoKPiArICogUFBTIHBheWxvYWQgZmllbGRzIGFzIHBlciBEU0Mgc3BlY2lmaWNh dGlvbiBUYWJsZSA0LTEKPiArICovCj4gK3N0cnVjdCBkcm1fZHNjX3Bwc19pbmZvZnJhbWUgewo+ ICsJc3RydWN0IGRwX3NkcF9oZWFkZXIgcHBzX2hlYWRlcjsKPiArCXN0cnVjdCBwaWN0dXJlX3Bh cmFtZXRlcl9zZXQgcHBzX3BheWxvYWQ7Cj4gK30gX19wYWNrZWQ7Cj4gKwo+ICsjZW5kaWYgLyog X0RSTV9EU0NfSF8gKi8KPiAKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50 ZWwtZ2Z4Cg==