From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH v2 6/9] drm/i915: Disable all infoframes when turning off the HDMI port Date: Wed, 3 Jun 2015 12:21:08 +0300 Message-ID: <20150603092108.GD5176@intel.com> References: <1430834787-10255-1-git-send-email-ville.syrjala@linux.intel.com> <1430834787-10255-7-git-send-email-ville.syrjala@linux.intel.com> <76A9B330A4D78C4D99CB292C4CC06C0E36FEEECC@fmsmsx101.amr.corp.intel.com> <20150602111113.GV5176@intel.com> <76A9B330A4D78C4D99CB292C4CC06C0E36FEFAB4@fmsmsx101.amr.corp.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id 9192E6E342 for ; Wed, 3 Jun 2015 02:21:19 -0700 (PDT) Content-Disposition: inline In-Reply-To: <76A9B330A4D78C4D99CB292C4CC06C0E36FEFAB4@fmsmsx101.amr.corp.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: "Konduru, Chandra" Cc: "intel-gfx@lists.freedesktop.org" List-Id: intel-gfx@lists.freedesktop.org T24gVHVlLCBKdW4gMDIsIDIwMTUgYXQgMDY6MTg6MTZQTSArMDAwMCwgS29uZHVydSwgQ2hhbmRy YSB3cm90ZToKPiAKPiAKPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tCj4gPiBGcm9tOiBW aWxsZSBTeXJqw6Rsw6QgW21haWx0bzp2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbV0KPiA+ IFNlbnQ6IFR1ZXNkYXksIEp1bmUgMDIsIDIwMTUgNDoxMSBBTQo+ID4gVG86IEtvbmR1cnUsIENo YW5kcmEKPiA+IENjOiBpbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4gPiBTdWJqZWN0 OiBSZTogW0ludGVsLWdmeF0gW1BBVENIIHYyIDYvOV0gZHJtL2k5MTU6IERpc2FibGUgYWxsIGlu Zm9mcmFtZXMgd2hlbgo+ID4gdHVybmluZyBvZmYgdGhlIEhETUkgcG9ydAo+ID4gCj4gPiBPbiBN b24sIEp1biAwMSwgMjAxNSBhdCAxMDo0ODowM1BNICswMDAwLCBLb25kdXJ1LCBDaGFuZHJhIHdy b3RlOgo+ID4gPgo+ID4gPgo+ID4gPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tCj4gPiA+ ID4gRnJvbTogSW50ZWwtZ2Z4IFttYWlsdG86aW50ZWwtZ2Z4LWJvdW5jZXNAbGlzdHMuZnJlZWRl c2t0b3Aub3JnXSBPbiBCZWhhbGYKPiA+IE9mCj4gPiA+ID4gdmlsbGUuc3lyamFsYUBsaW51eC5p bnRlbC5jb20KPiA+ID4gPiBTZW50OiBUdWVzZGF5LCBNYXkgMDUsIDIwMTUgNzowNiBBTQo+ID4g PiA+IFRvOiBpbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4gPiA+ID4gU3ViamVjdDog W0ludGVsLWdmeF0gW1BBVENIIHYyIDYvOV0gZHJtL2k5MTU6IERpc2FibGUgYWxsIGluZm9mcmFt ZXMgd2hlbgo+ID4gPiA+IHR1cm5pbmcgb2ZmIHRoZSBIRE1JIHBvcnQKPiA+ID4gPgo+ID4gPiA+ IEZyb206IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+Cj4g PiA+ID4KPiA+ID4gPiBDdXJyZW50bHkgd2UganVzdCBkaXNhYmxlIHRoZSBHQ1AgaW5mb2ZyYW1l IHdoZW4gdHVybmluZyBvZmYgdGhlIHBvcnQuCj4gPiA+ID4gVGhhdCBtZWFucyBpZiB0aGUgc2Ft ZSB0cmFuc2NvZGVyIGlzIHVzZWQgb24gYSBEUCBwb3J0IG5leHQsIHdlIG1pZ2h0Cj4gPiA+ID4g ZW5kIHVwIHB1c2hpbmcgaW5mb2ZyYW1lcyBvdmVyIERQLCB3aGljaCBpc24ndCBpbnRlbmRlZC4g SnVzdCBkaXNhYmxlCj4gPiA+Cj4gPiA+IFdvbmRlciBob3cgaXQgaXMgd29ya2luZy4gTWF5IGJl IGl0IGlzIG9rLCBvciBuZXZlciBoaXQgdXNpbmcgYSBwcmV2aW91c2x5Cj4gPiA+IHVzZWQgdHJh bnNjb2RlciBmb3IgSERNSSBwb3J0IGZvciBEUC4KPiA+ID4KPiA+ID4gQnkgdGhlIHdheSwgeW91 IG1lYW4gZW5kIHVwIHB1c2hpbmcgIm90aGVyIiBpbmZvZnJhbWVzIG92ZXIgRFA/Cj4gPiAKPiA+ IFdlIGRvbid0IHNlbmQgaW5mb2ZyYW1lcyBvdmVyIERQIGF0IGFsbCBjdXJyZW50bHkuIE9yIEkg c2hvdWxkIHNheSB3ZQo+ID4gbmV2ZXIgaW50ZW5kZWQgdG8gc2VuZCB0aGVtLiBBZnRlciB0aGlz IHBhdGNoIHRoYXQgc2hvdWxkIGV2ZW4gYmUgdHJ1ZS4KPiA+IFdlbGwsIHVubGVzcyB0aGUgQklP UyBhbHJlYWR5IGVuYWJsZXMgdGhlbSBhbmQgd2UganVzdCBmaXJlIHVwIGEgRFAgcG9ydAo+ID4g dXNpbmcgdGhlIHRyYW5zY29kZXIgaW4gcXVlc3Rpb24uIFNvIEkgc3VwcG9zZSB3ZSBzaG91bGQg cmVhbGx5IGhhdmUgdGhlCj4gPiBEUCBjb2RlIGNsZWFyIHRoZSBpbmZvZnJhbWUgc2V0dGluZ3Mg ZXhwbGljaXRseSwgb3Igd2Ugc2hvdWxkIGNsZWFyIHRoZW0KPiA+IGR1cmluZyB0aGUgc2FuaXRp emUgcGhhc2UuCj4gCj4gQWdyZWUgdGhhdCBEUCBjb2RlIHBhdGggc2hvdWxkIGNsZWFyIHRoZSBp bmZvZnJhbWUgc2V0dGluZ3MgZXhwbGljaXRseS4KPiBBcyB5b3UgYXJlIGFscmVhZHkgdG91Y2hp bmcgdGhpcyBjb2RlLCB3aWxsIHlvdSBwbGFuIHRvIGhhbmRsZSBpdD8KCkkgZG9uJ3QgdGhpbmsg SSdsbCBnbyB0aGVyZSBub3cuIEl0IHdvdWxkIHJlcXVpcmUgcXVpdGUgYSBiaXQgbW9yZSB3b3Jr CnRvIGV4cG9zZSB0aGUgaW5mb2ZyYW1lIHN0dWZmIHRvIHRoZSBEUCBjb2RlLiBEUCArIGluZm9m cmFtZXMgaW4gZ2VuZXJhbApzb3VuZHMgbGlrZSBhIGdvb2QgcHJvamVjdCBmb3Igc29tZW9uZSBl bHNlIHRvIGZpZ3VyZSBvdXQuIEEgcXVpY2sKZ2xhbmNlIGF0IHRoZSBEUCBzcGVjIHN1Z2dlc3Rz IHRoYXQgd2Ugc2hvdWxkIGF0IGxlYXN0IHNlbmQgdGhlIGF1ZGlvCmluZm9mcmFtZS4KCj4gT25j ZSBpdCBpcyB0YWtlbiBjYXJlLCBpdCBnZXRzCj4gUmV2aWV3ZWQtYnk6IENoYW5kcmEgS29uZHVy dSA8Q2hhbmRyYS5rb25kdXJ1QGludGVsLmNvbT4KPiAKPiA+IAo+ID4gPgo+ID4gPiA+IGFsbCB0 aGUgaW5mb2ZyYW1lcyB3aGVuIHR1cm5pbmcgb2ZmIHRoZSBwb3J0Lgo+ID4gPiA+Cj4gPiA+ID4g QWxzbyBwcm90ZWN0IGFnYWluc3QgdHdvIHBvcnRzIHN0b21waW5nIG9uIGVhY2ggb3RoZXIgb24g ZzR4IGR1ZSB0bwo+ID4gPiA+IHRoZSBzaW5nbGUgdmlkZW8gRElQIGluc3RhbmNlLiBOb3cgb25s eSB0aGUgZmlyc3QgcG9ydCB0byBlbmFibGUKPiA+ID4gPiBnZXRzIHRvIHNlbmQgaW5mb2ZyYW1l cy4KPiA+ID4KPiA+ID4gU28gaXMsIDJuZCBwb3J0IGRvZXNuJ3QgZ2V0cyB0byBzZW5kIGluZm9m cmFtZXMsIHRoZSBleHBlY3RlZCBiZWhhdmlvcgo+ID4gPiB3aGVuIHR3byBwb3J0cyB0cnlpbmcg d2l0aCBhIHNpbmdsZSBESVA/Cj4gPiAKPiA+IEknbSBub3Qgc3VyZSB3aGF0J3MgdGhlIGJlc3Qg YmVoYXZpb3VyIGhlcmUuIEVpdGhlciB3ZSBzb21laG93IHBpY2sgb25lCj4gPiBvZiB0aGUgcG9y dHMgdG8gc2VuZCBpbmZvZnJhbWVzIChmaXJzdCBjb21lIGZpcnN0IHNlcnZlIGluIHRoaXMgcGF0 Y2gpLAo+ID4gb3Igd2UgY291bGQganVzdCBkaXNhYmxlIGluZm9mcmFtZXMgZW50aXJlbHkgZm9y IGNsb25lZCBjYXNlcy4gQnV0IGl0J3MKPiA+IHByb2JhYmx5IGEgcmFyZSBjb25maWd1cmF0aW9u IGFueXdheSBzaW5jZSBIRE1JIGNsb25pbmcgaXMgb25seSBhbGxvd2VkCj4gPiBvbiBnNHguCj4g Cj4gSSBhbSBmaW5lIHdpdGggd2hhdCB5b3Ugb3V0bGluZWQgYWJvdmUuIElmIGFueXRoaW5nIGNv bWUgdXAsIHRoaXMgY2FuIGJlCj4gcmV2aXNpdGVkLgo+IAo+ID4gCj4gPiA+Cj4gPiA+IFNlZW1z IGxpa2UgYSBjb3JuZXIgY2FzZSB0byB0ZXN0IHRob3JvdWdobHkuIElzIHRoaXMgcGF0aCBleGVy Y2lzZWQgaW4geW91cgo+ID4gdGVzdGluZz8KPiA+IAo+ID4gSSB0ZXN0ZWQgaXQgbG9uZyBhZ28u IEFsdGhvdWdoIEkgbXVzdCBhZG1pdCB0aGF0IHRoZSBwYXRjaCBsb29rZWQgYSBiaXQKPiA+IGRp ZmZlcmVudCBiYWNrIHRoZW4uCj4gPiAKPiA+ID4KPiA+ID4gPgo+ID4gPiA+IHYyOiBSZWJhc2UK PiA+ID4gPgo+ID4gPiA+IFNpZ25lZC1vZmYtYnk6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3ly amFsYUBsaW51eC5pbnRlbC5jb20+Cj4gPiA+ID4gLS0tCj4gPiA+ID4gIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2hkbWkuYyB8IDg1ICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0t LS0tCj4gPiAtLS0tCj4gPiA+ID4gIDEgZmlsZSBjaGFuZ2VkLCA0MCBpbnNlcnRpb25zKCspLCA0 NSBkZWxldGlvbnMoLSkKPiA+ID4gPgo+ID4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9oZG1pLmMKPiA+ID4gPiBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2hkbWkuYwo+ID4gPiA+IGluZGV4IDc2NmJkYjEuLjAzYjQ3NTkgMTAwNjQ0Cj4gPiA+ID4gLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRtaS5jCj4gPiA+ID4gKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRtaS5jCj4gPiA+ID4gQEAgLTUxNCw3ICs1MTQsMTMgQEAg c3RhdGljIHZvaWQgZzR4X3NldF9pbmZvZnJhbWVzKHN0cnVjdCBkcm1fZW5jb2Rlcgo+ID4gPiA+ ICplbmNvZGVyLAo+ID4gPiA+ICAJaWYgKCFlbmFibGUpIHsKPiA+ID4gPiAgCQlpZiAoISh2YWwg JiBWSURFT19ESVBfRU5BQkxFKSkKPiA+ID4gPiAgCQkJcmV0dXJuOwo+ID4gPiA+IC0JCXZhbCAm PSB+VklERU9fRElQX0VOQUJMRTsKPiA+ID4gPiArCQlpZiAocG9ydCAhPSAodmFsICYgVklERU9f RElQX1BPUlRfTUFTSykpIHsKPiA+ID4gPiArCQkJRFJNX0RFQlVHX0tNUygidmlkZW8gRElQIHN0 aWxsIGVuYWJsZWQgb24gcG9ydAo+ID4gPiA+ICVjXG4iLAo+ID4gPiA+ICsJCQkJICAgICAgKHZh bCAmIFZJREVPX0RJUF9QT1JUX01BU0spID4+IDI5KTsKPiA+ID4gPiArCQkJcmV0dXJuOwo+ID4g PiA+ICsJCX0KPiA+ID4gPiArCQl2YWwgJj0gfihWSURFT19ESVBfRU5BQkxFIHwgVklERU9fRElQ X0VOQUJMRV9BVkkgfAo+ID4gPiA+ICsJCQkgVklERU9fRElQX0VOQUJMRV9WRU5ET1IgfAo+ID4g PiA+IFZJREVPX0RJUF9FTkFCTEVfU1BEKTsKPiA+ID4gPiAgCQlJOTE1X1dSSVRFKHJlZywgdmFs KTsKPiA+ID4gPiAgCQlQT1NUSU5HX1JFQUQocmVnKTsKPiA+ID4gPiAgCQlyZXR1cm47Cj4gPiA+ ID4gQEAgLTUyMiwxNiArNTI4LDE3IEBAIHN0YXRpYyB2b2lkIGc0eF9zZXRfaW5mb2ZyYW1lcyhz dHJ1Y3QKPiA+IGRybV9lbmNvZGVyCj4gPiA+ID4gKmVuY29kZXIsCj4gPiA+ID4KPiA+ID4gPiAg CWlmIChwb3J0ICE9ICh2YWwgJiBWSURFT19ESVBfUE9SVF9NQVNLKSkgewo+ID4gPiA+ICAJCWlm ICh2YWwgJiBWSURFT19ESVBfRU5BQkxFKSB7Cj4gPiA+ID4gLQkJCXZhbCAmPSB+VklERU9fRElQ X0VOQUJMRTsKPiA+ID4gPiAtCQkJSTkxNV9XUklURShyZWcsIHZhbCk7Cj4gPiA+ID4gLQkJCVBP U1RJTkdfUkVBRChyZWcpOwo+ID4gPiA+ICsJCQlEUk1fREVCVUdfS01TKCJ2aWRlbyBESVAgYWxy ZWFkeSBlbmFibGVkIG9uIHBvcnQKPiA+ID4gPiAlY1xuIiwKPiA+ID4gPiArCQkJCSAgICAgICh2 YWwgJiBWSURFT19ESVBfUE9SVF9NQVNLKSA+PiAyOSk7Cj4gPiA+ID4gKwkJCXJldHVybjsKPiA+ ID4gPiAgCQl9Cj4gPiA+ID4gIAkJdmFsICY9IH5WSURFT19ESVBfUE9SVF9NQVNLOwo+ID4gPiA+ ICAJCXZhbCB8PSBwb3J0Owo+ID4gPiA+ICAJfQo+ID4gPiA+Cj4gPiA+ID4gIAl2YWwgfD0gVklE RU9fRElQX0VOQUJMRTsKPiA+ID4gPiAtCXZhbCAmPSB+VklERU9fRElQX0VOQUJMRV9WRU5ET1I7 Cj4gPiA+ID4gKwl2YWwgJj0gfihWSURFT19ESVBfRU5BQkxFX0FWSSB8Cj4gPiA+ID4gKwkJIFZJ REVPX0RJUF9FTkFCTEVfVkVORE9SIHwgVklERU9fRElQX0VOQUJMRV9TUEQpOwo+ID4gPiA+Cj4g PiA+ID4gIAlJOTE1X1dSSVRFKHJlZywgdmFsKTsKPiA+ID4gPiAgCVBPU1RJTkdfUkVBRChyZWcp Owo+ID4gPiA+IEBAIC02MzIsMjMgKzYzOSw2IEBAIHN0YXRpYyBib29sIGludGVsX2hkbWlfc2V0 X2djcF9pbmZvZnJhbWUoc3RydWN0Cj4gPiA+ID4gZHJtX2VuY29kZXIgKmVuY29kZXIpCj4gPiA+ ID4gIAlyZXR1cm4gdmFsICE9IDA7Cj4gPiA+ID4gIH0KPiA+ID4gPgo+ID4gPiA+IC1zdGF0aWMg dm9pZCBpbnRlbF9kaXNhYmxlX2djcF9pbmZvZnJhbWUoc3RydWN0IGludGVsX2NydGMgKmNydGMp Cj4gPiA+ID4gLXsKPiA+ID4gPiAtCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9 IGNydGMtPmJhc2UuZGV2LT5kZXZfcHJpdmF0ZTsKPiA+ID4gPiAtCXUzMiByZWc7Cj4gPiA+ID4g LQo+ID4gPiA+IC0JaWYgKEhBU19EREkoZGV2X3ByaXYpKQo+ID4gPiA+IC0JCXJlZyA9IEhTV19U VklERU9fRElQX0NUTChjcnRjLT5jb25maWctPmNwdV90cmFuc2NvZGVyKTsKPiA+ID4gPiAtCWVs c2UgaWYgKElTX1ZBTExFWVZJRVcoZGV2X3ByaXYpKQo+ID4gPiA+IC0JCXJlZyA9IFZMVl9UVklE RU9fRElQX0NUTChjcnRjLT5waXBlKTsKPiA+ID4gPiAtCWVsc2UgaWYgKEhBU19QQ0hfU1BMSVQo ZGV2X3ByaXYtPmRldikpCj4gPiA+ID4gLQkJcmVnID0gVFZJREVPX0RJUF9DVEwoY3J0Yy0+cGlw ZSk7Cj4gPiA+ID4gLQllbHNlCj4gPiA+ID4gLQkJcmV0dXJuOwo+ID4gPiA+IC0KPiA+ID4gPiAt CUk5MTVfV1JJVEUocmVnLCBJOTE1X1JFQUQocmVnKSAmIH5WSURFT19ESVBfRU5BQkxFX0dDUCk7 Cj4gPiA+ID4gLX0KPiA+ID4gPiAtCj4gPiA+ID4gIHN0YXRpYyB2b2lkIGlieF9zZXRfaW5mb2Zy YW1lcyhzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIsCj4gPiA+ID4gIAkJCSAgICAgICBib29s IGVuYWJsZSwKPiA+ID4gPiAgCQkJICAgICAgIHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICphZGp1 c3RlZF9tb2RlKQo+ID4gPiA+IEBAIC02NjksMjUgKzY1OSwyNiBAQCBzdGF0aWMgdm9pZCBpYnhf c2V0X2luZm9mcmFtZXMoc3RydWN0Cj4gPiBkcm1fZW5jb2Rlcgo+ID4gPiA+ICplbmNvZGVyLAo+ ID4gPiA+ICAJaWYgKCFlbmFibGUpIHsKPiA+ID4gPiAgCQlpZiAoISh2YWwgJiBWSURFT19ESVBf RU5BQkxFKSkKPiA+ID4gPiAgCQkJcmV0dXJuOwo+ID4gPiA+IC0JCXZhbCAmPSB+VklERU9fRElQ X0VOQUJMRTsKPiA+ID4gPiArCQl2YWwgJj0gfihWSURFT19ESVBfRU5BQkxFIHwgVklERU9fRElQ X0VOQUJMRV9BVkkgfAo+ID4gPiA+ICsJCQkgVklERU9fRElQX0VOQUJMRV9WRU5ET1IgfAo+ID4g VklERU9fRElQX0VOQUJMRV9HQU1VVCB8Cj4gPiA+ID4gKwkJCSBWSURFT19ESVBfRU5BQkxFX1NQ RCB8IFZJREVPX0RJUF9FTkFCTEVfR0NQKTsKPiA+ID4gPiAgCQlJOTE1X1dSSVRFKHJlZywgdmFs KTsKPiA+ID4gPiAgCQlQT1NUSU5HX1JFQUQocmVnKTsKPiA+ID4gPiAgCQlyZXR1cm47Cj4gPiA+ ID4gIAl9Cj4gPiA+ID4KPiA+ID4gPiAgCWlmIChwb3J0ICE9ICh2YWwgJiBWSURFT19ESVBfUE9S VF9NQVNLKSkgewo+ID4gPiA+IC0JCWlmICh2YWwgJiBWSURFT19ESVBfRU5BQkxFKSB7Cj4gPiA+ ID4gLQkJCXZhbCAmPSB+VklERU9fRElQX0VOQUJMRTsKPiA+ID4gPiAtCQkJSTkxNV9XUklURShy ZWcsIHZhbCk7Cj4gPiA+ID4gLQkJCVBPU1RJTkdfUkVBRChyZWcpOwo+ID4gPiA+IC0JCX0KPiA+ ID4gPiArCQlXQVJOKHZhbCAmIFZJREVPX0RJUF9FTkFCTEUsCj4gPiA+ID4gKwkJICAgICAiRElQ IGFscmVhZHkgZW5hYmxlZCBvbiBwb3J0ICVjXG4iLAo+ID4gPiA+ICsJCSAgICAgKHZhbCAmIFZJ REVPX0RJUF9QT1JUX01BU0spID4+IDI5KTsKPiA+ID4gPiAgCQl2YWwgJj0gflZJREVPX0RJUF9Q T1JUX01BU0s7Cj4gPiA+ID4gIAkJdmFsIHw9IHBvcnQ7Cj4gPiA+ID4gIAl9Cj4gPiA+ID4KPiA+ ID4gPiAgCXZhbCB8PSBWSURFT19ESVBfRU5BQkxFOwo+ID4gPiA+IC0JdmFsICY9IH4oVklERU9f RElQX0VOQUJMRV9WRU5ET1IgfCBWSURFT19ESVBfRU5BQkxFX0dBTVVUIHwKPiA+ID4gPiAtCQkg VklERU9fRElQX0VOQUJMRV9HQ1ApOwo+ID4gPiA+ICsJdmFsICY9IH4oVklERU9fRElQX0VOQUJM RV9BVkkgfAo+ID4gPiA+ICsJCSBWSURFT19ESVBfRU5BQkxFX1ZFTkRPUiB8IFZJREVPX0RJUF9F TkFCTEVfR0FNVVQgfAo+ID4gPiA+ICsJCSBWSURFT19ESVBfRU5BQkxFX1NQRCB8IFZJREVPX0RJ UF9FTkFCTEVfR0NQKTsKPiA+ID4gPgo+ID4gPiA+ICAJaWYgKGludGVsX2hkbWlfc2V0X2djcF9p bmZvZnJhbWUoZW5jb2RlcikpCj4gPiA+ID4gIAkJdmFsIHw9IFZJREVPX0RJUF9FTkFCTEVfR0NQ Owo+ID4gPiA+IEBAIC03MTgsNyArNzA5LDkgQEAgc3RhdGljIHZvaWQgY3B0X3NldF9pbmZvZnJh bWVzKHN0cnVjdCBkcm1fZW5jb2Rlcgo+ID4gPiA+ICplbmNvZGVyLAo+ID4gPiA+ICAJaWYgKCFl bmFibGUpIHsKPiA+ID4gPiAgCQlpZiAoISh2YWwgJiBWSURFT19ESVBfRU5BQkxFKSkKPiA+ID4g PiAgCQkJcmV0dXJuOwo+ID4gPiA+IC0JCXZhbCAmPSB+KFZJREVPX0RJUF9FTkFCTEUgfCBWSURF T19ESVBfRU5BQkxFX0FWSSk7Cj4gPiA+ID4gKwkJdmFsICY9IH4oVklERU9fRElQX0VOQUJMRSB8 IFZJREVPX0RJUF9FTkFCTEVfQVZJIHwKPiA+ID4gPiArCQkJIFZJREVPX0RJUF9FTkFCTEVfVkVO RE9SIHwKPiA+ID4gPiBWSURFT19ESVBfRU5BQkxFX0dBTVVUIHwKPiA+ID4gPiArCQkJIFZJREVP X0RJUF9FTkFCTEVfU1BEIHwgVklERU9fRElQX0VOQUJMRV9HQ1ApOwo+ID4gPiA+ICAJCUk5MTVf V1JJVEUocmVnLCB2YWwpOwo+ID4gPiA+ICAJCVBPU1RJTkdfUkVBRChyZWcpOwo+ID4gPiA+ICAJ CXJldHVybjsKPiA+ID4gPiBAQCAtNzI3LDcgKzcyMCw3IEBAIHN0YXRpYyB2b2lkIGNwdF9zZXRf aW5mb2ZyYW1lcyhzdHJ1Y3QgZHJtX2VuY29kZXIKPiA+ID4gPiAqZW5jb2RlciwKPiA+ID4gPiAg CS8qIFNldCBib3RoIHRvZ2V0aGVyLCB1bnNldCBib3RoIHRvZ2V0aGVyOiBzZWUgdGhlIHNwZWMu ICovCj4gPiA+ID4gIAl2YWwgfD0gVklERU9fRElQX0VOQUJMRSB8IFZJREVPX0RJUF9FTkFCTEVf QVZJOwo+ID4gPiA+ICAJdmFsICY9IH4oVklERU9fRElQX0VOQUJMRV9WRU5ET1IgfCBWSURFT19E SVBfRU5BQkxFX0dBTVVUIHwKPiA+ID4gPiAtCQkgVklERU9fRElQX0VOQUJMRV9HQ1ApOwo+ID4g PiA+ICsJCSBWSURFT19ESVBfRU5BQkxFX1NQRCB8IFZJREVPX0RJUF9FTkFCTEVfR0NQKTsKPiA+ ID4gPgo+ID4gPiA+ICAJaWYgKGludGVsX2hkbWlfc2V0X2djcF9pbmZvZnJhbWUoZW5jb2Rlcikp Cj4gPiA+ID4gIAkJdmFsIHw9IFZJREVPX0RJUF9FTkFCTEVfR0NQOwo+ID4gPiA+IEBAIC03NjAs MjUgKzc1MywyNiBAQCBzdGF0aWMgdm9pZCB2bHZfc2V0X2luZm9mcmFtZXMoc3RydWN0Cj4gPiBk cm1fZW5jb2Rlcgo+ID4gPiA+ICplbmNvZGVyLAo+ID4gPiA+ICAJaWYgKCFlbmFibGUpIHsKPiA+ ID4gPiAgCQlpZiAoISh2YWwgJiBWSURFT19ESVBfRU5BQkxFKSkKPiA+ID4gPiAgCQkJcmV0dXJu Owo+ID4gPiA+IC0JCXZhbCAmPSB+VklERU9fRElQX0VOQUJMRTsKPiA+ID4gPiArCQl2YWwgJj0g fihWSURFT19ESVBfRU5BQkxFIHwgVklERU9fRElQX0VOQUJMRV9BVkkgfAo+ID4gPiA+ICsJCQkg VklERU9fRElQX0VOQUJMRV9WRU5ET1IgfAo+ID4gVklERU9fRElQX0VOQUJMRV9HQU1VVCB8Cj4g PiA+ID4gKwkJCSBWSURFT19ESVBfRU5BQkxFX1NQRCB8IFZJREVPX0RJUF9FTkFCTEVfR0NQKTsK PiA+ID4gPiAgCQlJOTE1X1dSSVRFKHJlZywgdmFsKTsKPiA+ID4gPiAgCQlQT1NUSU5HX1JFQUQo cmVnKTsKPiA+ID4gPiAgCQlyZXR1cm47Cj4gPiA+ID4gIAl9Cj4gPiA+ID4KPiA+ID4gPiAgCWlm IChwb3J0ICE9ICh2YWwgJiBWSURFT19ESVBfUE9SVF9NQVNLKSkgewo+ID4gPiA+IC0JCWlmICh2 YWwgJiBWSURFT19ESVBfRU5BQkxFKSB7Cj4gPiA+ID4gLQkJCXZhbCAmPSB+VklERU9fRElQX0VO QUJMRTsKPiA+ID4gPiAtCQkJSTkxNV9XUklURShyZWcsIHZhbCk7Cj4gPiA+ID4gLQkJCVBPU1RJ TkdfUkVBRChyZWcpOwo+ID4gPiA+IC0JCX0KPiA+ID4gPiArCQlXQVJOKHZhbCAmIFZJREVPX0RJ UF9FTkFCTEUsCj4gPiA+ID4gKwkJICAgICAiRElQIGFscmVhZHkgZW5hYmxlZCBvbiBwb3J0ICVj XG4iLAo+ID4gPiA+ICsJCSAgICAgKHZhbCAmIFZJREVPX0RJUF9QT1JUX01BU0spID4+IDI5KTsK PiA+ID4gPiAgCQl2YWwgJj0gflZJREVPX0RJUF9QT1JUX01BU0s7Cj4gPiA+ID4gIAkJdmFsIHw9 IHBvcnQ7Cj4gPiA+ID4gIAl9Cj4gPiA+ID4KPiA+ID4gPiAgCXZhbCB8PSBWSURFT19ESVBfRU5B QkxFOwo+ID4gPiA+IC0JdmFsICY9IH4oVklERU9fRElQX0VOQUJMRV9BVkkgfCBWSURFT19ESVBf RU5BQkxFX1ZFTkRPUiB8Cj4gPiA+ID4gLQkJIFZJREVPX0RJUF9FTkFCTEVfR0FNVVQgfCBWSURF T19ESVBfRU5BQkxFX0dDUCk7Cj4gPiA+ID4gKwl2YWwgJj0gfihWSURFT19ESVBfRU5BQkxFX0FW SSB8Cj4gPiA+ID4gKwkJIFZJREVPX0RJUF9FTkFCTEVfVkVORE9SIHwgVklERU9fRElQX0VOQUJM RV9HQU1VVCB8Cj4gPiA+ID4gKwkJIFZJREVPX0RJUF9FTkFCTEVfU1BEIHwgVklERU9fRElQX0VO QUJMRV9HQ1ApOwo+ID4gPiA+Cj4gPiA+ID4gIAlpZiAoaW50ZWxfaGRtaV9zZXRfZ2NwX2luZm9m cmFtZShlbmNvZGVyKSkKPiA+ID4gPiAgCQl2YWwgfD0gVklERU9fRElQX0VOQUJMRV9HQ1A7Cj4g PiA+ID4gQEAgLTgwMywxNSArNzk3LDE2IEBAIHN0YXRpYyB2b2lkIGhzd19zZXRfaW5mb2ZyYW1l cyhzdHJ1Y3QKPiA+IGRybV9lbmNvZGVyCj4gPiA+ID4gKmVuY29kZXIsCj4gPiA+ID4KPiA+ID4g PiAgCWFzc2VydF9oZG1pX3BvcnRfZGlzYWJsZWQoaW50ZWxfaGRtaSk7Cj4gPiA+ID4KPiA+ID4g PiArCXZhbCAmPSB+KFZJREVPX0RJUF9FTkFCTEVfVlNDX0hTVyB8Cj4gPiBWSURFT19ESVBfRU5B QkxFX0FWSV9IU1cgfAo+ID4gPiA+ICsJCSBWSURFT19ESVBfRU5BQkxFX0dDUF9IU1cgfAo+ID4g VklERU9fRElQX0VOQUJMRV9WU19IU1cgfAo+ID4gPiA+ICsJCSBWSURFT19ESVBfRU5BQkxFX0dN UF9IU1cgfAo+ID4gVklERU9fRElQX0VOQUJMRV9TUERfSFNXKTsKPiA+ID4gPiArCj4gPiA+ID4g IAlpZiAoIWVuYWJsZSkgewo+ID4gPiA+IC0JCUk5MTVfV1JJVEUocmVnLCAwKTsKPiA+ID4gPiAr CQlJOTE1X1dSSVRFKHJlZywgdmFsKTsKPiA+ID4gPiAgCQlQT1NUSU5HX1JFQUQocmVnKTsKPiA+ ID4gPiAgCQlyZXR1cm47Cj4gPiA+ID4gIAl9Cj4gPiA+ID4KPiA+ID4gPiAtCXZhbCAmPSB+KFZJ REVPX0RJUF9FTkFCTEVfVlNDX0hTVyB8Cj4gPiBWSURFT19ESVBfRU5BQkxFX0dDUF9IU1cgfAo+ ID4gPiA+IC0JCSBWSURFT19ESVBfRU5BQkxFX1ZTX0hTVyB8Cj4gPiBWSURFT19ESVBfRU5BQkxF X0dNUF9IU1cpOwo+ID4gPiA+IC0KPiA+ID4gPiAgCWlmIChpbnRlbF9oZG1pX3NldF9nY3BfaW5m b2ZyYW1lKGVuY29kZXIpKQo+ID4gPiA+ICAJCXZhbCB8PSBWSURFT19ESVBfRU5BQkxFX0dDUF9I U1c7Cj4gPiA+ID4KPiA+ID4gPiBAQCAtMTEzMyw3ICsxMTI4LDcgQEAgc3RhdGljIHZvaWQgaW50 ZWxfZGlzYWJsZV9oZG1pKHN0cnVjdAo+ID4gaW50ZWxfZW5jb2Rlcgo+ID4gPiA+ICplbmNvZGVy KQo+ID4gPiA+ICAJaWYgKElTX0NIRVJSWVZJRVcoZGV2KSkKPiA+ID4gPiAgCQljaHZfcG93ZXJn YXRlX3BoeV9sYW5lcyhlbmNvZGVyLCAweGYpOwo+ID4gPiA+Cj4gPiA+ID4gLQlpbnRlbF9kaXNh YmxlX2djcF9pbmZvZnJhbWUodG9faW50ZWxfY3J0YyhlbmNvZGVyLT5iYXNlLmNydGMpKTsKPiA+ ID4gPiArCWludGVsX2hkbWktPnNldF9pbmZvZnJhbWVzKCZlbmNvZGVyLT5iYXNlLCBmYWxzZSwg TlVMTCk7Cj4gPiA+ID4gIH0KPiA+ID4gPgo+ID4gPiA+ICBzdGF0aWMgaW50IGhkbWlfcG9ydGNs b2NrX2xpbWl0KHN0cnVjdCBpbnRlbF9oZG1pICpoZG1pLCBib29sCj4gPiByZXNwZWN0X2R2aV9s aW1pdCkKPiA+ID4gPiAtLQo+ID4gPiA+IDIuMC41Cj4gPiA+ID4KPiA+ID4gPiBfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+ID4gPiA+IEludGVsLWdmeCBt YWlsaW5nIGxpc3QKPiA+ID4gPiBJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4gPiA+ ID4gaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdm eAo+ID4gCj4gPiAtLQo+ID4gVmlsbGUgU3lyasOkbMOkCj4gPiBJbnRlbCBPVEMKCi0tIApWaWxs ZSBTeXJqw6Rsw6QKSW50ZWwgT1RDCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8v aW50ZWwtZ2Z4Cg==