From mboxrd@z Thu Jan 1 00:00:00 1970 From: Patrik Jakobsson Subject: Re: [DMC_BUGFIX_SKL_V2 3/5] drm/i915/skl: Making DC6 entry is the last call in suspend flow. Date: Tue, 29 Sep 2015 14:35:07 +0200 Message-ID: <20150929123507.GA16554@patrik-desktop.isw.intel.com> References: <1440533169-32265-1-git-send-email-animesh.manna@intel.com> <1440533169-32265-4-git-send-email-animesh.manna@intel.com> <20150928072151.GJ3383@phenom.ffwll.local> <560A23D1.5060208@intel.com> <20150929090135.GF3383@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id 260026E703 for ; Tue, 29 Sep 2015 05:35:08 -0700 (PDT) Content-Disposition: inline In-Reply-To: <20150929090135.GF3383@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Daniel Vetter Cc: Rajneesh Bhardwaj , intel-gfx@lists.freedesktop.org, Daniel Vetter List-Id: intel-gfx@lists.freedesktop.org T24gVHVlLCBTZXAgMjksIDIwMTUgYXQgMTE6MDE6MzVBTSArMDIwMCwgRGFuaWVsIFZldHRlciB3 cm90ZToKPiBPbiBUdWUsIFNlcCAyOSwgMjAxNSBhdCAxMTowODoyNUFNICswNTMwLCBBbmltZXNo IE1hbm5hIHdyb3RlOgo+ID4gCj4gPiAKPiA+IE9uIDA5LzI4LzIwMTUgMTI6NTEgUE0sIERhbmll bCBWZXR0ZXIgd3JvdGU6Cj4gPiA+T24gV2VkLCBBdWcgMjYsIDIwMTUgYXQgMDE6MzY6MDdBTSAr MDUzMCwgQW5pbWVzaCBNYW5uYSB3cm90ZToKPiA+ID4+TW1pbyByZWdpc3RlciBhY2Nlc3MgYWZ0 ZXIgZGM2L2RjNSBlbnRyeSBpcyBub3QgYWxsb3dlZCB3aGVuCj4gPiA+PkRDNiBwb3dlciBzdGF0 ZXMgYXJlIGVuYWJsZWQgYWNjb3JkaW5nIHRvIGJzcGVjIChic3BlYy1pZCAwNTI3KSwKPiA+ID4+ c28gZW5hYmxpbmcgZGM2IGFzIHRoZSBsYXN0IGNhbGwgaW4gc3VzcGVuZCBmbG93Lgo+ID4gPldl IHVuY29uZGl0aW9uYWx5IGdyYWIgYSBwb3dlciB3ZWxsIHJlZmVyZW5jZSBmb3IgZXZlcnl0aGlu ZyBpbiBvdXIKPiA+ID5zdXNwZW5kL3Jlc3VtZSBmdW5jdGlvbnMsIHdoaWNoIG1lYW5zIGRjNi81 IHNob3VsZCBiZSBwcmV2ZW50ZWQgZm9yIGxvbmcKPiA+ID5lbm91Z2guCj4gPiA+Cj4gPiA+QWxz byBzaW5jZSBkYzYvNSBhcmUgcGFydCBvZiB0aGUgcG93ZXIgd2VsbCBmcmFtZXdvcmsgeW91IGNh bid0IGp1c3QKPiA+ID5lbmFibGUvZGlzYWJsZSB0aGVtIGRpcmVjdGx5LCBpbnN0ZWFkIHlvdSBu ZWVkIHRvIGdldC9wdXQgdGhlCj4gPiA+Y29ycmVzcG9uZGluZyBwb3dlciB3ZWxscy4KPiA+ID4K PiA+ID5GaW5hbGx5IHRoaXMgcGF0Y2ggZG9lc24ndCBqdXN0IGRvIHRoYXQsIGJ1dCBhbHNvIGZy b2JzIGFyb3VuZCBhIGxvdCBpbgo+ID4gPnNldCBwb3dlciB3ZWxsIGNvZGUgaXRzZWxmLCBhbmQg SSBoYXZlIG5vIGlkZWEgd2hhdCBpdCBkb2VzIHRoZXJlIGFuZCB3aHkuCj4gPiA+SXQgZG9lcyBz bWVsbCBhIGJpdCBsaWtlIHlvdSdyZSBqdXN0IGJyZWFraW5nIGRjNiBmb3IgcnVudGltZSBwbSB0 aG91Z2gsCj4gPiA+d2hpY2ggd291bGRuJ3QgYmUgZ29vZC4KPiA+ID4KPiA+ID5Bbnl3YXkgSSBk ZWNpZGVkIHRvIGp1c3QgbWVyZ2UgdGhpcyBzaW5jZSB0aGlzIHBhdGNoIHNlcmllcyBoYXMgYmVl bgo+ID4gPmZsb2F0aW5nIGFyb3VuZCBzaW5jZSBmb3JldmVyLCBidXQgdGhlbiB0aGUgcGF0Y2gg ZGlkbid0IGFwcGx5IGNsZWFubHkgYW5kCj4gPiA+c28gZHJvcHBlZCBpdC4KPiA+IAo+ID4gSSBt ZW50aW9uZWQgaW4gbXkgY29tbWl0IG1lc3NhZ2UgdGhhdCB3ZSBoYXZlIGEgaC93IHdvcmthcm91 bmQuCj4gPiAiTW1pbyByZWdpc3RlciBhY2Nlc3MgYWZ0ZXIgZGM2L2RjNSBlbnRyeSBpcyBub3Qg YWxsb3dlZCB3aGVuCj4gPiBEQzYgcG93ZXIgc3RhdGVzIGFyZSBlbmFibGVkIgo+ID4gCj4gPiBU aGlzIHBhdGNoIGlzIG1hbmRhdG9yeSB0byBzb2x2ZSB0aGUgcGMxMCBlbnRyeSBpc3N1ZSBmb3Ig c2t5bGFrZS4KPiA+IFBsYW5uaW5nIHRvIHNlbmQgYWdhaW4gYWZ0ZXIgcmViYXNlIG9uIHRvcCBv ZiB0cmVlLgoKSGkgQW5pbWVzaCBhbmQgRGFuaWVsCgpJJ20gdHJ5aW5nIHRvIHNoZWQgc29tZSBs aWdodCBvbiB0aGlzLiBJdCBzZWVtcyByYXRoZXIgY29uZnVzaW5nIGF0bS4gQW5pbWVzaCwKcGxl YXNlIGNvcnJlY3QgbWUgaWYgSSdtIHdyb25nIGJlbG93LgoKPiBUaGUgcHJvYmxlbSBpc24ndCB0 aGF0IHRoZSBwYXRjaCBkaWRuJ3QgYXBwbHkgY2xlYW5seSwgYnV0IHRoYXQgaXQgc2VlbXMKPiB0 byBoYXZlIGZ1bmRhbWVudGFsIGlzc3VlczoKPiAtIFdlIGFscmVhZHkgZ3JhYiBwb3dlciB3ZWxs IHJlZmVyZW5jZXMgYXJvdW5kIHN1c3BlbmQvcmVzdW1lIGNvZGUsIHNlZQo+ICAgdGhlIGNhbGwg dG8gaW50ZWxfcG93ZXJfZG9tYWluc19pbml0X2h3IGFuZCB0aGUgY2FsbHMgdG8KPiAgIGludGVs X2Rpc3BsYXlfc2V0X2luaXRfcG93ZXIuIFRoYXQgY29kZSBpcyBzdXBwb3NlZCB0byBlbnN1cmUg dGhhdCB3aGlsZQo+ICAgc3VzcGVuZC9yZXN1bWUgaXMgZ29pbmcgb24gX2FsbF8gcG93ZXIgd2Vs bHMgYXJlIG9uIChhbmQgaGVuY2UgZGM2LzUgYXJlCj4gICBmb3JiaWRkZW4pLiBJdCdzIGEgYml0 IGEgYmlnIGhhbW1lciwgYnV0IHdlIGFscmVhZHkgaGF2ZSB0aGUgY29kZSB0byBkbwo+ICAgZXhh Y3RseSB3aGF0IHlvdSdyZSB0cnlpbmcgdG8gZG8gaGVyZS4gSXQgY291bGQgYmUgdGhvdWdoIHRo YXQgZm9yIHNrbAo+ICAgaXQncyBpbiB0aGUgd3Jvbmcgb3JkZXIgKGJ1dCB0aGVuIHRoZSBjb21t aXQgbWVzc2FnZSBtdXN0IHN0YXRlIHZlcnkKPiAgIGNsZWFybHkgd2hhdCdzIHRoZSBleGFjdCBk ZXBlbmN5LCB0aGUgZ3B1IGlzIGFzc2VtYmxlZCBmcm9tIGEgcGlsZSBvZgo+ICAgdmFyaW91cyBk aWZmZXJlbnQgYmxvY2tzIHdoaWNoIGFyZSBhbGwgbW9zdGx5IGluZGVwZW5kZW50KS4KCkRDNiBj YW4gb25seSBiZSBlbmFibGVkIHdoZW4gX2FsbF8gcG93ZXIgd2VsbHMgYXJlIGRpc2FibGVkLiBI ZW5jZSB0aGlzIHBhdGNoCm1vdmVzIERDNiBlbmFibGVkL2Rpc2FibGVkIHRvIHRoZSBydW50aW1l IHN1c3BlbmQvcmVzdW1lIGNhbGxiYWNrcy4gUHJldmlvdXNseSAKd2Ugb25seSBkaXNhYmxlZCBE QzYgd2hlbiBQVzIgd2FzIGVuYWJsZWQuCgpUaGUgREMgc3RhdGUgdGFibGUgc2F5czoKLSBFdmVy eXRoaW5nIG9mZjogREM2IGVuYWJsZWQKLSBQVzAgZW5hYmxlZDogREM1IGVuYWJsZWQgYnV0IERD NiBpcyBkaXNhYmxlZAotIFBXMSBlbmFibGVkOiBEQzUgYW5kIERDNiBkaXNhYmxlZCAKLSBQVzIg ZW5hYmxlZDogREM1IGFuZCBEQzYgZGlzYWJsZWQgCgo+IC0gWW91ciBwYXRjaCBkaXJlY3RseSBj YWxscyBza2xfZW5hYmxlL2Rpc2FibGVfZGM2IGluc3RlYWQgb2YgZ29pbmcKPiAgIHRocm91Z2gg dGhlIHBvd2VyIHdlbGwgYWJzdHJhY3Rpb24uIEJyZWFraW5nIHRoZXNlIGFic3RyYWN0aW9uIG5l ZWRzIGEKPiAgIHJlYWxseSBnb29kIHJlYXNvbiwgYWRlcXVhdGUgYXNzdXJhbmNlIHRoYXQgdGhl IHJlZmNvdW50cyBhcmUgb2sgYW5kCj4gICBub3RoaW5nIGJyZWFrcyAodXNpbmcgV0FSTl9PTikg YW5kIGFuIGV4cGxhbmF0aW9uIHdoeSB0aGUgcmVmY291bnQKPiAgIGludGVyZmFjZSBmb3IgZGlz cGxheSBwb3dlciBtYW5hZ2VtZW50IGRvZXNuJ3Qgd29yay4KClRoaXMgaXMgaW5kZWVkIGEgaGFj ayBidXQgc2luY2UgYWxsIHdlIG5lZWQgaXMgdGhlIGd1YXJhbnRlZSB0aGF0IGEgcG93ZXIgd2Vs bAppcyBpbiBmYWN0IGVuYWJsZWQgd2UgY2FuIHNlZSB0aGUgb3BlcmF0aW9uIGFzOiBlbmFibGUg cHcgKyBkaXNhYmxlIGRjIHN0YXRlLgpUaGlzIGlzIGN1cnJlbnRseSBoYWNrZWQgaW50byBza2xf c2V0X3Bvd2VyX3dlbGwoKS4gSXQncyBub3QgbmljZSBidXQgaXQgdGFrZXMKYXdheSB0aGUgY29t cGxleGl0eSBvZiBtb2RlbGluZyBEQyBzdGF0ZXMgYXMgcG93ZXIgd2VsbHMuCgpUaGUgYWx0ZXJu YXRpdmUgd291bGQgYmUgdG8gdHVybiBEQzUgYW5kIERDNiBpbnRvIHBvd2VyIHdlbGxzIGFuZCBh ZGQgcHJvcGVyCmRlcGVuZGVuY2llcy4gV2hhdCBJJ3ZlIGRpc2NvdmVyZWQgaXMgdGhhdCBpdCdz IHF1aXRlIGEgdGlnaHQgZml0LgoKPiAtIFlvdSBhbHNvIGRvIGNoYW5nZXMgdG8gdGhlIHBvd2Vy IHdlbGwgY29kZSBpdHNlbGYsIHdoaWNoIGxvb2tzIGxpa2UgaXQKPiAgIG1pZ2h0IGJyZWFrIGRj NiBmb3IgcnVudGltZSBwbSAoYnkgb25seSBnb2luZyBpbnRvIGRjNSBhdCBtb3N0KS4gVGhhdAo+ ICAgbmVlZHMgdG8gYmUgYSBzZXBhcmF0ZSBwYXRjaCBvciBoYXZlIGEgbXVjaCBiZXR0ZXIgZXhw bGFuYXRpb24uCgpJZiBJIHVuZGVyc3Rvb2QgY29ycmVjdGx5LCB0aGF0IGlzIHRoZSBlbnRpcmUg cG9pbnQgb2YgdGhpcyBwYXRjaC4gRG9uJ3QgYWxsb3cKREM2IHVubGVzcyBhbGwgcG93ZXIgd2Vs bHMgYXJlIGRpc2FibGVkLiBNeSBxdWVzdGlvbiB0aG91Z2ggaXMgd2h5IHdlIGRvbid0CmRpc2Fi bGUgREM1IGZvciBQVzEgYXMgd2VsbD8KCj4gV2UgcHJvYmFibHkgbmVlZCB0byBzZXQgdXAgYSBt ZWV0aW5nIHRvIHJlc29sdmUgdGhpcyBzb29uZXIgdGhhbiB0aGUgZmV3Cj4gbW9udGhzIGl0IHRv b2sgdG8gZmlndXJlIG91dCB0aGUgcmVzdW1lIGlzc3VlIC4uLgo+IAo+IFRoYW5rcywgRGFuaWVs CgpJJ2QgbGlrZSB0byBqb2luIGlmIHBvc3NpYmxlLgoKVGhhbmtzClBhdHJpawoKPiA+ID4+Cj4g PiA+PnYyOiBCYXNlZCBvbiByZXZpZXcgY29tbWVudCBmcm9tIERhbmllbCwKPiA+ID4+LSBjcmVh dGVkIGEgc2VwZXJhdGUgcGF0Y2ggZm9yIGNzciB1bmluaXRpYWxpemF0aW9uIHNldCBjYWxsLgo+ ID4gPj4KPiA+ID4+Q2M6IERhbmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJAaW50ZWwuY29tPgo+ ID4gPj5DYzogRGFtaWVuIExlc3BpYXUgPGRhbWllbi5sZXNwaWF1QGludGVsLmNvbT4KPiA+ID4+ Q2M6IEltcmUgRGVhayA8aW1yZS5kZWFrQGludGVsLmNvbT4KPiA+ID4+Q2M6IFN1bmlsIEthbWF0 aCA8c3VuaWwua2FtYXRoQGludGVsLmNvbT4KPiA+ID4+U2lnbmVkLW9mZi1ieTogQW5pbWVzaCBN YW5uYSA8YW5pbWVzaC5tYW5uYUBpbnRlbC5jb20+Cj4gPiA+PlNpZ25lZC1vZmYtYnk6IFZhdGhz YWxhIE5hZ2FyYWp1IDx2YXRoc2FsYS5uYWdhcmFqdUBpbnRlbC5jb20+Cj4gPiA+PlNpZ25lZC1v ZmYtYnk6IFJham5lZXNoIEJoYXJkd2FqIDxyYWpuZWVzaC5iaGFyZHdhakBpbnRlbC5jb20+Cj4g PiA+Pi0tLQo+ID4gPj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMgICAgICAgICB8 IDEzICsrKysrKysrKysrKysKPiA+ID4+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYu aCAgICAgICAgfCAgMiArKwo+ID4gPj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3J1bnRp bWVfcG0uYyB8IDE5ICsrKysrKystLS0tLS0tLS0tLS0KPiA+ID4+ICAzIGZpbGVzIGNoYW5nZWQs IDIyIGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQo+ID4gPj4KPiA+ID4+ZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2Rydi5jCj4gPiA+PmluZGV4IDQ3ODEwMWMuLmZhNjYxNjIgMTAwNjQ0Cj4gPiA+Pi0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMKPiA+ID4+KysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9kcnYuYwo+ID4gPj5AQCAtMTAxMywxMCArMTAxMywyMCBAQCBzdGF0 aWMgaW50IGk5MTVfcG1fcmVzdW1lKHN0cnVjdCBkZXZpY2UgKmRldikKPiA+ID4+ICBzdGF0aWMg aW50IHNrbF9zdXNwZW5kX2NvbXBsZXRlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp dikKPiA+ID4+ICB7Cj4gPiA+PisJZW51bSBjc3Jfc3RhdGUgc3RhdGU7Cj4gPiA+PiAgCS8qIEVu YWJsaW5nIERDNiBpcyBub3QgYSBoYXJkIHJlcXVpcmVtZW50IHRvIGVudGVyIHJ1bnRpbWUgRDMg Ki8KPiA+ID4+ICAJc2tsX3VuaW5pdF9jZGNsayhkZXZfcHJpdik7Cj4gPiA+PisJLyogVE9ETzog d2FpdCBmb3IgYSBjb21wbGV0aW9uIGV2ZW50IG9yCj4gPiA+PisJICogc2ltaWxhciBoZXJlIGlu c3RlYWQgb2YgYnVzeQo+ID4gPj4rCSAqIHdhaXRpbmcgdXNpbmcgd2FpdF9mb3IgZnVuY3Rpb24u Cj4gPiA+PisJICovCj4gPiA+PisJd2FpdF9mb3IoKHN0YXRlID0gaW50ZWxfY3NyX2xvYWRfc3Rh dHVzX2dldChkZXZfcHJpdikpICE9Cj4gPiA+PisJCQlGV19VTklOSVRJQUxJWkVELCAxMDAwKTsK PiA+ID4+KwlpZiAoc3RhdGUgPT0gRldfTE9BREVEKQo+ID4gPj4rCQlza2xfZW5hYmxlX2RjNihk ZXZfcHJpdik7Cj4gPiA+PisKPiA+ID4+ICAJcmV0dXJuIDA7Cj4gPiA+PiAgfQo+ID4gPj5AQCAt MTA2Myw2ICsxMDczLDkgQEAgc3RhdGljIGludCBza2xfcmVzdW1lX3ByZXBhcmUoc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ID4gPj4gIHsKPiA+ID4+ICAJc3RydWN0IGRybV9k ZXZpY2UgKmRldiA9IGRldl9wcml2LT5kZXY7Cj4gPiA+PisJaWYgKGludGVsX2Nzcl9sb2FkX3N0 YXR1c19nZXQoZGV2X3ByaXYpID09IEZXX0xPQURFRCkKPiA+ID4+KwkJc2tsX2Rpc2FibGVfZGM2 KGRldl9wcml2KTsKPiA+ID4+Kwo+ID4gPj4gIAlza2xfaW5pdF9jZGNsayhkZXZfcHJpdik7Cj4g PiA+PiAgCWludGVsX2Nzcl9sb2FkX3Byb2dyYW0oZGV2KTsKPiA+ID4+ZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfZHJ2LmgKPiA+ID4+aW5kZXggODFiN2Q3Ny4uOWNiN2Q0ZSAxMDA2NDQKPiA+ID4+LS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiA+ID4+KysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiA+ID4+QEAgLTExMTgsNiArMTExOCw4IEBAIHZvaWQgYnh0 X2VuYWJsZV9kYzkoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KTsKPiA+ID4+ICB2 b2lkIGJ4dF9kaXNhYmxlX2RjOShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwo+ ID4gPj4gIHZvaWQgc2tsX2luaXRfY2RjbGsoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2KTsKPiA+ID4+ICB2b2lkIHNrbF91bmluaXRfY2RjbGsoc3RydWN0IGRybV9pOTE1X3ByaXZh dGUgKmRldl9wcml2KTsKPiA+ID4+K3ZvaWQgc2tsX2VuYWJsZV9kYzYoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2KTsKPiA+ID4+K3ZvaWQgc2tsX2Rpc2FibGVfZGM2KHN0cnVjdCBk cm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7Cj4gPiA+PiAgdm9pZCBpbnRlbF9kcF9nZXRfbV9u KHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAo+ID4gPj4gIAkJICAgICAgc3RydWN0IGludGVsX2Ny dGNfc3RhdGUgKnBpcGVfY29uZmlnKTsKPiA+ID4+ICB2b2lkIGludGVsX2RwX3NldF9tX24oc3Ry dWN0IGludGVsX2NydGMgKmNydGMsIGVudW0gbGlua19tX25fc2V0IG1fbik7Cj4gPiA+PmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ydW50aW1lX3BtLmMgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9ydW50aW1lX3BtLmMKPiA+ID4+aW5kZXggODIxNjQ0ZC4uMjNh M2FhMyAxMDA2NDQKPiA+ID4+LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcnVudGlt ZV9wbS5jCj4gPiA+PisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3J1bnRpbWVfcG0u Ywo+ID4gPj5AQCAtNTQ4LDcgKzU0OCw3IEBAIHN0YXRpYyB2b2lkIGFzc2VydF9jYW5fZGlzYWJs ZV9kYzYoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ID4gPj4gIAkJIkRDNiBh bHJlYWR5IHByb2dyYW1tZWQgdG8gYmUgZGlzYWJsZWQuXG4iKTsKPiA+ID4+ICB9Cj4gPiA+Pi1z dGF0aWMgdm9pZCBza2xfZW5hYmxlX2RjNihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYpCj4gPiA+Pit2b2lkIHNrbF9lbmFibGVfZGM2KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpk ZXZfcHJpdikKPiA+ID4+ICB7Cj4gPiA+PiAgCXVpbnQzMl90IHZhbDsKPiA+ID4+QEAgLTU2NSw3 ICs1NjUsNyBAQCBzdGF0aWMgdm9pZCBza2xfZW5hYmxlX2RjNihzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYpCj4gPiA+PiAgCVBPU1RJTkdfUkVBRChEQ19TVEFURV9FTik7Cj4gPiA+ PiAgfQo+ID4gPj4tc3RhdGljIHZvaWQgc2tsX2Rpc2FibGVfZGM2KHN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdikKPiA+ID4+K3ZvaWQgc2tsX2Rpc2FibGVfZGM2KHN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICpkZXZfcHJpdikKPiA+ID4+ICB7Cj4gPiA+PiAgCXVpbnQzMl90IHZhbDsK PiA+ID4+QEAgLTYyNiwxMCArNjI2LDEwIEBAIHN0YXRpYyB2b2lkIHNrbF9zZXRfcG93ZXJfd2Vs bChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gPiA+PiAgCQkJCSFJOTE1X1JF QUQoSFNXX1BXUl9XRUxMX0JJT1MpLAo+ID4gPj4gIAkJCQkiSW52YWxpZCBmb3IgcG93ZXIgd2Vs bCBzdGF0dXMgdG8gYmUgZW5hYmxlZCwgdW5sZXNzIGRvbmUgYnkgdGhlIEJJT1MsIFwKPiA+ID4+ ICAJCQkJd2hlbiByZXF1ZXN0IGlzIHRvIGRpc2FibGUhXG4iKTsKPiA+ID4+LQkJCWlmICgoR0VO OV9FTkFCTEVfREM1KGRldikgfHwgU0tMX0VOQUJMRV9EQzYoZGV2KSkgJiYKPiA+ID4+LQkJCQlw b3dlcl93ZWxsLT5kYXRhID09IFNLTF9ESVNQX1BXXzIpIHsKPiA+ID4+KwkJCWlmIChwb3dlcl93 ZWxsLT5kYXRhID09IFNLTF9ESVNQX1BXXzIpIHsKPiA+ID4+KwkJCQlpZiAoR0VOOV9FTkFCTEVf REM1KGRldikpCj4gPiA+PisJCQkJCWdlbjlfZGlzYWJsZV9kYzUoZGV2X3ByaXYpOwo+ID4gPj4g IAkJCQlpZiAoU0tMX0VOQUJMRV9EQzYoZGV2KSkgewo+ID4gPj4tCQkJCQlza2xfZGlzYWJsZV9k YzYoZGV2X3ByaXYpOwo+ID4gPj4gIAkJCQkJLyoKPiA+ID4+ICAJCQkJCSAqIERESSBidWZmZXIg cHJvZ3JhbW1pbmcgdW5uZWNlc3NhcnkgZHVyaW5nIGRyaXZlci1sb2FkL3Jlc3VtZQo+ID4gPj4g IAkJCQkJICogYXMgaXQncyBhbHJlYWR5IGRvbmUgZHVyaW5nIG1vZGVzZXQgaW5pdGlhbGl6YXRp b24gdGhlbi4KPiA+ID4+QEAgLTYzNyw4ICs2MzcsNiBAQCBzdGF0aWMgdm9pZCBza2xfc2V0X3Bv d2VyX3dlbGwoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+ID4gPj4gIAkJCQkJ ICovCj4gPiA+PiAgCQkJCQlpZiAoIWRldl9wcml2LT5wb3dlcl9kb21haW5zLmluaXRpYWxpemlu ZykKPiA+ID4+ICAJCQkJCQlpbnRlbF9wcmVwYXJlX2RkaShkZXYpOwo+ID4gPj4tCQkJCX0gZWxz ZSB7Cj4gPiA+Pi0JCQkJCWdlbjlfZGlzYWJsZV9kYzUoZGV2X3ByaXYpOwo+ID4gPj4gIAkJCQl9 Cj4gPiA+PiAgCQkJfQo+ID4gPj4gIAkJCUk5MTVfV1JJVEUoSFNXX1BXUl9XRUxMX0RSSVZFUiwg dG1wIHwgcmVxX21hc2spOwo+ID4gPj5AQCAtNjU4LDcgKzY1Niw3IEBAIHN0YXRpYyB2b2lkIHNr bF9zZXRfcG93ZXJfd2VsbChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gPiA+ PiAgCQkJUE9TVElOR19SRUFEKEhTV19QV1JfV0VMTF9EUklWRVIpOwo+ID4gPj4gIAkJCURSTV9E RUJVR19LTVMoIkRpc2FibGluZyAlc1xuIiwgcG93ZXJfd2VsbC0+bmFtZSk7Cj4gPiA+Pi0JCQlp ZiAoKEdFTjlfRU5BQkxFX0RDNShkZXYpIHx8IFNLTF9FTkFCTEVfREM2KGRldikpICYmCj4gPiA+ PisJCQlpZiAoR0VOOV9FTkFCTEVfREM1KGRldikgJiYKPiA+ID4+ICAJCQkJcG93ZXJfd2VsbC0+ ZGF0YSA9PSBTS0xfRElTUF9QV18yKSB7Cj4gPiA+PiAgCQkJCWVudW0gY3NyX3N0YXRlIHN0YXRl Owo+ID4gPj4gIAkJCQkvKiBUT0RPOiB3YWl0IGZvciBhIGNvbXBsZXRpb24gZXZlbnQgb3IKPiA+ ID4+QEAgLTY3MSwxMCArNjY5LDcgQEAgc3RhdGljIHZvaWQgc2tsX3NldF9wb3dlcl93ZWxsKHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiA+ID4+ICAJCQkJCURSTV9FUlJPUigi Q1NSIGZpcm13YXJlIG5vdCByZWFkeSAoJWQpXG4iLAo+ID4gPj4gIAkJCQkJCQlzdGF0ZSk7Cj4g PiA+PiAgCQkJCWVsc2UKPiA+ID4+LQkJCQkJaWYgKFNLTF9FTkFCTEVfREM2KGRldikpCj4gPiA+ Pi0JCQkJCQlza2xfZW5hYmxlX2RjNihkZXZfcHJpdik7Cj4gPiA+Pi0JCQkJCWVsc2UKPiA+ID4+ LQkJCQkJCWdlbjlfZW5hYmxlX2RjNShkZXZfcHJpdik7Cj4gPiA+PisJCQkJCWdlbjlfZW5hYmxl X2RjNShkZXZfcHJpdik7Cj4gPiA+PiAgCQkJfQo+ID4gPj4gIAkJfQo+ID4gPj4gIAl9Cj4gPiA+ Pi0tIAo+ID4gPj4yLjAuMgo+ID4gPj4KPiA+ID4+X19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KPiA+ID4+SW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+ID4gPj5J bnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4gPiA+Pmh0dHA6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngKPiA+IAo+IAo+IC0tIAo+IERhbmll bCBWZXR0ZXIKPiBTb2Z0d2FyZSBFbmdpbmVlciwgSW50ZWwgQ29ycG9yYXRpb24KPiBodHRwOi8v YmxvZy5mZndsbC5jaAo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCj4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+IEludGVsLWdmeEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKPiBodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8v aW50ZWwtZ2Z4Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpo dHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==