From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [PATCH v3] drm/i915/bxt: eDP Panel Power sequencing Date: Thu, 07 May 2015 10:37:59 +0300 Message-ID: <878ud07s88.fsf@intel.com> References: <87vbg5d9vb.fsf@intel.com> <1430983909-15422-1-git-send-email-vandana.kannan@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 1FE056E7B0 for ; Thu, 7 May 2015 00:35:57 -0700 (PDT) In-Reply-To: <1430983909-15422-1-git-send-email-vandana.kannan@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Vandana Kannan , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gVGh1LCAwNyBNYXkgMjAxNSwgVmFuZGFuYSBLYW5uYW4gPHZhbmRhbmEua2FubmFuQGludGVs LmNvbT4gd3JvdGU6Cj4gQ2hhbmdlcyBmb3IgQlhUIC0gYWRkZWQgYSBJU19CUk9YVE9OIGNoZWNr IHRvIHVzZSB0aGUgbWFjcm8gcmVsYXRlZCB0byBQUFMKPiByZWdpc3RlcnMgZm9yIEJYVC4KPiBC WFQgZG9lcyBub3QgaGF2ZSBQUF9ESVYgcmVnaXN0ZXIuIE1ha2luZyBjaGFuZ2VzIHRvIGhhbmRs ZSB0aGlzLgo+IFNlY29uZCBzZXQgb2YgUFBTIHJlZ2lzdGVycyBoYXZlIGJlZW4gZGVmaW5lZCBi dXQgd2lsbCBiZSB1c2VkIHdoZW4gVkJUCj4gcHJvdmlkZXMgYSBzZWxlY3Rpb24gYmV0d2VlbiB0 aGUgMiBzZXRzIG9mIHJlZ2lzdGVycy4KPgo+IHYyOgo+IFtKYW5pXSBBZGRlZCAybmQgc2V0IG9m IFBQUyByZWdpc3RlcnMgYW5kIHRoZSBtYWNybwo+IEphbmkncyByZXZpZXcgY29tbWVudHMKPiAJ LSByZW1vdmUgcmVmZXJlbmNlIGluIGk5MTVfc3VzcGVuZC5jCj4gCS0gVXNlIEJYVCBQUCBtYWNy bwo+IFNxdWFzaGluZyBhbGwgUFBTIHJlbGF0ZWQgcGF0Y2hlcyBpbnRvIG9uZS4KPgo+IHYzOiBK YW5pJ3MgcmV2aWV3IGNvbW1lbnRzIGFkZHJlc3NlZAo+IAktIFVzZSBwcF9jdGwgaW5zdGVhZCBv ZiBwcAo+IAktIGlyb25sYWtlX2dldF9wcF9jb250cm9sKCkgaXMgbm90IHJlcXVpcmVkIGZvciBC WFQKPiAJLSBjb3JyZWN0IHRoZSB1c2Ugb2YgJiYgaW4gdGhlIHByaW50IHN0YXRlbWVudAo+IAkt IGRyb3AgdGhlIHNoaWZ0IGluIHRoZSBwcmludCBzdGF0ZW1lbnQKPgo+IFNpZ25lZC1vZmYtYnk6 IFZhbmRhbmEgS2FubmFuIDx2YW5kYW5hLmthbm5hbkBpbnRlbC5jb20+Cj4gU2lnbmVkLW9mZi1i eTogQS5TdW5pbCBLYW1hdGggPHN1bmlsLmthbWF0aEBpbnRlbC5jb20+Cj4gLS0tCj4gIGRyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmggfCAxMyArKysrKysrKwo+ICBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kcC5jIHwgNzQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKyst LS0tLS0tLS0KPiAgMiBmaWxlcyBjaGFuZ2VkLCA3MiBpbnNlcnRpb25zKCspLCAxNSBkZWxldGlv bnMoLSkKPgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaAo+IGluZGV4IDFiMzEyMzguLjc3N2M1MWEg MTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaAo+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmgKPiBAQCAtNjMxNSw2ICs2MzE1LDggQEAgZW51 bSBza2xfZGlzcF9wb3dlcl93ZWxscyB7Cj4gICNkZWZpbmUgUENIX1BQX0NPTlRST0wJCTB4Yzcy MDQKPiAgI2RlZmluZSAgUEFORUxfVU5MT0NLX1JFR1MJKDB4YWJjZCA8PCAxNikKPiAgI2RlZmlu ZSAgUEFORUxfVU5MT0NLX01BU0sJKDB4ZmZmZiA8PCAxNikKPiArI2RlZmluZSAgQlhUX1BPV0VS X0NZQ0xFX0RFTEFZX01BU0sJKDB4MWYwKQo+ICsjZGVmaW5lICBCWFRfUE9XRVJfQ1lDTEVfREVM QVlfU0hJRlQJNAo+ICAjZGVmaW5lICBFRFBfRk9SQ0VfVkRECQkoMSA8PCAzKQo+ICAjZGVmaW5l ICBFRFBfQkxDX0VOQUJMRQkJKDEgPDwgMikKPiAgI2RlZmluZSAgUEFORUxfUE9XRVJfUkVTRVQJ KDEgPDwgMSkKPiBAQCAtNjM0Myw2ICs2MzQ1LDE3IEBAIGVudW0gc2tsX2Rpc3BfcG93ZXJfd2Vs bHMgewo+ICAjZGVmaW5lICBQQU5FTF9QT1dFUl9DWUNMRV9ERUxBWV9NQVNLCSgweDFmKQo+ICAj ZGVmaW5lICBQQU5FTF9QT1dFUl9DWUNMRV9ERUxBWV9TSElGVAkwCj4gIAo+ICsvKiBCWFQgUFBT IGNoYW5nZXMgLSAybmQgc2V0IG9mIFBQUyByZWdpc3RlcnMgKi8KPiArI2RlZmluZSBfQlhUX1BQ X1NUQVRVUzIJCTB4YzczMDAKPiArI2RlZmluZSBfQlhUX1BQX0NPTlRST0wyIAkweGM3MzA0Cj4g KyNkZWZpbmUgX0JYVF9QUF9PTl9ERUxBWVMyCTB4YzczMDgKPiArI2RlZmluZSBfQlhUX1BQX09G Rl9ERUxBWVMyCTB4YzczMGMKPiArCj4gKyNkZWZpbmUgQlhUX1BQX1NUQVRVUyhuKQkoKCFuKSA/ IFBDSF9QUF9TVEFUVVMgOiBfQlhUX1BQX1NUQVRVUzIpCj4gKyNkZWZpbmUgQlhUX1BQX0NPTlRS T0wobikJKCghbikgPyBQQ0hfUFBfQ09OVFJPTCA6IF9CWFRfUFBfQ09OVFJPTDIpCj4gKyNkZWZp bmUgQlhUX1BQX09OX0RFTEFZUyhuKQkoKCFuKSA/IFBDSF9QUF9PTl9ERUxBWVMgOiBfQlhUX1BQ X09OX0RFTEFZUzIpCj4gKyNkZWZpbmUgQlhUX1BQX09GRl9ERUxBWVMobikJKCghbikgPyBQQ0hf UFBfT0ZGX0RFTEFZUyA6IF9CWFRfUFBfT0ZGX0RFTEFZUzIpCj4gKwo+ICAjZGVmaW5lIFBDSF9E UF9CCQkweGU0MTAwCj4gICNkZWZpbmUgUENIX0RQQl9BVVhfQ0hfQ1RMCTB4ZTQxMTAKPiAgI2Rl ZmluZSBQQ0hfRFBCX0FVWF9DSF9EQVRBMQkweGU0MTE0Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2RwLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5j Cj4gaW5kZXggYmFjZGVjNS4uMzA4MjIyNCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9kcC5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYwo+ IEBAIC01NTksNyArNTU5LDkgQEAgc3RhdGljIHUzMiBfcHBfY3RybF9yZWcoc3RydWN0IGludGVs X2RwICppbnRlbF9kcCkKPiAgewo+ICAJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGludGVsX2Rw X3RvX2RldihpbnRlbF9kcCk7Cj4gIAo+IC0JaWYgKEhBU19QQ0hfU1BMSVQoZGV2KSkKPiArCWlm IChJU19CUk9YVE9OKGRldikpCj4gKwkJcmV0dXJuIEJYVF9QUF9DT05UUk9MKDApOwo+ICsJZWxz ZSBpZiAoSEFTX1BDSF9TUExJVChkZXYpKQo+ICAJCXJldHVybiBQQ0hfUFBfQ09OVFJPTDsKPiAg CWVsc2UKPiAgCQlyZXR1cm4gVkxWX1BJUEVfUFBfQ09OVFJPTCh2bHZfcG93ZXJfc2VxdWVuY2Vy X3BpcGUoaW50ZWxfZHApKTsKPiBAQCAtNTY5LDcgKzU3MSw5IEBAIHN0YXRpYyB1MzIgX3BwX3N0 YXRfcmVnKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHApCj4gIHsKPiAgCXN0cnVjdCBkcm1fZGV2 aWNlICpkZXYgPSBpbnRlbF9kcF90b19kZXYoaW50ZWxfZHApOwo+ICAKPiAtCWlmIChIQVNfUENI X1NQTElUKGRldikpCj4gKwlpZiAoSVNfQlJPWFRPTihkZXYpKQo+ICsJCXJldHVybiBCWFRfUFBf U1RBVFVTKDApOwo+ICsJZWxzZSBpZiAoSEFTX1BDSF9TUExJVChkZXYpKQo+ICAJCXJldHVybiBQ Q0hfUFBfU1RBVFVTOwo+ICAJZWxzZQo+ICAJCXJldHVybiBWTFZfUElQRV9QUF9TVEFUVVModmx2 X3Bvd2VyX3NlcXVlbmNlcl9waXBlKGludGVsX2RwKSk7Cj4gQEAgLTQ5NjksOCArNDk3Myw4IEBA IGludGVsX2RwX2luaXRfcGFuZWxfcG93ZXJfc2VxdWVuY2VyKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsCj4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2 YXRlOwo+ICAJc3RydWN0IGVkcF9wb3dlcl9zZXEgY3VyLCB2YnQsIHNwZWMsCj4gIAkJKmZpbmFs ID0gJmludGVsX2RwLT5wcHNfZGVsYXlzOwo+IC0JdTMyIHBwX29uLCBwcF9vZmYsIHBwX2Rpdiwg cHA7Cj4gLQlpbnQgcHBfY3RybF9yZWcsIHBwX29uX3JlZywgcHBfb2ZmX3JlZywgcHBfZGl2X3Jl ZzsKPiArCXUzMiBwcF9vbiwgcHBfb2ZmLCBwcF9kaXYgPSAwLCBwcF9jdGwgPSAwOwo+ICsJaW50 IHBwX2N0cmxfcmVnLCBwcF9vbl9yZWcsIHBwX29mZl9yZWcsIHBwX2Rpdl9yZWcgPSAwOwo+ICAK PiAgCWxvY2tkZXBfYXNzZXJ0X2hlbGQoJmRldl9wcml2LT5wcHNfbXV0ZXgpOwo+ICAKPiBAQCAt NDk3OCw3ICs0OTgyLDE2IEBAIGludGVsX2RwX2luaXRfcGFuZWxfcG93ZXJfc2VxdWVuY2VyKHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gIAlpZiAoZmluYWwtPnQxMV90MTIgIT0gMCkKPiAgCQly ZXR1cm47Cj4gIAo+IC0JaWYgKEhBU19QQ0hfU1BMSVQoZGV2KSkgewo+ICsJaWYgKElTX0JST1hU T04oZGV2KSkgewo+ICsJCS8qCj4gKwkJICogVE9ETzogQlhUIGhhcyAyIHNldHMgb2YgUFBTIHJl Z2lzdGVycy4KPiArCQkgKiBDb3JyZWN0IFJlZ2lzdGVyIGZvciBCcm94dG9uIG5lZWQgdG8gYmUg aWRlbnRpZmllZAo+ICsJCSAqIHVzaW5nIFZCVC4gaGFyZGNvZGluZyBmb3Igbm93Cj4gKwkJICov Cj4gKwkJcHBfY3RybF9yZWcgPSBCWFRfUFBfQ09OVFJPTCgwKTsKPiArCQlwcF9vbl9yZWcgPSBC WFRfUFBfT05fREVMQVlTKDApOwo+ICsJCXBwX29mZl9yZWcgPSBCWFRfUFBfT0ZGX0RFTEFZUygw KTsKPiArCX0gZWxzZSBpZiAoSEFTX1BDSF9TUExJVChkZXYpKSB7Cj4gIAkJcHBfY3RybF9yZWcg PSBQQ0hfUFBfQ09OVFJPTDsKPiAgCQlwcF9vbl9yZWcgPSBQQ0hfUFBfT05fREVMQVlTOwo+ICAJ CXBwX29mZl9yZWcgPSBQQ0hfUFBfT0ZGX0RFTEFZUzsKPiBAQCAtNDk5NCwxMiArNTAwNywxNyBA QCBpbnRlbF9kcF9pbml0X3BhbmVsX3Bvd2VyX3NlcXVlbmNlcihzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2LAo+ICAKPiAgCS8qIFdvcmthcm91bmQ6IE5lZWQgdG8gd3JpdGUgUFBfQ09OVFJPTCB3aXRo IHRoZSB1bmxvY2sga2V5IGFzCj4gIAkgKiB0aGUgdmVyeSBmaXJzdCB0aGluZy4gKi8KPiAtCXBw ID0gaXJvbmxha2VfZ2V0X3BwX2NvbnRyb2woaW50ZWxfZHApOwo+IC0JSTkxNV9XUklURShwcF9j dHJsX3JlZywgcHApOwo+ICsJaWYgKCFJU19CUk9YVE9OKGRldikpIHsKPiArCQlwcF9jdGwgPSBp cm9ubGFrZV9nZXRfcHBfY29udHJvbChpbnRlbF9kcCk7Cj4gKwkJSTkxNV9XUklURShwcF9jdHJs X3JlZywgcHBfY3RsKTsKPiArCX0KCkkgdHJpZWQgdG8gc2F5IHlvdSBzaG91bGQgdXBkYXRlIHRo ZSBpcm9ubGFrZV9nZXRfcHBfY29udHJvbCBmdW5jdGlvbgp0b28uIEl0IGdldHMgY2FsbGVkIGlu IGEgbnVtYmVyIG9mIHBsYWNlcywgYWxzbyBmb3IgYnh0LCBpdCBhZGRzIHRoZQp1bmxvY2sga2V5 ICgweGFiY2QgPDwgMTYpIHRvIHRoZSByZXN1bHQgYW5kIHRoZSBjYWxsIHNpdGVzIHdyaXRlIHRo YXQKYmFjayB0byBwcCBjdGwuIEFuZCB3ZSBzaG91bGRuJ3QgZG8gdGhhdCBzaW5jZSB0aG9zZSBi aXRzIG11c3QgYmUgemVybwpvbiBieHQuCgpXaXRoIHRoYXQgZnVuY3Rpb24gZml4ZWQsIHlvdSBj YW4gcmVhZCBwcCBjdGwgb25jZSB1c2luZyB0aGF0LCBmb3IgYWxsCnBsYXRmb3JtcywgYW5kIG9u bHkgaGF2ZSB0aGUgIWlzX2Jyb3h0b24gYnJhbmNoIGJlbG93IGZvciByZWFkaW5nIHBwIGRpdgpz aW5jZSB5b3UnbGwgYWxyZWFkeSBoYXZlIHBwIGN0bC4KCi0tLQoKSXQgaXMgcHJhY3RpY2FsbHkg aW1wb3NzaWJsZSB0byBleHByZXNzIGV2ZXJ5dGhpbmcgY2xlYXJseSBhbmQKZXhoYXVzdGl2ZWx5 IGV4Y2VwdCBieSBlZmZlY3RpdmVseSByZXdyaXRpbmcgdGhlIHBhdGNoLiBCdXQgdGhhdCB3b3Vs ZApkZWZlYXQgdGhlIHB1cnBvc2Ugb2YgeW91IHdyaXRpbmcgdGhlIHBhdGNoIGFuZCBtZSByZXZp ZXdpbmcuLi4gc28KcGxlYXNlIGRvIHRyeSB0byB0aGluayBhYm91dCBhbGwgdGhlIGltcGxpY2F0 aW9ucyBvZiB0aGUgcmV2aWV3CmNvbW1lbnRzLiBJbiB0aGUgZW5kLCB3ZSBhbGwgd2FudCB0byBn ZXQgdGhlIHJldmlldyBkb25lIGluIGFzIGZldwpyb3VuZHMgYXMgcG9zc2libGUuCgpUaGFua3Ms CkphbmkuCgoKPiAgCj4gIAlwcF9vbiA9IEk5MTVfUkVBRChwcF9vbl9yZWcpOwo+ICAJcHBfb2Zm ID0gSTkxNV9SRUFEKHBwX29mZl9yZWcpOwo+IC0JcHBfZGl2ID0gSTkxNV9SRUFEKHBwX2Rpdl9y ZWcpOwo+ICsJaWYgKCFJU19CUk9YVE9OKGRldikpCj4gKwkJcHBfZGl2ID0gSTkxNV9SRUFEKHBw X2Rpdl9yZWcpOwo+ICsJZWxzZQo+ICsJCXBwX2N0bCA9IEk5MTVfUkVBRChwcF9jdHJsX3JlZyk7 Cj4gIAo+ICAJLyogUHVsbCB0aW1pbmcgdmFsdWVzIG91dCBvZiByZWdpc3RlcnMgKi8KPiAgCWN1 ci50MV90MyA9IChwcF9vbiAmIFBBTkVMX1BPV0VSX1VQX0RFTEFZX01BU0spID4+Cj4gQEAgLTUw MTQsNyArNTAzMiwxMSBAQCBpbnRlbF9kcF9pbml0X3BhbmVsX3Bvd2VyX3NlcXVlbmNlcihzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2LAo+ICAJY3VyLnQxMCA9IChwcF9vZmYgJiBQQU5FTF9QT1dFUl9E T1dOX0RFTEFZX01BU0spID4+Cj4gIAkJUEFORUxfUE9XRVJfRE9XTl9ERUxBWV9TSElGVDsKPiAg Cj4gLQljdXIudDExX3QxMiA9ICgocHBfZGl2ICYgUEFORUxfUE9XRVJfQ1lDTEVfREVMQVlfTUFT SykgPj4KPiArCWlmIChJU19CUk9YVE9OKGRldikpCj4gKwkJY3VyLnQxMV90MTIgPSAoKChwcF9j dGwgJiBCWFRfUE9XRVJfQ1lDTEVfREVMQVlfTUFTSykgPj4KPiArCQkJQlhUX1BPV0VSX0NZQ0xF X0RFTEFZX1NISUZUKSAtIDEpICogMTAwMDsKPiArCWVsc2UKPiArCQljdXIudDExX3QxMiA9ICgo cHBfZGl2ICYgUEFORUxfUE9XRVJfQ1lDTEVfREVMQVlfTUFTSykgPj4KPiAgCQkgICAgICAgUEFO RUxfUE9XRVJfQ1lDTEVfREVMQVlfU0hJRlQpICogMTAwMDsKPiAgCj4gIAlEUk1fREVCVUdfS01T KCJjdXIgdDFfdDMgJWQgdDggJWQgdDkgJWQgdDEwICVkIHQxMV90MTIgJWRcbiIsCj4gQEAgLTUw NzIsMTMgKzUwOTQsMjMgQEAgaW50ZWxfZHBfaW5pdF9wYW5lbF9wb3dlcl9zZXF1ZW5jZXJfcmVn aXN0ZXJzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwo+ICAJdTMyIHBwX29uLCBwcF9vZmYsIHBw X2RpdiwgcG9ydF9zZWwgPSAwOwo+ICAJaW50IGRpdiA9IEhBU19QQ0hfU1BMSVQoZGV2KSA/IGlu dGVsX3BjaF9yYXdjbGsoZGV2KSA6IGludGVsX2hyYXdjbGsoZGV2KTsKPiAtCWludCBwcF9vbl9y ZWcsIHBwX29mZl9yZWcsIHBwX2Rpdl9yZWc7Cj4gKwlpbnQgcHBfb25fcmVnLCBwcF9vZmZfcmVn LCBwcF9kaXZfcmVnID0gMCwgcHBfY3RybF9yZWc7Cj4gIAllbnVtIHBvcnQgcG9ydCA9IGRwX3Rv X2RpZ19wb3J0KGludGVsX2RwKS0+cG9ydDsKPiAgCWNvbnN0IHN0cnVjdCBlZHBfcG93ZXJfc2Vx ICpzZXEgPSAmaW50ZWxfZHAtPnBwc19kZWxheXM7Cj4gIAo+ICAJbG9ja2RlcF9hc3NlcnRfaGVs ZCgmZGV2X3ByaXYtPnBwc19tdXRleCk7Cj4gIAo+IC0JaWYgKEhBU19QQ0hfU1BMSVQoZGV2KSkg ewo+ICsJaWYgKElTX0JST1hUT04oZGV2KSkgewo+ICsJCS8qCj4gKwkJICogVE9ETzogQlhUIGhh cyAyIHNldHMgb2YgUFBTIHJlZ2lzdGVycy4KPiArCQkgKiBDb3JyZWN0IFJlZ2lzdGVyIGZvciBC cm94dG9uIG5lZWQgdG8gYmUgaWRlbnRpZmllZAo+ICsJCSAqIHVzaW5nIFZCVC4gaGFyZGNvZGlu ZyBmb3Igbm93Cj4gKwkJICovCj4gKwkJcHBfY3RybF9yZWcgPSBCWFRfUFBfQ09OVFJPTCgwKTsK PiArCQlwcF9vbl9yZWcgPSBCWFRfUFBfT05fREVMQVlTKDApOwo+ICsJCXBwX29mZl9yZWcgPSBC WFRfUFBfT0ZGX0RFTEFZUygwKTsKPiArCj4gKwl9IGVsc2UgaWYgKEhBU19QQ0hfU1BMSVQoZGV2 KSkgewo+ICAJCXBwX29uX3JlZyA9IFBDSF9QUF9PTl9ERUxBWVM7Cj4gIAkJcHBfb2ZmX3JlZyA9 IFBDSF9QUF9PRkZfREVMQVlTOwo+ICAJCXBwX2Rpdl9yZWcgPSBQQ0hfUFBfRElWSVNPUjsKPiBA QCAtNTEwNCw5ICs1MTM2LDE2IEBAIGludGVsX2RwX2luaXRfcGFuZWxfcG93ZXJfc2VxdWVuY2Vy X3JlZ2lzdGVycyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ICAJCSAoc2VxLT50MTAgPDwgUEFO RUxfUE9XRVJfRE9XTl9ERUxBWV9TSElGVCk7Cj4gIAkvKiBDb21wdXRlIHRoZSBkaXZpc29yIGZv ciB0aGUgcHAgY2xvY2ssIHNpbXBseSBtYXRjaCB0aGUgQnNwZWMKPiAgCSAqIGZvcm11bGEuICov Cj4gLQlwcF9kaXYgPSAoKDEwMCAqIGRpdikvMiAtIDEpIDw8IFBQX1JFRkVSRU5DRV9ESVZJREVS X1NISUZUOwo+IC0JcHBfZGl2IHw9IChESVZfUk9VTkRfVVAoc2VxLT50MTFfdDEyLCAxMDAwKQo+ IC0JCQk8PCBQQU5FTF9QT1dFUl9DWUNMRV9ERUxBWV9TSElGVCk7Cj4gKwlpZiAoSVNfQlJPWFRP TihkZXYpKSB7Cj4gKwkJcHBfZGl2ID0gSTkxNV9SRUFEKHBwX2N0cmxfcmVnKTsKPiArCQlwcF9k aXYgJj0gfkJYVF9QT1dFUl9DWUNMRV9ERUxBWV9NQVNLOwo+ICsJCXBwX2RpdiB8PSAoRElWX1JP VU5EX1VQKChzZXEtPnQxMV90MTIgKyAxKSwgMTAwMCkKPiArCQkJCTw8IEJYVF9QT1dFUl9DWUNM RV9ERUxBWV9TSElGVCk7Cj4gKwl9IGVsc2Ugewo+ICsJCXBwX2RpdiA9ICgoMTAwICogZGl2KS8y IC0gMSkgPDwgUFBfUkVGRVJFTkNFX0RJVklERVJfU0hJRlQ7Cj4gKwkJcHBfZGl2IHw9IChESVZf Uk9VTkRfVVAoc2VxLT50MTFfdDEyLCAxMDAwKQo+ICsJCQkJPDwgUEFORUxfUE9XRVJfQ1lDTEVf REVMQVlfU0hJRlQpOwo+ICsJfQo+ICAKPiAgCS8qIEhhc3dlbGwgZG9lc24ndCBoYXZlIGFueSBw b3J0IHNlbGVjdGlvbiBiaXRzIGZvciB0aGUgcGFuZWwKPiAgCSAqIHBvd2VyIHNlcXVlbmNlciBh bnkgbW9yZS4gKi8KPiBAQCAtNTEyMywxMSArNTE2MiwxNiBAQCBpbnRlbF9kcF9pbml0X3BhbmVs X3Bvd2VyX3NlcXVlbmNlcl9yZWdpc3RlcnMoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiAgCj4g IAlJOTE1X1dSSVRFKHBwX29uX3JlZywgcHBfb24pOwo+ICAJSTkxNV9XUklURShwcF9vZmZfcmVn LCBwcF9vZmYpOwo+IC0JSTkxNV9XUklURShwcF9kaXZfcmVnLCBwcF9kaXYpOwo+ICsJaWYgKElT X0JST1hUT04oZGV2KSkKPiArCQlJOTE1X1dSSVRFKHBwX2N0cmxfcmVnLCBwcF9kaXYpOwo+ICsJ ZWxzZQo+ICsJCUk5MTVfV1JJVEUocHBfZGl2X3JlZywgcHBfZGl2KTsKPiAgCj4gIAlEUk1fREVC VUdfS01TKCJwYW5lbCBwb3dlciBzZXF1ZW5jZXIgcmVnaXN0ZXIgc2V0dGluZ3M6IFBQX09OICUj eCwgUFBfT0ZGICUjeCwgUFBfRElWICUjeFxuIiwKPiAgCQkgICAgICBJOTE1X1JFQUQocHBfb25f cmVnKSwKPiAgCQkgICAgICBJOTE1X1JFQUQocHBfb2ZmX3JlZyksCj4gKwkJICAgICAgSVNfQlJP WFRPTihkZXYpID8KPiArCQkgICAgICAoSTkxNV9SRUFEKHBwX2N0cmxfcmVnKSAmIEJYVF9QT1dF Ul9DWUNMRV9ERUxBWV9NQVNLKSA6Cj4gIAkJICAgICAgSTkxNV9SRUFEKHBwX2Rpdl9yZWcpKTsK PiAgfQo+ICAKPiAtLSAKPiAyLjAuMQo+CgotLSAKSmFuaSBOaWt1bGEsIEludGVsIE9wZW4gU291 cmNlIFRlY2hub2xvZ3kgQ2VudGVyCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8v aW50ZWwtZ2Z4Cg==