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.7 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 D77B0C5517A for ; Fri, 30 Oct 2020 16:51: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 5659120725 for ; Fri, 30 Oct 2020 16:51:20 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 5659120725 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 AE9046E9DE; Fri, 30 Oct 2020 16:51:19 +0000 (UTC) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8D6406EDF4 for ; Fri, 30 Oct 2020 16:51:18 +0000 (UTC) IronPort-SDR: hUKnkztDdyZzGJZgsKeJgpnZynGPbAKrBWT8Ax3KUH1X7cg9HzpqQWxassKxvbH37/l9Nc2MmE HpQm0o3Z/0/A== X-IronPort-AV: E=McAfee;i="6000,8403,9790"; a="232812315" X-IronPort-AV: E=Sophos;i="5.77,434,1596524400"; d="scan'208";a="232812315" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Oct 2020 09:51:17 -0700 IronPort-SDR: oaKy8qmd0t70nwYbfuL56co9O4+9U/lxfbgx6M0jIgN3SMveEoz19RDD3PFcc77b9XtBVGMu6q eTKm5kE0qVIA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,434,1596524400"; d="scan'208";a="361900475" Received: from stinkbox.fi.intel.com (HELO stinkbox) ([10.237.72.174]) by FMSMGA003.fm.intel.com with SMTP; 30 Oct 2020 09:51:15 -0700 Received: by stinkbox (sSMTP sendmail emulation); Fri, 30 Oct 2020 18:51:14 +0200 From: Ville Syrjala To: intel-gfx@lists.freedesktop.org Date: Fri, 30 Oct 2020 18:50:45 +0200 Message-Id: <20201030165045.5000-11-ville.syrjala@linux.intel.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20201030165045.5000-1-ville.syrjala@linux.intel.com> References: <20201030165045.5000-1-ville.syrjala@linux.intel.com> MIME-Version: 1.0 Subject: [Intel-gfx] [PATCH 10/10] drm/i915: Polish ilk+ wm regidster bits 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" RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KClVz ZSBSRUdfR0VOTUFTSygpICYgY28uIGZvciBpbGsrIHdhdGVybWFybSByZWdpc3RlcnMuCgpTaWdu ZWQtb2ZmLWJ5OiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29t PgotLS0KIC4uLi9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfZGVidWdmcy5jICB8ICAy ICstCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oICAgICAgICAgICAgICAgfCA0MSAr KysrKysrLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jICAgICAgICAgICAg ICAgfCA1OSArKysrKysrKystLS0tLS0tLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDUwIGluc2VydGlv bnMoKyksIDUyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV9kZWJ1Z2ZzLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9k aXNwbGF5L2ludGVsX2Rpc3BsYXlfZGVidWdmcy5jCmluZGV4IGNmYjRjMTQ3NDk4Mi4uM2VlMjlh NzdlZWJhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rp c3BsYXlfZGVidWdmcy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxf ZGlzcGxheV9kZWJ1Z2ZzLmMKQEAgLTE1Miw3ICsxNTIsNyBAQCBzdGF0aWMgaW50IGk5MTVfc3Jf c3RhdHVzKHN0cnVjdCBzZXFfZmlsZSAqbSwgdm9pZCAqdW51c2VkKQogCWlmIChJTlRFTF9HRU4o ZGV2X3ByaXYpID49IDkpCiAJCS8qIG5vIGdsb2JhbCBTUiBzdGF0dXM7IGluc3BlY3QgcGVyLXBs YW5lIFdNICovOwogCWVsc2UgaWYgKEhBU19QQ0hfU1BMSVQoZGV2X3ByaXYpKQotCQlzcl9lbmFi bGVkID0gaW50ZWxfZGVfcmVhZChkZXZfcHJpdiwgV00xX0xQX0lMSykgJiBXTTFfTFBfU1JfRU47 CisJCXNyX2VuYWJsZWQgPSBpbnRlbF9kZV9yZWFkKGRldl9wcml2LCBXTTFfTFBfSUxLKSAmIFdN X0xQX0VOQUJMRTsKIAllbHNlIGlmIChJU19JOTY1R00oZGV2X3ByaXYpIHx8IElTX0c0WChkZXZf cHJpdikgfHwKIAkJIElTX0k5NDVHKGRldl9wcml2KSB8fCBJU19JOTQ1R00oZGV2X3ByaXYpKQog CQlzcl9lbmFibGVkID0gaW50ZWxfZGVfcmVhZChkZXZfcHJpdiwgRldfQkxDX1NFTEYpICYgRldf QkxDX1NFTEZfRU47CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5o IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaAppbmRleCAyNDliZjE3YmNmOWIuLmNk Y2M1NzQ1MjgyOCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaAor KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oCkBAIC02NDc1LDMzICs2NDc1LDMy IEBAIGVudW0gewogI2RlZmluZSBfV00wX1BJUEVDX0lWQgkJMHg0NTIwMAogI2RlZmluZSBXTTBf UElQRV9JTEsocGlwZSkJX01NSU9fUElQRTMoKHBpcGUpLCBfV00wX1BJUEVBX0lMSywgXAogCQkJ CQkgICAgX1dNMF9QSVBFQl9JTEssIF9XTTBfUElQRUNfSVZCKQotI2RlZmluZSAgV00wX1BJUEVf UExBTkVfTUFTSwkoMHhmZmZmIDw8IDE2KQotI2RlZmluZSAgV00wX1BJUEVfUExBTkVfU0hJRlQJ MTYKLSNkZWZpbmUgIFdNMF9QSVBFX1NQUklURV9NQVNLCSgweGZmIDw8IDgpCi0jZGVmaW5lICBX TTBfUElQRV9TUFJJVEVfU0hJRlQJOAotI2RlZmluZSAgV00wX1BJUEVfQ1VSU09SX01BU0sJKDB4 ZmYpCisjZGVmaW5lICBXTTBfUElQRV9QUklNQVJZX01BU0sJUkVHX0dFTk1BU0soMjMsIDE2KQor I2RlZmluZSAgV00wX1BJUEVfU1BSSVRFX01BU0sJUkVHX0dFTk1BU0soMTUsIDgpCisjZGVmaW5l ICBXTTBfUElQRV9DVVJTT1JfTUFTSwlSRUdfR0VOTUFTSyg1LCAwKQorI2RlZmluZSAgV00wX1BJ UEVfUFJJTUFSWSh4KQlSRUdfRklFTERfUFJFUChXTTBfUElQRV9QUklNQVJZX01BU0ssICh4KSkK KyNkZWZpbmUgIFdNMF9QSVBFX1NQUklURSh4KQlSRUdfRklFTERfUFJFUChXTTBfUElQRV9TUFJJ VEVfTUFTSywgKHgpKQorI2RlZmluZSAgV00wX1BJUEVfQ1VSU09SKHgpCVJFR19GSUVMRF9QUkVQ KFdNMF9QSVBFX0NVUlNPUl9NQVNLLCAoeCkpCiAjZGVmaW5lIFdNMV9MUF9JTEsJCV9NTUlPKDB4 NDUxMDgpCi0jZGVmaW5lICBXTTFfTFBfU1JfRU4JCSgxIDw8IDMxKQotI2RlZmluZSAgV00xX0xQ X0xBVEVOQ1lfU0hJRlQJMjQKLSNkZWZpbmUgIFdNMV9MUF9MQVRFTkNZX01BU0sJKDB4N2YgPDwg MjQpCi0jZGVmaW5lICBXTTFfTFBfRkJDX01BU0sJKDB4ZiA8PCAyMCkKLSNkZWZpbmUgIFdNMV9M UF9GQkNfU0hJRlQJMjAKLSNkZWZpbmUgIFdNMV9MUF9GQkNfU0hJRlRfQkRXCTE5Ci0jZGVmaW5l ICBXTTFfTFBfU1JfTUFTSwkJKDB4N2ZmIDw8IDgpCi0jZGVmaW5lICBXTTFfTFBfU1JfU0hJRlQJ OAotI2RlZmluZSAgV00xX0xQX0NVUlNPUl9NQVNLCSgweGZmKQogI2RlZmluZSBXTTJfTFBfSUxL CQlfTU1JTygweDQ1MTBjKQotI2RlZmluZSAgV00yX0xQX0VOCQkoMSA8PCAzMSkKICNkZWZpbmUg V00zX0xQX0lMSwkJX01NSU8oMHg0NTExMCkKLSNkZWZpbmUgIFdNM19MUF9FTgkJKDEgPDwgMzEp CisjZGVmaW5lICBXTV9MUF9FTkFCTEUJCVJFR19CSVQoMzEpCisjZGVmaW5lICBXTV9MUF9MQVRF TkNZX01BU0sJUkVHX0dFTk1BU0soMzAsIDI0KQorI2RlZmluZSAgV01fTFBfRkJDX01BU0tfQkRX CVJFR19HRU5NQVNLKDIzLCAxOSkKKyNkZWZpbmUgIFdNX0xQX0ZCQ19NQVNLX0lMSwlSRUdfR0VO TUFTSygyMywgMjApCisjZGVmaW5lICBXTV9MUF9QUklNQVJZX01BU0sJUkVHX0dFTk1BU0soMTgs IDgpCisjZGVmaW5lICBXTV9MUF9DVVJTT1JfTUFTSwlSRUdfR0VOTUFTSyg3LCAwKQorI2RlZmlu ZSAgV01fTFBfTEFURU5DWSh4KQlSRUdfRklFTERfUFJFUChXTV9MUF9MQVRFTkNZX01BU0ssICh4 KSkKKyNkZWZpbmUgIFdNX0xQX0ZCQ19CRFcoeCkJUkVHX0ZJRUxEX1BSRVAoV01fTFBfRkJDX01B U0tfQkRXLCAoeCkpCisjZGVmaW5lICBXTV9MUF9GQkNfSUxLKHgpCVJFR19GSUVMRF9QUkVQKFdN X0xQX0ZCQ19NQVNLX0lMSywgKHgpKQorI2RlZmluZSAgV01fTFBfUFJJTUFSWSh4KQlSRUdfRklF TERfUFJFUChXTV9MUF9QUklNQVJZX01BU0ssICh4KSkKKyNkZWZpbmUgIFdNX0xQX0NVUlNPUih4 KQlSRUdfRklFTERfUFJFUChXTV9MUF9DVVJTT1JfTUFTSywgKHgpKQogI2RlZmluZSBXTTFTX0xQ X0lMSwkJX01NSU8oMHg0NTEyMCkKICNkZWZpbmUgV00yU19MUF9JVkIJCV9NTUlPKDB4NDUxMjQp CiAjZGVmaW5lIFdNM1NfTFBfSVZCCQlfTU1JTygweDQ1MTI4KQotI2RlZmluZSAgV00xU19MUF9F TgkJKDEgPDwgMzEpCi0KLSNkZWZpbmUgSFNXX1dNX0xQX1ZBTChsYXQsIGZiYywgcHJpLCBjdXIp IFwKLQkoV00zX0xQX0VOIHwgKChsYXQpIDw8IFdNMV9MUF9MQVRFTkNZX1NISUZUKSB8IFwKLQkg KChmYmMpIDw8IFdNMV9MUF9GQkNfU0hJRlQpIHwgKChwcmkpIDw8IFdNMV9MUF9TUl9TSElGVCkg fCAoY3VyKSkKKyNkZWZpbmUgIFdNX0xQX1NQUklURV9FTkFCTEUJUkVHX0JJVCgzMSkgLyogaWxr L3NuYiBXTTEgb25seSAqLworI2RlZmluZSAgV01fTFBfU1BSSVRFX01BU0sJUkVHX0dFTk1BU0so MTAsIDApCisjZGVmaW5lICBXTV9MUF9TUFJJVEUoeCkJUkVHX0ZJRUxEX1BSRVAoV01fTFBfU1BS SVRFX01BU0ssICh4KSkKIAogLyogTWVtb3J5IGxhdGVuY3kgdGltZXIgcmVnaXN0ZXIgKi8KICNk ZWZpbmUgTUxUUl9JTEsJCV9NTUlPKDB4MTEyMjIpCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9wbS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYwppbmRl eCBmMjlmYWM5NGM5MzUuLmIyYmZlNjZkYTgyZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfcG0uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jCkBA IC0zNDE1LDI5ICszNDE1LDI4IEBAIHN0YXRpYyB2b2lkIGlsa19jb21wdXRlX3dtX3Jlc3VsdHMo c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCQkgKiBkaXNhYmxlZC4gRG9pbmcg b3RoZXJ3aXNlIGNvdWxkIGNhdXNlIHVuZGVycnVucy4KIAkJICovCiAJCXJlc3VsdHMtPndtX2xw W3dtX2xwIC0gMV0gPQotCQkJKGRldl9wcml2LT53bS5pbGtfd21fbHBfY29va2llW2xldmVsXSA8 PCBXTTFfTFBfTEFURU5DWV9TSElGVCkgfAotCQkJKHItPnByaV92YWwgPDwgV00xX0xQX1NSX1NI SUZUKSB8Ci0JCQlyLT5jdXJfdmFsOworCQkJV01fTFBfTEFURU5DWShkZXZfcHJpdi0+d20uaWxr X3dtX2xwX2Nvb2tpZVtsZXZlbF0pIHwKKwkJCVdNX0xQX1BSSU1BUlkoci0+cHJpX3ZhbCkgfAor CQkJV01fTFBfQ1VSU09SKHItPmN1cl92YWwpOwogCiAJCWlmIChyLT5lbmFibGUpCi0JCQlyZXN1 bHRzLT53bV9scFt3bV9scCAtIDFdIHw9IFdNMV9MUF9TUl9FTjsKKwkJCXJlc3VsdHMtPndtX2xw W3dtX2xwIC0gMV0gfD0gV01fTFBfRU5BQkxFOwogCiAJCWlmIChJTlRFTF9HRU4oZGV2X3ByaXYp ID49IDgpCi0JCQlyZXN1bHRzLT53bV9scFt3bV9scCAtIDFdIHw9Ci0JCQkJci0+ZmJjX3ZhbCA8 PCBXTTFfTFBfRkJDX1NISUZUX0JEVzsKKwkJCXJlc3VsdHMtPndtX2xwW3dtX2xwIC0gMV0gfD0g V01fTFBfRkJDX0JEVyhyLT5mYmNfdmFsKTsKIAkJZWxzZQotCQkJcmVzdWx0cy0+d21fbHBbd21f bHAgLSAxXSB8PQotCQkJCXItPmZiY192YWwgPDwgV00xX0xQX0ZCQ19TSElGVDsKKwkJCXJlc3Vs dHMtPndtX2xwW3dtX2xwIC0gMV0gfD0gV01fTFBfRkJDX0lMSyhyLT5mYmNfdmFsKTsKKworCQly ZXN1bHRzLT53bV9scF9zcHJbd21fbHAgLSAxXSA9IFdNX0xQX1NQUklURShyLT5zcHJfdmFsKTsK IAogCQkvKgotCQkgKiBBbHdheXMgc2V0IFdNMVNfTFBfRU4gd2hlbiBzcHJfdmFsICE9IDAsIGV2 ZW4gaWYgdGhlCisJCSAqIEFsd2F5cyBzZXQgV01fTFBfU1BSSVRFX0VOIHdoZW4gc3ByX3ZhbCAh PSAwLCBldmVuIGlmIHRoZQogCQkgKiBsZXZlbCBpcyBkaXNhYmxlZC4gRG9pbmcgb3RoZXJ3aXNl IGNvdWxkIGNhdXNlIHVuZGVycnVucy4KIAkJICovCi0JCWlmIChJTlRFTF9HRU4oZGV2X3ByaXYp IDw9IDYgJiYgci0+c3ByX3ZhbCkgeworCQlpZiAoSU5URUxfR0VOKGRldl9wcml2KSA8IDcgJiYg ci0+c3ByX3ZhbCkgewogCQkJZHJtX1dBUk5fT04oJmRldl9wcml2LT5kcm0sIHdtX2xwICE9IDEp OwotCQkJcmVzdWx0cy0+d21fbHBfc3ByW3dtX2xwIC0gMV0gPSBXTTFTX0xQX0VOIHwgci0+c3By X3ZhbDsKLQkJfSBlbHNlCi0JCQlyZXN1bHRzLT53bV9scF9zcHJbd21fbHAgLSAxXSA9IHItPnNw cl92YWw7CisJCQlyZXN1bHRzLT53bV9scF9zcHJbd21fbHAgLSAxXSB8PSBXTV9MUF9TUFJJVEVf RU5BQkxFOworCQl9CiAJfQogCiAJLyogTFAwIHJlZ2lzdGVyIHZhbHVlcyAqLwpAQCAtMzQ0OSw5 ICszNDQ4LDkgQEAgc3RhdGljIHZvaWQgaWxrX2NvbXB1dGVfd21fcmVzdWx0cyhzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJCQljb250aW51ZTsKIAogCQlyZXN1bHRzLT53bV9w aXBlW3BpcGVdID0KLQkJCShyLT5wcmlfdmFsIDw8IFdNMF9QSVBFX1BMQU5FX1NISUZUKSB8Ci0J CQkoci0+c3ByX3ZhbCA8PCBXTTBfUElQRV9TUFJJVEVfU0hJRlQpIHwKLQkJCXItPmN1cl92YWw7 CisJCQlXTTBfUElQRV9QUklNQVJZKHItPnByaV92YWwpIHwKKwkJCVdNMF9QSVBFX1NQUklURShy LT5zcHJfdmFsKSB8CisJCQlXTTBfUElQRV9DVVJTT1Ioci0+Y3VyX3ZhbCk7CiAJfQogfQogCkBA IC0zNTQzLDI0ICszNTQyLDI0IEBAIHN0YXRpYyBib29sIF9pbGtfZGlzYWJsZV9scF93bShzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJc3RydWN0IGlsa193bV92YWx1ZXMgKnBy ZXZpb3VzID0gJmRldl9wcml2LT53bS5pbGs7CiAJYm9vbCBjaGFuZ2VkID0gZmFsc2U7CiAKLQlp ZiAoZGlydHkgJiBXTV9ESVJUWV9MUCgzKSAmJiBwcmV2aW91cy0+d21fbHBbMl0gJiBXTTFfTFBf U1JfRU4pIHsKLQkJcHJldmlvdXMtPndtX2xwWzJdICY9IH5XTTFfTFBfU1JfRU47CisJaWYgKGRp cnR5ICYgV01fRElSVFlfTFAoMykgJiYgcHJldmlvdXMtPndtX2xwWzJdICYgV01fTFBfRU5BQkxF KSB7CisJCXByZXZpb3VzLT53bV9scFsyXSAmPSB+V01fTFBfRU5BQkxFOwogCQlJOTE1X1dSSVRF KFdNM19MUF9JTEssIHByZXZpb3VzLT53bV9scFsyXSk7CiAJCWNoYW5nZWQgPSB0cnVlOwogCX0K LQlpZiAoZGlydHkgJiBXTV9ESVJUWV9MUCgyKSAmJiBwcmV2aW91cy0+d21fbHBbMV0gJiBXTTFf TFBfU1JfRU4pIHsKLQkJcHJldmlvdXMtPndtX2xwWzFdICY9IH5XTTFfTFBfU1JfRU47CisJaWYg KGRpcnR5ICYgV01fRElSVFlfTFAoMikgJiYgcHJldmlvdXMtPndtX2xwWzFdICYgV01fTFBfRU5B QkxFKSB7CisJCXByZXZpb3VzLT53bV9scFsxXSAmPSB+V01fTFBfRU5BQkxFOwogCQlJOTE1X1dS SVRFKFdNMl9MUF9JTEssIHByZXZpb3VzLT53bV9scFsxXSk7CiAJCWNoYW5nZWQgPSB0cnVlOwog CX0KLQlpZiAoZGlydHkgJiBXTV9ESVJUWV9MUCgxKSAmJiBwcmV2aW91cy0+d21fbHBbMF0gJiBX TTFfTFBfU1JfRU4pIHsKLQkJcHJldmlvdXMtPndtX2xwWzBdICY9IH5XTTFfTFBfU1JfRU47CisJ aWYgKGRpcnR5ICYgV01fRElSVFlfTFAoMSkgJiYgcHJldmlvdXMtPndtX2xwWzBdICYgV01fTFBf RU5BQkxFKSB7CisJCXByZXZpb3VzLT53bV9scFswXSAmPSB+V01fTFBfRU5BQkxFOwogCQlJOTE1 X1dSSVRFKFdNMV9MUF9JTEssIHByZXZpb3VzLT53bV9scFswXSk7CiAJCWNoYW5nZWQgPSB0cnVl OwogCX0KIAogCS8qCi0JICogRG9uJ3QgdG91Y2ggV00xU19MUF9FTiBoZXJlLgorCSAqIERvbid0 IHRvdWNoIFdNX0xQX1NQUklURV9FTiBoZXJlLgogCSAqIERvaW5nIHNvIGNvdWxkIGNhdXNlIHVu ZGVycnVucy4KIAkgKi8KIApAQCAtNjMxNSw5ICs2MzE0LDkgQEAgc3RhdGljIHZvaWQgaWxrX3Bp cGVfd21fZ2V0X2h3X3N0YXRlKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjKQogCQkgKiBtdWx0aXBs ZSBwaXBlcyBhcmUgYWN0aXZlLgogCQkgKi8KIAkJYWN0aXZlLT53bVswXS5lbmFibGUgPSB0cnVl OwotCQlhY3RpdmUtPndtWzBdLnByaV92YWwgPSAodG1wICYgV00wX1BJUEVfUExBTkVfTUFTSykg Pj4gV00wX1BJUEVfUExBTkVfU0hJRlQ7Ci0JCWFjdGl2ZS0+d21bMF0uc3ByX3ZhbCA9ICh0bXAg JiBXTTBfUElQRV9TUFJJVEVfTUFTSykgPj4gV00wX1BJUEVfU1BSSVRFX1NISUZUOwotCQlhY3Rp dmUtPndtWzBdLmN1cl92YWwgPSB0bXAgJiBXTTBfUElQRV9DVVJTT1JfTUFTSzsKKwkJYWN0aXZl LT53bVswXS5wcmlfdmFsID0gUkVHX0ZJRUxEX0dFVChXTTBfUElQRV9QUklNQVJZX01BU0ssIHRt cCk7CisJCWFjdGl2ZS0+d21bMF0uc3ByX3ZhbCA9IFJFR19GSUVMRF9HRVQoV00wX1BJUEVfU1BS SVRFX01BU0ssIHRtcCk7CisJCWFjdGl2ZS0+d21bMF0uY3VyX3ZhbCA9IFJFR19GSUVMRF9HRVQo V00wX1BJUEVfQ1VSU09SX01BU0ssIHRtcCk7CiAJfSBlbHNlIHsKIAkJaW50IGxldmVsLCBtYXhf bGV2ZWwgPSBpbGtfd21fbWF4X2xldmVsKGRldl9wcml2KTsKIApAQCAtNjczOCwxMiArNjczNywx MiBAQCB2b2lkIHZsdl93bV9zYW5pdGl6ZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYpCiAgKi8KIHN0YXRpYyB2b2lkIGlsa19pbml0X2xwX3dhdGVybWFya3Moc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2KQogewotCUk5MTVfV1JJVEUoV00zX0xQX0lMSywgSTkxNV9S RUFEKFdNM19MUF9JTEspICYgfldNMV9MUF9TUl9FTik7Ci0JSTkxNV9XUklURShXTTJfTFBfSUxL LCBJOTE1X1JFQUQoV00yX0xQX0lMSykgJiB+V00xX0xQX1NSX0VOKTsKLQlJOTE1X1dSSVRFKFdN MV9MUF9JTEssIEk5MTVfUkVBRChXTTFfTFBfSUxLKSAmIH5XTTFfTFBfU1JfRU4pOworCUk5MTVf V1JJVEUoV00zX0xQX0lMSywgSTkxNV9SRUFEKFdNM19MUF9JTEspICYgfldNX0xQX0VOQUJMRSk7 CisJSTkxNV9XUklURShXTTJfTFBfSUxLLCBJOTE1X1JFQUQoV00yX0xQX0lMSykgJiB+V01fTFBf RU5BQkxFKTsKKwlJOTE1X1dSSVRFKFdNMV9MUF9JTEssIEk5MTVfUkVBRChXTTFfTFBfSUxLKSAm IH5XTV9MUF9FTkFCTEUpOwogCiAJLyoKLQkgKiBEb24ndCB0b3VjaCBXTTFTX0xQX0VOIGhlcmUu CisJICogRG9uJ3QgdG91Y2ggV01fTFBfU1BSSVRFX0VOQUJMRSBoZXJlLgogCSAqIERvaW5nIHNv IGNvdWxkIGNhdXNlIHVuZGVycnVucy4KIAkgKi8KIH0KLS0gCjIuMjYuMgoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlz dApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0 b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==