From mboxrd@z Thu Jan 1 00:00:00 1970 From: Manasi Navare Subject: Re: [PATCH 5/5] drm/i915: Implement intel_dp_autotest_video_pattern function for DP Video pattern compliance tests Date: Wed, 25 May 2016 15:46:07 -0700 Message-ID: <20160525224607.GB10861@intel.com> References: <1461979695-27113-1-git-send-email-manasi.d.navare@intel.com> <1461979695-27113-6-git-send-email-manasi.d.navare@intel.com> <1464004820.2807.31.camel@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTP id 9544B6E125 for ; Wed, 25 May 2016 22:35:14 +0000 (UTC) Content-Disposition: inline In-Reply-To: <1464004820.2807.31.camel@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Ander Conselvan De Oliveira Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gTW9uLCBNYXkgMjMsIDIwMTYgYXQgMDM6MDA6MjBQTSArMDMwMCwgQW5kZXIgQ29uc2VsdmFu IERlIE9saXZlaXJhIHdyb3RlOgo+IE9uIEZyaSwgMjAxNi0wNC0yOSBhdCAxODoyOCAtMDcwMCwg TWFuYXNpIE5hdmFyZSB3cm90ZToKPiA+IFRoaXMgdmlkZW8gcGF0dGVybiB0ZXN0IGZ1bmN0aW9u IGdldHMgaW52b2tlZCB0aHJvdWdoIHRoZQo+ID4gY29tcGxpYW5jZSB0ZXN0IGhhbmRsZXIgb24g YSBIUEQgc2hvcnQgcHVsc2UgaWYgdGhlIHRlc3QgdHlwZSBpcwo+ID4gc2V0IHRvIERQX1RFU1Rf VklERU9fUEFUVEVSTi4gVGhpcyBwZXJmb3JtcyB0aGUgRFBDRCByZWdpc3RlcnMKPiA+IHJlYWRz IHRvIHJlYWQgdGhlIHJlcXVlc3RlZCB0ZXN0IHBhdHRlcm4sIHZpZGVvIHBhdHRlcm4gcmVzb2x1 dGlvbiwKPiA+IGZyYW1lIHJhdGUgYW5kIGJpdHMgcGVyIGNvbG9yIHZhbHVlLiBUaGUgcmVzdWx0 cyBvZiB0aGlzIGFuYWx5c2lzCj4gPiBhcmUgaGFuZGVkIG9mZiB0byB1c2Vyc3BhY2Ugc28gdGhh dCB0aGUgdXNlcnNwYWNlIGFwcCBjYW4gc2V0IHRoZQo+ID4gdmlkZW8gcGF0dGVybiBtb2RlIGFw cHJvcHJpYXRlbHkgZm9yIHRoZSB0ZXN0IHJlc3VsdC9yZXNwb25zZS4KPiA+IAo+ID4gVGhlIGNv bXBsaWFuY2VfdGVzdF9hY3RpdmUgZmxhZyBpcyBzZXQgYXQgdGhlIGVuZCBvZiB0aGUgaW5kaXZp ZHVhbAo+ID4gdGVzdCBoYW5kbGluZyBmdW5jdGlvbnMuIFRoaXMgaXMgc28gdGhhdCB0aGUga2Vy bmVsLXNpZGUgb3BlcmF0aW9ucwo+ID4gY2FuIGJlIGNvbXBsZXRlZCB3aXRob3V0IHRoZSByaXNr IG9mIGludGVycnVwdGlvbiBmcm9tIHRoZSB1c2Vyc3BhY2UKPiA+IGFwcCB0aGF0IGlzIHBvbGxp bmcgb24gdGhhdCBmbGFnLgo+ID4gCj4gPiBTaWduZWQtb2ZmLWJ5OiBNYW5hc2kgTmF2YXJlIDxt YW5hc2kuZC5uYXZhcmVAaW50ZWwuY29tPgo+ID4gLS0tCj4gPiDCoGRyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZGVidWdmcy5jIHwgMTQgKysrKysrLQo+ID4gwqBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kcC5jwqDCoMKgwqDCoHwgNzYKPiA+ICsrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysKPiA+IMKgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmjCoMKgwqDC oHzCoMKgOSArKysrKwo+ID4gwqBpbmNsdWRlL2RybS9kcm1fZHBfaGVscGVyLmjCoMKgwqDCoMKg wqDCoMKgwqB8IDE0ICsrKysrKy0KPiA+IMKgNCBmaWxlcyBjaGFuZ2VkLCAxMTEgaW5zZXJ0aW9u cygrKSwgMiBkZWxldGlvbnMoLSkKPiA+IAo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZGVidWdmcy5jCj4gPiBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVi dWdmcy5jCj4gPiBpbmRleCA2ZWU2OWIxLi5jOGQwODA1IDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZGVidWdmcy5jCj4gPiBAQCAtNDQ1OCw3ICs0NDU4LDE5IEBAIHN0YXRpYyBpbnQg aTkxNV9kaXNwbGF5cG9ydF90ZXN0X2RhdGFfc2hvdyhzdHJ1Y3QKPiA+IHNlcV9maWxlICptLCB2 b2lkICpkYXRhKQo+ID4gwqAJCWlmIChjb25uZWN0b3ItPnN0YXR1cyA9PSBjb25uZWN0b3Jfc3Rh dHVzX2Nvbm5lY3RlZCAmJgo+ID4gwqAJCcKgwqDCoMKgY29ubmVjdG9yLT5lbmNvZGVyICE9IE5V TEwpIHsKPiA+IMKgCQkJaW50ZWxfZHAgPSBlbmNfdG9faW50ZWxfZHAoY29ubmVjdG9yLT5lbmNv ZGVyKTsKPiA+IC0JCQlzZXFfcHJpbnRmKG0sICIlbHgiLCBpbnRlbF9kcC0+Y29tcGxpYW5jZV90 ZXN0X2RhdGEpOwo+ID4gKwkJCWlmIChpbnRlbF9kcC0+Y29tcGxpYW5jZV90ZXN0X3R5cGUgPT0K PiA+ICsJCQnCoMKgwqDCoERQX1RFU1RfTElOS19FRElEX1JFQUQpCj4gPiArCQkJCXNlcV9wcmlu dGYobSwgIiVseCIsCj4gPiArCQkJCQnCoMKgwqBpbnRlbF9kcC0+Y29tcGxpYW5jZV90ZXN0X2Rh dGEpOwo+ID4gKwkJCWVsc2UgaWYgKGludGVsX2RwLT5jb21wbGlhbmNlX3Rlc3RfdHlwZSA9PQo+ ID4gKwkJCQnCoERQX1RFU1RfTElOS19WSURFT19QQVRURVJOKSB7Cj4gPiArCQkJCXNlcV9wcmlu dGYobSwgImhkaXNwbGF5OiAlbHVcbiIsCj4gPiArCQkJCQnCoMKgwqBpbnRlbF9kcC0+dGVzdF9k YXRhLmhkaXNwbGF5KTsKPiA+ICsJCQkJc2VxX3ByaW50ZihtLCAidmRpc3BsYXk6ICVsdVxuIiwK PiA+ICsJCQkJCcKgwqDCoGludGVsX2RwLT50ZXN0X2RhdGEudmRpc3BsYXkpOwo+ID4gKwkJCQlz ZXFfcHJpbnRmKG0sICJicGM6ICV1XG4iLAo+ID4gKwkJCQkJwqDCoMKgaW50ZWxfZHAtPnRlc3Rf ZGF0YS5icGMpOwo+ID4gKwkJCX0KPiA+IMKgCQl9IGVsc2UKPiA+IMKgCQkJc2VxX3B1dHMobSwg IjAiKTsKPiA+IMKgCX0KPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kcC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYwo+ID4gaW5kZXggNDU2ZmMx Ny4uMTM0Y2ZmOCAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rw LmMKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMKPiA+IEBAIC00MDE4 LDYgKzQwMTgsODIgQEAgc3RhdGljIHVpbnQ4X3QgaW50ZWxfZHBfYXV0b3Rlc3RfbGlua190cmFp bmluZyhzdHJ1Y3QKPiA+IGludGVsX2RwICppbnRlbF9kcCkKPiA+IMKgc3RhdGljIHVpbnQ4X3Qg aW50ZWxfZHBfYXV0b3Rlc3RfdmlkZW9fcGF0dGVybihzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2Rw KQo+ID4gwqB7Cj4gPiDCoAl1aW50OF90IHRlc3RfcmVzdWx0ID0gRFBfVEVTVF9OQUs7Cj4gPiAr CXVpbnQ4X3QgdGVzdF9wYXR0ZXJuOwo+ID4gKwl1aW50MTZfdMKgwqBoX3dpZHRoLCB2X2hlaWdo dCwgdGVzdF9taXNjOwo+ID4gKwlpbnQgc3RhdHVzID0gMDsKPiA+ICsKPiA+ICsJLyogQXV0b21h dGlvbiBzdXBwb3J0IGZvciBWaWRlbyBQYXR0ZXJuIFRlc3RzIGhhcyBhIGRlcGVuZGVuY3kKPiA+ ICsJwqAqIG9uIExpbmsgdHJhaW5pbmcgQXV0b21hdGlvbiBzdXBwb3J0IChDVFMgVGVzdCA0LjMu MS4xMSkKPiA+ICsJwqAqIEhlbmNlIGl0IHJldHVybnMgYSBURVNUIE5BSyB1bnRpbCB0aGUgTGlu ayBUcmFpbmluZyBhdXRvbWF0aW9uCj4gPiArCcKgKiBzdXBwb3J0IGlzIGFkZGVkIHRvIHRoZSBr ZXJuZWwKPiA+ICsJwqAqLwo+ID4gKwlyZXR1cm4gdGVzdF9yZXN1bHQ7Cj4gCj4gV2Ugc2hvdWxk bid0IG1lcmdlIHRoaXMgcGF0Y2ggdW50aWwgdGhpcyBpcyByZXNvbHZlZC4gVGhlcmUncyBubyBw b2ludCBpbiBhZGRpbmcKPiBkZWFkIGNvZGUuCj4gCj4KCkkgYWdyZWUuIEkgd291bGQgc3RpbGwg cmVzcGluIGl0IGJhc2VkIG9uIHRoZSByZXZpZXcgZmVlZGJhY2sgYW5kIGtlZXAgaXQgcmVhZHku ClNvIGFzIHNvb24gYXMgdGhlIGxpbmsgdHJhaW5pbmcgcmV3b3JrIGlzIGRvbmUsIHRoaXMgcGF0 Y2ggY2FuIGJlIHB1bGxlZCBpbiBhbmQgCnRoaXMgdGVzdCBjYW4gYiBlbmFibGVkLgogCj4gPiAr Cj4gPiArCS8qIFJlYWQgdGhlIFRFU1RfUEFUVEVSTiAoRFAgQ1RTIDMuMS41KSAqLwo+ID4gKwlz dGF0dXMgPSBkcm1fZHBfZHBjZF9yZWFkKCZpbnRlbF9kcC0+YXV4LCBEUF9URVNUX1BBVFRFUk4s Cj4gPiArCQkJCcKgwqAmdGVzdF9wYXR0ZXJuLCAxKTsKPiA+ICsJaWYgKHN0YXR1cyA8PSAwKSB7 Cj4gPiArCQlEUk1fREVCVUdfS01TKCJDb3VsZCBub3QgcmVhZCB0ZXN0IHBhdHRlcm4gZnJvbSIK PiA+ICsJCQnCoMKgwqDCoMKgwqAicmVmZXJuY2Ugc2lua1xuIik7Cj4gPiArCQlyZXR1cm4gMDsK PiA+ICsJfQo+ID4gKwlpZiAodGVzdF9wYXR0ZXJuICE9IERQX0NPTE9SX1JBTVApCj4gPiArCQly ZXR1cm4gdGVzdF9yZXN1bHQ7Cj4gPiArCWludGVsX2RwLT50ZXN0X2RhdGEudmlkZW9fcGF0dGVy biA9IHRlc3RfcGF0dGVybjsKPiA+ICsKPiA+ICsJc3RhdHVzID0gZHJtX2RwX2RwY2RfcmVhZCgm aW50ZWxfZHAtPmF1eCwgRFBfVEVTVF9IX1dJRFRILAo+ID4gKwkJCQnCoMKgJmhfd2lkdGgsIDIp Owo+ID4gKwlpZiAoc3RhdHVzIDw9IDApIHsKPiA+ICsJCURSTV9ERUJVR19LTVMoIkNvdWxkIG5v dCByZWFkIEggV2lkdGggZnJvbSIKPiA+ICsJCQnCoMKgwqDCoMKgwqAicmVmZXJuY2Ugc2lua1xu Iik7Cj4gPiArCQlyZXR1cm4gMDsKPiA+ICsJfQo+ID4gKwlpbnRlbF9kcC0+dGVzdF9kYXRhLmhk aXNwbGF5ID0gKGhfd2lkdGggJiBEUF9URVNUX01TQl9NQVNLKSA+PiA4IHwKPiA+ICsJCQkJCSho X3dpZHRoIDw8IDgpOwo+IAo+IEp1c3QgdXNlIHRoZSBrZXJuZWwgZW5kaWFubmVzcyBoZWxwZXJz LCBpLmUuOgo+IAo+IF9fbGUxNiBoX3dpZHRoOwo+IAo+IGRybV9kcF9kcGNkX3JlYWQoLi4uLCAm aF93aWR0aCwgMikKPiBoZGlzcGxheSA9IGxlMTZfdG9fY3B1KGhfd2lkdGgpOwo+CgpJIGFtIG5v dCBjaGFuZ2luZyB0aGUgZW5kaWFubm5lc3MgaGVyZS4gVGhpcyBsb2dpYyBpcyBpbXBsZW1lbnRl ZCB0byBzd2FwCnRoZSBMU0IgYW5kIE1TQiBiZWNhdXNlIGRwY2RfcmVhZCBoZWxwZXIgZnVuY3Rp b24gcmVhZHMgdHdvIGJ5dGVzIGZyb20gdHdvIGNvbnNlY3V0aXZlCnJlZ2lzdGVycyBpbnRvIGEg MTYgYml0IHZhcmlhYmxlLiBUaGlzIGlzIHJlcXVpcmVkIGJlY2F1c2UgRFBSIHdyaXRlcyAwOjcg Yml0cyBvZiBId2lkdGgKdG8gcmVnaXN0ZXIgMHgyMkZoIGFuZCA4OjE1IGJpdHMgaW50byByZWdp c3RlciAweDIyRWguIFNvIHdoZW4gZHBjZF9yZWFkIHJlYWRzIHRoZXNlIHR3byByZWdpc3RlcnMs Cml0IHN0b3JlcyBMU0IgYW5kIE1TQiBpbiB0aGUgc3dhcHBlZCBtYW5uZXIgaW4gYSAxNiBiaXQg dmFyaWFibGUuIApSZWZlciB0byBUYWJsZSAzLTQgb2YgVkVTQSBEUCBMaW5rIGxheWVyIENUUyBz cGVjIHZlcnNpb24gMS4yCgogCj4gPiArCj4gPiArCXN0YXR1cyA9IGRybV9kcF9kcGNkX3JlYWQo JmludGVsX2RwLT5hdXgsIERQX1RFU1RfVl9IRUlHSFQsCj4gPiArCQkJCcKgwqAmdl9oZWlnaHQs IDIpOwo+ID4gKwlpZiAoc3RhdHVzIDw9IDApIHsKPiA+ICsJCURSTV9ERUJVR19LTVMoIkNvdWxk IG5vdCByZWFkIFYgSGVpZ2h0IGZyb20iCj4gPiArCQkJwqDCoMKgwqDCoMKgInJlZmVybmNlIHNp bmtcbiIpOwo+IAo+IHJlZmVyZW5jZQo+IAo+ID4gKwkJcmV0dXJuIDA7Cj4gPiArCX0KPiA+ICsJ aW50ZWxfZHAtPnRlc3RfZGF0YS52ZGlzcGxheSA9ICh2X2hlaWdodCAmIERQX1RFU1RfTVNCX01B U0spID4+IDggfAo+ID4gKwkJCQkJKHZfaGVpZ2h0IDw8IDgpOwo+IAo+IFNhbWUgaGVyZS4KPiAK PiA+ICsKPiA+ICsJc3RhdHVzID0gZHJtX2RwX2RwY2RfcmVhZCgmaW50ZWxfZHAtPmF1eCwgRFBf VEVTVF9NSVNDLAo+ID4gKwkJCQnCoMKgJnRlc3RfbWlzYywgMSk7Cj4gPiArCWlmIChzdGF0dXMg PD0gMCkgewo+ID4gKwkJRFJNX0RFQlVHX0tNUygiQ291bGQgbm90IHJlYWQgVEVTVCBNSVNDIGZy b20iCj4gPiArCQkJwqDCoMKgwqDCoMKgInJlZmVybmNlIHNpbmtcbiIpOwo+IAo+IHJlZmVyZW5j ZQo+IAo+ID4gKwkJcmV0dXJuIDA7Cj4gPiArCX0KPiA+ICsJaWYgKCgodGVzdF9taXNjICYgRFBf VEVTVF9DT0xPUl9GT1JNQVRfTUFTSykgPj4gMSkgIT0KPiA+ICsJwqDCoMKgwqBEUF9WSURFT19Q QVRURVJOX1JHQl9GT1JNQVQpCj4gPiArCQlyZXR1cm4gdGVzdF9yZXN1bHQ7Cj4gPiArCWlmICgo KHRlc3RfbWlzYyAmIERQX1RFU1RfRFlOQU1JQ19SQU5HRV9NQVNLKSA+PiAzKSAhPQo+ID4gKwnC oMKgwqDCoERQX1ZJREVPX1BBVFRFUk5fVkVTQSkKPiA+ICsJCXJldHVybiB0ZXN0X3Jlc3VsdDsK PiA+ICsJc3dpdGNoICgodGVzdF9taXNjICYgRFBfVEVTVF9CSVRfREVQVEhfTUFTSykgPj4gNSkg ewo+IAo+IE1heWJlIGRlZmluZSAqX1NISUZUIHRvIGF2b2lkIHRoZSBoYXJkY29kZWQgdmFsdWVz LiBBIGNvdXBsZSBvZiBoZWxwZXJzIHRvIG1ha2UKPiB0aGUgY29kZSBtb3JlIHJlYWRhYmxlIHdv dWRuJ3QgYmUgYmFkIGVpdGhlci4KCldpbGwgZG8KPiAKPiA+ICsJY2FzZSAwOgo+ID4gKwkJaW50 ZWxfZHAtPmNvbXBsaWFuY2VfZm9yY2VfYnBjID0gNjsKPiA+ICsJCWludGVsX2RwLT50ZXN0X2Rh dGEuYnBjID0gNjsKPiA+ICsJCWJyZWFrOwo+ID4gKwljYXNlIDE6Cj4gPiArCQlpbnRlbF9kcC0+ Y29tcGxpYW5jZV9mb3JjZV9icGMgPSA4Owo+ID4gKwkJaW50ZWxfZHAtPnRlc3RfZGF0YS5icGMg PSA4Owo+IAo+IFNvIGhlcmUncyB3aGVyZcKgY29tcGxpYW5jZV9mb3JjZV9icGMgZnJvbSBwYXRj aCAzIGlzIHNldC4gV291bGQgYmUgYmV0dGVyIHRvCj4gc3F1YXNoIHRoYXQgcGF0Y2ggd2l0aCB0 aGlzIG9uZS4KCkkgZmVlbCB0aGlzIHNob3VsZCBiZSBhIHN0YW5kYWxvbmUgcGF0Y2ggdGhhdCBh ZGRzIHRoZSB0ZXN0IGhhbmRsZXIgZm9yIAp2aWRlbyBwYXR0ZXJuIGdlbmVyYXRpb24gYW5kIHRo ZSBmb3JjZV9icGMgY2FuIGJlIGluIGEgc2VwYXJhdGUgcGF0Y2guCkhvd2V2ZXIgSSB3aWxsIGdv IGFoZWFkIGFuZCBjaGFuZ2UgdGhlIGNvbW1pdCBtZXNzYWdlIGZvciB0aGUgYnBjIHBhdGNoCnRv IGluZGljYXRlIHRoYXQgaXQgZ2V0cyBzZXQgYnkgdmlkZW8gcGF0dGVybiBDVFMgdGVzdHMuCgoK PiAKPiA+ICsJCWJyZWFrOwo+ID4gKwlkZWZhdWx0Ogo+ID4gKwkJcmV0dXJuIHRlc3RfcmVzdWx0 Owo+ID4gKwl9Cj4gPiArCS8qIFNldCB0ZXN0IGFjdGl2ZSBmbGFnIGhlcmUgc28gdXNlcnNwYWNl IGRvZXNuJ3QgaW50ZXJydXB0IHRoaW5ncyAqLwo+ID4gKwlpbnRlbF9kcC0+Y29tcGxpYW5jZV90 ZXN0X2FjdGl2ZSA9IDE7Cj4gPiArCj4gPiArCXRlc3RfcmVzdWx0ID0gRFBfVEVTVF9BQ0s7Cj4g PiArCURSTV9ERUJVR19LTVMoIkhkaXNwbGF5ID0gJWx1XG4gVmRpc3BsYXkgPSAlbHVcbiBCUEMg PSAldVxuICIsCj4gPiArCQnCoMKgwqDCoMKgwqBpbnRlbF9kcC0+dGVzdF9kYXRhLmhkaXNwbGF5 LAo+ID4gKwkJwqDCoMKgwqDCoMKgaW50ZWxfZHAtPnRlc3RfZGF0YS52ZGlzcGxheSwKPiA+ICsJ CcKgwqDCoMKgwqDCoGludGVsX2RwLT50ZXN0X2RhdGEuYnBjKTsKPiA+IMKgCXJldHVybiB0ZXN0 X3Jlc3VsdDsKPiA+IMKgfQo+ID4gwqAKPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9kcnYuaAo+ID4gYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+ ID4gaW5kZXggMTBlYWZmOC4uNmJhOGE3NSAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2Rydi5oCj4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9k cnYuaAo+ID4gQEAgLTc5NCw2ICs3OTQsMTIgQEAgZW51bSBsaW5rX21fbl9zZXQgewo+ID4gwqAJ TTJfTjIKPiA+IMKgfTsKPiA+IMKgCj4gPiArc3RydWN0IGNvbXBsaWFuY2VfdGVzdF9kYXRhIHsK PiA+ICsJdWludDhfdCB2aWRlb19wYXR0ZXJuOwo+ID4gKwl1aW50MTZfdCBoZGlzcGxheSwgdmRp c3BsYXk7Cj4gPiArCXVpbnQ4X3QgYnBjOwo+ID4gK307Cj4gPiArCj4gPiDCoHN0cnVjdCBpbnRl bF9kcCB7Cj4gPiDCoAlpOTE1X3JlZ190IG91dHB1dF9yZWc7Cj4gPiDCoAlpOTE1X3JlZ190IGF1 eF9jaF9jdGxfcmVnOwo+ID4gQEAgLTg2Niw2ICs4NzIsOSBAQCBzdHJ1Y3QgaW50ZWxfZHAgewo+ ID4gwqAJdW5zaWduZWQgbG9uZyBjb21wbGlhbmNlX3Rlc3RfZGF0YTsKPiA+IMKgCWJvb2wgY29t cGxpYW5jZV90ZXN0X2FjdGl2ZTsKPiA+IMKgCXVuc2lnbmVkIGxvbmcgY29tcGxpYW5jZV9mb3Jj ZV9icGM7IC8qIDAgZm9yIGRlZmF1bHQgb3IgYnBjIHRvIHVzZSAqLwo+ID4gKwlzdHJ1Y3QgY29t cGxpYW5jZV90ZXN0X2RhdGEgdGVzdF9kYXRhO8KgwqDCoC8qIGEgc3RydWN0dXJlIHRvIGhvbGQg YWxsCj4gPiBkcAo+ID4gKwkJCQkJCcKgwqAqIGNvbXBsaWFuY2UgdGVzdCBkYXRhCj4gPiArCQkJ CQkJwqDCoCovCj4gPiDCoH07Cj4gPiDCoAo+ID4gwqBzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0 IHsKPiA+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fZHBfaGVscGVyLmggYi9pbmNsdWRl L2RybS9kcm1fZHBfaGVscGVyLmgKPiA+IGluZGV4IDkyZDlhNTIuLjc0MjJkYzUgMTAwNjQ0Cj4g PiAtLS0gYS9pbmNsdWRlL2RybS9kcm1fZHBfaGVscGVyLmgKPiA+ICsrKyBiL2luY2x1ZGUvZHJt L2RybV9kcF9oZWxwZXIuaAo+ID4gQEAgLTQxMiw3ICs0MTIsMTkgQEAKPiA+IMKgCj4gPiDCoCNk ZWZpbmUgRFBfVEVTVF9MQU5FX0NPVU5UCQnCoMKgwqDCoDB4MjIwCj4gPiDCoAo+ID4gLSNkZWZp bmUgRFBfVEVTVF9QQVRURVJOCQkJwqDCoMKgwqAweDIyMQo+ID4gKyNkZWZpbmUgRFBfVEVTVF9Q QVRURVJOCQkJCTB4MjIxCj4gPiArI2RlZmluZSBEUF9DT0xPUl9SQU1QCQkJCSgxIDw8IDApCj4g PiArI2RlZmluZSBEUF9URVNUX0hfV0lEVEgJCQkJMHgyMkUKPiA+ICsjZGVmaW5lIERQX1RFU1Rf Vl9IRUlHSFQJCQkweDIzMAo+ID4gKyNkZWZpbmUgRFBfVEVTVF9NSVNDCQkJCTB4MjMyCj4gPiAr I2RlZmluZSBEUF9URVNUX01TQl9NQVNLCQkJMHhGRjAwCj4gPiArI2RlZmluZSBEUF9WSURFT19Q QVRURVJOX1JHQl9GT1JNQVQJCTAKPiA+ICsjZGVmaW5lIERQX1RFU1RfQ09MT1JfRk9STUFUX01B U0sJCTB4Ngo+ID4gKyNkZWZpbmUgRFBfVEVTVF9EWU5BTUlDX1JBTkdFX01BU0sJCSgxIDw8IDMp Cj4gPiArI2RlZmluZSBEUF9WSURFT19QQVRURVJOX1ZFU0EJCQkwCj4gPiArI2RlZmluZSBEUF9U RVNUX0JJVF9ERVBUSF9NQVNLCQkJMHgwMEUwCj4gPiArI2RlZmluZSBEUF9URVNUX0JJVF9ERVBU SF82CQkJMAo+ID4gKyNkZWZpbmUgRFBfVEVTVF9CSVRfREVQVEhfOAkJCTEKPiAKPiBUaGlzIHNo b3VsZCBiZSBpbiBhIHNlcGFyYXRlIHBhdGNoIHdpdGgKCkkgYWdyZWUsIGkgd2lsbCBzZXBhcmF0 ZSB0aGlzIG91dCBpbnRvIGEgZGlmZmVyZW50IHBhdGNoLgo+IAo+IENjOiBkcmktZGV2ZWxAbGlz dHMuZnJlZWRlc2t0b3Aub3JnCj4gCj4gPiDCoAo+ID4gwqAjZGVmaW5lIERQX1RFU1RfQ1JDX1Jf Q1IJCcKgwqDCoMKgMHgyNDAKPiA+IMKgI2RlZmluZSBEUF9URVNUX0NSQ19HX1kJCQnCoMKgwqDC oDB4MjQyCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCklu dGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRw czovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=