From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rajesh Yadav Subject: [DPU PATCH v2 08/12] drm/msm/dpu: remove power management code from dpu_power_handle Date: Fri, 11 May 2018 20:19:34 +0530 Message-ID: <1526050178-31893-9-git-send-email-ryadav@codeaurora.org> References: <1526050178-31893-1-git-send-email-ryadav@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1526050178-31893-1-git-send-email-ryadav-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: dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org Cc: robdclark-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org, seanpaul-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org, Rajesh Yadav , hoegsberg-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org List-Id: linux-arm-msm@vger.kernel.org TWRzcyBtYWluIHBvd2VyIHN1cHBseSAobWRzc19nZHNjKSBpcyBpbXBsZW1lbnRlZCBhcyBhCmdl bmVyaWMgcG93ZXIgZG9tYWluIGFuZCBtZHNzIHRvcCBsZXZlbCB3cmFwcGVyIGRldmljZQptYW5h Z2UgaXQgdmlhIHJ1bnRpbWVfcG0uIFJlbW92ZSBjdXN0b20gcG93ZXIgbWFuYWdlbWVudApjb2Rl IGZyb20gZHB1X3Bvd2VyX2hhbmRsZS4KCkNoYW5nZXMgaW4gdjI6CgktIHJlc29sdmVkIG1lcmdl IGNvbmZsaWN0IGluIGRwdV9wb3dlcl9yZXNvdXJjZV9pbml0CgktIGRyb3BwZWQgKFJldmlld2Vk LWJ5OiBTZWFuIFBhdWwpIGR1ZSB0byBhYm92ZSBjaGFuZ2UKClNpZ25lZC1vZmYtYnk6IFJhamVz aCBZYWRhdiA8cnlhZGF2QGNvZGVhdXJvcmEub3JnPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9tc20v ZHB1X3Bvd2VyX2hhbmRsZS5jIHwgMTk0ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQogZHJpdmVycy9ncHUvZHJtL21zbS9kcHVfcG93ZXJfaGFuZGxlLmggfCAgIDIgLQogMiBmaWxl cyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDE5MyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vbXNtL2RwdV9wb3dlcl9oYW5kbGUuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9tc20vZHB1X3Bvd2VyX2hhbmRsZS5jCmluZGV4IDEyNjAyYWUuLjc3YmUxMDYgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZHB1X3Bvd2VyX2hhbmRsZS5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9tc20vZHB1X3Bvd2VyX2hhbmRsZS5jCkBAIC0xMDEsMTUwICsxMDEsNiBAQCB2b2lk IGRwdV9wb3dlcl9jbGllbnRfZGVzdHJveShzdHJ1Y3QgZHB1X3Bvd2VyX2hhbmRsZSAqcGhhbmRs ZSwKIAl9CiB9CiAKLXN0YXRpYyBpbnQgZHB1X3Bvd2VyX3BhcnNlX2R0X3N1cHBseShzdHJ1Y3Qg cGxhdGZvcm1fZGV2aWNlICpwZGV2LAotCQkJCXN0cnVjdCBkc3NfbW9kdWxlX3Bvd2VyICptcCkK LXsKLQlpbnQgaSA9IDAsIHJjID0gMDsKLQl1MzIgdG1wID0gMDsKLQlzdHJ1Y3QgZGV2aWNlX25v ZGUgKm9mX25vZGUgPSBOVUxMLCAqc3VwcGx5X3Jvb3Rfbm9kZSA9IE5VTEw7Ci0Jc3RydWN0IGRl dmljZV9ub2RlICpzdXBwbHlfbm9kZSA9IE5VTEw7Ci0KLQlpZiAoIXBkZXYgfHwgIW1wKSB7Ci0J CXByX2VycigiaW52YWxpZCBpbnB1dCBwYXJhbSBwZGV2OiVwSyBtcDolcEtcbiIsIHBkZXYsIG1w KTsKLQkJcmV0dXJuIC1FSU5WQUw7Ci0JfQotCi0Jb2Zfbm9kZSA9IHBkZXYtPmRldi5vZl9ub2Rl OwotCi0JbXAtPm51bV92cmVnID0gMDsKLQlzdXBwbHlfcm9vdF9ub2RlID0gb2ZfZ2V0X2NoaWxk X2J5X25hbWUob2Zfbm9kZSwKLQkJCQkJCSJxY29tLHBsYXRmb3JtLXN1cHBseS1lbnRyaWVzIik7 Ci0JaWYgKCFzdXBwbHlfcm9vdF9ub2RlKSB7Ci0JCXByX2RlYnVnKCJubyBzdXBwbHkgZW50cnkg cHJlc2VudFxuIik7Ci0JCXJldHVybiByYzsKLQl9Ci0KLQlmb3JfZWFjaF9jaGlsZF9vZl9ub2Rl KHN1cHBseV9yb290X25vZGUsIHN1cHBseV9ub2RlKQotCQltcC0+bnVtX3ZyZWcrKzsKLQotCWlm IChtcC0+bnVtX3ZyZWcgPT0gMCkgewotCQlwcl9kZWJ1Zygibm8gdnJlZ1xuIik7Ci0JCXJldHVy biByYzsKLQl9Ci0KLQlwcl9kZWJ1ZygidnJlZyBmb3VuZC4gY291bnQ9JWRcbiIsIG1wLT5udW1f dnJlZyk7Ci0JbXAtPnZyZWdfY29uZmlnID0gZGV2bV9remFsbG9jKCZwZGV2LT5kZXYsIHNpemVv ZihzdHJ1Y3QgZHNzX3ZyZWcpICoKLQkJCQkJCW1wLT5udW1fdnJlZywgR0ZQX0tFUk5FTCk7Ci0J aWYgKCFtcC0+dnJlZ19jb25maWcpIHsKLQkJcmMgPSAtRU5PTUVNOwotCQlyZXR1cm4gcmM7Ci0J fQotCi0JZm9yX2VhY2hfY2hpbGRfb2Zfbm9kZShzdXBwbHlfcm9vdF9ub2RlLCBzdXBwbHlfbm9k ZSkgewotCi0JCWNvbnN0IGNoYXIgKnN0ID0gTlVMTDsKLQotCQlyYyA9IG9mX3Byb3BlcnR5X3Jl YWRfc3RyaW5nKHN1cHBseV9ub2RlLAotCQkJCQkJInFjb20sc3VwcGx5LW5hbWUiLCAmc3QpOwot CQlpZiAocmMpIHsKLQkJCXByX2VycigiZXJyb3IgcmVhZGluZyBuYW1lLiByYz0lZFxuIiwgcmMp OwotCQkJZ290byBlcnJvcjsKLQkJfQotCi0JCXN0cmxjcHkobXAtPnZyZWdfY29uZmlnW2ldLnZy ZWdfbmFtZSwgc3QsCi0JCQkJCXNpemVvZihtcC0+dnJlZ19jb25maWdbaV0udnJlZ19uYW1lKSk7 Ci0KLQkJcmMgPSBvZl9wcm9wZXJ0eV9yZWFkX3UzMihzdXBwbHlfbm9kZSwKLQkJCQkJInFjb20s c3VwcGx5LW1pbi12b2x0YWdlIiwgJnRtcCk7Ci0JCWlmIChyYykgewotCQkJcHJfZXJyKCJlcnJv ciByZWFkaW5nIG1pbiB2b2x0LiByYz0lZFxuIiwgcmMpOwotCQkJZ290byBlcnJvcjsKLQkJfQot CQltcC0+dnJlZ19jb25maWdbaV0ubWluX3ZvbHRhZ2UgPSB0bXA7Ci0KLQkJcmMgPSBvZl9wcm9w ZXJ0eV9yZWFkX3UzMihzdXBwbHlfbm9kZSwKLQkJCQkJInFjb20sc3VwcGx5LW1heC12b2x0YWdl IiwgJnRtcCk7Ci0JCWlmIChyYykgewotCQkJcHJfZXJyKCJlcnJvciByZWFkaW5nIG1heCB2b2x0 LiByYz0lZFxuIiwgcmMpOwotCQkJZ290byBlcnJvcjsKLQkJfQotCQltcC0+dnJlZ19jb25maWdb aV0ubWF4X3ZvbHRhZ2UgPSB0bXA7Ci0KLQkJcmMgPSBvZl9wcm9wZXJ0eV9yZWFkX3UzMihzdXBw bHlfbm9kZSwKLQkJCQkJInFjb20sc3VwcGx5LWVuYWJsZS1sb2FkIiwgJnRtcCk7Ci0JCWlmIChy YykgewotCQkJcHJfZXJyKCJlcnJvciByZWFkaW5nIGVuYWJsZSBsb2FkLiByYz0lZFxuIiwgcmMp OwotCQkJZ290byBlcnJvcjsKLQkJfQotCQltcC0+dnJlZ19jb25maWdbaV0uZW5hYmxlX2xvYWQg PSB0bXA7Ci0KLQkJcmMgPSBvZl9wcm9wZXJ0eV9yZWFkX3UzMihzdXBwbHlfbm9kZSwKLQkJCQkJ InFjb20sc3VwcGx5LWRpc2FibGUtbG9hZCIsICZ0bXApOwotCQlpZiAocmMpIHsKLQkJCXByX2Vy cigiZXJyb3IgcmVhZGluZyBkaXNhYmxlIGxvYWQuIHJjPSVkXG4iLCByYyk7Ci0JCQlnb3RvIGVy cm9yOwotCQl9Ci0JCW1wLT52cmVnX2NvbmZpZ1tpXS5kaXNhYmxlX2xvYWQgPSB0bXA7Ci0KLQkJ cmMgPSBvZl9wcm9wZXJ0eV9yZWFkX3UzMihzdXBwbHlfbm9kZSwKLQkJCQkJInFjb20sc3VwcGx5 LXByZS1vbi1zbGVlcCIsICZ0bXApOwotCQlpZiAocmMpCi0JCQlwcl9kZWJ1ZygiZXJyb3IgcmVh ZGluZyBzdXBwbHkgcHJlIHNsZWVwIHZhbHVlLiByYz0lZFxuIiwKLQkJCQkJCQlyYyk7Ci0KLQkJ bXAtPnZyZWdfY29uZmlnW2ldLnByZV9vbl9zbGVlcCA9ICghcmMgPyB0bXAgOiAwKTsKLQotCQly YyA9IG9mX3Byb3BlcnR5X3JlYWRfdTMyKHN1cHBseV9ub2RlLAotCQkJCQkicWNvbSxzdXBwbHkt cHJlLW9mZi1zbGVlcCIsICZ0bXApOwotCQlpZiAocmMpCi0JCQlwcl9kZWJ1ZygiZXJyb3IgcmVh ZGluZyBzdXBwbHkgcHJlIHNsZWVwIHZhbHVlLiByYz0lZFxuIiwKLQkJCQkJCQlyYyk7Ci0KLQkJ bXAtPnZyZWdfY29uZmlnW2ldLnByZV9vZmZfc2xlZXAgPSAoIXJjID8gdG1wIDogMCk7Ci0KLQkJ cmMgPSBvZl9wcm9wZXJ0eV9yZWFkX3UzMihzdXBwbHlfbm9kZSwKLQkJCQkJInFjb20sc3VwcGx5 LXBvc3Qtb24tc2xlZXAiLCAmdG1wKTsKLQkJaWYgKHJjKQotCQkJcHJfZGVidWcoImVycm9yIHJl YWRpbmcgc3VwcGx5IHBvc3Qgc2xlZXAgdmFsdWUuIHJjPSVkXG4iLAotCQkJCQkJCXJjKTsKLQot CQltcC0+dnJlZ19jb25maWdbaV0ucG9zdF9vbl9zbGVlcCA9ICghcmMgPyB0bXAgOiAwKTsKLQot CQlyYyA9IG9mX3Byb3BlcnR5X3JlYWRfdTMyKHN1cHBseV9ub2RlLAotCQkJCQkicWNvbSxzdXBw bHktcG9zdC1vZmYtc2xlZXAiLCAmdG1wKTsKLQkJaWYgKHJjKQotCQkJcHJfZGVidWcoImVycm9y IHJlYWRpbmcgc3VwcGx5IHBvc3Qgc2xlZXAgdmFsdWUuIHJjPSVkXG4iLAotCQkJCQkJCXJjKTsK LQotCQltcC0+dnJlZ19jb25maWdbaV0ucG9zdF9vZmZfc2xlZXAgPSAoIXJjID8gdG1wIDogMCk7 Ci0KLQkJcHJfZGVidWcoIiVzIG1pbj0lZCwgbWF4PSVkLCBlbmFibGU9JWQsIGRpc2FibGU9JWQs IHByZW9uc2xlZXA9JWQsIHBvc3RvbnNsZWVwPSVkLCBwcmVvZmZzbGVlcD0lZCwgcG9zdG9mZnNs ZWVwPSVkXG4iLAotCQkJCQltcC0+dnJlZ19jb25maWdbaV0udnJlZ19uYW1lLAotCQkJCQltcC0+ dnJlZ19jb25maWdbaV0ubWluX3ZvbHRhZ2UsCi0JCQkJCW1wLT52cmVnX2NvbmZpZ1tpXS5tYXhf dm9sdGFnZSwKLQkJCQkJbXAtPnZyZWdfY29uZmlnW2ldLmVuYWJsZV9sb2FkLAotCQkJCQltcC0+ dnJlZ19jb25maWdbaV0uZGlzYWJsZV9sb2FkLAotCQkJCQltcC0+dnJlZ19jb25maWdbaV0ucHJl X29uX3NsZWVwLAotCQkJCQltcC0+dnJlZ19jb25maWdbaV0ucG9zdF9vbl9zbGVlcCwKLQkJCQkJ bXAtPnZyZWdfY29uZmlnW2ldLnByZV9vZmZfc2xlZXAsCi0JCQkJCW1wLT52cmVnX2NvbmZpZ1tp XS5wb3N0X29mZl9zbGVlcCk7Ci0JCSsraTsKLQotCQlyYyA9IDA7Ci0JfQotCi0JcmV0dXJuIHJj OwotCi1lcnJvcjoKLQlpZiAobXAtPnZyZWdfY29uZmlnKSB7Ci0JCWRldm1fa2ZyZWUoJnBkZXYt PmRldiwgbXAtPnZyZWdfY29uZmlnKTsKLQkJbXAtPnZyZWdfY29uZmlnID0gTlVMTDsKLQkJbXAt Pm51bV92cmVnID0gMDsKLQl9Ci0KLQlyZXR1cm4gcmM7Ci19Ci0KICNpZmRlZiBDT05GSUdfUUNP TV9CVVNfU0NBTElORwogCiAjZGVmaW5lIE1BWF9BWElfUE9SVF9DT1VOVCAzCkBAIC02MTQsMzMg KzQ3MCwxOCBAQCBpbnQgZHB1X3Bvd2VyX3Jlc291cmNlX2luaXQoc3RydWN0IHBsYXRmb3JtX2Rl dmljZSAqcGRldiwKIAlzdHJ1Y3QgZHB1X3Bvd2VyX2hhbmRsZSAqcGhhbmRsZSkKIHsKIAlpbnQg cmMgPSAwLCBpOwotCXN0cnVjdCBkc3NfbW9kdWxlX3Bvd2VyICptcDsKIAogCWlmICghcGhhbmRs ZSB8fCAhcGRldikgewogCQlwcl9lcnIoImludmFsaWQgaW5wdXQgcGFyYW1cbiIpOwotCQlyYyA9 IC1FSU5WQUw7Ci0JCWdvdG8gZW5kOwotCX0KLQltcCA9ICZwaGFuZGxlLT5tcDsKLQlwaGFuZGxl LT5kZXYgPSAmcGRldi0+ZGV2OwotCi0JcmMgPSBkcHVfcG93ZXJfcGFyc2VfZHRfc3VwcGx5KHBk ZXYsIG1wKTsKLQlpZiAocmMpIHsKLQkJcHJfZXJyKCJkZXZpY2UgdnJlZyBzdXBwbHkgcGFyc2lu ZyBmYWlsZWRcbiIpOwotCQlyZXR1cm4gcmM7CisJCXJldHVybiAtRUlOVkFMOwogCX0KIAotCXJj ID0gbXNtX2Rzc19jb25maWdfdnJlZygmcGRldi0+ZGV2LAotCQkJCW1wLT52cmVnX2NvbmZpZywg bXAtPm51bV92cmVnLCAxKTsKLQlpZiAocmMpIHsKLQkJcHJfZXJyKCJ2cmVnIGNvbmZpZyBmYWls ZWQgcmM9JWRcbiIsIHJjKTsKLQkJZ290byB2cmVnX2VycjsKLQl9CisJcGhhbmRsZS0+ZGV2ID0g JnBkZXYtPmRldjsKIAogCXJjID0gZHB1X3Bvd2VyX3JlZ19idXNfcGFyc2UocGRldiwgcGhhbmRs ZSk7CiAJaWYgKHJjKSB7CiAJCXByX2VycigicmVnaXN0ZXIgYnVzIHBhcnNlIGZhaWxlZCByYz0l ZFxuIiwgcmMpOwotCQlnb3RvIGJ1c19lcnI7CisJCXJldHVybiByYzsKIAl9CiAKIAlmb3IgKGkg PSBEUFVfUE9XRVJfSEFORExFX0RCVVNfSURfTU5PQzsKQEAgLTY2NiwxOSArNTA3LDEyIEBAIGlu dCBkcHVfcG93ZXJfcmVzb3VyY2VfaW5pdChzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LAog CWZvciAoaS0tOyBpID49IDA7IGktLSkKIAkJZHB1X3Bvd2VyX2RhdGFfYnVzX3VucmVnaXN0ZXIo JnBoYW5kbGUtPmRhdGFfYnVzX2hhbmRsZVtpXSk7CiAJZHB1X3Bvd2VyX3JlZ19idXNfdW5yZWdp c3RlcihwaGFuZGxlLT5yZWdfYnVzX2hkbCk7Ci1idXNfZXJyOgotCW1zbV9kc3NfY29uZmlnX3Zy ZWcoJnBkZXYtPmRldiwgbXAtPnZyZWdfY29uZmlnLCBtcC0+bnVtX3ZyZWcsIDApOwotdnJlZ19l cnI6Ci0JaWYgKG1wLT52cmVnX2NvbmZpZykKLQkJZGV2bV9rZnJlZSgmcGRldi0+ZGV2LCBtcC0+ dnJlZ19jb25maWcpOwotCW1wLT5udW1fdnJlZyA9IDA7CiAJcmV0dXJuIHJjOwogfQogCiB2b2lk IGRwdV9wb3dlcl9yZXNvdXJjZV9kZWluaXQoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwK IAlzdHJ1Y3QgZHB1X3Bvd2VyX2hhbmRsZSAqcGhhbmRsZSkKIHsKLQlzdHJ1Y3QgZHNzX21vZHVs ZV9wb3dlciAqbXA7CiAJc3RydWN0IGRwdV9wb3dlcl9jbGllbnQgKmN1cnJfY2xpZW50LCAqbmV4 dF9jbGllbnQ7CiAJc3RydWN0IGRwdV9wb3dlcl9ldmVudCAqY3Vycl9ldmVudCwgKm5leHRfZXZl bnQ7CiAJaW50IGk7CkBAIC02ODcsNyArNTIxLDYgQEAgdm9pZCBkcHVfcG93ZXJfcmVzb3VyY2Vf ZGVpbml0KHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsCiAJCXByX2VycigiaW52YWxpZCBp bnB1dCBwYXJhbVxuIik7CiAJCXJldHVybjsKIAl9Ci0JbXAgPSAmcGhhbmRsZS0+bXA7CiAKIAlt dXRleF9sb2NrKCZwaGFuZGxlLT5waGFuZGxlX2xvY2spOwogCWxpc3RfZm9yX2VhY2hfZW50cnlf c2FmZShjdXJyX2NsaWVudCwgbmV4dF9jbGllbnQsCkBAIC03MTMsMTMgKzU0Niw2IEBAIHZvaWQg ZHB1X3Bvd2VyX3Jlc291cmNlX2RlaW5pdChzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LAog CQlkcHVfcG93ZXJfZGF0YV9idXNfdW5yZWdpc3RlcigmcGhhbmRsZS0+ZGF0YV9idXNfaGFuZGxl W2ldKTsKIAogCWRwdV9wb3dlcl9yZWdfYnVzX3VucmVnaXN0ZXIocGhhbmRsZS0+cmVnX2J1c19o ZGwpOwotCi0JbXNtX2Rzc19jb25maWdfdnJlZygmcGRldi0+ZGV2LCBtcC0+dnJlZ19jb25maWcs IG1wLT5udW1fdnJlZywgMCk7Ci0KLQlpZiAobXAtPnZyZWdfY29uZmlnKQotCQlkZXZtX2tmcmVl KCZwZGV2LT5kZXYsIG1wLT52cmVnX2NvbmZpZyk7Ci0KLQltcC0+bnVtX3ZyZWcgPSAwOwogfQog CiBpbnQgZHB1X3Bvd2VyX3Jlc291cmNlX2VuYWJsZShzdHJ1Y3QgZHB1X3Bvd2VyX2hhbmRsZSAq cGhhbmRsZSwKQEAgLTcyOSwxNSArNTU1LDEyIEBAIGludCBkcHVfcG93ZXJfcmVzb3VyY2VfZW5h YmxlKHN0cnVjdCBkcHVfcG93ZXJfaGFuZGxlICpwaGFuZGxlLAogCWJvb2wgY2hhbmdlZCA9IGZh bHNlOwogCXUzMiBtYXhfdXNlY2FzZV9uZHggPSBWT1RFX0lOREVYX0RJU0FCTEUsIHByZXZfdXNl Y2FzZV9uZHg7CiAJc3RydWN0IGRwdV9wb3dlcl9jbGllbnQgKmNsaWVudDsKLQlzdHJ1Y3QgZHNz X21vZHVsZV9wb3dlciAqbXA7CiAKIAlpZiAoIXBoYW5kbGUgfHwgIXBjbGllbnQpIHsKIAkJcHJf ZXJyKCJpbnZhbGlkIGlucHV0IGFyZ3VtZW50XG4iKTsKIAkJcmV0dXJuIC1FSU5WQUw7CiAJfQog Ci0JbXAgPSAmcGhhbmRsZS0+bXA7Ci0KIAltdXRleF9sb2NrKCZwaGFuZGxlLT5waGFuZGxlX2xv Y2spOwogCWlmIChlbmFibGUpCiAJCXBjbGllbnQtPnJlZmNvdW50Kys7CkBAIC03ODIsMTMgKzYw NSw2IEBAIGludCBkcHVfcG93ZXJfcmVzb3VyY2VfZW5hYmxlKHN0cnVjdCBkcHVfcG93ZXJfaGFu ZGxlICpwaGFuZGxlLAogCQkJfQogCQl9CiAKLQkJcmMgPSBtc21fZHNzX2VuYWJsZV92cmVnKG1w LT52cmVnX2NvbmZpZywgbXAtPm51bV92cmVnLAotCQkJCQkJCQllbmFibGUpOwotCQlpZiAocmMp IHsKLQkJCXByX2VycigiZmFpbGVkIHRvIGVuYWJsZSB2cmVncyByYz0lZFxuIiwgcmMpOwotCQkJ Z290byB2cmVnX2VycjsKLQkJfQotCiAJCXJjID0gZHB1X3Bvd2VyX3JlZ19idXNfdXBkYXRlKHBo YW5kbGUtPnJlZ19idXNfaGRsLAogCQkJCQkJCW1heF91c2VjYXNlX25keCk7CiAJCWlmIChyYykg ewpAQCAtODA2LDggKzYyMiw2IEBAIGludCBkcHVfcG93ZXJfcmVzb3VyY2VfZW5hYmxlKHN0cnVj dCBkcHVfcG93ZXJfaGFuZGxlICpwaGFuZGxlLAogCQlkcHVfcG93ZXJfcmVnX2J1c191cGRhdGUo cGhhbmRsZS0+cmVnX2J1c19oZGwsCiAJCQkJCQkJbWF4X3VzZWNhc2VfbmR4KTsKIAotCQltc21f ZHNzX2VuYWJsZV92cmVnKG1wLT52cmVnX2NvbmZpZywgbXAtPm51bV92cmVnLAotCQkJCQkJCWVu YWJsZSk7CiAJCWZvciAoaSA9IDAgOyBpIDwgRFBVX1BPV0VSX0hBTkRMRV9EQlVTX0lEX01BWDsg aSsrKQogCQkJZHB1X3Bvd2VyX2RhdGFfYnVzX3VwZGF0ZSgmcGhhbmRsZS0+ZGF0YV9idXNfaGFu ZGxlW2ldLAogCQkJCQllbmFibGUpOwpAQCAtODIxLDggKzYzNSw2IEBAIGludCBkcHVfcG93ZXJf cmVzb3VyY2VfZW5hYmxlKHN0cnVjdCBkcHVfcG93ZXJfaGFuZGxlICpwaGFuZGxlLAogCXJldHVy biByYzsKIAogcmVnX2J1c19oZGxfZXJyOgotCW1zbV9kc3NfZW5hYmxlX3ZyZWcobXAtPnZyZWdf Y29uZmlnLCBtcC0+bnVtX3ZyZWcsIDApOwotdnJlZ19lcnI6CiAJZm9yIChpID0gMCA7IGkgPCBE UFVfUE9XRVJfSEFORExFX0RCVVNfSURfTUFYOyBpKyspCiAJCWRwdV9wb3dlcl9kYXRhX2J1c191 cGRhdGUoJnBoYW5kbGUtPmRhdGFfYnVzX2hhbmRsZVtpXSwgMCk7CiBkYXRhX2J1c19oZGxfZXJy OgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9kcHVfcG93ZXJfaGFuZGxlLmggYi9k cml2ZXJzL2dwdS9kcm0vbXNtL2RwdV9wb3dlcl9oYW5kbGUuaAppbmRleCA4M2YwNDhkLi45YTZk NGI5IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2RwdV9wb3dlcl9oYW5kbGUuaAor KysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2RwdV9wb3dlcl9oYW5kbGUuaApAQCAtMTQ3LDcgKzE0 Nyw2IEBAIHN0cnVjdCBkcHVfcG93ZXJfZXZlbnQgewogCiAvKioKICAqIHN0cnVjdCBkcHVfcG93 ZXJfaGFuZGxlOiBwb3dlciBoYW5kbGUgbWFpbiBzdHJ1Y3QKLSAqIEBtcDoJCW1vZHVsZSBwb3dl ciBmb3IgY2xvY2sgYW5kIHJlZ3VsYXRvcgogICogQGNsaWVudF9jbGlzdDogbWFzdGVyIGxpc3Qg dG8gc3RvcmUgYWxsIGNsaWVudHMKICAqIEBwaGFuZGxlX2xvY2s6IGxvY2sgdG8gc3luY2hyb25p emUgdGhlIGVuYWJsZS9kaXNhYmxlCiAgKiBAZGV2OiBwb2ludGVyIHRvIGRldmljZSBzdHJ1Y3R1 cmUKQEAgLTE1Nyw3ICsxNTYsNiBAQCBzdHJ1Y3QgZHB1X3Bvd2VyX2V2ZW50IHsKICAqIEBldmVu dF9saXN0OiBjdXJyZW50IHBvd2VyIGhhbmRsZSBldmVudCBsaXN0CiAgKi8KIHN0cnVjdCBkcHVf cG93ZXJfaGFuZGxlIHsKLQlzdHJ1Y3QgZHNzX21vZHVsZV9wb3dlciBtcDsKIAlzdHJ1Y3QgbGlz dF9oZWFkIHBvd2VyX2NsaWVudF9jbGlzdDsKIAlzdHJ1Y3QgbXV0ZXggcGhhbmRsZV9sb2NrOwog CXN0cnVjdCBkZXZpY2UgKmRldjsKLS0gClRoZSBRdWFsY29tbSBJbm5vdmF0aW9uIENlbnRlciwg SW5jLiBpcyBhIG1lbWJlciBvZiB0aGUgQ29kZSBBdXJvcmEgRm9ydW0sCmEgTGludXggRm91bmRh dGlvbiBDb2xsYWJvcmF0aXZlIFByb2plY3QKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCkZyZWVkcmVubyBtYWlsaW5nIGxpc3QKRnJlZWRyZW5vQGxpc3Rz LmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xp c3RpbmZvL2ZyZWVkcmVubwo=