From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shawn Guo Subject: [PATCH 4/4] drm: imx: remove struct imx_drm_crtc and imx_drm_crtc_helper_funcs Date: Mon, 9 Jan 2017 19:56:27 +0800 Message-ID: <1483962987-19011-5-git-send-email-shawnguo@kernel.org> References: <1483962987-19011-1-git-send-email-shawnguo@kernel.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by gabe.freedesktop.org (Postfix) with ESMTPS id 868BA6E241 for ; Mon, 9 Jan 2017 11:57:18 +0000 (UTC) In-Reply-To: <1483962987-19011-1-git-send-email-shawnguo@kernel.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Daniel Vetter Cc: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org RnJvbTogU2hhd24gR3VvIDxzaGF3bi5ndW9AbGluYXJvLm9yZz4KCldpdGggdGhlIHZibGFuayBo b29rcyBpbiBzdHJ1Y3QgZHJtX2NydGNfZnVuY3MsIHdlIGRvIG5vdCBuZWVkIHRvCm1haW50YWlu IHRoZSBDUlRDIHNwZWNpZmljIHZibGFuayBjYWxsYmFja3Mgd2l0aCBzdHJ1Y3QKaW14X2RybV9j cnRjX2hlbHBlcl9mdW5jcyBhbnkgbW9yZS4gIEJ5IG1vdmluZyB0aGUgc3R1ZmYgdGhhdCB3ZQpj dXJyZW50bHkgZG8gaW4gaW14X2RybV9hZGRfY3J0YygpLCBsaWtlIG9mX25vZGUgc2V0dGluZyBh bmQKZHJtX2NydGNfaGVscGVyX2FkZCgpL2RybV9jcnRjX2luaXRfd2l0aF9wbGFuZXMoKSBpbnZv a2luZywgd2UgY2FuIGtpbGwKdGhpbmdzIGxpa2Ugc3RydWN0IGlteF9kcm1fY3J0YywgaW14X2Ry bV9jcnRjX2hlbHBlcl9mdW5jcyBhbmQgcmVsYXRlZApmdW5jdGlvbnMgY29tcGxldGVseS4KCkZ1 bmN0aW9ucyBpcHVfZW5hYmxlX3ZibGFuaygpIGFuZCBpcHVfZGlzYWJsZV92YmxhbmsoKSBhcmUg bW92ZWQgYXJvdW5kCndpdGhvdXQgY2hhbmdlcywgb25seSBmb3Igc2F2aW5nIHRoZSBmb3J3YXJk IGRlY2xhcmF0aW9ucy4KClNpZ25lZC1vZmYtYnk6IFNoYXduIEd1byA8c2hhd24uZ3VvQGxpbmFy by5vcmc+CkNjOiBQaGlsaXBwIFphYmVsIDxwLnphYmVsQHBlbmd1dHJvbml4LmRlPgotLS0KIGRy aXZlcnMvZ3B1L2RybS9pbXgvaW14LWRybS1jb3JlLmMgfCAxMDMgKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2lteC9pbXgtZHJtLmggICAgICB8 ICAxMyAtLS0tLQogZHJpdmVycy9ncHUvZHJtL2lteC9pcHV2My1jcnRjLmMgICB8ICA1OCArKysr KysrKy0tLS0tLS0tLS0tLS0KIDMgZmlsZXMgY2hhbmdlZCwgMjQgaW5zZXJ0aW9ucygrKSwgMTUw IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pbXgvaW14LWRybS1j b3JlLmMgYi9kcml2ZXJzL2dwdS9kcm0vaW14L2lteC1kcm0tY29yZS5jCmluZGV4IDMzNDA0Mjk1 YjQ0Ny4uOTM0Y2EzMmNmOGY0IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaW14L2lteC1k cm0tY29yZS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pbXgvaW14LWRybS1jb3JlLmMKQEAgLTQw LDE3ICs0MCwxMSBAQCBzdHJ1Y3QgaW14X2RybV9jb21wb25lbnQgewogCiBzdHJ1Y3QgaW14X2Ry bV9kZXZpY2UgewogCXN0cnVjdCBkcm1fZGV2aWNlCQkJKmRybTsKLQlzdHJ1Y3QgaW14X2RybV9j cnRjCQkJKmNydGNbTUFYX0NSVENdOwogCXVuc2lnbmVkIGludAkJCQlwaXBlczsKIAlzdHJ1Y3Qg ZHJtX2ZiZGV2X2NtYQkJCSpmYmhlbHBlcjsKIAlzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZQkJCSpz dGF0ZTsKIH07CiAKLXN0cnVjdCBpbXhfZHJtX2NydGMgewotCXN0cnVjdCBkcm1fY3J0YwkJCQkq Y3J0YzsKLQlzdHJ1Y3QgaW14X2RybV9jcnRjX2hlbHBlcl9mdW5jcwlpbXhfZHJtX2hlbHBlcl9m dW5jczsKLX07Ci0KICNpZiBJU19FTkFCTEVEKENPTkZJR19EUk1fRkJERVZfRU1VTEFUSU9OKQog c3RhdGljIGludCBsZWdhY3lmYl9kZXB0aCA9IDE2OwogbW9kdWxlX3BhcmFtKGxlZ2FjeWZiX2Rl cHRoLCBpbnQsIDA0NDQpOwpAQCAtNjMsMzggKzU3LDYgQEAgc3RhdGljIHZvaWQgaW14X2RybV9k cml2ZXJfbGFzdGNsb3NlKHN0cnVjdCBkcm1fZGV2aWNlICpkcm0pCiAJZHJtX2ZiZGV2X2NtYV9y ZXN0b3JlX21vZGUoaW14ZHJtLT5mYmhlbHBlcik7CiB9CiAKLXN0YXRpYyBpbnQgaW14X2RybV9l bmFibGVfdmJsYW5rKHN0cnVjdCBkcm1fZGV2aWNlICpkcm0sIHVuc2lnbmVkIGludCBwaXBlKQot ewotCXN0cnVjdCBpbXhfZHJtX2RldmljZSAqaW14ZHJtID0gZHJtLT5kZXZfcHJpdmF0ZTsKLQlz dHJ1Y3QgaW14X2RybV9jcnRjICppbXhfZHJtX2NydGMgPSBpbXhkcm0tPmNydGNbcGlwZV07Ci0J aW50IHJldDsKLQotCWlmICghaW14X2RybV9jcnRjKQotCQlyZXR1cm4gLUVJTlZBTDsKLQotCWlm ICghaW14X2RybV9jcnRjLT5pbXhfZHJtX2hlbHBlcl9mdW5jcy5lbmFibGVfdmJsYW5rKQotCQly ZXR1cm4gLUVOT1NZUzsKLQotCXJldCA9IGlteF9kcm1fY3J0Yy0+aW14X2RybV9oZWxwZXJfZnVu Y3MuZW5hYmxlX3ZibGFuaygKLQkJCWlteF9kcm1fY3J0Yy0+Y3J0Yyk7Ci0KLQlyZXR1cm4gcmV0 OwotfQotCi1zdGF0aWMgdm9pZCBpbXhfZHJtX2Rpc2FibGVfdmJsYW5rKHN0cnVjdCBkcm1fZGV2 aWNlICpkcm0sIHVuc2lnbmVkIGludCBwaXBlKQotewotCXN0cnVjdCBpbXhfZHJtX2RldmljZSAq aW14ZHJtID0gZHJtLT5kZXZfcHJpdmF0ZTsKLQlzdHJ1Y3QgaW14X2RybV9jcnRjICppbXhfZHJt X2NydGMgPSBpbXhkcm0tPmNydGNbcGlwZV07Ci0KLQlpZiAoIWlteF9kcm1fY3J0YykKLQkJcmV0 dXJuOwotCi0JaWYgKCFpbXhfZHJtX2NydGMtPmlteF9kcm1faGVscGVyX2Z1bmNzLmRpc2FibGVf dmJsYW5rKQotCQlyZXR1cm47Ci0KLQlpbXhfZHJtX2NydGMtPmlteF9kcm1faGVscGVyX2Z1bmNz LmRpc2FibGVfdmJsYW5rKGlteF9kcm1fY3J0Yy0+Y3J0Yyk7Ci19Ci0KIHN0YXRpYyBjb25zdCBz dHJ1Y3QgZmlsZV9vcGVyYXRpb25zIGlteF9kcm1fZHJpdmVyX2ZvcHMgPSB7CiAJLm93bmVyID0g VEhJU19NT0RVTEUsCiAJLm9wZW4gPSBkcm1fb3BlbiwKQEAgLTE4MCw2NyArMTQyLDYgQEAgc3Rh dGljIHZvaWQgaW14X2RybV9hdG9taWNfY29tbWl0X3RhaWwoc3RydWN0IGRybV9hdG9taWNfc3Rh dGUgKnN0YXRlKQogCS5hdG9taWNfY29tbWl0X3RhaWwgPSBpbXhfZHJtX2F0b21pY19jb21taXRf dGFpbCwKIH07CiAKLS8qCi0gKiBpbXhfZHJtX2FkZF9jcnRjIC0gYWRkIGEgbmV3IGNydGMKLSAq LwotaW50IGlteF9kcm1fYWRkX2NydGMoc3RydWN0IGRybV9kZXZpY2UgKmRybSwgc3RydWN0IGRy bV9jcnRjICpjcnRjLAotCQlzdHJ1Y3QgaW14X2RybV9jcnRjICoqbmV3X2NydGMsIHN0cnVjdCBk cm1fcGxhbmUgKnByaW1hcnlfcGxhbmUsCi0JCWNvbnN0IHN0cnVjdCBpbXhfZHJtX2NydGNfaGVs cGVyX2Z1bmNzICppbXhfZHJtX2hlbHBlcl9mdW5jcywKLQkJc3RydWN0IGRldmljZV9ub2RlICpw b3J0KQotewotCXN0cnVjdCBpbXhfZHJtX2RldmljZSAqaW14ZHJtID0gZHJtLT5kZXZfcHJpdmF0 ZTsKLQlzdHJ1Y3QgaW14X2RybV9jcnRjICppbXhfZHJtX2NydGM7Ci0KLQkvKgotCSAqIFRoZSB2 YmxhbmsgYXJyYXlzIGFyZSBkaW1lbnNpb25lZCBieSBNQVhfQ1JUQyAtIHdlIGNhbid0Ci0JICog cGFzcyBJRHMgZ3JlYXRlciB0aGFuIHRoaXMgdG8gdGhvc2UgZnVuY3Rpb25zLgotCSAqLwotCWlm IChpbXhkcm0tPnBpcGVzID49IE1BWF9DUlRDKQotCQlyZXR1cm4gLUVJTlZBTDsKLQotCWlmIChp bXhkcm0tPmRybS0+b3Blbl9jb3VudCkKLQkJcmV0dXJuIC1FQlVTWTsKLQotCWlteF9kcm1fY3J0 YyA9IGt6YWxsb2Moc2l6ZW9mKCppbXhfZHJtX2NydGMpLCBHRlBfS0VSTkVMKTsKLQlpZiAoIWlt eF9kcm1fY3J0YykKLQkJcmV0dXJuIC1FTk9NRU07Ci0KLQlpbXhfZHJtX2NydGMtPmlteF9kcm1f aGVscGVyX2Z1bmNzID0gKmlteF9kcm1faGVscGVyX2Z1bmNzOwotCWlteF9kcm1fY3J0Yy0+Y3J0 YyA9IGNydGM7Ci0KLQljcnRjLT5wb3J0ID0gcG9ydDsKLQotCWlteGRybS0+Y3J0Y1tpbXhkcm0t PnBpcGVzKytdID0gaW14X2RybV9jcnRjOwotCi0JKm5ld19jcnRjID0gaW14X2RybV9jcnRjOwot Ci0JZHJtX2NydGNfaGVscGVyX2FkZChjcnRjLAotCQkJaW14X2RybV9jcnRjLT5pbXhfZHJtX2hl bHBlcl9mdW5jcy5jcnRjX2hlbHBlcl9mdW5jcyk7Ci0KLQlkcm1fY3J0Y19pbml0X3dpdGhfcGxh bmVzKGRybSwgY3J0YywgcHJpbWFyeV9wbGFuZSwgTlVMTCwKLQkJCWlteF9kcm1fY3J0Yy0+aW14 X2RybV9oZWxwZXJfZnVuY3MuY3J0Y19mdW5jcywgTlVMTCk7Ci0KLQlyZXR1cm4gMDsKLX0KLUVY UE9SVF9TWU1CT0xfR1BMKGlteF9kcm1fYWRkX2NydGMpOwotCi0vKgotICogaW14X2RybV9yZW1v dmVfY3J0YyAtIHJlbW92ZSBhIGNydGMKLSAqLwotaW50IGlteF9kcm1fcmVtb3ZlX2NydGMoc3Ry dWN0IGlteF9kcm1fY3J0YyAqaW14X2RybV9jcnRjKQotewotCXN0cnVjdCBpbXhfZHJtX2Rldmlj ZSAqaW14ZHJtID0gaW14X2RybV9jcnRjLT5jcnRjLT5kZXYtPmRldl9wcml2YXRlOwotCXVuc2ln bmVkIGludCBwaXBlID0gZHJtX2NydGNfaW5kZXgoaW14X2RybV9jcnRjLT5jcnRjKTsKLQotCWRy bV9jcnRjX2NsZWFudXAoaW14X2RybV9jcnRjLT5jcnRjKTsKLQotCWlteGRybS0+Y3J0Y1twaXBl XSA9IE5VTEw7Ci0KLQlrZnJlZShpbXhfZHJtX2NydGMpOwotCi0JcmV0dXJuIDA7Ci19Ci1FWFBP UlRfU1lNQk9MX0dQTChpbXhfZHJtX3JlbW92ZV9jcnRjKTsKIAogaW50IGlteF9kcm1fZW5jb2Rl cl9wYXJzZV9vZihzdHJ1Y3QgZHJtX2RldmljZSAqZHJtLAogCXN0cnVjdCBkcm1fZW5jb2RlciAq ZW5jb2Rlciwgc3RydWN0IGRldmljZV9ub2RlICpucCkKQEAgLTI4OSw4ICsxOTAsOCBAQCBpbnQg aW14X2RybV9lbmNvZGVyX3BhcnNlX29mKHN0cnVjdCBkcm1fZGV2aWNlICpkcm0sCiAJLmdlbV9w cmltZV92dW5tYXAJPSBkcm1fZ2VtX2NtYV9wcmltZV92dW5tYXAsCiAJLmdlbV9wcmltZV9tbWFw CQk9IGRybV9nZW1fY21hX3ByaW1lX21tYXAsCiAJLmdldF92YmxhbmtfY291bnRlcgk9IGRybV92 Ymxhbmtfbm9faHdfY291bnRlciwKLQkuZW5hYmxlX3ZibGFuawkJPSBpbXhfZHJtX2VuYWJsZV92 YmxhbmssCi0JLmRpc2FibGVfdmJsYW5rCQk9IGlteF9kcm1fZGlzYWJsZV92YmxhbmssCisJLmVu YWJsZV92YmxhbmsJCT0gZHJtX2NydGNfZW5hYmxlX3ZibGFuaywKKwkuZGlzYWJsZV92YmxhbmsJ CT0gZHJtX2NydGNfZGlzYWJsZV92YmxhbmssCiAJLmlvY3RscwkJCT0gaW14X2RybV9pb2N0bHMs CiAJLm51bV9pb2N0bHMJCT0gQVJSQVlfU0laRShpbXhfZHJtX2lvY3RscyksCiAJLmZvcHMJCQk9 ICZpbXhfZHJtX2RyaXZlcl9mb3BzLApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2lteC9p bXgtZHJtLmggYi9kcml2ZXJzL2dwdS9kcm0vaW14L2lteC1kcm0uaAppbmRleCA1YTkxY2IxNmM4 ZmEuLmNjMDAzMzM0NTA1ZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2lteC9pbXgtZHJt LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2lteC9pbXgtZHJtLmgKQEAgLTI1LDE5ICsyNSw2IEBA IHN0YXRpYyBpbmxpbmUgc3RydWN0IGlteF9jcnRjX3N0YXRlICp0b19pbXhfY3J0Y19zdGF0ZShz dHJ1Y3QgZHJtX2NydGNfc3RhdGUgKnMpCiB7CiAJcmV0dXJuIGNvbnRhaW5lcl9vZihzLCBzdHJ1 Y3QgaW14X2NydGNfc3RhdGUsIGJhc2UpOwogfQotCi1zdHJ1Y3QgaW14X2RybV9jcnRjX2hlbHBl cl9mdW5jcyB7Ci0JaW50ICgqZW5hYmxlX3ZibGFuaykoc3RydWN0IGRybV9jcnRjICpjcnRjKTsK LQl2b2lkICgqZGlzYWJsZV92YmxhbmspKHN0cnVjdCBkcm1fY3J0YyAqY3J0Yyk7Ci0JY29uc3Qg c3RydWN0IGRybV9jcnRjX2hlbHBlcl9mdW5jcyAqY3J0Y19oZWxwZXJfZnVuY3M7Ci0JY29uc3Qg c3RydWN0IGRybV9jcnRjX2Z1bmNzICpjcnRjX2Z1bmNzOwotfTsKLQotaW50IGlteF9kcm1fYWRk X2NydGMoc3RydWN0IGRybV9kZXZpY2UgKmRybSwgc3RydWN0IGRybV9jcnRjICpjcnRjLAotCQlz dHJ1Y3QgaW14X2RybV9jcnRjICoqbmV3X2NydGMsIHN0cnVjdCBkcm1fcGxhbmUgKnByaW1hcnlf cGxhbmUsCi0JCWNvbnN0IHN0cnVjdCBpbXhfZHJtX2NydGNfaGVscGVyX2Z1bmNzICppbXhfaGVs cGVyX2Z1bmNzLAotCQlzdHJ1Y3QgZGV2aWNlX25vZGUgKnBvcnQpOwotaW50IGlteF9kcm1fcmVt b3ZlX2NydGMoc3RydWN0IGlteF9kcm1fY3J0YyAqKTsKIGludCBpbXhfZHJtX2luaXRfZHJtKHN0 cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsCiAJCWludCBwcmVmZXJyZWRfYnBwKTsKIGludCBp bXhfZHJtX2V4aXRfZHJtKHZvaWQpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2lteC9p cHV2My1jcnRjLmMgYi9kcml2ZXJzL2dwdS9kcm0vaW14L2lwdXYzLWNydGMuYwppbmRleCA2YmU1 MTVhOWZiNjkuLmEzZjI4NDNiNzhjZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2lteC9p cHV2My1jcnRjLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2lteC9pcHV2My1jcnRjLmMKQEAgLTEy OSwxOCArMTI5LDMxIEBAIHN0YXRpYyB2b2lkIGlteF9kcm1fY3J0Y19kZXN0cm95X3N0YXRlKHN0 cnVjdCBkcm1fY3J0YyAqY3J0YywKIAlrZnJlZSh0b19pbXhfY3J0Y19zdGF0ZShzdGF0ZSkpOwog fQogCi1zdGF0aWMgdm9pZCBpbXhfZHJtX2NydGNfZGVzdHJveShzdHJ1Y3QgZHJtX2NydGMgKmNy dGMpCitzdGF0aWMgaW50IGlwdV9lbmFibGVfdmJsYW5rKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykK K3sKKwlzdHJ1Y3QgaXB1X2NydGMgKmlwdV9jcnRjID0gdG9faXB1X2NydGMoY3J0Yyk7CisKKwll bmFibGVfaXJxKGlwdV9jcnRjLT5pcnEpOworCisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyB2b2lk IGlwdV9kaXNhYmxlX3ZibGFuayhzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCiB7Ci0JaW14X2RybV9y ZW1vdmVfY3J0Yyh0b19pcHVfY3J0YyhjcnRjKS0+aW14X2NydGMpOworCXN0cnVjdCBpcHVfY3J0 YyAqaXB1X2NydGMgPSB0b19pcHVfY3J0YyhjcnRjKTsKKworCWRpc2FibGVfaXJxX25vc3luYyhp cHVfY3J0Yy0+aXJxKTsKIH0KIAogc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fY3J0Y19mdW5jcyBp cHVfY3J0Y19mdW5jcyA9IHsKIAkuc2V0X2NvbmZpZyA9IGRybV9hdG9taWNfaGVscGVyX3NldF9j b25maWcsCi0JLmRlc3Ryb3kgPSBpbXhfZHJtX2NydGNfZGVzdHJveSwKKwkuZGVzdHJveSA9IGRy bV9jcnRjX2NsZWFudXAsCiAJLnBhZ2VfZmxpcCA9IGRybV9hdG9taWNfaGVscGVyX3BhZ2VfZmxp cCwKIAkucmVzZXQgPSBpbXhfZHJtX2NydGNfcmVzZXQsCiAJLmF0b21pY19kdXBsaWNhdGVfc3Rh dGUgPSBpbXhfZHJtX2NydGNfZHVwbGljYXRlX3N0YXRlLAogCS5hdG9taWNfZGVzdHJveV9zdGF0 ZSA9IGlteF9kcm1fY3J0Y19kZXN0cm95X3N0YXRlLAorCS5lbmFibGVfdmJsYW5rID0gaXB1X2Vu YWJsZV92YmxhbmssCisJLmRpc2FibGVfdmJsYW5rID0gaXB1X2Rpc2FibGVfdmJsYW5rLAogfTsK IAogc3RhdGljIGlycXJldHVybl90IGlwdV9pcnFfaGFuZGxlcihpbnQgaXJxLCB2b2lkICpkZXZf aWQpCkBAIC0yNjEsMjkgKzI3NCw2IEBAIHN0YXRpYyB2b2lkIGlwdV9jcnRjX21vZGVfc2V0X25v ZmIoc3RydWN0IGRybV9jcnRjICpjcnRjKQogCS5lbmFibGUgPSBpcHVfY3J0Y19lbmFibGUsCiB9 OwogCi1zdGF0aWMgaW50IGlwdV9lbmFibGVfdmJsYW5rKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykK LXsKLQlzdHJ1Y3QgaXB1X2NydGMgKmlwdV9jcnRjID0gdG9faXB1X2NydGMoY3J0Yyk7Ci0KLQll bmFibGVfaXJxKGlwdV9jcnRjLT5pcnEpOwotCi0JcmV0dXJuIDA7Ci19Ci0KLXN0YXRpYyB2b2lk IGlwdV9kaXNhYmxlX3ZibGFuayhzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCi17Ci0Jc3RydWN0IGlw dV9jcnRjICppcHVfY3J0YyA9IHRvX2lwdV9jcnRjKGNydGMpOwotCi0JZGlzYWJsZV9pcnFfbm9z eW5jKGlwdV9jcnRjLT5pcnEpOwotfQotCi1zdGF0aWMgY29uc3Qgc3RydWN0IGlteF9kcm1fY3J0 Y19oZWxwZXJfZnVuY3MgaXB1X2NydGNfaGVscGVyX2Z1bmNzID0gewotCS5lbmFibGVfdmJsYW5r ID0gaXB1X2VuYWJsZV92YmxhbmssCi0JLmRpc2FibGVfdmJsYW5rID0gaXB1X2Rpc2FibGVfdmJs YW5rLAotCS5jcnRjX2Z1bmNzID0gJmlwdV9jcnRjX2Z1bmNzLAotCS5jcnRjX2hlbHBlcl9mdW5j cyA9ICZpcHVfaGVscGVyX2Z1bmNzLAotfTsKLQogc3RhdGljIHZvaWQgaXB1X3B1dF9yZXNvdXJj ZXMoc3RydWN0IGlwdV9jcnRjICppcHVfY3J0YykKIHsKIAlpZiAoIUlTX0VSUl9PUl9OVUxMKGlw dV9jcnRjLT5kYykpCkBAIC0zMjEsNiArMzExLDcgQEAgc3RhdGljIGludCBpcHVfY3J0Y19pbml0 KHN0cnVjdCBpcHVfY3J0YyAqaXB1X2NydGMsCiAJc3RydWN0IGlwdV9jbGllbnRfcGxhdGZvcm1k YXRhICpwZGF0YSwgc3RydWN0IGRybV9kZXZpY2UgKmRybSkKIHsKIAlzdHJ1Y3QgaXB1X3NvYyAq aXB1ID0gZGV2X2dldF9kcnZkYXRhKGlwdV9jcnRjLT5kZXYtPnBhcmVudCk7CisJc3RydWN0IGRy bV9jcnRjICpjcnRjID0gJmlwdV9jcnRjLT5iYXNlOwogCWludCBkcCA9IC1FSU5WQUw7CiAJaW50 IHJldDsKIApAQCAtMzQwLDE5ICszMzEsMTYgQEAgc3RhdGljIGludCBpcHVfY3J0Y19pbml0KHN0 cnVjdCBpcHVfY3J0YyAqaXB1X2NydGMsCiAJCWdvdG8gZXJyX3B1dF9yZXNvdXJjZXM7CiAJfQog Ci0JcmV0ID0gaW14X2RybV9hZGRfY3J0Yyhkcm0sICZpcHVfY3J0Yy0+YmFzZSwgJmlwdV9jcnRj LT5pbXhfY3J0YywKLQkJCSZpcHVfY3J0Yy0+cGxhbmVbMF0tPmJhc2UsICZpcHVfY3J0Y19oZWxw ZXJfZnVuY3MsCi0JCQlwZGF0YS0+b2Zfbm9kZSk7Ci0JaWYgKHJldCkgewotCQlkZXZfZXJyKGlw dV9jcnRjLT5kZXYsICJhZGRpbmcgY3J0YyBmYWlsZWQgd2l0aCAlZC5cbiIsIHJldCk7Ci0JCWdv dG8gZXJyX3B1dF9yZXNvdXJjZXM7Ci0JfQorCWNydGMtPnBvcnQgPSBwZGF0YS0+b2Zfbm9kZTsK Kwlkcm1fY3J0Y19oZWxwZXJfYWRkKGNydGMsICZpcHVfaGVscGVyX2Z1bmNzKTsKKwlkcm1fY3J0 Y19pbml0X3dpdGhfcGxhbmVzKGRybSwgY3J0YywgJmlwdV9jcnRjLT5wbGFuZVswXS0+YmFzZSwg TlVMTCwKKwkJCQkgICZpcHVfY3J0Y19mdW5jcywgTlVMTCk7CiAKIAlyZXQgPSBpcHVfcGxhbmVf Z2V0X3Jlc291cmNlcyhpcHVfY3J0Yy0+cGxhbmVbMF0pOwogCWlmIChyZXQpIHsKIAkJZGV2X2Vy cihpcHVfY3J0Yy0+ZGV2LCAiZ2V0dGluZyBwbGFuZSAwIHJlc291cmNlcyBmYWlsZWQgd2l0aCAl ZC5cbiIsCiAJCQlyZXQpOwotCQlnb3RvIGVycl9yZW1vdmVfY3J0YzsKKwkJZ290byBlcnJfcHV0 X3Jlc291cmNlczsKIAl9CiAKIAkvKiBJZiB0aGlzIGNydGMgaXMgdXNpbmcgdGhlIERQLCBhZGQg YW4gb3ZlcmxheSBwbGFuZSAqLwpAQCAtMzkwLDggKzM3OCw2IEBAIHN0YXRpYyBpbnQgaXB1X2Ny dGNfaW5pdChzdHJ1Y3QgaXB1X2NydGMgKmlwdV9jcnRjLAogCQlpcHVfcGxhbmVfcHV0X3Jlc291 cmNlcyhpcHVfY3J0Yy0+cGxhbmVbMV0pOwogZXJyX3B1dF9wbGFuZTBfcmVzOgogCWlwdV9wbGFu ZV9wdXRfcmVzb3VyY2VzKGlwdV9jcnRjLT5wbGFuZVswXSk7Ci1lcnJfcmVtb3ZlX2NydGM6Ci0J aW14X2RybV9yZW1vdmVfY3J0YyhpcHVfY3J0Yy0+aW14X2NydGMpOwogZXJyX3B1dF9yZXNvdXJj ZXM6CiAJaXB1X3B1dF9yZXNvdXJjZXMoaXB1X2NydGMpOwogCi0tIAoxLjkuMQoKX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcg bGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRl c2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==