From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sean Paul Subject: Re: [PATCH v2 1/2] drm/msm/dpu: enable cursor plane on dpu Date: Wed, 22 Aug 2018 15:10:46 -0400 Message-ID: <20180822191046.GX164269@art_vandelay> References: <20180822174957.22684-1-skolluku@codeaurora.org> <20180822174957.22684-2-skolluku@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <20180822174957.22684-2-skolluku-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: freedreno-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Freedreno" To: Sravanthi Kollukuduru Cc: sean-p7yTbzM4H96eqtR555YLDQ@public.gmane.org, devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, robdclark-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org, seanpaul-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org, freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: devicetree@vger.kernel.org T24gV2VkLCBBdWcgMjIsIDIwMTggYXQgMTE6MTk6NTZQTSArMDUzMCwgU3JhdmFudGhpIEtvbGx1 a3VkdXJ1IHdyb3RlOgo+IFJlc2VydmUgRE1BIHBpcGUgZm9yIGN1cnNvciBwbGFuZSBhbmQgYXR0 YWNoIGl0IHRvIHRoZQo+IGNydGMgZHVyaW5nIHRoZSBpbml0aWFsaXphdGlvbi4KPiAKPiBDaGFu Z2VzIGluIFYyOgo+IAlOb25lCj4gCj4gU2lnbmVkLW9mZi1ieTogU3JhdmFudGhpIEtvbGx1a3Vk dXJ1IDxza29sbHVrdUBjb2RlYXVyb3JhLm9yZz4KCkluIHRoZSBmdXR1cmUsIGlmIHNvbWVvbmUg Z2l2ZXMgeW91IGEgUmV2aWV3ZWQtYnk6IG9uIGEgcHJldmlvdXMgdmVyc2lvbiwgeW91CnNob3Vs ZCBhZGQgaXQgdG8gc3Vic2VxdWVudCB2ZXJzaW9ucyBzbyBwZW9wbGUga25vdyBpdCdzIGFscmVh ZHkgYmVlIGFja2VkLgoKUmV2aWV3ZWQtYnk6IFNlYW4gUGF1bCA8c2VhbnBhdWxAY2hyb21pdW0u b3JnPgoKSSd2ZSBhcHBsaWVkIHRoaXMgdG8gZHB1LXN0YWdpbmcvZm9yLW5leHQuCgo+IC0tLQo+ ICBkcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfY3J0Yy5jICAgICAgIHwgIDUgKyst Cj4gIGRyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9jcnRjLmggICAgICAgfCAgNCAr LQo+ICBkcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfaHdfY2F0YWxvZy5jIHwgNTMg KysrKysrKysrKystLS0tLS0tLS0tLS0tLS0KPiAgZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2Rw dTEvZHB1X2ttcy5jICAgICAgICB8IDM1ICsrKysrKysrKysrLS0tLS0tCj4gIGRyaXZlcnMvZ3B1 L2RybS9tc20vZGlzcC9kcHUxL2RwdV9wbGFuZS5jICAgICAgfCAgOSArLS0tLQo+ICBkcml2ZXJz L2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfcGxhbmUuaCAgICAgIHwgIDQgKy0KPiAgNiBmaWxl cyBjaGFuZ2VkLCA1NSBpbnNlcnRpb25zKCspLCA1NSBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2NydGMuYyBiL2RyaXZlcnMv Z3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9jcnRjLmMKPiBpbmRleCA4MGNiZjc1YmMyZmYuLjBj ZDk0NTZhNmM0YyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9k cHVfY3J0Yy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2NydGMu Ywo+IEBAIC0yMDgyLDcgKzIwODIsOCBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9jcnRjX2hl bHBlcl9mdW5jcyBkcHVfY3J0Y19oZWxwZXJfZnVuY3MgPSB7Cj4gIH07Cj4gIAo+ICAvKiBpbml0 aWFsaXplIGNydGMgKi8KPiAtc3RydWN0IGRybV9jcnRjICpkcHVfY3J0Y19pbml0KHN0cnVjdCBk cm1fZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lKQo+ICtzdHJ1Y3QgZHJtX2Ny dGMgKmRwdV9jcnRjX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRybV9wbGFu ZSAqcGxhbmUsCj4gKwkJCQlzdHJ1Y3QgZHJtX3BsYW5lICpjdXJzb3IpCj4gIHsKPiAgCXN0cnVj dCBkcm1fY3J0YyAqY3J0YyA9IE5VTEw7Cj4gIAlzdHJ1Y3QgZHB1X2NydGMgKmRwdV9jcnRjID0g TlVMTDsKPiBAQCAtMjExOSw3ICsyMTIwLDcgQEAgc3RydWN0IGRybV9jcnRjICpkcHVfY3J0Y19p bml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lKQo+ICAJ CQkJZHB1X2NydGNfZnJhbWVfZXZlbnRfd29yayk7Cj4gIAl9Cj4gIAo+IC0JZHJtX2NydGNfaW5p dF93aXRoX3BsYW5lcyhkZXYsIGNydGMsIHBsYW5lLCBOVUxMLCAmZHB1X2NydGNfZnVuY3MsCj4g Kwlkcm1fY3J0Y19pbml0X3dpdGhfcGxhbmVzKGRldiwgY3J0YywgcGxhbmUsIGN1cnNvciwgJmRw dV9jcnRjX2Z1bmNzLAo+ICAJCQkJTlVMTCk7Cj4gIAo+ICAJZHJtX2NydGNfaGVscGVyX2FkZChj cnRjLCAmZHB1X2NydGNfaGVscGVyX2Z1bmNzKTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL21zbS9kaXNwL2RwdTEvZHB1X2NydGMuaCBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9k cHUxL2RwdV9jcnRjLmgKPiBpbmRleCBlODcxMDllNjA4ZTkuLmE4OTY3OTE2MDIzNyAxMDA2NDQK PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfY3J0Yy5oCj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2NydGMuaAo+IEBAIC0zNzUsOSArMzc1 LDExIEBAIHZvaWQgZHB1X2NydGNfY29tcGxldGVfY29tbWl0KHN0cnVjdCBkcm1fY3J0YyAqY3J0 YywKPiAgICogZHB1X2NydGNfaW5pdCAtIGNyZWF0ZSBhIG5ldyBjcnRjIG9iamVjdAo+ICAgKiBA ZGV2OiBkcHUgZGV2aWNlCj4gICAqIEBwbGFuZTogYmFzZSBwbGFuZQo+ICsgKiBAY3Vyc29yOiBj dXJzb3IgcGxhbmUKPiAgICogQFJldHVybjogbmV3IGNydGMgb2JqZWN0IG9yIGVycm9yCj4gICAq Lwo+IC1zdHJ1Y3QgZHJtX2NydGMgKmRwdV9jcnRjX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRl diwgc3RydWN0IGRybV9wbGFuZSAqcGxhbmUpOwo+ICtzdHJ1Y3QgZHJtX2NydGMgKmRwdV9jcnRj X2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCj4g KwkJCSAgICAgICBzdHJ1Y3QgZHJtX3BsYW5lICpjdXJzb3IpOwo+ICAKPiAgLyoqCj4gICAqIGRw dV9jcnRjX3JlZ2lzdGVyX2N1c3RvbV9ldmVudCAtIGFwaSBmb3IgZW5hYmxpbmcvZGlzYWJsaW5n IGNydGMgZXZlbnQKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEv ZHB1X2h3X2NhdGFsb2cuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9od19j YXRhbG9nLmMKPiBpbmRleCA0NGVlMDYzOThiMWQuLmMwNGYzZjNhY2FlNCAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfaHdfY2F0YWxvZy5jCj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2h3X2NhdGFsb2cuYwo+IEBAIC0yOSw2 ICsyOSw5IEBACj4gIAlCSVQoRFBVX1NTUFBfVFNfUFJFRklMTCkgfCBCSVQoRFBVX1NTUFBfVFNf UFJFRklMTF9SRUMxKSB8XAo+ICAJQklUKERQVV9TU1BQX0NEUCkgfCBCSVQoRFBVX1NTUFBfRVhD TF9SRUNUKSkKPiAgCj4gKyNkZWZpbmUgRE1BX0NVUlNPUl9TRE04NDVfTUFTSyBcCj4gKwkoRE1B X1NETTg0NV9NQVNLIHwgQklUKERQVV9TU1BQX0NVUlNPUikpCj4gKwo+ICAjZGVmaW5lIE1JWEVS X1NETTg0NV9NQVNLIFwKPiAgCShCSVQoRFBVX01JWEVSX1NPVVJDRVNQTElUKSB8IEJJVChEUFVf RElNX0xBWUVSKSkKPiAgCj4gQEAgLTE3NCw0NSArMTc3LDM1IEBAIHN0YXRpYyBjb25zdCBzdHJ1 Y3QgZHB1X3NzcHBfc3ViX2Jsa3Mgc2RtODQ1X2RtYV9zYmxrXzEgPSBfRE1BX1NCTEsoIjkiLCAy KTsKPiAgc3RhdGljIGNvbnN0IHN0cnVjdCBkcHVfc3NwcF9zdWJfYmxrcyBzZG04NDVfZG1hX3Ni bGtfMiA9IF9ETUFfU0JMSygiMTAiLCAzKTsKPiAgc3RhdGljIGNvbnN0IHN0cnVjdCBkcHVfc3Nw cF9zdWJfYmxrcyBzZG04NDVfZG1hX3NibGtfMyA9IF9ETUFfU0JMSygiMTEiLCA0KTsKPiAgCj4g LSNkZWZpbmUgU1NQUF9WSUdfQkxLKF9uYW1lLCBfaWQsIF9iYXNlLCBfc2JsaywgX3hpbmlkLCBf Y2xrY3RybCkgXAo+IC0JeyBcCj4gLQkubmFtZSA9IF9uYW1lLCAuaWQgPSBfaWQsIFwKPiAtCS5i YXNlID0gX2Jhc2UsIC5sZW4gPSAweDFjOCwgXAo+IC0JLmZlYXR1cmVzID0gVklHX1NETTg0NV9N QVNLLCBcCj4gLQkuc2JsayA9ICZfc2JsaywgXAo+IC0JLnhpbl9pZCA9IF94aW5pZCwgXAo+IC0J LnR5cGUgPSBTU1BQX1RZUEVfVklHLCBcCj4gLQkuY2xrX2N0cmwgPSBfY2xrY3RybCBcCj4gLQl9 Cj4gLQo+IC0jZGVmaW5lIFNTUFBfRE1BX0JMSyhfbmFtZSwgX2lkLCBfYmFzZSwgX3NibGssIF94 aW5pZCwgX2Nsa2N0cmwpIFwKPiArI2RlZmluZSBTU1BQX0JMSyhfbmFtZSwgX2lkLCBfYmFzZSwg X2ZlYXR1cmVzLCBcCj4gKwkJX3NibGssIF94aW5pZCwgX3R5cGUsIF9jbGtjdHJsKSBcCj4gIAl7 IFwKPiAgCS5uYW1lID0gX25hbWUsIC5pZCA9IF9pZCwgXAo+ICAJLmJhc2UgPSBfYmFzZSwgLmxl biA9IDB4MWM4LCBcCj4gLQkuZmVhdHVyZXMgPSBETUFfU0RNODQ1X01BU0ssIFwKPiArCS5mZWF0 dXJlcyA9IF9mZWF0dXJlcywgXAo+ICAJLnNibGsgPSAmX3NibGssIFwKPiAgCS54aW5faWQgPSBf eGluaWQsIFwKPiAtCS50eXBlID0gU1NQUF9UWVBFX0RNQSwgXAo+ICsJLnR5cGUgPSBfdHlwZSwg XAo+ICAJLmNsa19jdHJsID0gX2Nsa2N0cmwgXAo+ICAJfQo+ICAKPiAgc3RhdGljIHN0cnVjdCBk cHVfc3NwcF9jZmcgc2RtODQ1X3NzcHBbXSA9IHsKPiAtCVNTUFBfVklHX0JMSygic3NwcF8wIiwg U1NQUF9WSUcwLCAweDQwMDAsCj4gLQkJc2RtODQ1X3ZpZ19zYmxrXzAsIDAsIERQVV9DTEtfQ1RS TF9WSUcwKSwKPiAtCVNTUFBfVklHX0JMSygic3NwcF8xIiwgU1NQUF9WSUcxLCAweDYwMDAsCj4g LQkJc2RtODQ1X3ZpZ19zYmxrXzEsIDQsIERQVV9DTEtfQ1RSTF9WSUcxKSwKPiAtCVNTUFBfVklH X0JMSygic3NwcF8yIiwgU1NQUF9WSUcyLCAweDgwMDAsCj4gLQkJc2RtODQ1X3ZpZ19zYmxrXzIs IDgsIERQVV9DTEtfQ1RSTF9WSUcyKSwKPiAtCVNTUFBfVklHX0JMSygic3NwcF8zIiwgU1NQUF9W SUczLCAweGEwMDAsCj4gLQkJc2RtODQ1X3ZpZ19zYmxrXzMsIDEyLCBEUFVfQ0xLX0NUUkxfVklH MyksCj4gLQlTU1BQX0RNQV9CTEsoInNzcHBfOCIsIFNTUFBfRE1BMCwgMHgyNDAwMCwKPiAtCQlz ZG04NDVfZG1hX3NibGtfMCwgMSwgRFBVX0NMS19DVFJMX0RNQTApLAo+IC0JU1NQUF9ETUFfQkxL KCJzc3BwXzkiLCBTU1BQX0RNQTEsIDB4MjYwMDAsCj4gLQkJc2RtODQ1X2RtYV9zYmxrXzEsIDUs IERQVV9DTEtfQ1RSTF9ETUExKSwKPiAtCVNTUFBfRE1BX0JMSygic3NwcF8xMCIsIFNTUFBfRE1B MiwgMHgyODAwMCwKPiAtCQlzZG04NDVfZG1hX3NibGtfMiwgOSwgRFBVX0NMS19DVFJMX0NVUlNP UjApLAo+IC0JU1NQUF9ETUFfQkxLKCJzc3BwXzExIiwgU1NQUF9ETUEzLCAweDJhMDAwLAo+IC0J CXNkbTg0NV9kbWFfc2Jsa18zLCAxMywgRFBVX0NMS19DVFJMX0NVUlNPUjEpLAo+ICsJU1NQUF9C TEsoInNzcHBfMCIsIFNTUFBfVklHMCwgMHg0MDAwLCBWSUdfU0RNODQ1X01BU0ssCj4gKwkJc2Rt ODQ1X3ZpZ19zYmxrXzAsIDAsICBTU1BQX1RZUEVfVklHLCBEUFVfQ0xLX0NUUkxfVklHMCksCj4g KwlTU1BQX0JMSygic3NwcF8xIiwgU1NQUF9WSUcxLCAweDYwMDAsIFZJR19TRE04NDVfTUFTSywK PiArCQlzZG04NDVfdmlnX3NibGtfMSwgNCwgIFNTUFBfVFlQRV9WSUcsIERQVV9DTEtfQ1RSTF9W SUcxKSwKPiArCVNTUFBfQkxLKCJzc3BwXzIiLCBTU1BQX1ZJRzIsIDB4ODAwMCwgVklHX1NETTg0 NV9NQVNLLAo+ICsJCXNkbTg0NV92aWdfc2Jsa18yLCA4LCBTU1BQX1RZUEVfVklHLCBEUFVfQ0xL X0NUUkxfVklHMiksCj4gKwlTU1BQX0JMSygic3NwcF8zIiwgU1NQUF9WSUczLCAweGEwMDAsIFZJ R19TRE04NDVfTUFTSywKPiArCQlzZG04NDVfdmlnX3NibGtfMywgMTIsICBTU1BQX1RZUEVfVklH LCBEUFVfQ0xLX0NUUkxfVklHMyksCj4gKwlTU1BQX0JMSygic3NwcF84IiwgU1NQUF9ETUEwLCAw eDI0MDAwLCAgRE1BX1NETTg0NV9NQVNLLAo+ICsJCXNkbTg0NV9kbWFfc2Jsa18wLCAxLCBTU1BQ X1RZUEVfRE1BLCBEUFVfQ0xLX0NUUkxfRE1BMCksCj4gKwlTU1BQX0JMSygic3NwcF85IiwgU1NQ UF9ETUExLCAweDI2MDAwLCAgRE1BX1NETTg0NV9NQVNLLAo+ICsJCXNkbTg0NV9kbWFfc2Jsa18x LCA1LCBTU1BQX1RZUEVfRE1BLCBEUFVfQ0xLX0NUUkxfRE1BMSksCj4gKwlTU1BQX0JMSygic3Nw cF8xMCIsIFNTUFBfRE1BMiwgMHgyODAwMCwgIERNQV9DVVJTT1JfU0RNODQ1X01BU0ssCj4gKwkJ c2RtODQ1X2RtYV9zYmxrXzIsIDksIFNTUFBfVFlQRV9ETUEsIERQVV9DTEtfQ1RSTF9DVVJTT1Iw KSwKPiArCVNTUFBfQkxLKCJzc3BwXzExIiwgU1NQUF9ETUEzLCAweDJhMDAwLCAgRE1BX0NVUlNP Ul9TRE04NDVfTUFTSywKPiArCQlzZG04NDVfZG1hX3NibGtfMywgMTMsIFNTUFBfVFlQRV9ETUEs IERQVV9DTEtfQ1RSTF9DVVJTT1IxKSwKPiAgfTsKPiAgCj4gIC8qKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCj4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9rbXMuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9tc20vZGlzcC9kcHUxL2RwdV9rbXMuYwo+IGluZGV4IDdkZDZiZDJkNmQzNy4uMmRjYTZiMTRk NjAyIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9rbXMu Ywo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9rbXMuYwo+IEBAIC01 MzEsMTIgKzUzMSwxMyBAQCBzdGF0aWMgaW50IF9kcHVfa21zX2RybV9vYmpfaW5pdChzdHJ1Y3Qg ZHB1X2ttcyAqZHB1X2ttcykKPiAgewo+ICAJc3RydWN0IGRybV9kZXZpY2UgKmRldjsKPiAgCXN0 cnVjdCBkcm1fcGxhbmUgKnByaW1hcnlfcGxhbmVzW01BWF9QTEFORVNdLCAqcGxhbmU7Cj4gKwlz dHJ1Y3QgZHJtX3BsYW5lICpjdXJzb3JfcGxhbmVzW01BWF9QTEFORVNdID0geyBOVUxMIH07Cj4g IAlzdHJ1Y3QgZHJtX2NydGMgKmNydGM7Cj4gIAo+ICAJc3RydWN0IG1zbV9kcm1fcHJpdmF0ZSAq cHJpdjsKPiAgCXN0cnVjdCBkcHVfbWRzc19jZmcgKmNhdGFsb2c7Cj4gIAo+IC0JaW50IHByaW1h cnlfcGxhbmVzX2lkeCA9IDAsIGksIHJldDsKPiArCWludCBwcmltYXJ5X3BsYW5lc19pZHggPSAw LCBjdXJzb3JfcGxhbmVzX2lkeCA9IDAsIGksIHJldDsKPiAgCWludCBtYXhfY3J0Y19jb3VudDsK PiAgCj4gIAlpZiAoIWRwdV9rbXMgfHwgIWRwdV9rbXMtPmRldiB8fCAhZHB1X2ttcy0+ZGV2LT5k ZXYpIHsKPiBAQCAtNTU2LDE2ICs1NTcsMjQgQEAgc3RhdGljIGludCBfZHB1X2ttc19kcm1fb2Jq X2luaXQoc3RydWN0IGRwdV9rbXMgKmRwdV9rbXMpCj4gIAo+ICAJbWF4X2NydGNfY291bnQgPSBt aW4oY2F0YWxvZy0+bWl4ZXJfY291bnQsIHByaXYtPm51bV9lbmNvZGVycyk7Cj4gIAo+IC0JLyog Q3JlYXRlIHRoZSBwbGFuZXMgKi8KPiArCS8qIENyZWF0ZSB0aGUgcGxhbmVzLCBrZWVwaW5nIHRy YWNrIG9mIG9uZSBwcmltYXJ5L2N1cnNvciBwZXIgY3J0YyAqLwo+ICAJZm9yIChpID0gMDsgaSA8 IGNhdGFsb2ctPnNzcHBfY291bnQ7IGkrKykgewo+IC0JCWJvb2wgcHJpbWFyeSA9IHRydWU7Cj4g LQo+IC0JCWlmIChjYXRhbG9nLT5zc3BwW2ldLmZlYXR1cmVzICYgQklUKERQVV9TU1BQX0NVUlNP UikKPiAtCQkJfHwgcHJpbWFyeV9wbGFuZXNfaWR4ID49IG1heF9jcnRjX2NvdW50KQo+IC0JCQlw cmltYXJ5ID0gZmFsc2U7Cj4gLQo+IC0JCXBsYW5lID0gZHB1X3BsYW5lX2luaXQoZGV2LCBjYXRh bG9nLT5zc3BwW2ldLmlkLCBwcmltYXJ5LAo+IC0JCQkJKDFVTCA8PCBtYXhfY3J0Y19jb3VudCkg LSAxLCAwKTsKPiArCQllbnVtIGRybV9wbGFuZV90eXBlIHR5cGU7Cj4gKwo+ICsJCWlmICgoY2F0 YWxvZy0+c3NwcFtpXS5mZWF0dXJlcyAmIEJJVChEUFVfU1NQUF9DVVJTT1IpKQo+ICsJCQkmJiBj dXJzb3JfcGxhbmVzX2lkeCA8IG1heF9jcnRjX2NvdW50KQo+ICsJCQl0eXBlID0gRFJNX1BMQU5F X1RZUEVfQ1VSU09SOwo+ICsJCWVsc2UgaWYgKHByaW1hcnlfcGxhbmVzX2lkeCA8IG1heF9jcnRj X2NvdW50KQo+ICsJCQl0eXBlID0gRFJNX1BMQU5FX1RZUEVfUFJJTUFSWTsKPiArCQllbHNlCj4g KwkJCXR5cGUgPSBEUk1fUExBTkVfVFlQRV9PVkVSTEFZOwo+ICsKPiArCQlEUFVfREVCVUcoIkNy ZWF0ZSBwbGFuZSB0eXBlICVkIHdpdGggZmVhdHVyZXMgJWx4IChjdXIgJWx4KVxuIiwKPiArCQkJ ICB0eXBlLCBjYXRhbG9nLT5zc3BwW2ldLmZlYXR1cmVzLAo+ICsJCQkgIGNhdGFsb2ctPnNzcHBb aV0uZmVhdHVyZXMgJiBCSVQoRFBVX1NTUFBfQ1VSU09SKSk7Cj4gKwo+ICsJCXBsYW5lID0gZHB1 X3BsYW5lX2luaXQoZGV2LCBjYXRhbG9nLT5zc3BwW2ldLmlkLCB0eXBlLAo+ICsJCQkJICAgICAg ICgxVUwgPDwgbWF4X2NydGNfY291bnQpIC0gMSwgMCk7Cj4gIAkJaWYgKElTX0VSUihwbGFuZSkp IHsKPiAgCQkJRFBVX0VSUk9SKCJkcHVfcGxhbmVfaW5pdCBmYWlsZWRcbiIpOwo+ICAJCQlyZXQg PSBQVFJfRVJSKHBsYW5lKTsKPiBAQCAtNTczLDcgKzU4Miw5IEBAIHN0YXRpYyBpbnQgX2RwdV9r bXNfZHJtX29ial9pbml0KHN0cnVjdCBkcHVfa21zICpkcHVfa21zKQo+ICAJCX0KPiAgCQlwcml2 LT5wbGFuZXNbcHJpdi0+bnVtX3BsYW5lcysrXSA9IHBsYW5lOwo+ICAKPiAtCQlpZiAocHJpbWFy eSkKPiArCQlpZiAodHlwZSA9PSBEUk1fUExBTkVfVFlQRV9DVVJTT1IpCj4gKwkJCWN1cnNvcl9w bGFuZXNbY3Vyc29yX3BsYW5lc19pZHgrK10gPSBwbGFuZTsKPiArCQllbHNlIGlmICh0eXBlID09 IERSTV9QTEFORV9UWVBFX1BSSU1BUlkpCj4gIAkJCXByaW1hcnlfcGxhbmVzW3ByaW1hcnlfcGxh bmVzX2lkeCsrXSA9IHBsYW5lOwo+ICAJfQo+ICAKPiBAQCAtNTgxLDcgKzU5Miw3IEBAIHN0YXRp YyBpbnQgX2RwdV9rbXNfZHJtX29ial9pbml0KHN0cnVjdCBkcHVfa21zICpkcHVfa21zKQo+ICAK PiAgCS8qIENyZWF0ZSBvbmUgQ1JUQyBwZXIgZW5jb2RlciAqLwo+ICAJZm9yIChpID0gMDsgaSA8 IG1heF9jcnRjX2NvdW50OyBpKyspIHsKPiAtCQljcnRjID0gZHB1X2NydGNfaW5pdChkZXYsIHBy aW1hcnlfcGxhbmVzW2ldKTsKPiArCQljcnRjID0gZHB1X2NydGNfaW5pdChkZXYsIHByaW1hcnlf cGxhbmVzW2ldLCBjdXJzb3JfcGxhbmVzW2ldKTsKPiAgCQlpZiAoSVNfRVJSKGNydGMpKSB7Cj4g IAkJCXJldCA9IFBUUl9FUlIoY3J0Yyk7Cj4gIAkJCWdvdG8gZmFpbDsKPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X3BsYW5lLmMgYi9kcml2ZXJzL2dwdS9k cm0vbXNtL2Rpc3AvZHB1MS9kcHVfcGxhbmUuYwo+IGluZGV4IGI2NDBlMzllYmFjYS4uZWZkZjli MjAwZGQ5IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9w bGFuZS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X3BsYW5lLmMK PiBAQCAtMTgyNyw3ICsxODI3LDcgQEAgYm9vbCBpc19kcHVfcGxhbmVfdmlydHVhbChzdHJ1Y3Qg ZHJtX3BsYW5lICpwbGFuZSkKPiAgCj4gIC8qIGluaXRpYWxpemUgcGxhbmUgKi8KPiAgc3RydWN0 IGRybV9wbGFuZSAqZHB1X3BsYW5lX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiAtCQl1 aW50MzJfdCBwaXBlLCBib29sIHByaW1hcnlfcGxhbmUsCj4gKwkJdWludDMyX3QgcGlwZSwgZW51 bSBkcm1fcGxhbmVfdHlwZSB0eXBlLAo+ICAJCXVuc2lnbmVkIGxvbmcgcG9zc2libGVfY3J0Y3Ms IHUzMiBtYXN0ZXJfcGxhbmVfaWQpCj4gIHsKPiAgCXN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lID0g TlVMTCwgKm1hc3Rlcl9wbGFuZSA9IE5VTEw7Cj4gQEAgLTE4MzUsNyArMTgzNSw2IEBAIHN0cnVj dCBkcm1fcGxhbmUgKmRwdV9wbGFuZV9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gIAlz dHJ1Y3QgZHB1X3BsYW5lICpwZHB1Owo+ICAJc3RydWN0IG1zbV9kcm1fcHJpdmF0ZSAqcHJpdjsK PiAgCXN0cnVjdCBkcHVfa21zICprbXM7Cj4gLQllbnVtIGRybV9wbGFuZV90eXBlIHR5cGU7Cj4g IAlpbnQgenBvc19tYXggPSBEUFVfWlBPU19NQVg7Cj4gIAlpbnQgcmV0ID0gLUVJTlZBTDsKPiAg Cj4gQEAgLTE5MTYsMTIgKzE5MTUsNiBAQCBzdHJ1Y3QgZHJtX3BsYW5lICpkcHVfcGxhbmVfaW5p dChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ICAJCWdvdG8gY2xlYW5fc3NwcDsKPiAgCX0KPiAg Cj4gLQlpZiAocGRwdS0+ZmVhdHVyZXMgJiBCSVQoRFBVX1NTUFBfQ1VSU09SKSkKPiAtCQl0eXBl ID0gRFJNX1BMQU5FX1RZUEVfQ1VSU09SOwo+IC0JZWxzZSBpZiAocHJpbWFyeV9wbGFuZSkKPiAt CQl0eXBlID0gRFJNX1BMQU5FX1RZUEVfUFJJTUFSWTsKPiAtCWVsc2UKPiAtCQl0eXBlID0gRFJN X1BMQU5FX1RZUEVfT1ZFUkxBWTsKPiAgCXJldCA9IGRybV91bml2ZXJzYWxfcGxhbmVfaW5pdChk ZXYsIHBsYW5lLCAweGZmLCAmZHB1X3BsYW5lX2Z1bmNzLAo+ICAJCQkJcGRwdS0+Zm9ybWF0cywg cGRwdS0+bmZvcm1hdHMsCj4gIAkJCQlOVUxMLCB0eXBlLCBOVUxMKTsKPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X3BsYW5lLmggYi9kcml2ZXJzL2dwdS9k cm0vbXNtL2Rpc3AvZHB1MS9kcHVfcGxhbmUuaAo+IGluZGV4IGY2ZmU2ZGRjN2EzYS4uN2ZlZDBi NjI3NzA4IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9w bGFuZS5oCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X3BsYW5lLmgK PiBAQCAtMTIyLDcgKzEyMiw3IEBAIHZvaWQgZHB1X3BsYW5lX3NldF9lcnJvcihzdHJ1Y3QgZHJt X3BsYW5lICpwbGFuZSwgYm9vbCBlcnJvcik7Cj4gICAqIGRwdV9wbGFuZV9pbml0IC0gY3JlYXRl IG5ldyBkcHUgcGxhbmUgZm9yIHRoZSBnaXZlbiBwaXBlCj4gICAqIEBkZXY6ICAgUG9pbnRlciB0 byBEUk0gZGV2aWNlCj4gICAqIEBwaXBlOiAgZHB1IGhhcmR3YXJlIHBpcGUgaWRlbnRpZmllcgo+ IC0gKiBAcHJpbWFyeV9wbGFuZTogdHJ1ZSBpZiB0aGlzIHBpcGUgaXMgcHJpbWFyeSBwbGFuZSBm b3IgY3J0Ywo+ICsgKiBAdHlwZTogIFBsYW5lIHR5cGUgLSBQUklNQVJZL09WRVJMQVkvQ1VSU09S Cj4gICAqIEBwb3NzaWJsZV9jcnRjczogYml0bWFzayBvZiBjcnRjIHRoYXQgY2FuIGJlIGF0dGFj aGVkIHRvIHRoZSBnaXZlbiBwaXBlCj4gICAqIEBtYXN0ZXJfcGxhbmVfaWQ6IHByaW1hcnkgcGxh bmUgaWQgb2YgYSBtdWx0aXJlY3QgcGlwZS4gMCB2YWx1ZSBwYXNzZWQgZm9yCj4gICAqICAgICAg ICAgICAgICAgICAgIGEgcmVndWxhciBwbGFuZSBpbml0aWFsaXphdGlvbi4gQSBub24temVybyBw cmltYXJ5IHBsYW5lCj4gQEAgLTEzMCw3ICsxMzAsNyBAQCB2b2lkIGRwdV9wbGFuZV9zZXRfZXJy b3Ioc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsIGJvb2wgZXJyb3IpOwo+ICAgKgo+ICAgKi8KPiAg c3RydWN0IGRybV9wbGFuZSAqZHB1X3BsYW5lX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwK PiAtCQl1aW50MzJfdCBwaXBlLCBib29sIHByaW1hcnlfcGxhbmUsCj4gKwkJdWludDMyX3QgcGlw ZSwgZW51bSBkcm1fcGxhbmVfdHlwZSB0eXBlLAo+ICAJCXVuc2lnbmVkIGxvbmcgcG9zc2libGVf Y3J0Y3MsIHUzMiBtYXN0ZXJfcGxhbmVfaWQpOwo+ICAKPiAgLyoqCj4gLS0gCj4gVGhlIFF1YWxj b21tIElubm92YXRpb24gQ2VudGVyLCBJbmMuIGlzIGEgbWVtYmVyIG9mIHRoZSBDb2RlIEF1cm9y YSBGb3J1bSwKPiBhIExpbnV4IEZvdW5kYXRpb24gQ29sbGFib3JhdGl2ZSBQcm9qZWN0Cj4gCgot LSAKU2VhbiBQYXVsLCBTb2Z0d2FyZSBFbmdpbmVlciwgR29vZ2xlIC8gQ2hyb21pdW0gT1MKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KRnJlZWRyZW5vIG1h aWxpbmcgbGlzdApGcmVlZHJlbm9AbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZnJlZWRyZW5vCg==