From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sravanthi Kollukuduru Subject: [PATCH] drm/msm/dpu: enable cursor plane on dpu Date: Thu, 2 Aug 2018 16:24:44 +0530 Message-ID: <1533207284-4326-1-git-send-email-skolluku@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org, linux-arm-msm@vger.kernel.org, freedreno@lists.freedesktop.org Cc: hoegsberg@chromium.org, Sravanthi Kollukuduru List-Id: linux-arm-msm@vger.kernel.org UmVzZXJ2ZSBETUEgcGlwZSBmb3IgY3Vyc29yIHBsYW5lIGFuZCBhdHRhY2ggaXQgdG8gdGhlCmNy dGMgZHVyaW5nIHRoZSBpbml0aWFsaXphdGlvbi4KClNpZ25lZC1vZmYtYnk6IFNyYXZhbnRoaSBL b2xsdWt1ZHVydSA8c2tvbGx1a3VAY29kZWF1cm9yYS5vcmc+Ci0tLQogZHJpdmVycy9ncHUvZHJt L21zbS9kaXNwL2RwdTEvZHB1X2NydGMuYyAgICAgICB8ICA1ICsrLQogZHJpdmVycy9ncHUvZHJt L21zbS9kaXNwL2RwdTEvZHB1X2NydGMuaCAgICAgICB8ICA0ICstCiBkcml2ZXJzL2dwdS9kcm0v bXNtL2Rpc3AvZHB1MS9kcHVfaHdfY2F0YWxvZy5jIHwgNTMgKysrKysrKysrKystLS0tLS0tLS0t LS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9rbXMuYyAgICAgICAgfCAz NSArKysrKysrKysrKy0tLS0tLQogZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X3Bs YW5lLmMgICAgICB8ICA5ICstLS0tCiBkcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVf cGxhbmUuaCAgICAgIHwgIDQgKy0KIDYgZmlsZXMgY2hhbmdlZCwgNTUgaW5zZXJ0aW9ucygrKSwg NTUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2Rw dTEvZHB1X2NydGMuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9jcnRjLmMK aW5kZXggN2FjMGUwZC4uMjVlYmE4MCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9k aXNwL2RwdTEvZHB1X2NydGMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9k cHVfY3J0Yy5jCkBAIC0yNDU2LDcgKzI0NTYsOCBAQCBzdGF0aWMgaW50IF9kcHVfY3J0Y19pbml0 X2V2ZW50cyhzdHJ1Y3QgZHB1X2NydGMgKmRwdV9jcnRjKQogfQogCiAvKiBpbml0aWFsaXplIGNy dGMgKi8KLXN0cnVjdCBkcm1fY3J0YyAqZHB1X2NydGNfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2LCBzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSkKK3N0cnVjdCBkcm1fY3J0YyAqZHB1X2NydGNf aW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKKwkJ CQlzdHJ1Y3QgZHJtX3BsYW5lICpjdXJzb3IpCiB7CiAJc3RydWN0IGRybV9jcnRjICpjcnRjID0g TlVMTDsKIAlzdHJ1Y3QgZHB1X2NydGMgKmRwdV9jcnRjID0gTlVMTDsKQEAgLTI0OTMsNyArMjQ5 NCw3IEBAIHN0cnVjdCBkcm1fY3J0YyAqZHB1X2NydGNfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2LCBzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSkKIAkJCQlkcHVfY3J0Y19mcmFtZV9ldmVudF93 b3JrKTsKIAl9CiAKLQlkcm1fY3J0Y19pbml0X3dpdGhfcGxhbmVzKGRldiwgY3J0YywgcGxhbmUs IE5VTEwsICZkcHVfY3J0Y19mdW5jcywKKwlkcm1fY3J0Y19pbml0X3dpdGhfcGxhbmVzKGRldiwg Y3J0YywgcGxhbmUsIGN1cnNvciwgJmRwdV9jcnRjX2Z1bmNzLAogCQkJCU5VTEwpOwogCiAJZHJt X2NydGNfaGVscGVyX2FkZChjcnRjLCAmZHB1X2NydGNfaGVscGVyX2Z1bmNzKTsKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9jcnRjLmggYi9kcml2ZXJzL2dw dS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfY3J0Yy5oCmluZGV4IDRhOTdiYTEuLmE3ZTMxNzMgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9jcnRjLmgKKysrIGIv ZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2NydGMuaApAQCAtMzk2LDkgKzM5Niwx MSBAQCB2b2lkIGRwdV9jcnRjX2NvbXBsZXRlX2NvbW1pdChzdHJ1Y3QgZHJtX2NydGMgKmNydGMs CiAgKiBkcHVfY3J0Y19pbml0IC0gY3JlYXRlIGEgbmV3IGNydGMgb2JqZWN0CiAgKiBAZGV2OiBk cHUgZGV2aWNlCiAgKiBAcGxhbmU6IGJhc2UgcGxhbmUKKyAqIEBjdXJzb3I6IGN1cnNvciBwbGFu ZQogICogQFJldHVybjogbmV3IGNydGMgb2JqZWN0IG9yIGVycm9yCiAgKi8KLXN0cnVjdCBkcm1f Y3J0YyAqZHB1X2NydGNfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX3Bs YW5lICpwbGFuZSk7CitzdHJ1Y3QgZHJtX2NydGMgKmRwdV9jcnRjX2luaXQoc3RydWN0IGRybV9k ZXZpY2UgKmRldiwgc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCisJCQkgICAgICAgc3RydWN0IGRy bV9wbGFuZSAqY3Vyc29yKTsKIAogLyoqCiAgKiBkcHVfY3J0Y19yZWdpc3Rlcl9jdXN0b21fZXZl bnQgLSBhcGkgZm9yIGVuYWJsaW5nL2Rpc2FibGluZyBjcnRjIGV2ZW50CmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfaHdfY2F0YWxvZy5jIGIvZHJpdmVycy9n cHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2h3X2NhdGFsb2cuYwppbmRleCAxNzkzY2ZkLi5mNTNl NDJkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfaHdfY2F0 YWxvZy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9od19jYXRhbG9n LmMKQEAgLTI5LDYgKzI5LDkgQEAKIAlCSVQoRFBVX1NTUFBfVFNfUFJFRklMTCkgfCBCSVQoRFBV X1NTUFBfVFNfUFJFRklMTF9SRUMxKSB8XAogCUJJVChEUFVfU1NQUF9DRFApIHwgQklUKERQVV9T U1BQX0VYQ0xfUkVDVCkpCiAKKyNkZWZpbmUgRE1BX0NVUlNPUl9TRE04NDVfTUFTSyBcCisJKERN QV9TRE04NDVfTUFTSyB8IEJJVChEUFVfU1NQUF9DVVJTT1IpKQorCiAjZGVmaW5lIE1JWEVSX1NE TTg0NV9NQVNLIFwKIAkoQklUKERQVV9NSVhFUl9TT1VSQ0VTUExJVCkgfCBCSVQoRFBVX0RJTV9M QVlFUikpCiAKQEAgLTE3NCw0NSArMTc3LDM1IEBACiBzdGF0aWMgY29uc3Qgc3RydWN0IGRwdV9z c3BwX3N1Yl9ibGtzIHNkbTg0NV9kbWFfc2Jsa18yID0gX0RNQV9TQkxLKCIxMCIsIDMpOwogc3Rh dGljIGNvbnN0IHN0cnVjdCBkcHVfc3NwcF9zdWJfYmxrcyBzZG04NDVfZG1hX3NibGtfMyA9IF9E TUFfU0JMSygiMTEiLCA0KTsKIAotI2RlZmluZSBTU1BQX1ZJR19CTEsoX25hbWUsIF9pZCwgX2Jh c2UsIF9zYmxrLCBfeGluaWQsIF9jbGtjdHJsKSBcCi0JeyBcCi0JLm5hbWUgPSBfbmFtZSwgLmlk ID0gX2lkLCBcCi0JLmJhc2UgPSBfYmFzZSwgLmxlbiA9IDB4MWM4LCBcCi0JLmZlYXR1cmVzID0g VklHX1NETTg0NV9NQVNLLCBcCi0JLnNibGsgPSAmX3NibGssIFwKLQkueGluX2lkID0gX3hpbmlk LCBcCi0JLnR5cGUgPSBTU1BQX1RZUEVfVklHLCBcCi0JLmNsa19jdHJsID0gX2Nsa2N0cmwgXAot CX0KLQotI2RlZmluZSBTU1BQX0RNQV9CTEsoX25hbWUsIF9pZCwgX2Jhc2UsIF9zYmxrLCBfeGlu aWQsIF9jbGtjdHJsKSBcCisjZGVmaW5lIFNTUFBfQkxLKF9uYW1lLCBfaWQsIF9iYXNlLCBfZmVh dHVyZXMsIFwKKwkJX3NibGssIF94aW5pZCwgX3R5cGUsIF9jbGtjdHJsKSBcCiAJeyBcCiAJLm5h bWUgPSBfbmFtZSwgLmlkID0gX2lkLCBcCiAJLmJhc2UgPSBfYmFzZSwgLmxlbiA9IDB4MWM4LCBc Ci0JLmZlYXR1cmVzID0gRE1BX1NETTg0NV9NQVNLLCBcCisJLmZlYXR1cmVzID0gX2ZlYXR1cmVz LCBcCiAJLnNibGsgPSAmX3NibGssIFwKIAkueGluX2lkID0gX3hpbmlkLCBcCi0JLnR5cGUgPSBT U1BQX1RZUEVfRE1BLCBcCisJLnR5cGUgPSBfdHlwZSwgXAogCS5jbGtfY3RybCA9IF9jbGtjdHJs IFwKIAl9CiAKIHN0YXRpYyBzdHJ1Y3QgZHB1X3NzcHBfY2ZnIHNkbTg0NV9zc3BwW10gPSB7Ci0J U1NQUF9WSUdfQkxLKCJzc3BwXzAiLCBTU1BQX1ZJRzAsIDB4NDAwMCwKLQkJc2RtODQ1X3ZpZ19z YmxrXzAsIDAsIERQVV9DTEtfQ1RSTF9WSUcwKSwKLQlTU1BQX1ZJR19CTEsoInNzcHBfMSIsIFNT UFBfVklHMSwgMHg2MDAwLAotCQlzZG04NDVfdmlnX3NibGtfMSwgNCwgRFBVX0NMS19DVFJMX1ZJ RzEpLAotCVNTUFBfVklHX0JMSygic3NwcF8yIiwgU1NQUF9WSUcyLCAweDgwMDAsCi0JCXNkbTg0 NV92aWdfc2Jsa18yLCA4LCBEUFVfQ0xLX0NUUkxfVklHMiksCi0JU1NQUF9WSUdfQkxLKCJzc3Bw XzMiLCBTU1BQX1ZJRzMsIDB4YTAwMCwKLQkJc2RtODQ1X3ZpZ19zYmxrXzMsIDEyLCBEUFVfQ0xL X0NUUkxfVklHMyksCi0JU1NQUF9ETUFfQkxLKCJzc3BwXzgiLCBTU1BQX0RNQTAsIDB4MjQwMDAs Ci0JCXNkbTg0NV9kbWFfc2Jsa18wLCAxLCBEUFVfQ0xLX0NUUkxfRE1BMCksCi0JU1NQUF9ETUFf QkxLKCJzc3BwXzkiLCBTU1BQX0RNQTEsIDB4MjYwMDAsCi0JCXNkbTg0NV9kbWFfc2Jsa18xLCA1 LCBEUFVfQ0xLX0NUUkxfRE1BMSksCi0JU1NQUF9ETUFfQkxLKCJzc3BwXzEwIiwgU1NQUF9ETUEy LCAweDI4MDAwLAotCQlzZG04NDVfZG1hX3NibGtfMiwgOSwgRFBVX0NMS19DVFJMX0NVUlNPUjAp LAotCVNTUFBfRE1BX0JMSygic3NwcF8xMSIsIFNTUFBfRE1BMywgMHgyYTAwMCwKLQkJc2RtODQ1 X2RtYV9zYmxrXzMsIDEzLCBEUFVfQ0xLX0NUUkxfQ1VSU09SMSksCisJU1NQUF9CTEsoInNzcHBf MCIsIFNTUFBfVklHMCwgMHg0MDAwLCBWSUdfU0RNODQ1X01BU0ssCisJCXNkbTg0NV92aWdfc2Js a18wLCAwLCAgU1NQUF9UWVBFX1ZJRywgRFBVX0NMS19DVFJMX1ZJRzApLAorCVNTUFBfQkxLKCJz c3BwXzEiLCBTU1BQX1ZJRzEsIDB4NjAwMCwgVklHX1NETTg0NV9NQVNLLAorCQlzZG04NDVfdmln X3NibGtfMSwgNCwgIFNTUFBfVFlQRV9WSUcsIERQVV9DTEtfQ1RSTF9WSUcxKSwKKwlTU1BQX0JM Sygic3NwcF8yIiwgU1NQUF9WSUcyLCAweDgwMDAsIFZJR19TRE04NDVfTUFTSywKKwkJc2RtODQ1 X3ZpZ19zYmxrXzIsIDgsIFNTUFBfVFlQRV9WSUcsIERQVV9DTEtfQ1RSTF9WSUcyKSwKKwlTU1BQ X0JMSygic3NwcF8zIiwgU1NQUF9WSUczLCAweGEwMDAsIFZJR19TRE04NDVfTUFTSywKKwkJc2Rt ODQ1X3ZpZ19zYmxrXzMsIDEyLCAgU1NQUF9UWVBFX1ZJRywgRFBVX0NMS19DVFJMX1ZJRzMpLAor CVNTUFBfQkxLKCJzc3BwXzgiLCBTU1BQX0RNQTAsIDB4MjQwMDAsICBETUFfU0RNODQ1X01BU0ss CisJCXNkbTg0NV9kbWFfc2Jsa18wLCAxLCBTU1BQX1RZUEVfRE1BLCBEUFVfQ0xLX0NUUkxfRE1B MCksCisJU1NQUF9CTEsoInNzcHBfOSIsIFNTUFBfRE1BMSwgMHgyNjAwMCwgIERNQV9TRE04NDVf TUFTSywKKwkJc2RtODQ1X2RtYV9zYmxrXzEsIDUsIFNTUFBfVFlQRV9ETUEsIERQVV9DTEtfQ1RS TF9ETUExKSwKKwlTU1BQX0JMSygic3NwcF8xMCIsIFNTUFBfRE1BMiwgMHgyODAwMCwgIERNQV9D VVJTT1JfU0RNODQ1X01BU0ssCisJCXNkbTg0NV9kbWFfc2Jsa18yLCA5LCBTU1BQX1RZUEVfRE1B LCBEUFVfQ0xLX0NUUkxfQ1VSU09SMCksCisJU1NQUF9CTEsoInNzcHBfMTEiLCBTU1BQX0RNQTMs IDB4MmEwMDAsICBETUFfQ1VSU09SX1NETTg0NV9NQVNLLAorCQlzZG04NDVfZG1hX3NibGtfMywg MTMsIFNTUFBfVFlQRV9ETUEsIERQVV9DTEtfQ1RSTF9DVVJTT1IxKSwKIH07CiAKIC8qKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfa21zLmMgYi9kcml2 ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfa21zLmMKaW5kZXggOGQ0Njc4ZC4uZGM2NDdl ZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2ttcy5jCisr KyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9rbXMuYwpAQCAtNTMxLDEyICs1 MzEsMTMgQEAgc3RhdGljIGludCBfZHB1X2ttc19kcm1fb2JqX2luaXQoc3RydWN0IGRwdV9rbXMg KmRwdV9rbXMpCiB7CiAJc3RydWN0IGRybV9kZXZpY2UgKmRldjsKIAlzdHJ1Y3QgZHJtX3BsYW5l ICpwcmltYXJ5X3BsYW5lc1tNQVhfUExBTkVTXSwgKnBsYW5lOworCXN0cnVjdCBkcm1fcGxhbmUg KmN1cnNvcl9wbGFuZXNbTUFYX1BMQU5FU10gPSB7IE5VTEwgfTsKIAlzdHJ1Y3QgZHJtX2NydGMg KmNydGM7CiAKIAlzdHJ1Y3QgbXNtX2RybV9wcml2YXRlICpwcml2OwogCXN0cnVjdCBkcHVfbWRz c19jZmcgKmNhdGFsb2c7CiAKLQlpbnQgcHJpbWFyeV9wbGFuZXNfaWR4ID0gMCwgaSwgcmV0Owor CWludCBwcmltYXJ5X3BsYW5lc19pZHggPSAwLCBjdXJzb3JfcGxhbmVzX2lkeCA9IDAsIGksIHJl dDsKIAlpbnQgbWF4X2NydGNfY291bnQ7CiAKIAlpZiAoIWRwdV9rbXMgfHwgIWRwdV9rbXMtPmRl diB8fCAhZHB1X2ttcy0+ZGV2LT5kZXYpIHsKQEAgLTU1NiwxNiArNTU3LDI0IEBAIHN0YXRpYyBp bnQgX2RwdV9rbXNfZHJtX29ial9pbml0KHN0cnVjdCBkcHVfa21zICpkcHVfa21zKQogCiAJbWF4 X2NydGNfY291bnQgPSBtaW4oY2F0YWxvZy0+bWl4ZXJfY291bnQsIHByaXYtPm51bV9lbmNvZGVy cyk7CiAKLQkvKiBDcmVhdGUgdGhlIHBsYW5lcyAqLworCS8qIENyZWF0ZSB0aGUgcGxhbmVzLCBr ZWVwaW5nIHRyYWNrIG9mIG9uZSBwcmltYXJ5L2N1cnNvciBwZXIgY3J0YyAqLwogCWZvciAoaSA9 IDA7IGkgPCBjYXRhbG9nLT5zc3BwX2NvdW50OyBpKyspIHsKLQkJYm9vbCBwcmltYXJ5ID0gdHJ1 ZTsKLQotCQlpZiAoY2F0YWxvZy0+c3NwcFtpXS5mZWF0dXJlcyAmIEJJVChEUFVfU1NQUF9DVVJT T1IpCi0JCQl8fCBwcmltYXJ5X3BsYW5lc19pZHggPj0gbWF4X2NydGNfY291bnQpCi0JCQlwcmlt YXJ5ID0gZmFsc2U7Ci0KLQkJcGxhbmUgPSBkcHVfcGxhbmVfaW5pdChkZXYsIGNhdGFsb2ctPnNz cHBbaV0uaWQsIHByaW1hcnksCi0JCQkJKDFVTCA8PCBtYXhfY3J0Y19jb3VudCkgLSAxLCAwKTsK KwkJZW51bSBkcm1fcGxhbmVfdHlwZSB0eXBlOworCisJCWlmICgoY2F0YWxvZy0+c3NwcFtpXS5m ZWF0dXJlcyAmIEJJVChEUFVfU1NQUF9DVVJTT1IpKQorCQkJJiYgY3Vyc29yX3BsYW5lc19pZHgg PCBtYXhfY3J0Y19jb3VudCkKKwkJCXR5cGUgPSBEUk1fUExBTkVfVFlQRV9DVVJTT1I7CisJCWVs c2UgaWYgKHByaW1hcnlfcGxhbmVzX2lkeCA8IG1heF9jcnRjX2NvdW50KQorCQkJdHlwZSA9IERS TV9QTEFORV9UWVBFX1BSSU1BUlk7CisJCWVsc2UKKwkJCXR5cGUgPSBEUk1fUExBTkVfVFlQRV9P VkVSTEFZOworCisJCURQVV9ERUJVRygiQ3JlYXRlIHBsYW5lIHR5cGUgJWQgd2l0aCBmZWF0dXJl cyAlbHggKGN1ciAlbHgpXG4iLAorCQkJICB0eXBlLCBjYXRhbG9nLT5zc3BwW2ldLmZlYXR1cmVz LAorCQkJICBjYXRhbG9nLT5zc3BwW2ldLmZlYXR1cmVzICYgQklUKERQVV9TU1BQX0NVUlNPUikp OworCisJCXBsYW5lID0gZHB1X3BsYW5lX2luaXQoZGV2LCBjYXRhbG9nLT5zc3BwW2ldLmlkLCB0 eXBlLAorCQkJCSAgICAgICAoMVVMIDw8IG1heF9jcnRjX2NvdW50KSAtIDEsIDApOwogCQlpZiAo SVNfRVJSKHBsYW5lKSkgewogCQkJRFBVX0VSUk9SKCJkcHVfcGxhbmVfaW5pdCBmYWlsZWRcbiIp OwogCQkJcmV0ID0gUFRSX0VSUihwbGFuZSk7CkBAIC01NzMsNyArNTgyLDkgQEAgc3RhdGljIGlu dCBfZHB1X2ttc19kcm1fb2JqX2luaXQoc3RydWN0IGRwdV9rbXMgKmRwdV9rbXMpCiAJCX0KIAkJ cHJpdi0+cGxhbmVzW3ByaXYtPm51bV9wbGFuZXMrK10gPSBwbGFuZTsKIAotCQlpZiAocHJpbWFy eSkKKwkJaWYgKHR5cGUgPT0gRFJNX1BMQU5FX1RZUEVfQ1VSU09SKQorCQkJY3Vyc29yX3BsYW5l c1tjdXJzb3JfcGxhbmVzX2lkeCsrXSA9IHBsYW5lOworCQllbHNlIGlmICh0eXBlID09IERSTV9Q TEFORV9UWVBFX1BSSU1BUlkpCiAJCQlwcmltYXJ5X3BsYW5lc1twcmltYXJ5X3BsYW5lc19pZHgr K10gPSBwbGFuZTsKIAl9CiAKQEAgLTU4MSw3ICs1OTIsNyBAQCBzdGF0aWMgaW50IF9kcHVfa21z X2RybV9vYmpfaW5pdChzdHJ1Y3QgZHB1X2ttcyAqZHB1X2ttcykKIAogCS8qIENyZWF0ZSBvbmUg Q1JUQyBwZXIgZW5jb2RlciAqLwogCWZvciAoaSA9IDA7IGkgPCBtYXhfY3J0Y19jb3VudDsgaSsr KSB7Ci0JCWNydGMgPSBkcHVfY3J0Y19pbml0KGRldiwgcHJpbWFyeV9wbGFuZXNbaV0pOworCQlj cnRjID0gZHB1X2NydGNfaW5pdChkZXYsIHByaW1hcnlfcGxhbmVzW2ldLCBjdXJzb3JfcGxhbmVz W2ldKTsKIAkJaWYgKElTX0VSUihjcnRjKSkgewogCQkJcmV0ID0gUFRSX0VSUihjcnRjKTsKIAkJ CWdvdG8gZmFpbDsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2Rw dV9wbGFuZS5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X3BsYW5lLmMKaW5k ZXggYjY0MGUzOS4uZWZkZjliMiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNw L2RwdTEvZHB1X3BsYW5lLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1 X3BsYW5lLmMKQEAgLTE4MjcsNyArMTgyNyw3IEBAIGJvb2wgaXNfZHB1X3BsYW5lX3ZpcnR1YWwo c3RydWN0IGRybV9wbGFuZSAqcGxhbmUpCiAKIC8qIGluaXRpYWxpemUgcGxhbmUgKi8KIHN0cnVj dCBkcm1fcGxhbmUgKmRwdV9wbGFuZV9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCi0JCXVp bnQzMl90IHBpcGUsIGJvb2wgcHJpbWFyeV9wbGFuZSwKKwkJdWludDMyX3QgcGlwZSwgZW51bSBk cm1fcGxhbmVfdHlwZSB0eXBlLAogCQl1bnNpZ25lZCBsb25nIHBvc3NpYmxlX2NydGNzLCB1MzIg bWFzdGVyX3BsYW5lX2lkKQogewogCXN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lID0gTlVMTCwgKm1h c3Rlcl9wbGFuZSA9IE5VTEw7CkBAIC0xODM1LDcgKzE4MzUsNiBAQCBzdHJ1Y3QgZHJtX3BsYW5l ICpkcHVfcGxhbmVfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCXN0cnVjdCBkcHVfcGxh bmUgKnBkcHU7CiAJc3RydWN0IG1zbV9kcm1fcHJpdmF0ZSAqcHJpdjsKIAlzdHJ1Y3QgZHB1X2tt cyAqa21zOwotCWVudW0gZHJtX3BsYW5lX3R5cGUgdHlwZTsKIAlpbnQgenBvc19tYXggPSBEUFVf WlBPU19NQVg7CiAJaW50IHJldCA9IC1FSU5WQUw7CiAKQEAgLTE5MTYsMTIgKzE5MTUsNiBAQCBz dHJ1Y3QgZHJtX3BsYW5lICpkcHVfcGxhbmVfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAog CQlnb3RvIGNsZWFuX3NzcHA7CiAJfQogCi0JaWYgKHBkcHUtPmZlYXR1cmVzICYgQklUKERQVV9T U1BQX0NVUlNPUikpCi0JCXR5cGUgPSBEUk1fUExBTkVfVFlQRV9DVVJTT1I7Ci0JZWxzZSBpZiAo cHJpbWFyeV9wbGFuZSkKLQkJdHlwZSA9IERSTV9QTEFORV9UWVBFX1BSSU1BUlk7Ci0JZWxzZQot CQl0eXBlID0gRFJNX1BMQU5FX1RZUEVfT1ZFUkxBWTsKIAlyZXQgPSBkcm1fdW5pdmVyc2FsX3Bs YW5lX2luaXQoZGV2LCBwbGFuZSwgMHhmZiwgJmRwdV9wbGFuZV9mdW5jcywKIAkJCQlwZHB1LT5m b3JtYXRzLCBwZHB1LT5uZm9ybWF0cywKIAkJCQlOVUxMLCB0eXBlLCBOVUxMKTsKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9wbGFuZS5oIGIvZHJpdmVycy9n cHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X3BsYW5lLmgKaW5kZXggZjZmZTZkZC4uN2ZlZDBiNiAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X3BsYW5lLmgKKysr IGIvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X3BsYW5lLmgKQEAgLTEyMiw3ICsx MjIsNyBAQCB2b2lkIGRwdV9wbGFuZV9nZXRfY3RsX2ZsdXNoKHN0cnVjdCBkcm1fcGxhbmUgKnBs YW5lLCBzdHJ1Y3QgZHB1X2h3X2N0bCAqY3RsLAogICogZHB1X3BsYW5lX2luaXQgLSBjcmVhdGUg bmV3IGRwdSBwbGFuZSBmb3IgdGhlIGdpdmVuIHBpcGUKICAqIEBkZXY6ICAgUG9pbnRlciB0byBE Uk0gZGV2aWNlCiAgKiBAcGlwZTogIGRwdSBoYXJkd2FyZSBwaXBlIGlkZW50aWZpZXIKLSAqIEBw cmltYXJ5X3BsYW5lOiB0cnVlIGlmIHRoaXMgcGlwZSBpcyBwcmltYXJ5IHBsYW5lIGZvciBjcnRj CisgKiBAdHlwZTogIFBsYW5lIHR5cGUgLSBQUklNQVJZL09WRVJMQVkvQ1VSU09SCiAgKiBAcG9z c2libGVfY3J0Y3M6IGJpdG1hc2sgb2YgY3J0YyB0aGF0IGNhbiBiZSBhdHRhY2hlZCB0byB0aGUg Z2l2ZW4gcGlwZQogICogQG1hc3Rlcl9wbGFuZV9pZDogcHJpbWFyeSBwbGFuZSBpZCBvZiBhIG11 bHRpcmVjdCBwaXBlLiAwIHZhbHVlIHBhc3NlZCBmb3IKICAqICAgICAgICAgICAgICAgICAgIGEg cmVndWxhciBwbGFuZSBpbml0aWFsaXphdGlvbi4gQSBub24temVybyBwcmltYXJ5IHBsYW5lCkBA IC0xMzAsNyArMTMwLDcgQEAgdm9pZCBkcHVfcGxhbmVfZ2V0X2N0bF9mbHVzaChzdHJ1Y3QgZHJt X3BsYW5lICpwbGFuZSwgc3RydWN0IGRwdV9od19jdGwgKmN0bCwKICAqCiAgKi8KIHN0cnVjdCBk cm1fcGxhbmUgKmRwdV9wbGFuZV9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCi0JCXVpbnQz Ml90IHBpcGUsIGJvb2wgcHJpbWFyeV9wbGFuZSwKKwkJdWludDMyX3QgcGlwZSwgZW51bSBkcm1f cGxhbmVfdHlwZSB0eXBlLAogCQl1bnNpZ25lZCBsb25nIHBvc3NpYmxlX2NydGNzLCB1MzIgbWFz dGVyX3BsYW5lX2lkKTsKIAogLyoqCi0tIApUaGUgUXVhbGNvbW0gSW5ub3ZhdGlvbiBDZW50ZXIs IEluYy4gaXMgYSBtZW1iZXIgb2YgdGhlIENvZGUgQXVyb3JhIEZvcnVtLAphIExpbnV4IEZvdW5k YXRpb24gQ29sbGFib3JhdGl2ZSBQcm9qZWN0CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0 cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9s aXN0aW5mby9kcmktZGV2ZWwK