From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-12.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0F0E1C55178 for ; Tue, 27 Oct 2020 20:40:20 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 9C3A520725 for ; Tue, 27 Oct 2020 20:40:19 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9C3A520725 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 1BF9F6EC49; Tue, 27 Oct 2020 20:40:19 +0000 (UTC) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTPS id D8A296EC46 for ; Tue, 27 Oct 2020 20:40:16 +0000 (UTC) IronPort-SDR: p4hLYBI6NxIL9fy90udESbMzAjJksXLRR5IGmpzgGwwWEZjWHEuDM+9XQVDkHW65qNG3LwAhCP /kjSpt+Ydi2Q== X-IronPort-AV: E=McAfee;i="6000,8403,9787"; a="168288451" X-IronPort-AV: E=Sophos;i="5.77,424,1596524400"; d="scan'208";a="168288451" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Oct 2020 13:40:16 -0700 IronPort-SDR: LXNxA4uXVG1D81LZhVnv9OtULmw+j7MMFvjVUJ7dP9+e4UJEXZ20EMizxFkUfQdBKFzbfE52rI lKDnuo2JcLiw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,424,1596524400"; d="scan'208";a="334520337" Received: from stinkbox.fi.intel.com (HELO stinkbox) ([10.237.72.174]) by orsmga002.jf.intel.com with SMTP; 27 Oct 2020 13:40:14 -0700 Received: by stinkbox (sSMTP sendmail emulation); Tue, 27 Oct 2020 22:40:13 +0200 From: Ville Syrjala To: intel-gfx@lists.freedesktop.org Date: Tue, 27 Oct 2020 22:39:53 +0200 Message-Id: <20201027203955.28032-7-ville.syrjala@linux.intel.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20201027203955.28032-1-ville.syrjala@linux.intel.com> References: <20201027203955.28032-1-ville.syrjala@linux.intel.com> MIME-Version: 1.0 Subject: [Intel-gfx] [PATCH 6/8] drm/i915: Extract intel_crtc_dbuf_weights() X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KCkV4 dHJhY3QgdGhlIGNvZGUgdG8gY2FsY3VsYXRlIHRoZSB3ZWlnaHRzIHVzZWQgdG8gY2h1bmsgdXAg dGhlIGRidWYKYmV0d2VlbiBwaXBlcy4gVGhlcmUncyBzdGlsbCBleHRyYSBzdHVmZiBpbiB0aGVy ZSB0aGF0IHNob3VsZG4ndCBiZQp0aGVyZSBhbmQgbXVzdCBiZSBtb3ZlZCBvdXQsIGJ1dCB0aGF0 IHJlcXVpcmVzIGEgYml0IG1vcmUgc3RhdGUgdG8KYmUgdHJhY2tlZCBpbiB0aGUgZGJ1ZiBzdGF0 ZS4KCkNjOiBTdGFuaXNsYXYgTGlzb3Zza2l5IDxzdGFuaXNsYXYubGlzb3Zza2l5QGludGVsLmNv bT4KU2lnbmVkLW9mZi1ieTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4Lmlu dGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jIHwgMTQ1ICsrKysr KysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgODkgaW5zZXJ0aW9u cygrKSwgNTYgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfcG0uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMKaW5kZXggMmVjNDhk OTUyMmU4Li5iYzRkN2NlNWZkN2MgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX3BtLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYwpAQCAtNDExMSw2 MiArNDExMSwzNSBAQCBzdGF0aWMgdW5zaWduZWQgaW50IGludGVsX2NydGNfZGRiX3dlaWdodChj b25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdAogc3RhdGljIHU4IHNrbF9jb21w dXRlX2RidWZfc2xpY2VzKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAogCQkJCSAgdTggYWN0aXZl X3BpcGVzKTsKIAotc3RhdGljIGludAotc2tsX2RkYl9nZXRfcGlwZV9hbGxvY2F0aW9uX2xpbWl0 cyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCi0JCQkJICAgY29uc3Qgc3RydWN0 IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsCi0JCQkJICAgY29uc3QgdTY0IHRvdGFsX2Rh dGFfcmF0ZSwKLQkJCQkgICBzdHJ1Y3Qgc2tsX2RkYl9lbnRyeSAqYWxsb2MsIC8qIG91dCAqLwot CQkJCSAgIGludCAqbnVtX2FjdGl2ZSAvKiBvdXQgKi8pCitzdGF0aWMgaW50IGludGVsX2NydGNf ZGJ1Zl93ZWlnaHRzKHN0cnVjdCBpbnRlbF9hdG9taWNfc3RhdGUgKnN0YXRlLAorCQkJCSAgIHN0 cnVjdCBpbnRlbF9jcnRjICpmb3JfY3J0YywKKwkJCQkgICB1bnNpZ25lZCBpbnQgKndlaWdodF9z dGFydCwKKwkJCQkgICB1bnNpZ25lZCBpbnQgKndlaWdodF9lbmQsCisJCQkJICAgdW5zaWduZWQg aW50ICp3ZWlnaHRfdG90YWwpCiB7Ci0Jc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlID0g Y3J0Y19zdGF0ZS0+dWFwaS5zdGF0ZTsKLQlzdHJ1Y3QgaW50ZWxfYXRvbWljX3N0YXRlICppbnRl bF9zdGF0ZSA9IHRvX2ludGVsX2F0b21pY19zdGF0ZShzdGF0ZSk7Ci0Jc3RydWN0IGludGVsX2Ny dGMgKmZvcl9jcnRjID0gdG9faW50ZWxfY3J0YyhjcnRjX3N0YXRlLT51YXBpLmNydGMpOwotCXN0 cnVjdCBpbnRlbF9jcnRjICpjcnRjOwotCXVuc2lnbmVkIGludCBwaXBlX3dlaWdodCA9IDAsIHRv dGFsX3dlaWdodCA9IDAsIHdlaWdodF9iZWZvcmVfcGlwZSA9IDA7CisJY29uc3Qgc3RydWN0IGlu dGVsX2RidWZfc3RhdGUgKm9sZF9kYnVmX3N0YXRlID0KKwkJaW50ZWxfYXRvbWljX2dldF9vbGRf ZGJ1Zl9zdGF0ZShzdGF0ZSk7CisJc3RydWN0IGludGVsX2RidWZfc3RhdGUgKm5ld19kYnVmX3N0 YXRlID0KKwkJaW50ZWxfYXRvbWljX2dldF9uZXdfZGJ1Zl9zdGF0ZShzdGF0ZSk7CisJdTggYWN0 aXZlX3BpcGVzID0gbmV3X2RidWZfc3RhdGUtPmFjdGl2ZV9waXBlczsKIAllbnVtIHBpcGUgZm9y X3BpcGUgPSBmb3JfY3J0Yy0+cGlwZTsKLQlzdHJ1Y3QgaW50ZWxfZGJ1Zl9zdGF0ZSAqbmV3X2Ri dWZfc3RhdGUgPQotCQlpbnRlbF9hdG9taWNfZ2V0X25ld19kYnVmX3N0YXRlKGludGVsX3N0YXRl KTsKLQljb25zdCBzdHJ1Y3QgaW50ZWxfZGJ1Zl9zdGF0ZSAqb2xkX2RidWZfc3RhdGUgPQotCQlp bnRlbF9hdG9taWNfZ2V0X29sZF9kYnVmX3N0YXRlKGludGVsX3N0YXRlKTsKLQl1OCBhY3RpdmVf cGlwZXMgPSBuZXdfZGJ1Zl9zdGF0ZS0+YWN0aXZlX3BpcGVzOwotCXN0cnVjdCBza2xfZGRiX2Vu dHJ5IGRkYl9zbGljZXM7Ci0JdTMyIGRkYl9yYW5nZV9zaXplOwotCXUzMiBpOwotCXUzMiBkYnVm X3NsaWNlX21hc2s7Ci0JdTMyIHRvdGFsX3NsaWNlX21hc2s7Ci0JdTMyIHN0YXJ0LCBlbmQ7Ci0J aW50IHJldDsKLQotCSpudW1fYWN0aXZlID0gaHdlaWdodDgoYWN0aXZlX3BpcGVzKTsKLQotCWlm ICghY3J0Y19zdGF0ZS0+aHcuYWN0aXZlKSB7Ci0JCWFsbG9jLT5zdGFydCA9IDA7Ci0JCWFsbG9j LT5lbmQgPSAwOwotCQlyZXR1cm4gMDsKLQl9Ci0KLQkvKgotCSAqIElmIHRoZSBzdGF0ZSBkb2Vz bid0IGNoYW5nZSB0aGUgYWN0aXZlIENSVEMncyBvciB0aGVyZSBpcyBubwotCSAqIG1vZGVzZXQg cmVxdWVzdCwgdGhlbiB0aGVyZSdzIG5vIG5lZWQgdG8gcmVjYWxjdWxhdGU7Ci0JICogdGhlIGV4 aXN0aW5nIHBpcGUgYWxsb2NhdGlvbiBsaW1pdHMgc2hvdWxkIHJlbWFpbiB1bmNoYW5nZWQuCi0J ICogTm90ZSB0aGF0IHdlJ3JlIHNhZmUgZnJvbSByYWNpbmcgY29tbWl0cyBzaW5jZSBhbnkgcmFj aW5nIGNvbW1pdAotCSAqIHRoYXQgY2hhbmdlcyB0aGUgYWN0aXZlIENSVEMgbGlzdCBvciBkbyBt b2Rlc2V0IHdvdWxkIG5lZWQgdG8KLQkgKiBncmFiIF9hbGxfIGNydGMgbG9ja3MsIGluY2x1ZGlu ZyB0aGUgb25lIHdlIGN1cnJlbnRseSBob2xkLgotCSAqLwotCWlmIChvbGRfZGJ1Zl9zdGF0ZS0+ YWN0aXZlX3BpcGVzID09IG5ld19kYnVmX3N0YXRlLT5hY3RpdmVfcGlwZXMgJiYKLQkgICAgIWRl dl9wcml2LT53bS5kaXN0cnVzdF9iaW9zX3dtKQotCQlyZXR1cm4gMDsKKwljb25zdCBzdHJ1Y3Qg aW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZTsKKwlzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YzsK Kwl1OCBkYnVmX3NsaWNlX21hc2s7CisJdTggdG90YWxfc2xpY2VfbWFzazsKKwlpbnQgaSwgcmV0 OwogCiAJLyoKIAkgKiBHZXQgYWxsb3dlZCBEQnVmIHNsaWNlcyBmb3IgY29ycmVzcG9uZGVudCBw aXBlIGFuZCBwbGF0Zm9ybS4KIAkgKi8KIAlkYnVmX3NsaWNlX21hc2sgPSBza2xfY29tcHV0ZV9k YnVmX3NsaWNlcyhmb3JfY3J0YywgYWN0aXZlX3BpcGVzKTsKLQotCXNrbF9kZGJfZW50cnlfZm9y X3NsaWNlcyhkZXZfcHJpdiwgZGJ1Zl9zbGljZV9tYXNrLCAmZGRiX3NsaWNlcyk7Ci0JZGRiX3Jh bmdlX3NpemUgPSBza2xfZGRiX2VudHJ5X3NpemUoJmRkYl9zbGljZXMpOwotCiAJdG90YWxfc2xp Y2VfbWFzayA9IGRidWZfc2xpY2VfbWFzazsKLQlmb3JfZWFjaF9uZXdfaW50ZWxfY3J0Y19pbl9z dGF0ZShpbnRlbF9zdGF0ZSwgY3J0YywgY3J0Y19zdGF0ZSwgaSkgeworCisJKndlaWdodF9zdGFy dCA9IDA7CisJKndlaWdodF9lbmQgPSAwOworCSp3ZWlnaHRfdG90YWwgPSAwOworCisJZm9yX2Vh Y2hfbmV3X2ludGVsX2NydGNfaW5fc3RhdGUoc3RhdGUsIGNydGMsIGNydGNfc3RhdGUsIGkpIHsK IAkJZW51bSBwaXBlIHBpcGUgPSBjcnRjLT5waXBlOwogCQl1bnNpZ25lZCBpbnQgd2VpZ2h0Owog CQl1OCBwaXBlX2RidWZfc2xpY2VfbWFzazsKQEAgLTQxOTcsMTIgKzQxNzAsMTQgQEAgc2tsX2Rk Yl9nZXRfcGlwZV9hbGxvY2F0aW9uX2xpbWl0cyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYsCiAJCQljb250aW51ZTsKIAogCQl3ZWlnaHQgPSBpbnRlbF9jcnRjX2RkYl93ZWlnaHQo Y3J0Y19zdGF0ZSk7Ci0JCXRvdGFsX3dlaWdodCArPSB3ZWlnaHQ7CisJCSp3ZWlnaHRfdG90YWwg Kz0gd2VpZ2h0OwogCi0JCWlmIChwaXBlIDwgZm9yX3BpcGUpCi0JCQl3ZWlnaHRfYmVmb3JlX3Bp cGUgKz0gd2VpZ2h0OwotCQllbHNlIGlmIChwaXBlID09IGZvcl9waXBlKQotCQkJcGlwZV93ZWln aHQgPSB3ZWlnaHQ7CisJCWlmIChwaXBlIDwgZm9yX3BpcGUpIHsKKwkJCSp3ZWlnaHRfc3RhcnQg Kz0gd2VpZ2h0OworCQkJKndlaWdodF9lbmQgKz0gd2VpZ2h0OworCQl9IGVsc2UgaWYgKHBpcGUg PT0gZm9yX3BpcGUpIHsKKwkJCSp3ZWlnaHRfZW5kICs9IHdlaWdodDsKKwkJfQogCX0KIAogCS8q CkBAIC00MjE3LDE1ICs0MTkyLDczIEBAIHNrbF9kZGJfZ2V0X3BpcGVfYWxsb2NhdGlvbl9saW1p dHMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCQkJcmV0dXJuIHJldDsKIAl9 CiAKLQlzdGFydCA9IGRkYl9yYW5nZV9zaXplICogd2VpZ2h0X2JlZm9yZV9waXBlIC8gdG90YWxf d2VpZ2h0OwotCWVuZCA9IGRkYl9yYW5nZV9zaXplICogKHdlaWdodF9iZWZvcmVfcGlwZSArIHBp cGVfd2VpZ2h0KSAvIHRvdGFsX3dlaWdodDsKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludAor c2tsX2RkYl9nZXRfcGlwZV9hbGxvY2F0aW9uX2xpbWl0cyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYsCisJCQkJICAgY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNf c3RhdGUsCisJCQkJICAgY29uc3QgdTY0IHRvdGFsX2RhdGFfcmF0ZSwKKwkJCQkgICBzdHJ1Y3Qg c2tsX2RkYl9lbnRyeSAqYWxsb2MsIC8qIG91dCAqLworCQkJCSAgIGludCAqbnVtX2FjdGl2ZSAv KiBvdXQgKi8pCit7CisJc3RydWN0IGludGVsX2F0b21pY19zdGF0ZSAqc3RhdGUgPQorCQl0b19p bnRlbF9hdG9taWNfc3RhdGUoY3J0Y19zdGF0ZS0+dWFwaS5zdGF0ZSk7CisJc3RydWN0IGludGVs X2NydGMgKmNydGMgPSB0b19pbnRlbF9jcnRjKGNydGNfc3RhdGUtPnVhcGkuY3J0Yyk7CisJdW5z aWduZWQgaW50IHdlaWdodF9zdGFydCwgd2VpZ2h0X2VuZCwgd2VpZ2h0X3RvdGFsOworCWNvbnN0 IHN0cnVjdCBpbnRlbF9kYnVmX3N0YXRlICpvbGRfZGJ1Zl9zdGF0ZSA9CisJCWludGVsX2F0b21p Y19nZXRfb2xkX2RidWZfc3RhdGUoc3RhdGUpOworCXN0cnVjdCBpbnRlbF9kYnVmX3N0YXRlICpu ZXdfZGJ1Zl9zdGF0ZSA9CisJCWludGVsX2F0b21pY19nZXRfbmV3X2RidWZfc3RhdGUoc3RhdGUp OworCXU4IGFjdGl2ZV9waXBlcyA9IG5ld19kYnVmX3N0YXRlLT5hY3RpdmVfcGlwZXM7CisJc3Ry dWN0IHNrbF9kZGJfZW50cnkgZGRiX3NsaWNlczsKKwl1MzIgZGRiX3JhbmdlX3NpemU7CisJdTMy IGRidWZfc2xpY2VfbWFzazsKKwl1MzIgc3RhcnQsIGVuZDsKKwlpbnQgcmV0OworCisJKm51bV9h Y3RpdmUgPSBod2VpZ2h0OChhY3RpdmVfcGlwZXMpOworCisJaWYgKCFjcnRjX3N0YXRlLT5ody5h Y3RpdmUpIHsKKwkJYWxsb2MtPnN0YXJ0ID0gMDsKKwkJYWxsb2MtPmVuZCA9IDA7CisJCXJldHVy biAwOworCX0KKworCS8qCisJICogSWYgdGhlIHN0YXRlIGRvZXNuJ3QgY2hhbmdlIHRoZSBhY3Rp dmUgQ1JUQydzIG9yIHRoZXJlIGlzIG5vCisJICogbW9kZXNldCByZXF1ZXN0LCB0aGVuIHRoZXJl J3Mgbm8gbmVlZCB0byByZWNhbGN1bGF0ZTsKKwkgKiB0aGUgZXhpc3RpbmcgcGlwZSBhbGxvY2F0 aW9uIGxpbWl0cyBzaG91bGQgcmVtYWluIHVuY2hhbmdlZC4KKwkgKiBOb3RlIHRoYXQgd2UncmUg c2FmZSBmcm9tIHJhY2luZyBjb21taXRzIHNpbmNlIGFueSByYWNpbmcgY29tbWl0CisJICogdGhh dCBjaGFuZ2VzIHRoZSBhY3RpdmUgQ1JUQyBsaXN0IG9yIGRvIG1vZGVzZXQgd291bGQgbmVlZCB0 bworCSAqIGdyYWIgX2FsbF8gY3J0YyBsb2NrcywgaW5jbHVkaW5nIHRoZSBvbmUgd2UgY3VycmVu dGx5IGhvbGQuCisJICovCisJaWYgKG9sZF9kYnVmX3N0YXRlLT5hY3RpdmVfcGlwZXMgPT0gbmV3 X2RidWZfc3RhdGUtPmFjdGl2ZV9waXBlcyAmJgorCSAgICAhZGV2X3ByaXYtPndtLmRpc3RydXN0 X2Jpb3Nfd20pCisJCXJldHVybiAwOworCisJLyoKKwkgKiBHZXQgYWxsb3dlZCBEQnVmIHNsaWNl cyBmb3IgY29ycmVzcG9uZGVudCBwaXBlIGFuZCBwbGF0Zm9ybS4KKwkgKi8KKwlkYnVmX3NsaWNl X21hc2sgPSBza2xfY29tcHV0ZV9kYnVmX3NsaWNlcyhjcnRjLCBhY3RpdmVfcGlwZXMpOworCisJ c2tsX2RkYl9lbnRyeV9mb3Jfc2xpY2VzKGRldl9wcml2LCBkYnVmX3NsaWNlX21hc2ssICZkZGJf c2xpY2VzKTsKKwlkZGJfcmFuZ2Vfc2l6ZSA9IHNrbF9kZGJfZW50cnlfc2l6ZSgmZGRiX3NsaWNl cyk7CisKKwlyZXQgPSBpbnRlbF9jcnRjX2RidWZfd2VpZ2h0cyhzdGF0ZSwgY3J0YywKKwkJCQkg ICAgICAmd2VpZ2h0X3N0YXJ0LCAmd2VpZ2h0X2VuZCwgJndlaWdodF90b3RhbCk7CisJaWYgKHJl dCkKKwkJcmV0dXJuIHJldDsKKworCXN0YXJ0ID0gZGRiX3JhbmdlX3NpemUgKiB3ZWlnaHRfc3Rh cnQgLyB3ZWlnaHRfdG90YWw7CisJZW5kID0gZGRiX3JhbmdlX3NpemUgKiB3ZWlnaHRfZW5kIC8g d2VpZ2h0X3RvdGFsOwogCiAJYWxsb2MtPnN0YXJ0ID0gZGRiX3NsaWNlcy5zdGFydCArIHN0YXJ0 OwogCWFsbG9jLT5lbmQgPSBkZGJfc2xpY2VzLnN0YXJ0ICsgZW5kOwogCiAJZHJtX2RiZ19rbXMo JmRldl9wcml2LT5kcm0sCiAJCSAgICAiW0NSVEM6JWQ6JXNdIGRidWYgc2xpY2VzIDB4JXgsIGRk YiAoJWQgLSAlZCksIGFjdGl2ZSBwaXBlcyAweCV4XG4iLAotCQkgICAgZm9yX2NydGMtPmJhc2Uu YmFzZS5pZCwgZm9yX2NydGMtPmJhc2UubmFtZSwKKwkJICAgIGNydGMtPmJhc2UuYmFzZS5pZCwg Y3J0Yy0+YmFzZS5uYW1lLAogCQkgICAgZGJ1Zl9zbGljZV9tYXNrLCBhbGxvYy0+c3RhcnQsIGFs bG9jLT5lbmQsIGFjdGl2ZV9waXBlcyk7CiAKIAlyZXR1cm4gMDsKLS0gCjIuMjYuMgoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxp bmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==