From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anshuman Gupta Subject: [PATCH v3 8/9] drm/i915/tgl: switch between dc3co and dc5 based on display idleness Date: Tue, 30 Jul 2019 19:20:23 +0530 Message-ID: <20190730135024.31765-9-anshuman.gupta@intel.com> References: <20190730135024.31765-1-anshuman.gupta@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTPS id 3FCF16E52D for ; Tue, 30 Jul 2019 13:55:03 +0000 (UTC) In-Reply-To: <20190730135024.31765-1-anshuman.gupta@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org Cc: Deak@freedesktop.org, jani.nikula@intel.com, Nikula@freedesktop.org, Manna@freedesktop.org List-Id: intel-gfx@lists.freedesktop.org REM1IGFuZCBEQzYgbm90IGFsbG93ZWQgd2hlbiBEQzNDTyBmZWF0dXJlIGlzIGVuYWJsZWQuCkRD NSBhbmQgREM2IHNhdmVzIG1vcmUgcG93ZXIsIGJ1dCBjYW4ndCBiZSBlbnRlcmVkIGR1cmluZyB2 aWRlbwpwbGF5YmFjayBiZWNhdXNlIHRoZXJlIGFyZSBub3QgZW5vdWdoIGlkbGUgZnJhbWVzIGlu IGEgcm93IHRvIG1lZXQKbW9zdCBQU1IyIHBhbmVsIGRlZXAgc2xlZXAgZW50cnkgcmVxdWlyZW1l bnQgdHlwaWNhbGx5IDQgZnJhbWVzLgpIZW5jZSBzd2l0Y2ggdG8gREMzQ08gd2hlbiB0aGVyZSBp cyBhbiB1cGRhdGUgdG8gZGlzcGxheSBhbmQgc3dpdGNoCmJhY2sgdG8gREM1IHdoZW4gZGlzcGxh eSBpcyBpZGxlLiBJdCBpcyBzYWZlciB0byBhbGxvdyBEQzUgYWZ0ZXIgNgppZGxlIGZyYW1lLCBh cyBQU1IyIHJlcXVpcmVzIG1pbmltdW0gNiBpZGxlIGZyYW1lLgoKdjI6IGNhbGN1bGF0ZWQgcy93 IHN0YXRlIHRvIHN3aXRjaCBvdmVyIGRjM2NvIHdoZW4gdGhlcmUgaXMgYW4KICAgIHVwZGF0ZS4g W0ltcmVdCiAgICB1c2VkIGNhbmNlbF9kZWxheWVkX3dvcmtfc3luYygpIGluIG9yZGVyIHRvIGF2 b2lkIGFueSByYWNlCiAgICB3aXRoIGFscmVhZHkgc2NoZWR1bGVkIGRlbGF5ZWQgd29yay4gW0lt cmVdCnYzOiBjYW5jZWxfZGVsYXllZF93b3JrX3N5bmMoKSBtYXkgYmxvY2tlZCB0aGUgY29tbWl0 IHdvcmsuCiAgICBIZW5jZSBkcm9wcGluZyBpdCwgZGM1X2lkbGVfdGhyZWFkKCkgY2hlY2tzIHRo ZSB2YWxpZCB3YWtlcmVmIGJlZm9yZQogICAgcHV0dGluZyB0aGUgcmVmZXJlbmNlIGNvdW50LCB3 aGljaCBhdm9pZHMgYW55IGNoYW5jZXMgb2YgZHJvcHBpbmcKICAgIGEgemVybyB3YWtlcmVmLiBb SW1yZSAoSVJDKV0KCkNjOiBOaWt1bGEsIEphbmkgPGphbmkubmlrdWxhQGludGVsLmNvbT4KQ2M6 IERlYWssIEltcmUgPGltcmUuZGVha0BpbnRlbC5jb20+CkNjOiBNYW5uYSwgQW5pbWVzaCA8YW5p bWVzaC5tYW5uYUBpbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IEFuc2h1bWFuIEd1cHRhIDxhbnNo dW1hbi5ndXB0YUBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9p bnRlbF9kaXNwbGF5LmMgIHwgIDQgKysKIC4uLi9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3Bs YXlfcG93ZXIuYyAgICB8IDcyICsrKysrKysrKysrKysrKysrKysKIC4uLi9kcm0vaTkxNS9kaXNw bGF5L2ludGVsX2Rpc3BsYXlfcG93ZXIuaCAgICB8ICA1ICsrCiBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2Rydi5oICAgICAgICAgICAgICAgfCAgMSArCiA0IGZpbGVzIGNoYW5nZWQsIDgyIGlu c2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2lu dGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxh eS5jCmluZGV4IDM0YTE4NjdjZDgwMy4uZThjYzk4NzU3ODgwIDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYworKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYwpAQCAtMTQwODMsNiArMTQwODMsOCBAQCBz dGF0aWMgdm9pZCBpbnRlbF9hdG9taWNfY29tbWl0X3RhaWwoc3RydWN0IGludGVsX2F0b21pY19z dGF0ZSAqc3RhdGUpCiAJCWludGVsX3VuY29yZV9hcm1fdW5jbGFpbWVkX21taW9fZGV0ZWN0aW9u KCZkZXZfcHJpdi0+dW5jb3JlKTsKIAkJaW50ZWxfZGlzcGxheV9wb3dlcl9wdXQoZGV2X3ByaXYs IFBPV0VSX0RPTUFJTl9NT0RFU0VULCB3YWtlcmVmKTsKIAl9CisKKwl0Z2xfc3dpdGNoX3RvX2Rj M2NvX2FmdGVyX2ZsaXAoZGV2X3ByaXYpOwogCWludGVsX3J1bnRpbWVfcG1fcHV0KCZkZXZfcHJp di0+cnVudGltZV9wbSwgc3RhdGUtPndha2VyZWYpOwogCiAJLyoKQEAgLTE2MTU3LDYgKzE2MTU5 LDcgQEAgaW50IGludGVsX21vZGVzZXRfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCWlu aXRfbGxpc3RfaGVhZCgmZGV2X3ByaXYtPmF0b21pY19oZWxwZXIuZnJlZV9saXN0KTsKIAlJTklU X1dPUksoJmRldl9wcml2LT5hdG9taWNfaGVscGVyLmZyZWVfd29yaywKIAkJICBpbnRlbF9hdG9t aWNfaGVscGVyX2ZyZWVfc3RhdGVfd29ya2VyKTsKKwlJTklUX0RFTEFZRURfV09SSygmZGV2X3By aXYtPmNzci5pZGxlX3dvcmssIGludGVsX2RjNV9pZGxlX3RocmVhZCk7CiAKIAlpbnRlbF9pbml0 X3F1aXJrcyhkZXZfcHJpdik7CiAKQEAgLTE3MTAwLDYgKzE3MTAzLDcgQEAgdm9pZCBpbnRlbF9t b2Rlc2V0X2RyaXZlcl9yZW1vdmUoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAlmbHVzaF93b3Jr cXVldWUoZGV2X3ByaXYtPm1vZGVzZXRfd3EpOwogCiAJZmx1c2hfd29yaygmZGV2X3ByaXYtPmF0 b21pY19oZWxwZXIuZnJlZV93b3JrKTsKKwlmbHVzaF9kZWxheWVkX3dvcmsoJmRldl9wcml2LT5j c3IuaWRsZV93b3JrKTsKIAlXQVJOX09OKCFsbGlzdF9lbXB0eSgmZGV2X3ByaXYtPmF0b21pY19o ZWxwZXIuZnJlZV9saXN0KSk7CiAKIAkvKgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3Bvd2VyLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9k aXNwbGF5L2ludGVsX2Rpc3BsYXlfcG93ZXIuYwppbmRleCAyNGRmMjFlODZhMzguLmM0NGJlZjRi OTA3ZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNw bGF5X3Bvd2VyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNw bGF5X3Bvd2VyLmMKQEAgLTE5LDYgKzE5LDcgQEAKICNpbmNsdWRlICJpbnRlbF9zaWRlYmFuZC5o IgogI2luY2x1ZGUgImludGVsX3RjLmgiCiAjaW5jbHVkZSAiaW50ZWxfcG0uaCIKKyNpbmNsdWRl ICJpbnRlbF9wc3IuaCIKIAogYm9vbCBpbnRlbF9kaXNwbGF5X3Bvd2VyX3dlbGxfaXNfZW5hYmxl ZChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJCQkJCSBlbnVtIGk5MTVfcG93 ZXJfd2VsbF9pZCBwb3dlcl93ZWxsX2lkKTsKQEAgLTgyNSw2ICs4MjYsNDEgQEAgdm9pZCB0Z2xf ZW5hYmxlX3BzcjJfdHJhbnNjb2Rlcl9leGl0bGluZShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAg KmNzdGF0ZSkKIAlJOTE1X1dSSVRFKEVYSVRMSU5FKGNzdGF0ZS0+Y3B1X3RyYW5zY29kZXIpLCB2 YWwpOwogfQogCit2b2lkIHRnbF9zd2l0Y2hfdG9fZGMzY29fYWZ0ZXJfZmxpcChzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCit7CisJc3RydWN0IGludGVsX2NydGMgKmNydGM7CisJ c3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNzdGF0ZTsKKwl1MzIgZGVsYXk7CisKKwkvKiBQU1Iy IGlzIGVuYWJsZWQgYW5kIG9ubHkgZWRwIGlzIGNvbm5lY3RlZCAqLworCWlmIChkZXZfcHJpdi0+ Y3NyLnByZWZlcl9kYzNjbyAmJiBkZXZfcHJpdi0+cHNyLnBzcjJfZW5hYmxlZCAmJgorCSAgICBk ZXZfcHJpdi0+cHNyLmVuYWJsZWQpIHsKKwkJLyoKKwkJICogQXMgZXZlcnkgZmxpcCBnbyB0aHJv dWdoIGludGVsX2F0b21pY19jb21taXQsIHNvIHRyYWNraW5nIGEKKwkJICogYXRvbWljIGNvbW1p dCB3aWxsIGJlIGEgaGludCBmb3IgaWRsZSBmcmFtZXMuCisJCSAqIERlbGF5ZWQgd29yayBmb3Ig NiBpZGxlIGZyYW1lcyB3aWxsIGJlIGVub3VnaCB0byBhbGxvdyBkYzYKKwkJICogb3ZlciBkYzNj byBmb3IgZGVlcGVzdCBwb3dlciBzYXZpbmdzLgorCQkgKiBBdCBldmVyeSBhdG9taWMgY29tbWl0 IGNhbmNlbCB0aGUgZGVsYXllZCB3b3JrIGZpcnN0LAorCQkgKiB3aGVuIGRlbGF5ZWQgc2NoZWR1 bGVkIHRoYXQgbWVhbnMgZGlzcGxheSBoYXMgYmVlbiBpZGxlCisJCSAqIGZvciB0aGUgNiBpZGxl IGZyYW1lLgorCQkgKi8KKwkJY2FuY2VsX2RlbGF5ZWRfd29yaygmZGV2X3ByaXYtPmNzci5pZGxl X3dvcmspOworCQltdXRleF9sb2NrKCZkZXZfcHJpdi0+Y3NyLmRjNV9tdXRleCk7CisJCWlmICgh ZGV2X3ByaXYtPmNzci5kYzVfd2FrZXJlZikgeworCQkJZGV2X3ByaXYtPmNzci5kYzVfd2FrZXJl ZiA9CisJCQlpbnRlbF9kaXNwbGF5X3Bvd2VyX2dldChkZXZfcHJpdiwgUE9XRVJfRE9NQUlOX1ZJ REVPKTsKKwkJCXRnbF9wc3IyX2RlZXBfc2xlZXBfZGlzYWJsZShkZXZfcHJpdik7CisJCX0KKwkJ bXV0ZXhfdW5sb2NrKCZkZXZfcHJpdi0+Y3NyLmRjNV9tdXRleCk7CisJCWNydGMgPSBpbnRlbF9n ZXRfY3J0Y19mb3JfcGlwZShkZXZfcHJpdiwgUElQRV9BKTsKKwkJY3N0YXRlID0gdG9faW50ZWxf Y3J0Y19zdGF0ZShjcnRjLT5iYXNlLnN0YXRlKTsKKworCQlkZWxheSA9IERDNV9SRVFfSURMRV9G UkFNRVMgKiBpbnRlbF9nZXRfZnJhbWVfdGltZV91cyhjc3RhdGUpOworCQlzY2hlZHVsZV9kZWxh eWVkX3dvcmsoJmRldl9wcml2LT5jc3IuaWRsZV93b3JrLAorCQkJCSAgICAgIHVzZWNzX3RvX2pp ZmZpZXMoZGVsYXkpKTsKKwl9Cit9CisKIHN0YXRpYyBib29sIHRnbF9pc19vbmx5X2VkcF9jb25u ZWN0ZWQoc3RydWN0IGludGVsX2NydGNfc3RhdGUgICpjcnRjX3N0YXRlKQogewogCXN0cnVjdCBk cm1fYXRvbWljX3N0YXRlICpzdGF0ZSA9IGNydGNfc3RhdGUtPmJhc2Uuc3RhdGU7CkBAIC04ODks NiArOTI1LDIwIEBAIHZvaWQgdGdsX3ByZWZlcl9kYzNjb19vdmVyX2RjNV9jaGVjayhzdHJ1Y3Qg ZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJfQogfQogCit2b2lkIGludGVsX2RjNV9pZGxl X3RocmVhZChzdHJ1Y3Qgd29ya19zdHJ1Y3QgKndvcmspCit7CisJaW50ZWxfd2FrZXJlZl90IHdh a2VyZWYgX19tYXliZV91bnVzZWQ7CisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 ID0KKwkJY29udGFpbmVyX29mKHdvcmssIHR5cGVvZigqZGV2X3ByaXYpLCBjc3IuaWRsZV93b3Jr LndvcmspOworCisJbXV0ZXhfbG9jaygmZGV2X3ByaXYtPmNzci5kYzVfbXV0ZXgpOworCXdha2Vy ZWYJPSBmZXRjaF9hbmRfemVybygmZGV2X3ByaXYtPmNzci5kYzVfd2FrZXJlZik7CisJaWYgKHdh a2VyZWYpCisJCWludGVsX2Rpc3BsYXlfcG93ZXJfcHV0KGRldl9wcml2LCBQT1dFUl9ET01BSU5f VklERU8sIHdha2VyZWYpOworCXRnbF9wc3IyX2RlZXBfc2xlZXBfZW5hYmxlKGRldl9wcml2KTsK KwltdXRleF91bmxvY2soJmRldl9wcml2LT5jc3IuZGM1X211dGV4KTsKK30KKwogc3RhdGljIHZv aWQgdGdsX2FsbG93X2RjM2NvKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIHsK IAlnZW45X3NldF9kY19zdGF0ZShkZXZfcHJpdiwgRENfU1RBVEVfRU5fREMzQ08pOwpAQCAtMTE2 NCw2ICsxMjE0LDI3IEBAIHN0YXRpYyBib29sIHRnbF9kYzNjb19wb3dlcl93ZWxsX2VuYWJsZWQo c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCQkoSTkxNV9SRUFEKERDX1NUQVRF X0VOKSAmIERDX1NUQVRFX0VOX1VQVE9fREM1X0RDNl9NQVNLKSA9PSAwKTsKIH0KIAordTMyIGlu dGVsX2dldF9mcmFtZV90aW1lX3VzKGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjc3Rh dGUpCit7CisJdTMyIHBpeGVsX3JhdGUsIGNydGNfaHRvdGFsLCBjcnRjX3Z0b3RhbDsKKwl1aW50 X2ZpeGVkXzE2XzE2X3QgZnJhbWV0aW1lX3VzOworCisJaWYgKCFjc3RhdGUgfHwgIWNzdGF0ZS0+ YmFzZS5hY3RpdmUpCisJCXJldHVybiAwOworCisJcGl4ZWxfcmF0ZSA9IGNzdGF0ZS0+cGl4ZWxf cmF0ZTsKKworCWlmIChXQVJOX09OKHBpeGVsX3JhdGUgPT0gMCkpCisJCXJldHVybiAwOworCisJ Y3J0Y19odG90YWwgPSBjc3RhdGUtPmJhc2UuYWRqdXN0ZWRfbW9kZS5jcnRjX2h0b3RhbDsKKwlj cnRjX3Z0b3RhbCA9IGNzdGF0ZS0+YmFzZS5hZGp1c3RlZF9tb2RlLmNydGNfdnRvdGFsOworCWZy YW1ldGltZV91cyA9IGRpdl9maXhlZDE2KGNydGNfaHRvdGFsICogY3J0Y192dG90YWwgKiAxMDAw LAorCQkJCSAgIHBpeGVsX3JhdGUpOworCisJcmV0dXJuIGZpeGVkMTZfdG9fdTMyX3JvdW5kX3Vw KGZyYW1ldGltZV91cyk7Cit9CisKIHN0YXRpYyB2b2lkIGk5eHhfcG93ZXJfd2VsbF9zeW5jX2h3 X25vb3Aoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCQkJCQkgc3RydWN0IGk5 MTVfcG93ZXJfd2VsbCAqcG93ZXJfd2VsbCkKIHsKQEAgLTQyMzQsNiArNDMwNSw3IEBAIGludCBp bnRlbF9wb3dlcl9kb21haW5zX2luaXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 KQogCUJVSUxEX0JVR19PTihQT1dFUl9ET01BSU5fTlVNID4gNjQpOwogCiAJbXV0ZXhfaW5pdCgm cG93ZXJfZG9tYWlucy0+bG9jayk7CisJbXV0ZXhfaW5pdCgmZGV2X3ByaXYtPmNzci5kYzVfbXV0 ZXgpOwogCiAJSU5JVF9ERUxBWUVEX1dPUksoJnBvd2VyX2RvbWFpbnMtPmFzeW5jX3B1dF93b3Jr LAogCQkJICBpbnRlbF9kaXNwbGF5X3Bvd2VyX3B1dF9hc3luY193b3JrKTsKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV9wb3dlci5oIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3Bvd2VyLmgKaW5kZXggMWRk MjIxYzRiZWUxLi40M2ZiNGJlYmJhOTUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV9wb3dlci5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV9wb3dlci5oCkBAIC0xMCw2ICsxMCw4IEBACiAjaW5jbHVk ZSAiaW50ZWxfcnVudGltZV9wbS5oIgogI2luY2x1ZGUgImk5MTVfcmVnLmgiCiAKKyNkZWZpbmUg REM1X1JFUV9JRExFX0ZSQU1FUwk2CisKIHN0cnVjdCBkcm1faTkxNV9wcml2YXRlOwogc3RydWN0 IGludGVsX2VuY29kZXI7CiBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZTsKQEAgLTIzNyw2ICsyMzks OCBAQCBzdHJ1Y3QgaTkxNV9wb3dlcl9kb21haW5zIHsKIAogdm9pZCBza2xfZW5hYmxlX2RjNihz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwogdm9pZCBnZW45X3Nhbml0aXplX2Rj X3N0YXRlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7Cit2b2lkIGludGVsX2Rj NV9pZGxlX3RocmVhZChzdHJ1Y3Qgd29ya19zdHJ1Y3QgKndvcmspOwordTMyIGludGVsX2dldF9m cmFtZV90aW1lX3VzKGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjc3RhdGUpOwogdm9p ZCBieHRfZW5hYmxlX2RjOShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwogdm9p ZCBieHRfZGlzYWJsZV9kYzkoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KTsKIHZv aWQgZ2VuOV9lbmFibGVfZGM1KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7CkBA IC0yNTksNiArMjYzLDcgQEAgdm9pZCBieHRfZGlzcGxheV9jb3JlX3VuaW5pdChzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwogdm9pZCB0Z2xfcHJlZmVyX2RjM2NvX292ZXJfZGM1 X2NoZWNrKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAkJCQkgICAgIHN0cnVj dCBpbnRlbF9hdG9taWNfc3RhdGUgKnN0YXRlKTsKIHZvaWQgdGdsX2VuYWJsZV9wc3IyX3RyYW5z Y29kZXJfZXhpdGxpbmUoc3RydWN0IGludGVsX2NydGNfc3RhdGUgICpjc3RhdGUpOwordm9pZCB0 Z2xfc3dpdGNoX3RvX2RjM2NvX2FmdGVyX2ZsaXAoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2KTsKIAogY29uc3QgY2hhciAqCiBpbnRlbF9kaXNwbGF5X3Bvd2VyX2RvbWFpbl9zdHIo c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAppbmRl eCA4YjdkYmFhOTFhMGQuLjBlMDczMzhkZTZkYiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCkBA IC0zNTksNiArMzU5LDcgQEAgc3RydWN0IGludGVsX2NzciB7CiAJdTMyIG1taW9kYXRhWzIwXTsK IAl1MzIgZGNfc3RhdGU7CiAJdTMyIGFsbG93ZWRfZGNfbWFzazsKKwlzdHJ1Y3QgZGVsYXllZF93 b3JrIGlkbGVfd29yazsKIAlpbnRlbF93YWtlcmVmX3Qgd2FrZXJlZjsKIAlib29sIHByZWZlcl9k YzNjbzsKIAlpbnRlbF93YWtlcmVmX3QgZGM1X3dha2VyZWY7Ci0tIAoyLjIxLjAKCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5n IGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVk ZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA==