From mboxrd@z Thu Jan 1 00:00:00 1970 From: Todd Previte Subject: Re: [PATCH 05/12] drm: Add supporting structure for Displayport Link CTS test 4.2.2.6 Date: Thu, 16 Apr 2015 07:02:10 -0700 Message-ID: <552FC0E2.3040401@gmail.com> References: <1429112327-7695-6-git-send-email-tprevite@gmail.com> <1429135421-18192-1-git-send-email-tprevite@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Paulo Zanoni Cc: Intel Graphics Development , DRI Development List-Id: dri-devel@lists.freedesktop.org CgpPbiA0LzE2LzIwMTUgNjozNCBBTSwgUGF1bG8gWmFub25pIHdyb3RlOgo+IDIwMTUtMDQtMTUg MTk6MDMgR01ULTAzOjAwIFRvZGQgUHJldml0ZSA8dHByZXZpdGVAZ21haWwuY29tPjoKPj4gRGlz cGxheXBvcnQgY29tcGxpYW5jZSB0ZXN0IDQuMi4yLjYgcmVxdWlyZXMgdGhhdCBhIHNvdXJjZSBk ZXZpY2UgYmUgY2FwYWJsZSBvZgo+PiBkZXRlY3RpbmcgYSBjb3JydXB0IEVESUQuIFRoZSB0ZXN0 IHNwZWNpZmljYXRpb24gc3RhdGVzIHRoYXQgdGhlIHNpbmsgZGV2aWNlCj4+IHNldHMgdXAgdGhl IEVESUQgd2l0aCBhbiBpbnZhbGlkIGNoZWNrc3VtLiBUbyBkbyB0aGlzLCB0aGUgc2luayBzZXRz IHVwIGFuCj4+IGludmFsaWQgRURJRCBoZWFkZXIsIGV4cGVjdGluZyB0aGUgc291cmNlIGRldmlj ZSB0byBnZW5lcmF0ZSB0aGUgY2hlY2tzdW0gYW5kCj4+IGNvbXBhcmUgaXQgdG8gdGhlIHZhbHVl IHN0b3JlZCBpbiB0aGUgbGFzdCBieXRlIG9mIHRoZSBibG9jayBkYXRhLgo+Pgo+PiBVbmZvcnR1 bmF0ZWx5LCB0aGUgRFJNIEVESUQgcmVhZGluZyBhbmQgcGFyc2luZyBmdW5jdGlvbnMgYXJlIGFj dHVhbGx5IHRvbyBnb29kCj4+IGluIHRoaXMgY2FzZTsgdGhlIGhlYWRlciBpcyBmaXhlZCBiZWZv cmUgdGhlIGNoZWNrc3VtIGlzIGNvbXB1dGVkIGFuZCB0aHVzIHRoZQo+PiBjb2RlIG5ldmVyIHNl ZXMgdGhlIGludmFsaWQgY2hlY2tzdW0uIFRoaXMgcmVzdWx0cyBpbiBhIGZhaWx1cmUgdG8gcGFz cyB0aGUKPj4gY29tcGxpYW5jZSB0ZXN0Lgo+Pgo+PiBUbyBjb3JyZWN0IHRoaXMgaXNzdWUsIGEg Y2hlY2tzdW0gaXMgZ2VuZXJhdGVkIHdoZW4gdGhlIEVESUQgaGVhZGVyIGlzIGRldGVjdGVkCj4+ IGFzIGNvcnJ1cHRlZC4gSWYgdGhlIGNoZWNrc3VtIGlzIGludmFsaWQsIGl0IHNldHMgdGhlIGhl YWRlcl9jb3JydXB0IGZsYWcgYW5kCj4+IGxvZ3MgdGhlIGVycm9ycy4gSW4gdGhlIGNhc2Ugb2Yg YSBtb3JlIHNlcmlvdXNseSBkYW1hZ2VkIGhlYWRlciAoZml4dXAgc2NvcmUKPj4gbGVzcyB0aGFu IHRoZSB0aHJlc2hvbGQpIHRoZSBjb2RlIGRvZXMgbm90IGdlbmVyYXRlIHRoZSBjaGVja3N1bSBi dXQgZG9lcyBzZXQKPj4gdGhlIGhlYWRlcl9jb3JydXB0IGZsYWcuCj4+Cj4+IFYyOgo+PiAtIFJl bW92ZWQgdGhlIHN0YXRpYyBib29sIGdsb2JhbAo+PiAtIEFkZGVkIGEgYm9vbCB0byB0aGUgZHJt X2Nvbm5lY3RvciBzdHJ1Y3QgdG8gcmVhcGxjZSB0aGUgc3RhdGljIG9uZSBmb3IKPj4gICAgaG9s ZGluZyB0aGUgc3RhdHVzIG9mIHJhdyBlZGlkIGhlYWRlciBjb3JydXB0aW9uIGRldGVjdGlvbgo+ PiAtIE1vZGlmaWVkIHRoZSBmdW5jdGlvbiBzaWduYXR1cmUgb2YgdGhlIGlzX3ZhbGlkIGZ1bmN0 aW9uIHRvIHRha2UgYW4KPj4gICAgYWRkaXRpb25hbCBwYXJhbWV0ZXIgdG8gc3RvcmUgdGhlIGNv cnJ1cHRpb24gZGV0ZWN0ZWQgdmFsdWUKPj4gLSBGaXhlZCB0aGUgb3RoZXIgY2FsbGVycyBvZiB0 aGUgYWJvdmUgaXNfdmFsaWQgZnVuY3Rpb24KPj4gVjM6Cj4+IC0gVXBkYXRlZCB0aGUgY29tbWl0 IG1lc3NhZ2UgdG8gYmUgbW9yZSBjbGVhciBhYm91dCB3aGF0IGFuZCB3aHkgdGhpcwo+PiAgICBw YXRjaCBkb2VzIHdoYXQgaXQgZG9lcy4KPj4gLSBBZGRlZCBjb21tZW50IGluIGNvZGUgdG8gY2xh cmlmeSB0aGUgb3BlcmF0aW9ucyB0aGVyZQo+PiAtIFJlbW92ZWQgY29tcGxpYW5jZSB2YXJpYWJs ZSBhbmQgY2hlY2tfbGlua19zdGF0dXMgdXBkYXRlOyB0aG9zZQo+PiAgICBoYXZlIGJlZW4gbW92 ZWQgdG8gYSBsYXRlciBwYXRjaAo+PiAtIFJlbW92ZWQgdmFyaWFibGUgYXNzaWdubWVudCBmcm9t IHRoZSBib3R0b20gb2YgdGhlIHRlc3QgaGFuZGxlcgo+PiBWNDoKPj4gLSBSZW1vdmVkIGk5MTUg dGFnIGZyb20gc3ViamVjdCBsaW5lIGFzIHRoZSBwYXRjaCBpcyBub3QgaTkxNS1zcGVjaWZpYwo+ PiBWNToKPj4gLSBNb3ZlZCBjb2RlIGNhdXNpbmcgYSBjb21waWxhdGlvbiBlcnJvciB0byB0aGlz IHBhdGNoIHdoZXJlIHRoZSB2YXJpYWJsZQo+PiAgICBpcyBhY3R1YWxseSBkZWNsYXJlZAo+PiAt IE1haW50YWluZWQgYmxhbmsgbGluZXMgLyBzcGFjaW5nIHNvIGFzIHRvIG5vdCBjb250YW1pbmF0 ZSB0aGUgcGF0Y2gKPj4gVjY6Cj4+IC0gUmVtb3ZlZCBleHRyYSBkZWJ1ZyBtZXNzYWdlcwo+PiAt IEFkZGVkIGRvY3VtZW50YXRpb24gdG8gZm9yIHRoZSBhZGRlZCBwYXJhbWV0ZXIgb24gZHJtX2Vk aWRfYmxvY2tfdmFsaWQKPj4gLSBGaXhlZCBtb3JlIHdoaXRlc3BhY2UgaXNzdWVzIGluIGNoZWNr X2xpbmtfc3RhdHVzCj4+IC0gQWRkZWQgYSBjbGVhciBvZiB0aGUgaGVhZGVyX2NvcnJ1cHQgZmxh ZyB0byB0aGUgZW5kIG9mIHRoZSB0ZXN0IGhhbmRsZXIKPj4gICAgaW4gaW50ZWxfZHAuYwo+PiAt IENoYW5nZWQgdGhlIHVzYWdlIG9mIHRoZSBuZXcgZnVuY3Rpb24gcHJvdG90eXBlIGluIHNldmVy YWwgcGxhY2VzIHRvIHVzZQo+PiAgICBOVUxMIHdoZXJlIGl0IGlzIG5vdCBuZWVkZWQgYnkgY29t cGxpYW5jZSB0ZXN0aW5nCj4+IFY3Ogo+PiAtIFVwZGF0ZWQgdG8gYWNjb3VudCBmb3IgbG9uZ19w dWxzZSBmbGFnIHByb3BhZ2F0aW9uCj4+IFY4Ogo+PiAtIFJlbW92ZWQgY2xlYXJpbmcgb2YgaGVh ZGVyX2NvcnJ1cHQgZmxhZyBmcm9tIHRoZSB0ZXN0IGhhbmRsZXIgaW4gaW50ZWxfZHAuYwo+PiAt IEFkZGVkIGNsZWFyaW5nIG9mIGhlYWRlcl9jb3JydXB0IGZsYWcgaW4gdGhlIGRybV9lZGlkX2Js b2NrX3ZhbGlkIGZ1bmN0aW9uCj4+Cj4+IFNpZ25lZC1vZmYtYnk6IFRvZGQgUHJldml0ZSA8dHBy ZXZpdGVAZ21haWwuY29tPgo+PiBDYzogZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+ PiAtLS0KPj4gICBkcml2ZXJzL2dwdS9kcm0vZHJtX2VkaWQuYyAgICAgIHwgMzUgKysrKysrKysr KysrKysrKysrKysrKysrKysrKystLS0tLS0KPj4gICBkcml2ZXJzL2dwdS9kcm0vZHJtX2VkaWRf bG9hZC5jIHwgIDcgKysrKystLQo+PiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMg fCAgMiArLQo+PiAgIGluY2x1ZGUvZHJtL2RybV9jcnRjLmggICAgICAgICAgfCAgOCArKysrKysr LQo+PiAgIDQgZmlsZXMgY2hhbmdlZCwgNDIgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0p Cj4+Cj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2VkaWQuYyBiL2RyaXZlcnMv Z3B1L2RybS9kcm1fZWRpZC5jCj4+IGluZGV4IDUzYmM3YTYuLjZkMDM3ZjkgMTAwNjQ0Cj4+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZWRpZC5jCj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9k cm1fZWRpZC5jCj4+IEBAIC0xMDQxLDEzICsxMDQxLDE1IEBAIHN0YXRpYyBib29sIGRybV9lZGlk X2lzX3plcm8oY29uc3QgdTggKmluX2VkaWQsIGludCBsZW5ndGgpCj4+ICAgICogQHJhd19lZGlk OiBwb2ludGVyIHRvIHJhdyBFRElEIGJsb2NrCj4+ICAgICogQGJsb2NrOiB0eXBlIG9mIGJsb2Nr IHRvIHZhbGlkYXRlICgwIGZvciBiYXNlLCBleHRlbnNpb24gb3RoZXJ3aXNlKQo+PiAgICAqIEBw cmludF9iYWRfZWRpZDogaWYgdHJ1ZSwgZHVtcCBiYWQgRURJRCBibG9ja3MgdG8gdGhlIGNvbnNv bGUKPj4gKyAqIEBoZWFkZXJfY29ycnVwdDogaWYgdHJ1ZSwgdGhlIGhlYWRlciBvciBjaGVja3N1 bSBpcyBpbnZhbGlkCj4+ICAgICoKPj4gICAgKiBWYWxpZGF0ZSBhIGJhc2Ugb3IgZXh0ZW5zaW9u IEVESUQgYmxvY2sgYW5kIG9wdGlvbmFsbHkgZHVtcCBiYWQgYmxvY2tzIHRvCj4+ICAgICogdGhl IGNvbnNvbGUuCj4+ICAgICoKPj4gICAgKiBSZXR1cm46IFRydWUgaWYgdGhlIGJsb2NrIGlzIHZh bGlkLCBmYWxzZSBvdGhlcndpc2UuCj4+ICAgICovCj4+IC1ib29sIGRybV9lZGlkX2Jsb2NrX3Zh bGlkKHU4ICpyYXdfZWRpZCwgaW50IGJsb2NrLCBib29sIHByaW50X2JhZF9lZGlkKQo+PiArYm9v bCBkcm1fZWRpZF9ibG9ja192YWxpZCh1OCAqcmF3X2VkaWQsIGludCBibG9jaywgYm9vbCBwcmlu dF9iYWRfZWRpZCwKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICBib29sICpoZWFkZXJfY29y cnVwdCkKPj4gICB7Cj4+ICAgICAgICAgIHU4IGNzdW07Cj4+ICAgICAgICAgIHN0cnVjdCBlZGlk ICplZGlkID0gKHN0cnVjdCBlZGlkICopcmF3X2VkaWQ7Cj4+IEBAIC0xMDYwLDExICsxMDYyLDI4 IEBAIGJvb2wgZHJtX2VkaWRfYmxvY2tfdmFsaWQodTggKnJhd19lZGlkLCBpbnQgYmxvY2ssIGJv b2wgcHJpbnRfYmFkX2VkaWQpCj4+Cj4+ICAgICAgICAgIGlmIChibG9jayA9PSAwKSB7Cj4+ICAg ICAgICAgICAgICAgICAgaW50IHNjb3JlID0gZHJtX2VkaWRfaGVhZGVyX2lzX3ZhbGlkKHJhd19l ZGlkKTsKPj4gLSAgICAgICAgICAgICAgIGlmIChzY29yZSA9PSA4KSA7Cj4+IC0gICAgICAgICAg ICAgICBlbHNlIGlmIChzY29yZSA+PSBlZGlkX2ZpeHVwKSB7Cj4+ICsgICAgICAgICAgICAgICBp ZiAoc2NvcmUgPT0gOCkgewo+PiArICAgICAgICAgICAgICAgICAgICAgICBpZiAoaGVhZGVyX2Nv cnJ1cHQpCj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKmhlYWRlcl9jb3JydXB0 ID0gMDsKPj4gKyAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoc2NvcmUgPj0gZWRpZF9maXh1cCkg ewo+PiArICAgICAgICAgICAgICAgICAgICAgICAvKiBEaXNwbGF5cG9ydCBMaW5rIENUUyBDb3Jl IDEuMiByZXYxLjEgdGVzdCA0LjIuMi42Cj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAqIElu IG9yZGVyIHRvIHByb3Blcmx5IGdlbmVyYXRlIHRoZSBpbnZhbGlkIGNoZWNrc3VtCj4+ICsgICAg ICAgICAgICAgICAgICAgICAgICAqIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QsIGl0IG11c3QgYmUg Z2VuZXJhdGVkIHVzaW5nCj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAqIHRoZSByYXcgRURJ RCBkYXRhLiBPdGhlcndpc2UsIHRoZSBmaXgtdXAgY29kZSBoZXJlCj4+ICsgICAgICAgICAgICAg ICAgICAgICAgICAqIHdpbGwgY29ycmVjdCB0aGUgcHJvYmxlbSwgdGhlIGNoZWNrc3VtIGlzIGNv cnJlY3QKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICogYW5kIHRoZSB0ZXN0IGZhaWxzCj4+ ICsgICAgICAgICAgICAgICAgICAgICAgICAqLwo+PiArICAgICAgICAgICAgICAgICAgICAgICBj c3VtID0gZHJtX2VkaWRfYmxvY2tfY2hlY2tzdW0ocmF3X2VkaWQpOwo+PiArICAgICAgICAgICAg ICAgICAgICAgICBpZiAoY3N1bSkgewo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGlmIChoZWFkZXJfY29ycnVwdCkKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICpoZWFkZXJfY29ycnVwdCA9IDE7Cj4+ICsgICAgICAgICAgICAgICAgICAgICAgIH0K Pgo+IEkgd2FzIHJlYWR5IHRvIGdpdmUgdGhlIFItQiB0YWcsIGJ1dCB0aGVuIEkgcmVhbGl6ZWQg dGhpcy4gU2hvdWxkbid0Cj4gd2UgYmUgc2V0dGluZyBoZWFkZXJfY29ycnVwdCBoZXJlIHJlZ2Fy ZGxlc3Mgb2YgdGhlIGNoZWNrc3VtIHZhbHVlPyBJCj4gbWVhbiwgc2NvcmUgaXMgbm90IDgsIHNv IHRoZSBoZWFkZXIgaXMgaW5kZWVkIGNvcnJ1cHQuCkkgYWRkZWQgdGhlIGNoZWNrc3VtIGNvbXB1 dGF0aW9uIGFzIGFuIGV4dHJhIHZhbGlkYXRpb24gdGhhdCB0aGUgaGVhZGVyIAp3YXMgaW5kZWVk IGNvcnJ1cHQuIEhvd2V2ZXIsIHRoYXQgY2hlY2tzdW0gaXMgZGlzY2FyZGVkIHNvIHRoZSAKYWRk aXRpb25hbCBjaGVja3N1bSBnZW5lcmF0aW9uIGlzbid0IHN0cmljdGx5IG5lY2Vzc2FyeS4gSSd2 ZSByZW1vdmVkIGl0IAppbiB0aGUgdXBkYXRlZCBwYXRjaC4KPiBBbHNvLCBzZXR0aW5nICJoZWFk ZXJfY29ycnVwdCIgdG8gMSBpbiBjYXNlIHRoZSBjaGVja3N1bSBpcyBpbnZhbGlkIGlzCj4gc29t ZXdoYXQgYSBkaXN0b3J0aW9uIG9mIG1lYW5pbmcgaW4gdGhlIHZhcmlhYmxlLiBJZiB3ZSByZWFs bHkgbmVlZAo+IHRoZSBjaGVja3N1bSwgd2Ugc2hvdWxkIHByb2JhYmx5IGhhdmUgc29tZXRoaW5n IGxpa2UKPiBjb25uZWN0b3ItPnJhd19jaGVja3N1bSwgb3IgbWF5YmUgcmVuYW1lIGhlYWRlcl9j b3JydXB0IHRvCj4gZWRpZF9jb3JydXB0LCB3aGVyZSAiZWRpZF9jb3JydXB0IiBtZWFucyAiZWl0 aGVyIGludmFsaWQgaGVhZGVyIG9yCj4gaW52YWxpZCBjaGVja3N1bSI/Ckkgd2FzIHRoaW5raW5n IHRoZSBzYW1lIHRoaW5nIGFzIEkndmUgYmVlbiB3b3JraW5nIHdpdGggdGhpcy4gSSB0aGluayAK cmVuYW1pbmcgaXQgdG8gImVkaWRfY29ycnVwdCIgaXMgbW9yZSBhY2N1cmF0ZS4gRml4ZWQgaW4g dGhlIHVwZGF0ZS4KPiBBbmQgZm9yIGNvbXBsaWFuY2UgdGVzdGluZyBzcGVjaWZpY2FsbHksIGFz IGZhciBhcyBJIHVuZGVyc3RhbmQsIEkgc2VlCj4gb24gcGF0Y2ggNyB0aGF0IHlvdSBvbmx5IGNh cmUgYWJvdXQgdGhlIGNoZWNrc3VtIGlmIHRoZSBoZWFkZXIgaXMKPiB2YWxpZCwgc28gd2UgZG9u J3Qgc2VlbSB0byBuZWVkIHRoZSBjc3VtIHZhbHVlIGhlcmUsIHNvIGl0IHNlZW1zIG15Cj4gc3Vn Z2VzdGlvbiB0byBqdXN0IGFzc2lnbiBoZWFkZXJfY29ycnVwdD0xIHJlZ2FyZGxlc3Mgb2YgdGhl IGNoZWNrc3VtCj4gdmFsdWUgc2VlbXMgdG8gYmUgZW5vdWdoIHRvIHNvbHZlIHlvdXIgcHJvYmxl bS4KQWdyZWVkLgo+IFNvcnJ5IGZvciBub3QgcmVhbGl6aW5nIHRoaXMgZWFybGllciwgdGhlIGJh Y2stYW5kLWZvcnRoIGJldHdlZW4KPiBwYXRjaGVzIHJveWFsbHkgY29uZnVzZWQgbWUuCkluZGVl ZCwgdGhhdCdzIGFuIGlzc3VlIGZvciBtZSBhcyB3ZWxsLgo+Cj4+ICAgICAgICAgICAgICAgICAg ICAgICAgICBEUk1fREVCVUcoIkZpeGluZyBFRElEIGhlYWRlciwgeW91ciBoYXJkd2FyZSBtYXkg YmUgZmFpbGluZ1xuIik7Cj4+ICAgICAgICAgICAgICAgICAgICAgICAgICBtZW1jcHkocmF3X2Vk aWQsIGVkaWRfaGVhZGVyLCBzaXplb2YoZWRpZF9oZWFkZXIpKTsKPj4gICAgICAgICAgICAgICAg ICB9IGVsc2Ugewo+PiArICAgICAgICAgICAgICAgICAgICAgICBpZiAoaGVhZGVyX2NvcnJ1cHQp IHsKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqaGVhZGVyX2NvcnJ1cHQgPSAx Owo+PiArICAgICAgICAgICAgICAgICAgICAgICB9Cj4+ICAgICAgICAgICAgICAgICAgICAgICAg ICBnb3RvIGJhZDsKPj4gICAgICAgICAgICAgICAgICB9Cj4+ICAgICAgICAgIH0KPj4gQEAgLTEx MjksNyArMTE0OCw3IEBAIGJvb2wgZHJtX2VkaWRfaXNfdmFsaWQoc3RydWN0IGVkaWQgKmVkaWQp Cj4+ICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwo+Pgo+PiAgICAgICAgICBmb3IgKGkg PSAwOyBpIDw9IGVkaWQtPmV4dGVuc2lvbnM7IGkrKykKPj4gLSAgICAgICAgICAgICAgIGlmICgh ZHJtX2VkaWRfYmxvY2tfdmFsaWQocmF3ICsgaSAqIEVESURfTEVOR1RILCBpLCB0cnVlKSkKPj4g KyAgICAgICAgICAgICAgIGlmICghZHJtX2VkaWRfYmxvY2tfdmFsaWQocmF3ICsgaSAqIEVESURf TEVOR1RILCBpLCB0cnVlLCBOVUxMKSkKPj4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVy biBmYWxzZTsKPj4KPj4gICAgICAgICAgcmV0dXJuIHRydWU7Cj4+IEBAIC0xMjMyLDcgKzEyNTEs OCBAQCBzdHJ1Y3QgZWRpZCAqZHJtX2RvX2dldF9lZGlkKHN0cnVjdCBkcm1fY29ubmVjdG9yICpj b25uZWN0b3IsCj4+ICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCA0OyBpKyspIHsKPj4gICAgICAg ICAgICAgICAgICBpZiAoZ2V0X2VkaWRfYmxvY2soZGF0YSwgYmxvY2ssIDAsIEVESURfTEVOR1RI KSkKPj4gICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gb3V0Owo+PiAtICAgICAgICAgICAg ICAgaWYgKGRybV9lZGlkX2Jsb2NrX3ZhbGlkKGJsb2NrLCAwLCBwcmludF9iYWRfZWRpZCkpCj4+ ICsgICAgICAgICAgICAgICBpZiAoZHJtX2VkaWRfYmxvY2tfdmFsaWQoYmxvY2ssIDAsIHByaW50 X2JhZF9lZGlkLAo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZj b25uZWN0b3ItPmVkaWRfaGVhZGVyX2NvcnJ1cHQpKQo+PiAgICAgICAgICAgICAgICAgICAgICAg ICAgYnJlYWs7Cj4+ICAgICAgICAgICAgICAgICAgaWYgKGkgPT0gMCAmJiBkcm1fZWRpZF9pc196 ZXJvKGJsb2NrLCBFRElEX0xFTkdUSCkpIHsKPj4gICAgICAgICAgICAgICAgICAgICAgICAgIGNv bm5lY3Rvci0+bnVsbF9lZGlkX2NvdW50ZXIrKzsKPj4gQEAgLTEyNTcsNyArMTI3NywxMCBAQCBz dHJ1Y3QgZWRpZCAqZHJtX2RvX2dldF9lZGlkKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0 b3IsCj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmxvY2sgKyAodmFsaWRf ZXh0ZW5zaW9ucyArIDEpICogRURJRF9MRU5HVEgsCj4+ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgaiwgRURJRF9MRU5HVEgpKQo+PiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBnb3RvIG91dDsKPj4gLSAgICAgICAgICAgICAgICAgICAgICAgaWYgKGRybV9lZGlk X2Jsb2NrX3ZhbGlkKGJsb2NrICsgKHZhbGlkX2V4dGVuc2lvbnMgKyAxKSAqIEVESURfTEVOR1RI LCBqLCBwcmludF9iYWRfZWRpZCkpIHsKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgaWYgKGRy bV9lZGlkX2Jsb2NrX3ZhbGlkKGJsb2NrICsgKHZhbGlkX2V4dGVuc2lvbnMgKyAxKQo+PiArICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKiBFRElEX0xFTkdU SCwgaiwKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHByaW50X2JhZF9lZGlkLAo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgTlVMTCkpIHsKPj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg dmFsaWRfZXh0ZW5zaW9ucysrOwo+PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBi cmVhazsKPj4gICAgICAgICAgICAgICAgICAgICAgICAgIH0KPj4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9kcm1fZWRpZF9sb2FkLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2VkaWRfbG9h ZC5jCj4+IGluZGV4IDRjMGFhOTcuLjQ4YjQ4ZTggMTAwNjQ0Cj4+IC0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9kcm1fZWRpZF9sb2FkLmMKPj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9lZGlkX2xv YWQuYwo+PiBAQCAtMjE2LDcgKzIxNiw4IEBAIHN0YXRpYyB2b2lkICplZGlkX2xvYWQoc3RydWN0 IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwgY29uc3QgY2hhciAqbmFtZSwKPj4gICAgICAgICAg ICAgICAgICBnb3RvIG91dDsKPj4gICAgICAgICAgfQo+Pgo+PiAtICAgICAgIGlmICghZHJtX2Vk aWRfYmxvY2tfdmFsaWQoZWRpZCwgMCwgcHJpbnRfYmFkX2VkaWQpKSB7Cj4+ICsgICAgICAgaWYg KCFkcm1fZWRpZF9ibG9ja192YWxpZChlZGlkLCAwLCBwcmludF9iYWRfZWRpZCwKPj4gKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICZjb25uZWN0b3ItPmVkaWRfaGVhZGVyX2NvcnJ1 cHQpKSB7Cj4+ICAgICAgICAgICAgICAgICAgY29ubmVjdG9yLT5iYWRfZWRpZF9jb3VudGVyKys7 Cj4+ICAgICAgICAgICAgICAgICAgRFJNX0VSUk9SKCJCYXNlIGJsb2NrIG9mIEVESUQgZmlybXdh cmUgXCIlc1wiIGlzIGludmFsaWQgIiwKPj4gICAgICAgICAgICAgICAgICAgICAgbmFtZSk7Cj4+ IEBAIC0yMjksNyArMjMwLDkgQEAgc3RhdGljIHZvaWQgKmVkaWRfbG9hZChzdHJ1Y3QgZHJtX2Nv bm5lY3RvciAqY29ubmVjdG9yLCBjb25zdCBjaGFyICpuYW1lLAo+PiAgICAgICAgICAgICAgICAg IGlmIChpICE9IHZhbGlkX2V4dGVuc2lvbnMgKyAxKQo+PiAgICAgICAgICAgICAgICAgICAgICAg ICAgbWVtY3B5KGVkaWQgKyAodmFsaWRfZXh0ZW5zaW9ucyArIDEpICogRURJRF9MRU5HVEgsCj4+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWRpZCArIGkgKiBFRElEX0xFTkdUSCwgRURJ RF9MRU5HVEgpOwo+PiAtICAgICAgICAgICAgICAgaWYgKGRybV9lZGlkX2Jsb2NrX3ZhbGlkKGVk aWQgKyBpICogRURJRF9MRU5HVEgsIGksIHByaW50X2JhZF9lZGlkKSkKPj4gKyAgICAgICAgICAg ICAgIGlmIChkcm1fZWRpZF9ibG9ja192YWxpZChlZGlkICsgaSAqIEVESURfTEVOR1RILCBpLAo+ PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaW50X2JhZF9lZGlk LAo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpKQo+PiAg ICAgICAgICAgICAgICAgICAgICAgICAgdmFsaWRfZXh0ZW5zaW9ucysrOwo+PiAgICAgICAgICB9 Cj4+Cj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYwo+PiBpbmRleCA3Y2EwZTE4Li45NzIyNGZmIDEw MDY0NAo+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jCj4+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMKPj4gQEAgLTQxMzksNyArNDEzOSw3IEBAIGlu dGVsX2RwX2NoZWNrX2xpbmtfc3RhdHVzKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAsIGJvb2wg bG9uZ19ocGQpCj4+ICAgICAgICAgICAqLwo+PiAgICAgICAgICBpZiAobG9uZ19ocGQpIHsKPj4g ICAgICAgICAgICAgICAgICBlZGlkX3JlYWQgPSBkcm1fZ2V0X2VkaWQoY29ubmVjdG9yLCBhZGFw dGVyKTsKPj4gLSAgICAgICAgICAgICAgIGlmICghZWRpZF9yZWFkKSB7Cj4+ICsgICAgICAgICAg ICAgICBpZiAoIWVkaWRfcmVhZCB8fCBjb25uZWN0b3ItPmVkaWRfaGVhZGVyX2NvcnJ1cHQgPT0g MSkgewo+PiAgICAgICAgICAgICAgICAgICAgICAgICAgRFJNX0RFQlVHX0RSSVZFUigiSW52YWxp ZCBFRElEIGRldGVjdGVkXG4iKTsKPj4gICAgICAgICAgICAgICAgICB9IGVsc2Ugewo+PiAgICAg ICAgICAgICAgICAgICAgICAgICAga2ZyZWUoZWRpZF9yZWFkKTsKPj4gZGlmZiAtLWdpdCBhL2lu Y2x1ZGUvZHJtL2RybV9jcnRjLmggYi9pbmNsdWRlL2RybS9kcm1fY3J0Yy5oCj4+IGluZGV4IGQ0 ZTRiODIuLmY3YTRhOTIgMTAwNjQ0Cj4+IC0tLSBhL2luY2x1ZGUvZHJtL2RybV9jcnRjLmgKPj4g KysrIGIvaW5jbHVkZS9kcm0vZHJtX2NydGMuaAo+PiBAQCAtNzE5LDYgKzcxOSwxMSBAQCBzdHJ1 Y3QgZHJtX2Nvbm5lY3RvciB7Cj4+ICAgICAgICAgIGludCBudWxsX2VkaWRfY291bnRlcjsgLyog bmVlZGVkIHRvIHdvcmthcm91bmQgc29tZSBIVyBidWdzIHdoZXJlIHdlIGdldCBhbGwgMHMgKi8K Pj4gICAgICAgICAgdW5zaWduZWQgYmFkX2VkaWRfY291bnRlcjsKPj4KPj4gKyAgICAgICAvKiBG bGFnIGZvciByYXcgRURJRCBoZWFkZXIgY29ycnVwdGlvbiAtIHVzZWQgaW4gRGlzcGxheXBvcnQK Pj4gKyAgICAgICAgKiBjb21wbGlhbmNlIHRlc3RpbmcgLSAqIERpc3BsYXlwb3J0IExpbmsgQ1RT IENvcmUgMS4yIHJldjEuMSA0LjIuMi42Cj4+ICsgICAgICAgICovCj4+ICsgICAgICAgYm9vbCBl ZGlkX2hlYWRlcl9jb3JydXB0Owo+PiArCj4+ICAgICAgICAgIHN0cnVjdCBkZW50cnkgKmRlYnVn ZnNfZW50cnk7Cj4+Cj4+ICAgICAgICAgIHN0cnVjdCBkcm1fY29ubmVjdG9yX3N0YXRlICpzdGF0 ZTsKPj4gQEAgLTE0NDMsNyArMTQ0OCw4IEBAIGV4dGVybiB2b2lkIGRybV9zZXRfcHJlZmVycmVk X21vZGUoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKPj4gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgaW50IGhwcmVmLCBpbnQgdnByZWYpOwo+Pgo+PiAgIGV4dGVy biBpbnQgZHJtX2VkaWRfaGVhZGVyX2lzX3ZhbGlkKGNvbnN0IHU4ICpyYXdfZWRpZCk7Cj4+IC1l eHRlcm4gYm9vbCBkcm1fZWRpZF9ibG9ja192YWxpZCh1OCAqcmF3X2VkaWQsIGludCBibG9jaywg Ym9vbCBwcmludF9iYWRfZWRpZCk7Cj4+ICtleHRlcm4gYm9vbCBkcm1fZWRpZF9ibG9ja192YWxp ZCh1OCAqcmF3X2VkaWQsIGludCBibG9jaywgYm9vbCBwcmludF9iYWRfZWRpZCwKPj4gKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCAqaGVhZGVyX2NvcnJ1cHQpOwo+PiAgIGV4 dGVybiBib29sIGRybV9lZGlkX2lzX3ZhbGlkKHN0cnVjdCBlZGlkICplZGlkKTsKPj4KPj4gICBl eHRlcm4gc3RydWN0IGRybV90aWxlX2dyb3VwICpkcm1fbW9kZV9jcmVhdGVfdGlsZV9ncm91cChz dHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+PiAtLQo+PiAxLjkuMQo+Pgo+PiBfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+PiBkcmktZGV2ZWwgbWFpbGluZyBs aXN0Cj4+IGRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPj4gaHR0cDovL2xpc3RzLmZy ZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo+Cj4KCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxp c3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0 b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==