From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anshuman Gupta Subject: [PATCH v9 6/7] drm/i915/tgl: switch between dc3co and dc5 based on display idleness Date: Wed, 25 Sep 2019 23:40:22 +0530 Message-ID: <20190925181023.12290-7-anshuman.gupta@intel.com> References: <20190925181023.12290-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 564F66ECA8 for ; Wed, 25 Sep 2019 18:16:57 +0000 (UTC) In-Reply-To: <20190925181023.12290-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: jani.nikula@intel.com List-Id: intel-gfx@lists.freedesktop.org REMzQ08gaXMgdXNlZnVsIHBvd2VyIHN0YXRlLCB3aGVuIERNQyBkZXRlY3RzIFBTUjIgaWRsZSBm cmFtZQp3aGlsZSBhbiBhY3RpdmUgdmlkZW8gcGxheWJhY2ssIHBsYXlpbmcgMzBmcHMgdmlkZW8g b24gNjBoeiBwYW5lbAppcyB0aGUgY2xhc3NpYyBleGFtcGxlIG9mIHRoaXMgdXNlIGNhc2UuCgpC LlNwZWNzOjQ5MTk2IGhhcyBhIHJlc3RyaWN0aW9uIHRvIGVuYWJsZSBEQzNDTyBvbmx5IGZvciBW aWRlbyBQbGF5YmFjay4KSXQgd2lsbCBiZSB3b3J0aHkgdG8gZW5hYmxlIERDM0NPIGFmdGVyIGNv bXBsZXRpb24gb2YgZWFjaCBwYWdlZmxpcAphbmQgc3dpdGNoIGJhY2sgdG8gREM1IHdoZW4gZGlz cGxheSBpcyBpZGxlIGJlY2F1c2UgZHJpdmVyIGRvZXNuJ3QKZGlmZmVyZW50aWF0ZSBiZXR3ZWVu IHZpZGVvIHBsYXliYWNrIGFuZCBhIG5vcm1hbCBwYWdlZmxpcC4KV2Ugd2lsbCB1c2UgRnJvbnRi dWZmZXIgZmx1c2ggY2FsbCB0Z2xfZGMzY29fZmx1c2goKSB0byBlbmFibGUgREMzQ08Kc3RhdGUg b25seSBmb3IgT1JJR0lOX0ZMSVAgZmx1c2ggY2FsbCwgYmVjYXVzZSBEQzNDTyBzdGF0ZSBoYXMg cHJpbWFyaWx5CnRhcmdldGVkIGZvciBWUEIgdXNlIGNhc2UuIFdlIGFyZSBub3QgaW50ZXJlc3Rl ZCBoZXJlIGZvciBmcm9udGJ1ZmZlcgppbnZhbGlkYXRlcyBjYWxscyBiZWNhdXNlIHRoYXQgdHJp Z2dlcnMgUFNSMiBleGl0LCB3aGljaCB3aWxsCmV4cGxpY2l0bHkgZGlzYWJsZSBEQzNDTy4KCkRD NSBhbmQgREM2IHNhdmVzIG1vcmUgcG93ZXIsIGJ1dCBjYW4ndCBiZSBlbnRlcmVkIGR1cmluZyB2 aWRlbwpwbGF5YmFjayBiZWNhdXNlIHRoZXJlIGFyZSBub3QgZW5vdWdoIGlkbGUgZnJhbWVzIGlu IGEgcm93IHRvIG1lZXQKbW9zdCBQU1IyIHBhbmVsIGRlZXAgc2xlZXAgZW50cnkgcmVxdWlyZW1l bnQgdHlwaWNhbGx5IDQgZnJhbWVzLgpBcyBQU1IyIGV4aXN0aW5nIGltcGxlbWVudGF0aW9uIGlz IHVzaW5nIG1pbmltdW0gNiBpZGxlIGZyYW1lcyBmb3IKZGVlcCBzbGVlcCwgaXQgaXMgc2FmZXIg dG8gZW5hYmxlIERDNS82IGFmdGVyIDYgaWRsZSBmcmFtZXMKKEJ5IHNjaGVkdWxpbmcgYSBkZWxh eWVkIHdvcmsgb2YgNiBpZGxlIGZyYW1lcywgb25jZSBEQzNDTyBoYXMgYmVlbgplbmFibGVkIGFm dGVyIGEgcGFnZWZsaXApLgoKQWZ0ZXIgbWFudWFsbHkgd2FpdGluZyBmb3IgNiBpZGxlIGZyYW1l cyBEQzUvNiB3aWxsIGJlIGVuYWJsZWQgYW5kClBTUjIgZGVlcCBzbGVlcCBpZGxlIGZyYW1lcyB3 aWxsIGJlIHJlc3RvcmVkIHRvIDYgaWRsZSBmcmFtZXMsIGF0IHRoaXMKcG9pbnQgRE1DIHdpbGwg dHJpZ2dlcnMgREM1LzYgb25jZSBQU1IyIGVudGVycyB0byBkZWVwIHNsZWVwIGFmdGVyCjYgaWRs ZSBmcmFtZXMuCkluIGZ1dHVyZSB3aGVuIHdlIHdpbGwgZW5hYmxlIFMvVyBQU1IyIHRyYWNraW5n LCB3ZSBjYW4gY2hhbmdlIHRoZQpQU1IyIHJlcXVpcmVkIGRlZXAgc2xlZXAgaWRsZSBmcmFtZXMg dG8gMSBzbyBETUMgY2FuIHRyaWdnZXIgdGhlCkRDNS82IGltbWVkaWF0ZWx5IGFmdGVyIFMvVyBt YW51YWwgd2FpdGluZyBvZiA2IGlkbGUgZnJhbWVzIGdldApjb21wbGV0ZS4KCnYyOiBjYWxjdWxh dGVkIHMvdyBzdGF0ZSB0byBzd2l0Y2ggb3ZlciBkYzNjbyB3aGVuIHRoZXJlIGlzIGFuCiAgICB1 cGRhdGUuIFtJbXJlXQogICAgVXNlZCBjYW5jZWxfZGVsYXllZF93b3JrX3N5bmMoKSBpbiBvcmRl ciB0byBhdm9pZCBhbnkgcmFjZQogICAgd2l0aCBhbHJlYWR5IHNjaGVkdWxlZCBkZWxheWVkIHdv cmsuIFtJbXJlXQp2MzogQ2FuY2VsX2RlbGF5ZWRfd29ya19zeW5jKCkgbWF5IGJsb2NrZWQgdGhl IGNvbW1pdCB3b3JrLgogICAgaGVuY2UgZHJvcHBpbmcgaXQsIGRjNV9pZGxlX3RocmVhZCgpIGNo ZWNrcyB0aGUgdmFsaWQgd2FrZXJlZiBiZWZvcmUKICAgIHB1dHRpbmcgdGhlIHJlZmVyZW5jZSBj b3VudCwgd2hpY2ggYXZvaWRzIGFueSBjaGFuY2VzIG9mIGRyb3BwaW5nCiAgICBhIHplcm8gd2Fr ZXJlZi4gW0ltcmUgKElSQyldCnY0OiBVc2VkIGZyb250YnVmZmVyIGZsdXNoIG1lY2hhbmlzbS4g W0ltcmVdCnY1OiBVc2VkIHBzci5waXBlIHRvIGV4dHJhY3QgZnJvbnRidWZmZXIgYnVzeSBiaXRz LiBbSW1yZV0KICAgIFVzZWQgY2FuY2VsX2RlbGF5ZWRfd29ya19zeW5jKCkgaW4gZW5jb2RlciBk aXNhYmxlIHBhdGguIFtJbXJlXQogICAgVXNlZCBtb2RfZGVsYXllZF93b3JrKCkgaW5zdGVhZCBv ZiBjYW5jZWxsaW5nIGFuZCBzY2hlZHVsaW5nIGEKICAgIGRlbGF5ZWQgd29yay4gW0ltcmVdCiAg ICBVc2VkIHBzci5sb2NrIGluIHRnbF9kYzVfaWRsZV90aHJlYWQoKSB0byBlbmFibGUgcHNyMiBk ZWVwCiAgICBzbGVlcC4gW0ltcmVdCiAgICBSZW1vdmVkIERDNV9SRVFfSURMRV9GUkFNRVMgbWFj cm8uIFtJbXJlXQp2NjogSW5pdGVkIHRoZSBidXN5X2Zyb250YnVmZmVyX2JpdHMsIHVzZWQgZGMz Y29fZXhpdGxpbmUgY2hlY2sgaW5zdGVhZAogICAgb2YgVEdMIGFuZCBkYzNjbyBhbGxvd2VkX2Rj X21hc2sgY2hlY2tzLCB1c2VkIGRlbGF5ZWRfd29ya19wZW5kaW5nCiAgICB3aXRoIHRoZSBwc3Ig bG9jayBhbmQgcmVtb3ZlZCB0aGUgcHNyMl9kZWVwX3NscF9kaXNhYmxlZCBmbGFnLiBbSW1yZV0K CkNjOiBKYW5pIE5pa3VsYSA8amFuaS5uaWt1bGFAaW50ZWwuY29tPgpDYzogSW1yZSBEZWFrIDxp bXJlLmRlYWtAaW50ZWwuY29tPgpDYzogQW5pbWVzaCBNYW5uYSA8YW5pbWVzaC5tYW5uYUBpbnRl bC5jb20+ClNpZ25lZC1vZmYtYnk6IEFuc2h1bWFuIEd1cHRhIDxhbnNodW1hbi5ndXB0YUBpbnRl bC5jb20+Ci0tLQogLi4uL2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV9wb3dlci5jICAg IHwgOTcgKysrKysrKysrKysrKysrKysrKwogLi4uL2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlz cGxheV9wb3dlci5oICAgIHwgIDQgKwogLi4uL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Zy b250YnVmZmVyLmMgIHwgIDEgKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9w c3IuYyAgICAgIHwgMzQgKysrKysrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRl bF9wc3IuaCAgICAgIHwgIDIgKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCAgICAg ICAgICAgICAgIHwgIDEgKwogNiBmaWxlcyBjaGFuZ2VkLCAxMzkgaW5zZXJ0aW9ucygrKQoKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV9wb3dl ci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3Bvd2VyLmMK aW5kZXggM2ZjZWU4ZjNhZTY3Li4xYWU4ZjQ5OWE1ZDQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV9wb3dlci5jCisrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV9wb3dlci5jCkBAIC0yMCw2ICsyMCw3IEBA CiAjaW5jbHVkZSAiaW50ZWxfc2lkZWJhbmQuaCIKICNpbmNsdWRlICJpbnRlbF90Yy5oIgogI2lu Y2x1ZGUgImludGVsX3BtLmgiCisjaW5jbHVkZSAiaW50ZWxfcHNyLmgiCiAKIGJvb2wgaW50ZWxf ZGlzcGxheV9wb3dlcl93ZWxsX2lzX2VuYWJsZWQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2LAogCQkJCQkgZW51bSBpOTE1X3Bvd2VyX3dlbGxfaWQgcG93ZXJfd2VsbF9pZCk7CkBA IC03OTQsNiArNzk1LDkgQEAgdm9pZCB0Z2xfY2xlYXJfcHNyMl90cmFuc2NvZGVyX2V4aXRsaW5l KGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjc3RhdGUpCiAJdmFsID0gSTkxNV9SRUFE KEVYSVRMSU5FKGNzdGF0ZS0+Y3B1X3RyYW5zY29kZXIpKTsKIAl2YWwgJj0gfihFWElUTElORV9N QVNLIHwgRVhJVExJTkVfRU5BQkxFKTsKIAlJOTE1X1dSSVRFKEVYSVRMSU5FKGNzdGF0ZS0+Y3B1 X3RyYW5zY29kZXIpLCB2YWwpOworCisJLyogQXMgcHNyMiBlbmNvZGVyIGhhcyBkaXNhYmxlZCwg Y2FuY2VsIHRoZSBkYzUgaWRsZSBkZWxheWVkIHdvcmsgKi8KKwljYW5jZWxfZGVsYXllZF93b3Jr X3N5bmMoJmRldl9wcml2LT5jc3IuaWRsZV93b3JrKTsKIH0KIAogdm9pZCB0Z2xfc2V0X3BzcjJf dHJhbnNjb2Rlcl9leGl0bGluZShjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3N0YXRl KQpAQCAtODEzLDYgKzgxNywyNyBAQCB2b2lkIHRnbF9zZXRfcHNyMl90cmFuc2NvZGVyX2V4aXRs aW5lKGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjc3RhdGUpCiAJSTkxNV9XUklURShF WElUTElORShjc3RhdGUtPmNwdV90cmFuc2NvZGVyKSwgdmFsKTsKIH0KIAorc3RhdGljIHUzMiBp bnRlbF9nZXRfZnJhbWVfdGltZV91cyhjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3N0 YXRlKQoreworCXUzMiBwaXhlbF9yYXRlLCBjcnRjX2h0b3RhbCwgY3J0Y192dG90YWw7CisJdTMy IGZyYW1ldGltZV91czsKKworCWlmICghY3N0YXRlIHx8ICFjc3RhdGUtPmJhc2UuYWN0aXZlKQor CQlyZXR1cm4gMDsKKworCXBpeGVsX3JhdGUgPSBjc3RhdGUtPnBpeGVsX3JhdGU7CisKKwlpZiAo V0FSTl9PTihwaXhlbF9yYXRlID09IDApKQorCQlyZXR1cm4gMDsKKworCWNydGNfaHRvdGFsID0g Y3N0YXRlLT5iYXNlLmFkanVzdGVkX21vZGUuY3J0Y19odG90YWw7CisJY3J0Y192dG90YWwgPSBj c3RhdGUtPmJhc2UuYWRqdXN0ZWRfbW9kZS5jcnRjX3Z0b3RhbDsKKwlmcmFtZXRpbWVfdXMgPSBE SVZfUk9VTkRfVVAoY3J0Y19odG90YWwgKiBjcnRjX3Z0b3RhbCAqIDEwMDBVTEwsCisJCQkJICAg IHBpeGVsX3JhdGUpOworCisJcmV0dXJuIGZyYW1ldGltZV91czsKK30KKwogLyoKICAqIERDM0NP IHJlcXVpcmVzIHRvIGVuYWJsZSBleGl0bGluZSBhbmQgcHJvZ3JhbSBEQzNDTyByZXF1aXJlcwog ICogZXhpdCBzY2FubGluZXMgdG8gVFJBTlNfRVhJVExJTkUgcmVnaXN0ZXIsIHdoaWNoIHNob3Vs ZCBvbmx5CkBAIC04NzIsNiArODk3LDc3IEBAIHZvaWQgdGdsX2RjM2NvX2V4aXRsaW5lX2dldF9j b25maWcoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCiAJCWNydGNfc3RhdGUt PmRjM2NvX2V4aXRsaW5lID0gdmFsICYgRVhJVExJTkVfTUFTSzsKIH0KIAorLyoKKyAqIFdoZW4g d2Ugd2lsbCBlbmFibGUgbWFudWFsIFBTUjIgUy9XIHRyYWNraW5nIGluIGZ1dHVyZQorICogd2Ug d2lsbCBpbXBsZW1lbnQgdGhpcyBlbnRpcmUgREMzQ08gZmx1c2ggbG9naWMgaW4KKyAqIGludGVs X3Bzcl9mbHVzaCgpLgorICovCit2b2lkIHRnbF9kYzNjb19mbHVzaChzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYsCisJCSAgICAgdW5zaWduZWQgaW50IGZyb250YnVmZmVyX2JpdHMs IGVudW0gZmJfb3Bfb3JpZ2luIG9yaWdpbikKK3sKKwlzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAq Y3N0YXRlOworCXN0cnVjdCBpbnRlbF9jcnRjICpjcnRjOworCXUzMiBkZWxheTsKKwl1bnNpZ25l ZCBpbnQgYnVzeV9mcm9udGJ1ZmZlcl9iaXRzID0gMDsKKworCWlmIChvcmlnaW4gIT0gT1JJR0lO X0ZMSVApCisJCXJldHVybjsKKworCW11dGV4X2xvY2soJmRldl9wcml2LT5wc3IubG9jayk7CisK KwlpZiAoIWRldl9wcml2LT5wc3IuZGMzY29fZXhpdGxpbmUpCisJCWdvdG8gdW5sb2NrOworCisJ Y3J0YyA9IGludGVsX2dldF9jcnRjX2Zvcl9waXBlKGRldl9wcml2LCBkZXZfcHJpdi0+cHNyLnBp cGUpOworCWNzdGF0ZSA9IHRvX2ludGVsX2NydGNfc3RhdGUoY3J0Yy0+YmFzZS5zdGF0ZSk7CisK Kwlmcm9udGJ1ZmZlcl9iaXRzICY9CisJCUlOVEVMX0ZST05UQlVGRkVSX0FMTF9NQVNLKGRldl9w cml2LT5wc3IucGlwZSk7CisKKwlidXN5X2Zyb250YnVmZmVyX2JpdHMgJj0gfmZyb250YnVmZmVy X2JpdHM7CisKKwlpZiAoIWRldl9wcml2LT5wc3IucHNyMl9lbmFibGVkIHx8ICFkZXZfcHJpdi0+ cHNyLmFjdGl2ZSkKKwkJZ290byB1bmxvY2s7CisKKwkvKgorCSAqIEF0IGV2ZXJ5IGZsaXAgZnJv bnRidWZmZXIgZmx1c2ggbW9kaWZpZWQgZGVsYXkgb2YgZGVsYXllZCB3b3JrLAorCSAqIHdoZW4g ZGVsYXllZCBzY2hlZHVsZXMgdGhhdCBtZWFucyBkaXNwbGF5IGhhcyBiZWVuIGlkbGUuCisJICov CisJaWYgKCFidXN5X2Zyb250YnVmZmVyX2JpdHMpIHsKKwkJdGdsX3BzcjJfZGVlcF9zbGVlcF9k aXNhYmxlKGRldl9wcml2KTsKKwkJdGdsX3NldF90YXJnZXRfZGNfc3RhdGUoZGV2X3ByaXYsIERD X1NUQVRFX0VOX0RDM0NPKTsKKwkJLyogREM1L0RDNiByZXF1aXJlZCBpZGxlIGZyYW1lcyA9IDYg Ki8KKwkJZGVsYXkgPSA2ICogaW50ZWxfZ2V0X2ZyYW1lX3RpbWVfdXMoY3N0YXRlKTsKKwkJbW9k X2RlbGF5ZWRfd29yayhzeXN0ZW1fd3EsICZkZXZfcHJpdi0+Y3NyLmlkbGVfd29yaywKKwkJCQkg dXNlY3NfdG9famlmZmllcyhkZWxheSkpOworCX0KKwordW5sb2NrOgorCW11dGV4X3VubG9jaygm ZGV2X3ByaXYtPnBzci5sb2NrKTsKK30KKwordm9pZCB0Z2xfZW5hYmxlX3BzcjJfZGVlcF9zbGVl cF9kYzYoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQoreworCXRnbF9zZXRfdGFy Z2V0X2RjX3N0YXRlKGRldl9wcml2LCBEQ19TVEFURV9FTl9VUFRPX0RDNik7CisJdGdsX3BzcjJf ZGVlcF9zbGVlcF9lbmFibGUoZGV2X3ByaXYpOworfQorCitzdGF0aWMgdm9pZCB0Z2xfZGM1X2lk bGVfdGhyZWFkKHN0cnVjdCB3b3JrX3N0cnVjdCAqd29yaykKK3sKKwlzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYgPQorCQljb250YWluZXJfb2Yod29yaywgdHlwZW9mKCpkZXZfcHJp diksIGNzci5pZGxlX3dvcmsud29yayk7CisKKwltdXRleF9sb2NrKCZkZXZfcHJpdi0+cHNyLmxv Y2spOworCS8qIElmIGRlbGF5ZWQgd29yayBpcyBwZW5kaW5nLCBpdCBpcyBub3QgaWRsZSAqLwor CWlmIChkZWxheWVkX3dvcmtfcGVuZGluZygmZGV2X3ByaXYtPmNzci5pZGxlX3dvcmspKQorCQln b3RvIHVubG9jazsKKworCURSTV9ERUJVR19LTVMoIkRDNS82IGlkbGUgdGhyZWFkXG4iKTsKKwl0 Z2xfZW5hYmxlX3BzcjJfZGVlcF9zbGVlcF9kYzYoZGV2X3ByaXYpOwordW5sb2NrOgorCW11dGV4 X3VubG9jaygmZGV2X3ByaXYtPnBzci5sb2NrKTsKK30KKwogc3RhdGljIHZvaWQKIGFsbG93ZWRf ZGNfbWFza190b190YXJnZXRfZGNfc3RhdGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2KQogewpAQCAtNDI0MSw2ICs0MzM3LDcgQEAgaW50IGludGVsX3Bvd2VyX2RvbWFpbnNfaW5p dChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAKIAlJTklUX0RFTEFZRURfV09S SygmcG93ZXJfZG9tYWlucy0+YXN5bmNfcHV0X3dvcmssCiAJCQkgIGludGVsX2Rpc3BsYXlfcG93 ZXJfcHV0X2FzeW5jX3dvcmspOworCUlOSVRfREVMQVlFRF9XT1JLKCZkZXZfcHJpdi0+Y3NyLmlk bGVfd29yaywgdGdsX2RjNV9pZGxlX3RocmVhZCk7CiAKIAkvKgogCSAqIFRoZSBlbmFibGluZyBv cmRlciB3aWxsIGJlIGZyb20gbG93ZXIgdG8gaGlnaGVyIGluZGV4ZWQgd2VsbHMsCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfcG93ZXIuaCBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheV9wb3dlci5oCmluZGV4 IDk4MWI2YTUyZDE5Mi4uNWY1Y2FlYTg1N2FmIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfcG93ZXIuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfcG93ZXIuaApAQCAtOSw2ICs5LDcgQEAKICNpbmNs dWRlICJpbnRlbF9kaXNwbGF5LmgiCiAjaW5jbHVkZSAiaW50ZWxfcnVudGltZV9wbS5oIgogI2lu Y2x1ZGUgImk5MTVfcmVnLmgiCisjaW5jbHVkZSAiaW50ZWxfZnJvbnRidWZmZXIuaCIKIAogc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGU7CiBzdHJ1Y3QgaW50ZWxfZW5jb2RlcjsKQEAgLTI2NSw2ICsy NjYsOSBAQCB2b2lkIHRnbF9kYzNjb19leGl0bGluZV9jb21wdXRlX2NvbmZpZyhzdHJ1Y3QgaW50 ZWxfZW5jb2RlciAqZW5jb2RlciwKIHZvaWQgdGdsX2RjM2NvX2V4aXRsaW5lX2dldF9jb25maWco c3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpOwogdm9pZCB0Z2xfY2xlYXJfcHNy Ml90cmFuc2NvZGVyX2V4aXRsaW5lKGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpzdGF0 ZSk7CiB2b2lkIHRnbF9zZXRfcHNyMl90cmFuc2NvZGVyX2V4aXRsaW5lKGNvbnN0IHN0cnVjdCBp bnRlbF9jcnRjX3N0YXRlICpzdGF0ZSk7Cit2b2lkIHRnbF9kYzNjb19mbHVzaChzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCisJCSAgICAgdW5zaWduZWQgaW50IGZyb250YnVmZmVy X2JpdHMsIGVudW0gZmJfb3Bfb3JpZ2luIG9yaWdpbik7Cit2b2lkIHRnbF9lbmFibGVfcHNyMl9k ZWVwX3NsZWVwX2RjNihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwogCiBjb25z dCBjaGFyICoKIGludGVsX2Rpc3BsYXlfcG93ZXJfZG9tYWluX3N0cihlbnVtIGludGVsX2Rpc3Bs YXlfcG93ZXJfZG9tYWluIGRvbWFpbik7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9kaXNwbGF5L2ludGVsX2Zyb250YnVmZmVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNw bGF5L2ludGVsX2Zyb250YnVmZmVyLmMKaW5kZXggZmM0MGRjMWZkYmNjLi5jM2IxMGY2ZTQzODIg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZnJvbnRidWZm ZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Zyb250YnVmZmVy LmMKQEAgLTkwLDYgKzkwLDcgQEAgc3RhdGljIHZvaWQgZnJvbnRidWZmZXJfZmx1c2goc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsCiAJbWlnaHRfc2xlZXAoKTsKIAlpbnRlbF9lZHBfZHJy c19mbHVzaChpOTE1LCBmcm9udGJ1ZmZlcl9iaXRzKTsKIAlpbnRlbF9wc3JfZmx1c2goaTkxNSwg ZnJvbnRidWZmZXJfYml0cywgb3JpZ2luKTsKKwl0Z2xfZGMzY29fZmx1c2goaTkxNSwgZnJvbnRi dWZmZXJfYml0cywgb3JpZ2luKTsKIAlpbnRlbF9mYmNfZmx1c2goaTkxNSwgZnJvbnRidWZmZXJf Yml0cywgb3JpZ2luKTsKIH0KIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlz cGxheS9pbnRlbF9wc3IuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfcHNy LmMKaW5kZXggYmYwYjc0MWQzMjQzLi41ZmFhZjM1YmE0ZmYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfcHNyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvZGlzcGxheS9pbnRlbF9wc3IuYwpAQCAtNTM0LDEwICs1MzQsNDQgQEAgdHJhbnNjb2Rlcl9o YXNfcHNyMihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIGVudW0gdHJhbnNjb2Rl ciB0cmFucykKIAkJcmV0dXJuIHRyYW5zID09IFRSQU5TQ09ERVJfRURQOwogfQogCitzdGF0aWMg dm9pZCBwc3IyX3Byb2dyYW1faWRsZV9mcmFtZXMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2LAorCQkJCSAgICAgdTMyIGlkbGVfZnJhbWVzKQoreworCXUzMiB2YWw7CisKKwlpZGxl X2ZyYW1lcyA8PD0gIEVEUF9QU1IyX0lETEVfRlJBTUVfU0hJRlQ7CisJdmFsID0gSTkxNV9SRUFE KEVEUF9QU1IyX0NUTChkZXZfcHJpdi0+cHNyLnRyYW5zY29kZXIpKTsKKwl2YWwgJj0gfkVEUF9Q U1IyX0lETEVfRlJBTUVfTUFTSzsKKwl2YWwgfD0gaWRsZV9mcmFtZXM7CisJSTkxNV9XUklURShF RFBfUFNSMl9DVEwoZGV2X3ByaXYtPnBzci50cmFuc2NvZGVyKSwgdmFsKTsKK30KKwordm9pZCB0 Z2xfcHNyMl9kZWVwX3NsZWVwX2Rpc2FibGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2KQoreworCXBzcjJfcHJvZ3JhbV9pZGxlX2ZyYW1lcyhkZXZfcHJpdiwgMCk7Cit9CisKK3Zv aWQgdGdsX3BzcjJfZGVlcF9zbGVlcF9lbmFibGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2KQoreworCWludCBpZGxlX2ZyYW1lczsKKworCS8qCisJICogTGV0J3MgdXNlIDYgYXMg dGhlIG1pbmltdW0gdG8gY292ZXIgYWxsIGtub3duIGNhc2VzIGluY2x1ZGluZyB0aGUKKwkgKiBv ZmYtYnktb25lIGlzc3VlIHRoYXQgSFcgaGFzIGluIHNvbWUgY2FzZXMuCisJICovCisJaWRsZV9m cmFtZXMgPSBtYXgoNiwgZGV2X3ByaXYtPnZidC5wc3IuaWRsZV9mcmFtZXMpOworCWlkbGVfZnJh bWVzID0gbWF4KGlkbGVfZnJhbWVzLCBkZXZfcHJpdi0+cHNyLnNpbmtfc3luY19sYXRlbmN5ICsg MSk7CisJcHNyMl9wcm9ncmFtX2lkbGVfZnJhbWVzKGRldl9wcml2LCBpZGxlX2ZyYW1lcyk7Cit9 CisKIHN0YXRpYyB2b2lkIHRnbF9kaXNhbGxvd19kYzNjb19vbl9wc3IyX2V4aXQoc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogewogCWlmICghZGV2X3ByaXYtPnBzci5kYzNjb19l eGl0bGluZSkKIAkJcmV0dXJuOworCisJY2FuY2VsX2RlbGF5ZWRfd29yaygmZGV2X3ByaXYtPmNz ci5pZGxlX3dvcmspOworCS8qIEJlZm9yZSBQU1IyIGV4aXQgZGlzYWxsb3cgZGMzY28qLworCXRn bF9lbmFibGVfcHNyMl9kZWVwX3NsZWVwX2RjNihkZXZfcHJpdik7CiB9CiAKIHN0YXRpYyBib29s IGludGVsX3BzcjJfY29uZmlnX3ZhbGlkKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAsCmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3Bzci5oIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9wc3IuaAppbmRleCA0NmU0ZGU4YjhjZDUuLjc1 YTk4NjJmMzZmZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRl bF9wc3IuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3Bzci5oCkBA IC0zNSw1ICszNSw3IEBAIHZvaWQgaW50ZWxfcHNyX3Nob3J0X3B1bHNlKHN0cnVjdCBpbnRlbF9k cCAqaW50ZWxfZHApOwogaW50IGludGVsX3Bzcl93YWl0X2Zvcl9pZGxlKGNvbnN0IHN0cnVjdCBp bnRlbF9jcnRjX3N0YXRlICpuZXdfY3J0Y19zdGF0ZSwKIAkJCSAgICB1MzIgKm91dF92YWx1ZSk7 CiBib29sIGludGVsX3Bzcl9lbmFibGVkKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHApOwordm9p ZCB0Z2xfcHNyMl9kZWVwX3NsZWVwX2Rpc2FibGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2KTsKK3ZvaWQgdGdsX3BzcjJfZGVlcF9zbGVlcF9lbmFibGUoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2KTsKIAogI2VuZGlmIC8qIF9fSU5URUxfUFNSX0hfXyAqLwpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggYjg2YjViZDFiNzBhLi4wODdjMTNjYjI2YjIgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAtMzM5LDYgKzMzOSw3IEBAIHN0cnVjdCBpbnRlbF9jc3Ig ewogCXUzMiBkY19zdGF0ZTsKIAl1MzIgdGFyZ2V0X2RjX3N0YXRlOwogCXUzMiBhbGxvd2VkX2Rj X21hc2s7CisJc3RydWN0IGRlbGF5ZWRfd29yayBpZGxlX3dvcms7CiAJaW50ZWxfd2FrZXJlZl90 IHdha2VyZWY7CiB9OwogCi0tIAoyLjIxLjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3Rz LmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xp c3RpbmZvL2ludGVsLWdmeA==