From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [PATCH 2/2] drm/i915/glk: Enable cold boot for GLK DSI Date: Tue, 30 May 2017 10:03:59 +0300 Message-ID: <874lw2ltb4.fsf@intel.com> References: <1494336565-19185-1-git-send-email-madhav.chauhan@intel.com> <1494336565-19185-2-git-send-email-madhav.chauhan@intel.com> <20170509135816.GY12629@intel.com> <87inl2dsst.fsf@intel.com> <87wp96s6qk.fsf@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTPS id B917A89829 for ; Tue, 30 May 2017 07:00:36 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: "Chauhan, Madhav" , Ville =?utf-8?B?U3ly?= =?utf-8?B?asOkbMOk?= Cc: "Conselvan De Oliveira, Ander" , "intel-gfx@lists.freedesktop.org" , "Hiremath, Shashidhar" List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCAyNCBNYXkgMjAxNywgIkNoYXVoYW4sIE1hZGhhdiIgPG1hZGhhdi5jaGF1aGFuQGlu dGVsLmNvbT4gd3JvdGU6Cj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tCj4+IEZyb206IE5p a3VsYSwgSmFuaQo+PiBTZW50OiBXZWRuZXNkYXksIE1heSAyNCwgMjAxNyA3OjIyIFBNCj4+IFRv OiBDaGF1aGFuLCBNYWRoYXYgPG1hZGhhdi5jaGF1aGFuQGludGVsLmNvbT47IFZpbGxlIFN5cmrD pGzDpAo+PiA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+Cj4+IENjOiBpbnRlbC1nZnhA bGlzdHMuZnJlZWRlc2t0b3Aub3JnOyBDb25zZWx2YW4gRGUgT2xpdmVpcmEsIEFuZGVyCj4+IDxh bmRlci5jb25zZWx2YW4uZGUub2xpdmVpcmFAaW50ZWwuY29tPjsgSGlyZW1hdGgsIFNoYXNoaWRo YXIKPj4gPHNoYXNoaWRoYXIuaGlyZW1hdGhAaW50ZWwuY29tPgo+PiBTdWJqZWN0OiBSRTogW0lu dGVsLWdmeF0gW1BBVENIIDIvMl0gZHJtL2k5MTUvZ2xrOiBFbmFibGUgY29sZCBib290IGZvciBH TEsKPj4gRFNJCj4+IAo+PiBPbiBNb24sIDE1IE1heSAyMDE3LCAiQ2hhdWhhbiwgTWFkaGF2IiA8 bWFkaGF2LmNoYXVoYW5AaW50ZWwuY29tPgo+PiB3cm90ZToKPj4gPj4gLS0tLS1PcmlnaW5hbCBN ZXNzYWdlLS0tLS0KPj4gPj4gRnJvbTogTmlrdWxhLCBKYW5pCj4+ID4+IFNlbnQ6IE1vbmRheSwg TWF5IDE1LCAyMDE3IDk6MTkgUE0KPj4gPj4gVG86IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3ly amFsYUBsaW51eC5pbnRlbC5jb20+OyBDaGF1aGFuLCBNYWRoYXYKPj4gPj4gPG1hZGhhdi5jaGF1 aGFuQGludGVsLmNvbT4KPj4gPj4gQ2M6IGludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmc7 IENvbnNlbHZhbiBEZSBPbGl2ZWlyYSwgQW5kZXIKPj4gPj4gPGFuZGVyLmNvbnNlbHZhbi5kZS5v bGl2ZWlyYUBpbnRlbC5jb20+OyBIaXJlbWF0aCwgU2hhc2hpZGhhcgo+PiA+PiA8c2hhc2hpZGhh ci5oaXJlbWF0aEBpbnRlbC5jb20+Cj4+ID4+IFN1YmplY3Q6IFJlOiBbSW50ZWwtZ2Z4XSBbUEFU Q0ggMi8yXSBkcm0vaTkxNS9nbGs6IEVuYWJsZSBjb2xkIGJvb3QKPj4gPj4gZm9yIEdMSyBEU0kK Pj4gPj4KPj4gPj4gT24gVHVlLCAwOSBNYXkgMjAxNywgVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5z eXJqYWxhQGxpbnV4LmludGVsLmNvbT4gd3JvdGU6Cj4+ID4+ID4gT24gVHVlLCBNYXkgMDksIDIw MTcgYXQgMDY6NTk6MjVQTSArMDUzMCwgTWFkaGF2IENoYXVoYW4gd3JvdGU6Cj4+ID4+ID4+IEFz IHBlciBCU0VQQywgaWYgZGV2aWNlIHJlYWR5IGJpdCBpcyAnMCcgaW4gZW5hYmxlIElPIHNlcXVl bmNlCj4+ID4+ID4+IHRoZW4gaXRzIGEgY29sZCBib290L3Jlc2V0IHNjZW5hcmlvIGVnOiBTMy9T NCByZXN1bWUuIEluIHRoZXNlCj4+ID4+ID4+IGNvbmRpdGlvbnMgd2UgbmVlZCB0byBwcm9ncmFt IGNlcnRhaW4gcmVnaXN0ZXJzIGFuZCBwcmVwYXJlIHBvcnQKPj4gPj4gPj4gZnJvbSB0aGUgbWlk ZGxlIG9mIERTSSBlbmFibGUgc2VxdWVuY2Ugb3RoZXJ3aXNlIGZlYXR1cmUgbGlrZSBTMy9TNAo+ PiBkb2Vzbid0IHdvcmsuCj4+ID4+ID4KPj4gPj4gPiBDYW4ndCB3ZSBqdXN0IGFsd2F5cyBmb2xs b3cgdGhlICJjb2xkIGJvb3QiIHNlcXVlbmNlPyBMZXNzCj4+ID4+ID4gY29kZXBhdGhzIG1lYW5z IGxlc3MgYnVncy4KPj4gPj4KPj4gPj4gSSBhZ3JlZS4gTWFkaGF2Pwo+PiA+Cj4+ID4gQ29sZCBC b290ICBzY2VuYXJpbyByZXByZXNlbnRzICB3aGVuIERTSSBjb250cm9sbGVyL0lPIGlzIG5vdCBp bml0aWFsaXplZAo+PiBldmVuIG9uY2UgYmVmb3JlIHVzZSAgZWc6Cj4+ID4gMS4gQ29ubmVjdGVk IEhETUkgYm9vdCB3aXRoIERTSSBwYW5lbAo+PiA+IDIuIFMzL1M0Cj4+ID4gV2hpbGUgbm9ybWFs IHNjZW5hcmlvIGlzOgo+PiA+IDEuIEJvb3Qgd2l0aCBEU0kgcGFuZWwgd2l0aG91dCBIRE1JLiBE U0kgd2lsbCBiZSBpbml0aWFsaXplZCBvbmNlIGJ5Cj4+ID4gR09QL0JJT1MKPj4gPgo+PiA+IElm IHdlIHVzZSBjb2xkIGJvb3Qgc2VxdWVuY2UgYWx3YXlzLCBub3JtYWwgc2NlbmFyaW8gZG9lc27i gJl0IHdvcmsgYXMKPj4gPiBmZXcgcmVnaXN0ZXJzIGNhbuKAmXQgYmUgUHJvZ3JhbW1lZCBhcyBw ZXIgY29sZCBib290IHNjZW5hcmlvLiBMUF9XQUtFIGJpdAo+PiAoTUlQSV9DVFJMIFJFRykgaXMg b25lIG9mIHRoZSBleGFtcGxlLgo+PiA+Cj4+ID4gTW9yZW92ZXIsIGN1cnJlbnQgY2hhbmdlcyB3 b3JrcyB2ZXJ5IHdlbGwgZm9yIGFsbCBhYm92ZSBzY2VuYXJpb3MgOikuCj4+IAo+PiBXZWxsLCBu by4gVGhlcmUncyBhIHZlcnkgbGltaXRlZCBzZXQgb2YgcmVnaXN0ZXJzIHRoYXQgY2FuIGFuZCBt dXN0IG9ubHkgYmUKPj4gcHJvZ3JhbW1lZCBpbiB0aGUgImNvbGQgYm9vdCIgY2FzZS4gVGhpcyBw YXRjaCBtb3ZlcyBhbGwgb2YKPj4gaW50ZWxfZHNpX3ByZXBhcmUoKSBmb3IgZ2xrIHRvIG9ubHkg YmUgZG9uZSBpbiB0aGUgY29sZCBib290IGNhc2UsIGJ1dCB0aGVyZSdzIGEKPj4gbG9hZCBvZiBy ZWdpc3RlcnMgdGhhdCBhcmVuJ3QgcmVzdHJpY3RlZCBpbiB0aGlzIHdheSwgYW5kIG5lZWQgdG8g YmUKPj4gcHJvZ3JhbW1lZCBvbiBlbmFibGUgcmVnYXJkbGVzcyBvZiBkZXZpY2UgcmVhZHkuIFNl ZW1zIHRvIG1lIHRoZSBjaGFuZ2UKPj4gaGVyZSBpcyB0b28gY29hcnNlIGdyYWluZWQuCj4KPiBB Y3R1YWxseSB3aGVuIHdlIGRvIEdMS19NSVBJSU9fRU5BQkxFIGluIGRldmljZV9yZWFkeSBhbGwg dGhlCj4gcmVnaXN0ZXJzIGFyZSByZXN0b3JlZCBiYWNrIFdoZW4gRFNJIGlzIGVuYWJsZWQgYWZ0 ZXIgZGlzYWJsZSB0aHJvdWdoCj4gc29mdHdhcmUgKklGKiBwb3dlciBpcyBub3QgbG9zdChub3Jt YWwgc2NlbmFyaW8pIHNvIHdlIGNhbiBvcHQgb3V0IG5vdAo+IHRvIHByb2dyYW0gZHVyaW5nIG5v cm1hbCBzY2VuYXJpby4gRm91bmQgdGhpcyBpbiBteSB0ZXN0aW5nLiAgV2lsbAo+IGNvbmZpcm0g dGhpcyB3aXRoIEhXIHRlYW0uCj4KPiBXaGlsZSBmb3IgY29sZCBib290IHNjZW5hcmlvIHdoZXJl IHBvd2VyIGlzIGxvc3QgZHVyaW5nIFMzL1M0LCB3ZSBuZWVkCj4gdG8gcHJvZ3JhbSBhbGwgdGhl c2UgcmVnaXN0ZXJzIEFuZCB1bmZvcnR1bmF0ZWx5IHdoZW4gd2UgcHJvZ3JhbQo+ICpPTkxZKiBy ZWdpc3RlciBtZW50aW9uZWQgaW4gQlNQRUMgaW4gZGV2aWNlX3JlYWR5IERTSSBpcyBub3QgdXAg YW5kCj4gTmVlZCB0byBwcm9ncmFtIGFsbCByZWdpc3RlcnMgaGVyZSBpdHNlbGYgdG8gbWFrZSBp dCB3b3JrLgoKQnV0IHRoaXMgYXNzdW1lcyB0aGF0IG9uIGVuYWJsZSwgd2hlbiBwb3dlciBoYXMg bm90IGJlZW4gbG9zdCwgYWxsIHRoZQpyZWdpc3RlcnMgY29udGFpbiB0aGUgY29ycmVjdCBpbmZv cm1hdGlvbiBhbHJlYWR5LiBXZSBjYW4ndCByZWx5IG9uCnRoYXQuCgpCUiwKSmFuaS4KCgoKPgo+ PiAKPj4gQlIsCj4+IEphbmkuCj4+IAo+PiA+Cj4+ID4+Cj4+ID4+IEJSLAo+PiA+PiBKYW5pLgo+ PiA+Pgo+PiA+Pgo+PiA+PiA+Cj4+ID4+ID4+Cj4+ID4+ID4+IFNpZ25lZC1vZmYtYnk6IE1hZGhh diBDaGF1aGFuIDxtYWRoYXYuY2hhdWhhbkBpbnRlbC5jb20+Cj4+ID4+ID4+IC0tLQo+PiA+PiA+ PiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHNpLmMgfCA3OQo+PiA+PiA+PiArKysrKysr KysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tCj4+ID4+ID4+ICAxIGZpbGUgY2hhbmdl ZCwgNDggaW5zZXJ0aW9ucygrKSwgMzEgZGVsZXRpb25zKC0pCj4+ID4+ID4+Cj4+ID4+ID4+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kc2kuYwo+PiA+PiA+PiBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RzaS5jCj4+ID4+ID4+IGluZGV4IGZjMGVmNDkuLjZi Njg4NjQgMTAwNjQ0Cj4+ID4+ID4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rz aS5jCj4+ID4+ID4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RzaS5jCj4+ID4+ ID4+IEBAIC0zNDYsMTIgKzM0NiwxNyBAQCBzdGF0aWMgYm9vbCBpbnRlbF9kc2lfY29tcHV0ZV9j b25maWcoc3RydWN0Cj4+ID4+IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4+ID4+ID4+ICAJcmV0 dXJuIHRydWU7Cj4+ID4+ID4+ICB9Cj4+ID4+ID4+Cj4+ID4+ID4+IC1zdGF0aWMgdm9pZCBnbGtf ZHNpX2RldmljZV9yZWFkeShzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlcikKPj4gPj4gPj4g K3N0YXRpYyB2b2lkIGludGVsX2RzaV9wcmVwYXJlKHN0cnVjdCBpbnRlbF9lbmNvZGVyICppbnRl bF9lbmNvZGVyLAo+PiA+PiA+PiArCQkJICAgICAgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBp cGVfY29uZmlnKTsKPj4gPj4gPj4gKwo+PiA+PiA+PiArc3RhdGljIHZvaWQgZ2xrX2RzaV9kZXZp Y2VfcmVhZHkoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4+ID4+ID4+ICsJCQkJIHN0 cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBlX2NvbmZpZykKPj4gPj4gPj4gIHsKPj4gPj4gPj4g IAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGVuY29kZXItPmJh c2UuZGV2KTsKPj4gPj4gPj4gIAlzdHJ1Y3QgaW50ZWxfZHNpICppbnRlbF9kc2kgPSBlbmNfdG9f aW50ZWxfZHNpKCZlbmNvZGVyLT5iYXNlKTsKPj4gPj4gPj4gIAllbnVtIHBvcnQgcG9ydDsKPj4g Pj4gPj4gIAl1MzIgdG1wLCB2YWw7Cj4+ID4+ID4+ICsJYm9vbCBjb2xkX2Jvb3QgPSBmYWxzZTsK Pj4gPj4gPj4KPj4gPj4gPj4gIAkvKiBTZXQgdGhlIE1JUEkgbW9kZQo+PiA+PiA+PiAgCSAqIElm IE1JUElfTW9kZSBpcyBvZmYsIHRoZW4gd3JpdGluZyB0byBMUF9XYWtlIGJpdCBpcyBub3QgcmVm bGVjdGluZy4KPj4gPj4gPj4gQEAgLTM3MCw3ICszNzUsMTAgQEAgc3RhdGljIHZvaWQgZ2xrX2Rz aV9kZXZpY2VfcmVhZHkoc3RydWN0Cj4+ID4+IGludGVsX2VuY29kZXIgKmVuY29kZXIpCj4+ID4+ ID4+ICAJLyogUHJvZ3JhbSBMUCBXYWtlICovCj4+ID4+ID4+ICAJZm9yX2VhY2hfZHNpX3BvcnQo cG9ydCwgaW50ZWxfZHNpLT5wb3J0cykgewo+PiA+PiA+PiAgCQl0bXAgPSBJOTE1X1JFQUQoTUlQ SV9DVFJMKHBvcnQpKTsKPj4gPj4gPj4gLQkJdG1wIHw9IEdMS19MUF9XQUtFOwo+PiA+PiA+PiAr CQlpZiAoIShJOTE1X1JFQUQoTUlQSV9ERVZJQ0VfUkVBRFkocG9ydCkpICYKPj4gPj4gREVWSUNF X1JFQURZKSkKPj4gPj4gPj4gKwkJCXRtcCAmPSB+R0xLX0xQX1dBS0U7Cj4+ID4+ID4+ICsJCWVs c2UKPj4gPj4gPj4gKwkJCXRtcCB8PSBHTEtfTFBfV0FLRTsKPj4gPj4gPj4gIAkJSTkxNV9XUklU RShNSVBJX0NUUkwocG9ydCksIHRtcCk7Cj4+ID4+ID4+ICAJfQo+PiA+PiA+Pgo+PiA+PiA+PiBA QCAtMzgyLDYgKzM5MCwxNSBAQCBzdGF0aWMgdm9pZCBnbGtfZHNpX2RldmljZV9yZWFkeShzdHJ1 Y3QKPj4gPj4gaW50ZWxfZW5jb2RlciAqZW5jb2RlcikKPj4gPj4gPj4gIAkJCURSTV9FUlJPUigi TUlQSU8gcG9ydCBpcyBwb3dlcmdhdGVkXG4iKTsKPj4gPj4gPj4gIAl9Cj4+ID4+ID4+Cj4+ID4+ ID4+ICsJLyogQ2hlY2sgaWYgY29sZCBib290IHNjZW5hcmlvICovCj4+ID4+ID4+ICsJZm9yX2Vh Y2hfZHNpX3BvcnQocG9ydCwgaW50ZWxfZHNpLT5wb3J0cykgewo+PiA+PiA+PiArCQljb2xkX2Jv b3QgfD0gIShJOTE1X1JFQUQoTUlQSV9ERVZJQ0VfUkVBRFkocG9ydCkpICYKPj4gPj4gPj4gKwkJ CQkJCQlERVZJQ0VfUkVBRFkpOwo+PiA+PiA+PiArCX0KPj4gPj4gPj4gKwo+PiA+PiA+PiArCWlm IChjb2xkX2Jvb3QpCj4+ID4+ID4+ICsJCWludGVsX2RzaV9wcmVwYXJlKGVuY29kZXIsIHBpcGVf Y29uZmlnKTsKPj4gPj4gPj4gKwo+PiA+PiA+PiAgCS8qIFdhaXQgZm9yIE1JUEkgUEhZIHN0YXR1 cyBiaXQgdG8gc2V0ICovCj4+ID4+ID4+ICAJZm9yX2VhY2hfZHNpX3BvcnQocG9ydCwgaW50ZWxf ZHNpLT5wb3J0cykgewo+PiA+PiA+PiAgCQlpZiAoaW50ZWxfd2FpdF9mb3JfcmVnaXN0ZXIoZGV2 X3ByaXYsCj4+ID4+ID4+IEBAIC00MDIsMzQgKzQxOSwzNCBAQCBzdGF0aWMgdm9pZCBnbGtfZHNp X2RldmljZV9yZWFkeShzdHJ1Y3QKPj4gPj4gaW50ZWxfZW5jb2RlciAqZW5jb2RlcikKPj4gPj4g Pj4gIAkJCXZhbCB8PSBERVZJQ0VfUkVBRFk7Cj4+ID4+ID4+ICAJCQlJOTE1X1dSSVRFKE1JUElf REVWSUNFX1JFQURZKHBvcnQpLCB2YWwpOwo+PiA+PiA+PiAgCQkJdXNsZWVwX3JhbmdlKDEwLCAx NSk7Cj4+ID4+ID4+IC0JCX0KPj4gPj4gPj4gLQo+PiA+PiA+PiAtCQkvKiBFbnRlciBVTFBTICov Cj4+ID4+ID4+IC0JCXZhbCA9IEk5MTVfUkVBRChNSVBJX0RFVklDRV9SRUFEWShwb3J0KSk7Cj4+ ID4+ID4+IC0JCXZhbCAmPSB+VUxQU19TVEFURV9NQVNLOwo+PiA+PiA+PiAtCQl2YWwgfD0gKFVM UFNfU1RBVEVfRU5URVIgfCBERVZJQ0VfUkVBRFkpOwo+PiA+PiA+PiAtCQlJOTE1X1dSSVRFKE1J UElfREVWSUNFX1JFQURZKHBvcnQpLCB2YWwpOwo+PiA+PiA+PiArCQl9IGVsc2Ugewo+PiA+PiA+ PiArCQkJLyogRW50ZXIgVUxQUyAqLwo+PiA+PiA+PiArCQkJdmFsID0gSTkxNV9SRUFEKE1JUElf REVWSUNFX1JFQURZKHBvcnQpKTsKPj4gPj4gPj4gKwkJCXZhbCAmPSB+VUxQU19TVEFURV9NQVNL Owo+PiA+PiA+PiArCQkJdmFsIHw9IChVTFBTX1NUQVRFX0VOVEVSIHwgREVWSUNFX1JFQURZKTsK Pj4gPj4gPj4gKwkJCUk5MTVfV1JJVEUoTUlQSV9ERVZJQ0VfUkVBRFkocG9ydCksIHZhbCk7Cj4+ ID4+ID4+Cj4+ID4+ID4+IC0JCS8qIFdhaXQgZm9yIFVMUFMgYWN0aXZlICovCj4+ID4+ID4+IC0J CWlmIChpbnRlbF93YWl0X2Zvcl9yZWdpc3RlcihkZXZfcHJpdiwKPj4gPj4gPj4gKwkJCS8qIFdh aXQgZm9yIFVMUFMgYWN0aXZlICovCj4+ID4+ID4+ICsJCQlpZiAoaW50ZWxfd2FpdF9mb3JfcmVn aXN0ZXIoZGV2X3ByaXYsCj4+ID4+ID4+ICAJCQkJTUlQSV9DVFJMKHBvcnQpLCBHTEtfVUxQU19O T1RfQUNUSVZFLCAwLAo+PiA+PiAyMCkpCj4+ID4+ID4+IC0JCQlEUk1fRVJST1IoIlVMUFMgbm90 IGFjdGl2ZVxuIik7Cj4+ID4+ID4+ICsJCQkJRFJNX0VSUk9SKCJVTFBTIG5vdCBhY3RpdmVcbiIp Owo+PiA+PiA+Pgo+PiA+PiA+PiAtCQkvKiBFeGl0IFVMUFMgKi8KPj4gPj4gPj4gLQkJdmFsID0g STkxNV9SRUFEKE1JUElfREVWSUNFX1JFQURZKHBvcnQpKTsKPj4gPj4gPj4gLQkJdmFsICY9IH5V TFBTX1NUQVRFX01BU0s7Cj4+ID4+ID4+IC0JCXZhbCB8PSAoVUxQU19TVEFURV9FWElUIHwgREVW SUNFX1JFQURZKTsKPj4gPj4gPj4gLQkJSTkxNV9XUklURShNSVBJX0RFVklDRV9SRUFEWShwb3J0 KSwgdmFsKTsKPj4gPj4gPj4gKwkJCS8qIEV4aXQgVUxQUyAqLwo+PiA+PiA+PiArCQkJdmFsID0g STkxNV9SRUFEKE1JUElfREVWSUNFX1JFQURZKHBvcnQpKTsKPj4gPj4gPj4gKwkJCXZhbCAmPSB+ VUxQU19TVEFURV9NQVNLOwo+PiA+PiA+PiArCQkJdmFsIHw9IChVTFBTX1NUQVRFX0VYSVQgfCBE RVZJQ0VfUkVBRFkpOwo+PiA+PiA+PiArCQkJSTkxNV9XUklURShNSVBJX0RFVklDRV9SRUFEWShw b3J0KSwgdmFsKTsKPj4gPj4gPj4KPj4gPj4gPj4gLQkJLyogRW50ZXIgTm9ybWFsIE1vZGUgKi8K Pj4gPj4gPj4gLQkJdmFsID0gSTkxNV9SRUFEKE1JUElfREVWSUNFX1JFQURZKHBvcnQpKTsKPj4g Pj4gPj4gLQkJdmFsICY9IH5VTFBTX1NUQVRFX01BU0s7Cj4+ID4+ID4+IC0JCXZhbCB8PSAoVUxQ U19TVEFURV9OT1JNQUxfT1BFUkFUSU9OIHwgREVWSUNFX1JFQURZKTsKPj4gPj4gPj4gLQkJSTkx NV9XUklURShNSVBJX0RFVklDRV9SRUFEWShwb3J0KSwgdmFsKTsKPj4gPj4gPj4gKwkJCS8qIEVu dGVyIE5vcm1hbCBNb2RlICovCj4+ID4+ID4+ICsJCQl2YWwgPSBJOTE1X1JFQUQoTUlQSV9ERVZJ Q0VfUkVBRFkocG9ydCkpOwo+PiA+PiA+PiArCQkJdmFsICY9IH5VTFBTX1NUQVRFX01BU0s7Cj4+ ID4+ID4+ICsJCQl2YWwgfD0gKFVMUFNfU1RBVEVfTk9STUFMX09QRVJBVElPTiB8Cj4+ID4+IERF VklDRV9SRUFEWSk7Cj4+ID4+ID4+ICsJCQlJOTE1X1dSSVRFKE1JUElfREVWSUNFX1JFQURZKHBv cnQpLCB2YWwpOwo+PiA+PiA+Pgo+PiA+PiA+PiAtCQl0bXAgPSBJOTE1X1JFQUQoTUlQSV9DVFJM KHBvcnQpKTsKPj4gPj4gPj4gLQkJdG1wICY9IH5HTEtfTFBfV0FLRTsKPj4gPj4gPj4gLQkJSTkx NV9XUklURShNSVBJX0NUUkwocG9ydCksIHRtcCk7Cj4+ID4+ID4+ICsJCQl0bXAgPSBJOTE1X1JF QUQoTUlQSV9DVFJMKHBvcnQpKTsKPj4gPj4gPj4gKwkJCXRtcCAmPSB+R0xLX0xQX1dBS0U7Cj4+ ID4+ID4+ICsJCQlJOTE1X1dSSVRFKE1JUElfQ1RSTChwb3J0KSwgdG1wKTsKPj4gPj4gPj4gKwkJ fQo+PiA+PiA+PiAgCX0KPj4gPj4gPj4KPj4gPj4gPj4gIAkvKiBXYWl0IGZvciBTdG9wIHN0YXRl ICovCj4+ID4+ID4+IEBAIC01MTUsNyArNTMyLDggQEAgc3RhdGljIHZvaWQgdmx2X2RzaV9kZXZp Y2VfcmVhZHkoc3RydWN0Cj4+ID4+IGludGVsX2VuY29kZXIgKmVuY29kZXIpCj4+ID4+ID4+ICAJ fQo+PiA+PiA+PiAgfQo+PiA+PiA+Pgo+PiA+PiA+PiAtc3RhdGljIHZvaWQgaW50ZWxfZHNpX2Rl dmljZV9yZWFkeShzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlcikKPj4gPj4gPj4gK3N0YXRp YyB2b2lkIGludGVsX2RzaV9kZXZpY2VfcmVhZHkoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29k ZXIsCj4+ID4+ID4+ICsJCQkJICAgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVfY29uZmln KQo+PiA+PiA+PiAgewo+PiA+PiA+PiAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp diA9IHRvX2k5MTUoZW5jb2Rlci0+YmFzZS5kZXYpOwo+PiA+PiA+Pgo+PiA+PiA+PiBAQCAtNTI0 LDcgKzU0Miw3IEBAIHN0YXRpYyB2b2lkIGludGVsX2RzaV9kZXZpY2VfcmVhZHkoc3RydWN0Cj4+ ID4+IGludGVsX2VuY29kZXIgKmVuY29kZXIpCj4+ID4+ID4+ICAJZWxzZSBpZiAoSVNfQlJPWFRP TihkZXZfcHJpdikpCj4+ID4+ID4+ICAJCWJ4dF9kc2lfZGV2aWNlX3JlYWR5KGVuY29kZXIpOwo+ PiA+PiA+PiAgCWVsc2UgaWYgKElTX0dFTUlOSUxBS0UoZGV2X3ByaXYpKQo+PiA+PiA+PiAtCQln bGtfZHNpX2RldmljZV9yZWFkeShlbmNvZGVyKTsKPj4gPj4gPj4gKwkJZ2xrX2RzaV9kZXZpY2Vf cmVhZHkoZW5jb2RlciwgcGlwZV9jb25maWcpOwo+PiA+PiA+PiAgfQo+PiA+PiA+Pgo+PiA+PiA+ PiAgc3RhdGljIHZvaWQgZ2xrX2RzaV9lbnRlcl9sb3dfcG93ZXJfbW9kZShzdHJ1Y3QgaW50ZWxf ZW5jb2Rlcgo+PiA+PiA+PiAqZW5jb2RlcikgQEAgLTcxMCw4ICs3MjgsNiBAQCBzdGF0aWMgdm9p ZAo+PiA+PiA+PiBpbnRlbF9kc2lfcG9ydF9kaXNhYmxlKHN0cnVjdAo+PiA+PiBpbnRlbF9lbmNv ZGVyICplbmNvZGVyKQo+PiA+PiA+PiAgCX0KPj4gPj4gPj4gIH0KPj4gPj4gPj4KPj4gPj4gPj4g LXN0YXRpYyB2b2lkIGludGVsX2RzaV9wcmVwYXJlKHN0cnVjdCBpbnRlbF9lbmNvZGVyICppbnRl bF9lbmNvZGVyLAo+PiA+PiA+PiAtCQkJICAgICAgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBp cGVfY29uZmlnKTsKPj4gPj4gPj4gIHN0YXRpYyB2b2lkIGludGVsX2RzaV91bnByZXBhcmUoc3Ry dWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIpOwo+PiA+PiA+Pgo+PiA+PiA+PiAgc3RhdGljIHZv aWQgaW50ZWxfZHNpX21zbGVlcChzdHJ1Y3QgaW50ZWxfZHNpICppbnRlbF9kc2ksIGludAo+PiA+ PiA+PiBtc2VjKSBAQCAtODAwLDcgKzgxNiw4IEBAIHN0YXRpYyB2b2lkIGludGVsX2RzaV9wcmVf ZW5hYmxlKHN0cnVjdAo+PiA+PiBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+PiA+PiA+PiAgCQlJ OTE1X1dSSVRFKERTUENMS19HQVRFX0QsIHZhbCk7Cj4+ID4+ID4+ICAJfQo+PiA+PiA+Pgo+PiA+ PiA+PiAtCWludGVsX2RzaV9wcmVwYXJlKGVuY29kZXIsIHBpcGVfY29uZmlnKTsKPj4gPj4gPj4g KwlpZiAoIUlTX0dFTUlOSUxBS0UoZGV2X3ByaXYpKQo+PiA+PiA+PiArCQlpbnRlbF9kc2lfcHJl cGFyZShlbmNvZGVyLCBwaXBlX2NvbmZpZyk7Cj4+ID4+ID4+Cj4+ID4+ID4+ICAJLyogUG93ZXIg b24sIHRyeSBib3RoIENSQyBwbWljIGdwaW8gYW5kIFZCVCAqLwo+PiA+PiA+PiAgCWlmIChpbnRl bF9kc2ktPmdwaW9fcGFuZWwpCj4+ID4+ID4+IEBAIC04MTIsNyArODI5LDcgQEAgc3RhdGljIHZv aWQgaW50ZWxfZHNpX3ByZV9lbmFibGUoc3RydWN0Cj4+ID4+IGludGVsX2VuY29kZXIgKmVuY29k ZXIsCj4+ID4+ID4+ICAJaW50ZWxfZHNpX3ZidF9leGVjX3NlcXVlbmNlKGludGVsX2RzaSwgTUlQ SV9TRVFfREVBU1NFUlRfUkVTRVQpOwo+PiA+PiA+Pgo+PiA+PiA+PiAgCS8qIFB1dCBkZXZpY2Ug aW4gcmVhZHkgc3RhdGUgKExQLTExKSAqLwo+PiA+PiA+PiAtCWludGVsX2RzaV9kZXZpY2VfcmVh ZHkoZW5jb2Rlcik7Cj4+ID4+ID4+ICsJaW50ZWxfZHNpX2RldmljZV9yZWFkeShlbmNvZGVyLCBw aXBlX2NvbmZpZyk7Cj4+ID4+ID4+Cj4+ID4+ID4+ICAJLyogU2VuZCBpbml0aWFsaXphdGlvbiBj b21tYW5kcyBpbiBMUCBtb2RlICovCj4+ID4+ID4+ICAJaW50ZWxfZHNpX3ZidF9leGVjX3NlcXVl bmNlKGludGVsX2RzaSwgTUlQSV9TRVFfSU5JVF9PVFApOwo+PiA+PiA+PiAtLQo+PiA+PiA+PiAx LjkuMQo+PiA+PiA+Pgo+PiA+PiA+PiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwo+PiA+PiA+PiBJbnRlbC1nZnggbWFpbGluZyBsaXN0Cj4+ID4+ID4+IElu dGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPj4gPj4gPj4gaHR0cHM6Ly9saXN0cy5mcmVl ZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngKPj4gPj4KPj4gPj4gLS0KPj4g Pj4gSmFuaSBOaWt1bGEsIEludGVsIE9wZW4gU291cmNlIFRlY2hub2xvZ3kgQ2VudGVyCj4+IAo+ PiAtLQo+PiBKYW5pIE5pa3VsYSwgSW50ZWwgT3BlbiBTb3VyY2UgVGVjaG5vbG9neSBDZW50ZXIK Ci0tIApKYW5pIE5pa3VsYSwgSW50ZWwgT3BlbiBTb3VyY2UgVGVjaG5vbG9neSBDZW50ZXIKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1h aWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==