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=-16.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,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 98EC7C63797 for ; Thu, 22 Jul 2021 05:39:35 +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 648D760FED for ; Thu, 22 Jul 2021 05:39:35 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 648D760FED Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=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 9D0906EEAA; Thu, 22 Jul 2021 05:39:32 +0000 (UTC) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTPS id 94E686E9E5 for ; Thu, 22 Jul 2021 05:39:25 +0000 (UTC) X-IronPort-AV: E=McAfee;i="6200,9189,10052"; a="208456074" X-IronPort-AV: E=Sophos;i="5.84,260,1620716400"; d="scan'208";a="208456074" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 Jul 2021 22:39:25 -0700 X-IronPort-AV: E=Sophos;i="5.84,260,1620716400"; d="scan'208";a="470415085" Received: from jkandi-mobl.amr.corp.intel.com (HELO josouza-mobl2.intel.com) ([10.209.170.189]) by fmsmga008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 Jul 2021 22:39:25 -0700 From: =?UTF-8?q?Jos=C3=A9=20Roberto=20de=20Souza?= To: intel-gfx@lists.freedesktop.org Date: Wed, 21 Jul 2021 22:43:34 -0700 Message-Id: <20210722054338.12891-6-jose.souza@intel.com> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20210722054338.12891-1-jose.souza@intel.com> References: <20210722054338.12891-1-jose.souza@intel.com> MIME-Version: 1.0 Subject: [Intel-gfx] [PATCH 06/10] drm/i915/bios: Enable parse of two integrated panels PSR data 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: , Cc: Jani Nikula Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" Q29udGludWluZyB0aGUgY29udmVyc2lvbiBmcm9tIHNpbmdsZSBpbnRlZ3JhdGVkIFZCVCBkYXRh IHRvIHR3bywgbm93CmhhbmRsaW5nIFBTUiBkYXRhLgoKQ2M6IFZpbGxlIFN5cmrDpGzDpCA8dmls bGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+CkNjOiBKYW5pIE5pa3VsYSA8amFuaS5uaWt1bGFA aW50ZWwuY29tPgpTaWduZWQtb2ZmLWJ5OiBKb3PDqSBSb2JlcnRvIGRlIFNvdXphIDxqb3NlLnNv dXphQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Jp b3MuYyB8IDczICsrKysrKysrKysrKystLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9k aXNwbGF5L2ludGVsX2Jpb3MuaCB8ICAyICsKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkv aW50ZWxfcHNyLmMgIHwgMzAgKysrKysrLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9k cnYuaCAgICAgICAgICAgfCAzNCArKysrKy0tLS0tLQogNCBmaWxlcyBjaGFuZ2VkLCA3NyBpbnNl cnRpb25zKCspLCA2MiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9kaXNwbGF5L2ludGVsX2Jpb3MuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkv aW50ZWxfYmlvcy5jCmluZGV4IGYwZDQ5YWY4YmUwMzYuLmRlNjkwZTk2ZGU3MjMgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfYmlvcy5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfYmlvcy5jCkBAIC03MjksMTUgKzcyOSwxMiBA QCBwYXJzZV9kcml2ZXJfZmVhdHVyZXMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsCiAJ CSAgICBkcml2ZXItPmx2ZHNfY29uZmlnICE9IEJEQl9EUklWRVJfRkVBVFVSRV9JTlRfU0RWT19M VkRTKQogCQkJaTkxNS0+dmJ0LmludF9sdmRzX3N1cHBvcnQgPSAwOwogCX0KLQotCWlmIChiZGIt PnZlcnNpb24gPCAyMjgpCi0JCWk5MTUtPnZidC5wc3IuZW5hYmxlID0gZHJpdmVyLT5wc3JfZW5h YmxlZDsKIH0KIAogc3RhdGljIHZvaWQKLXBhcnNlX2RyaXZlcl9mZWF0dXJlc19kcnJzX29ubHko c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsCi0JCQkJY29uc3Qgc3RydWN0IGJkYl9oZWFk ZXIgKmJkYiwKLQkJCQlzdHJ1Y3QgZGRpX3ZidF9wb3J0X2luZm8gKmluZm8pCitwYXJzZV9kcml2 ZXJfZmVhdHVyZXNfZHJyc19wc3Jfb25seShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSwK KwkJCQkgICAgY29uc3Qgc3RydWN0IGJkYl9oZWFkZXIgKmJkYiwKKwkJCQkgICAgc3RydWN0IGRk aV92YnRfcG9ydF9pbmZvICppbmZvKQogewogCWNvbnN0IHN0cnVjdCBiZGJfZHJpdmVyX2ZlYXR1 cmVzICpkcml2ZXI7CiAKQEAgLTc1Nyw2ICs3NTQsOCBAQCBwYXJzZV9kcml2ZXJfZmVhdHVyZXNf ZHJyc19vbmx5KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1LAogCSAqLwogCWlmICghZHJp dmVyLT5kcnJzX2VuYWJsZWQpCiAJCWluZm8tPmRycnNfdHlwZSA9IERSUlNfTk9UX1NVUFBPUlRF RDsKKworCWluZm8tPnBzci5lbmFibGUgPSBkcml2ZXItPnBzcl9lbmFibGVkOwogfQogCiBzdGF0 aWMgdm9pZApAQCAtNzc0LDcgKzc3Myw3IEBAIHBhcnNlX3Bvd2VyX2NvbnNlcnZhdGlvbl9mZWF0 dXJlcyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSwKIAlpZiAoIXBvd2VyKQogCQlyZXR1 cm47CiAKLQlpOTE1LT52YnQucHNyLmVuYWJsZSA9IHBvd2VyLT5wc3IgJiBCSVQocGFuZWxfaW5k ZXgpOworCWluZm8tPnBzci5lbmFibGUgPSBwb3dlci0+cHNyICYgQklUKHBhbmVsX2luZGV4KTsK IAogCS8qCiAJICogSWYgRFJSUyBpcyBub3Qgc3VwcG9ydGVkLCBkcnJzX3R5cGUgaGFzIHRvIGJl IHNldCB0byAwLgpAQCAtOTA1LDExICs5MDQsMTEgQEAgcGFyc2VfZWRwKHN0cnVjdCBkcm1faTkx NV9wcml2YXRlICppOTE1LCBjb25zdCBzdHJ1Y3QgYmRiX2hlYWRlciAqYmRiLAogfQogCiBzdGF0 aWMgdm9pZAotcGFyc2VfcHNyKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1LCBjb25zdCBz dHJ1Y3QgYmRiX2hlYWRlciAqYmRiKQorcGFyc2VfcHNyKHN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICppOTE1LCBjb25zdCBzdHJ1Y3QgYmRiX2hlYWRlciAqYmRiLAorCSAgc3RydWN0IGRkaV92YnRf cG9ydF9pbmZvICppbmZvLCBpbnQgcGFuZWxfaW5kZXgpCiB7CiAJY29uc3Qgc3RydWN0IGJkYl9w c3IgKnBzcjsKIAljb25zdCBzdHJ1Y3QgcHNyX3RhYmxlICpwc3JfdGFibGU7Ci0JaW50IHBhbmVs X3R5cGUgPSBpOTE1LT52YnQucGFuZWxfdHlwZTsKIAogCXBzciA9IGZpbmRfc2VjdGlvbihiZGIs IEJEQl9QU1IpOwogCWlmICghcHNyKSB7CkBAIC05MTcsMjcgKzkxNiwyNyBAQCBwYXJzZV9wc3Io c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsIGNvbnN0IHN0cnVjdCBiZGJfaGVhZGVyICpi ZGIpCiAJCXJldHVybjsKIAl9CiAKLQlwc3JfdGFibGUgPSAmcHNyLT5wc3JfdGFibGVbcGFuZWxf dHlwZV07CisJcHNyX3RhYmxlID0gJnBzci0+cHNyX3RhYmxlW3BhbmVsX2luZGV4XTsKIAotCWk5 MTUtPnZidC5wc3IuZnVsbF9saW5rID0gcHNyX3RhYmxlLT5mdWxsX2xpbms7Ci0JaTkxNS0+dmJ0 LnBzci5yZXF1aXJlX2F1eF93YWtldXAgPSBwc3JfdGFibGUtPnJlcXVpcmVfYXV4X3RvX3dha2V1 cDsKKwlpbmZvLT5wc3IuZnVsbF9saW5rID0gcHNyX3RhYmxlLT5mdWxsX2xpbms7CisJaW5mby0+ cHNyLnJlcXVpcmVfYXV4X3dha2V1cCA9IHBzcl90YWJsZS0+cmVxdWlyZV9hdXhfdG9fd2FrZXVw OwogCiAJLyogQWxsb3dlZCBWQlQgdmFsdWVzIGdvZXMgZnJvbSAwIHRvIDE1ICovCi0JaTkxNS0+ dmJ0LnBzci5pZGxlX2ZyYW1lcyA9IHBzcl90YWJsZS0+aWRsZV9mcmFtZXMgPCAwID8gMCA6CisJ aW5mby0+cHNyLmlkbGVfZnJhbWVzID0gcHNyX3RhYmxlLT5pZGxlX2ZyYW1lcyA8IDAgPyAwIDoK IAkJcHNyX3RhYmxlLT5pZGxlX2ZyYW1lcyA+IDE1ID8gMTUgOiBwc3JfdGFibGUtPmlkbGVfZnJh bWVzOwogCiAJc3dpdGNoIChwc3JfdGFibGUtPmxpbmVzX3RvX3dhaXQpIHsKIAljYXNlIDA6Ci0J CWk5MTUtPnZidC5wc3IubGluZXNfdG9fd2FpdCA9IFBTUl8wX0xJTkVTX1RPX1dBSVQ7CisJCWlu Zm8tPnBzci5saW5lc190b193YWl0ID0gUFNSXzBfTElORVNfVE9fV0FJVDsKIAkJYnJlYWs7CiAJ Y2FzZSAxOgotCQlpOTE1LT52YnQucHNyLmxpbmVzX3RvX3dhaXQgPSBQU1JfMV9MSU5FX1RPX1dB SVQ7CisJCWluZm8tPnBzci5saW5lc190b193YWl0ID0gUFNSXzFfTElORV9UT19XQUlUOwogCQli cmVhazsKIAljYXNlIDI6Ci0JCWk5MTUtPnZidC5wc3IubGluZXNfdG9fd2FpdCA9IFBTUl80X0xJ TkVTX1RPX1dBSVQ7CisJCWluZm8tPnBzci5saW5lc190b193YWl0ID0gUFNSXzRfTElORVNfVE9f V0FJVDsKIAkJYnJlYWs7CiAJY2FzZSAzOgotCQlpOTE1LT52YnQucHNyLmxpbmVzX3RvX3dhaXQg PSBQU1JfOF9MSU5FU19UT19XQUlUOworCQlpbmZvLT5wc3IubGluZXNfdG9fd2FpdCA9IFBTUl84 X0xJTkVTX1RPX1dBSVQ7CiAJCWJyZWFrOwogCWRlZmF1bHQ6CiAJCWRybV9kYmdfa21zKCZpOTE1 LT5kcm0sCkBAIC05NTQsMTMgKzk1MywxMyBAQCBwYXJzZV9wc3Ioc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmk5MTUsIGNvbnN0IHN0cnVjdCBiZGJfaGVhZGVyICpiZGIpCiAJICAgIChESVNQTEFZ X1ZFUihpOTE1KSA+PSA5ICYmICFJU19CUk9YVE9OKGk5MTUpKSkgewogCQlzd2l0Y2ggKHBzcl90 YWJsZS0+dHAxX3dha2V1cF90aW1lKSB7CiAJCWNhc2UgMDoKLQkJCWk5MTUtPnZidC5wc3IudHAx X3dha2V1cF90aW1lX3VzID0gNTAwOworCQkJaW5mby0+cHNyLnRwMV93YWtldXBfdGltZV91cyA9 IDUwMDsKIAkJCWJyZWFrOwogCQljYXNlIDE6Ci0JCQlpOTE1LT52YnQucHNyLnRwMV93YWtldXBf dGltZV91cyA9IDEwMDsKKwkJCWluZm8tPnBzci50cDFfd2FrZXVwX3RpbWVfdXMgPSAxMDA7CiAJ CQlicmVhazsKIAkJY2FzZSAzOgotCQkJaTkxNS0+dmJ0LnBzci50cDFfd2FrZXVwX3RpbWVfdXMg PSAwOworCQkJaW5mby0+cHNyLnRwMV93YWtldXBfdGltZV91cyA9IDA7CiAJCQlicmVhazsKIAkJ ZGVmYXVsdDoKIAkJCWRybV9kYmdfa21zKCZpOTE1LT5kcm0sCkBAIC05NjgsMTkgKzk2NywxOSBA QCBwYXJzZV9wc3Ioc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsIGNvbnN0IHN0cnVjdCBi ZGJfaGVhZGVyICpiZGIpCiAJCQkJICAgIHBzcl90YWJsZS0+dHAxX3dha2V1cF90aW1lKTsKIAkJ CWZhbGx0aHJvdWdoOwogCQljYXNlIDI6Ci0JCQlpOTE1LT52YnQucHNyLnRwMV93YWtldXBfdGlt ZV91cyA9IDI1MDA7CisJCQlpbmZvLT5wc3IudHAxX3dha2V1cF90aW1lX3VzID0gMjUwMDsKIAkJ CWJyZWFrOwogCQl9CiAKIAkJc3dpdGNoIChwc3JfdGFibGUtPnRwMl90cDNfd2FrZXVwX3RpbWUp IHsKIAkJY2FzZSAwOgotCQkJaTkxNS0+dmJ0LnBzci50cDJfdHAzX3dha2V1cF90aW1lX3VzID0g NTAwOworCQkJaW5mby0+cHNyLnRwMl90cDNfd2FrZXVwX3RpbWVfdXMgPSA1MDA7CiAJCQlicmVh azsKIAkJY2FzZSAxOgotCQkJaTkxNS0+dmJ0LnBzci50cDJfdHAzX3dha2V1cF90aW1lX3VzID0g MTAwOworCQkJaW5mby0+cHNyLnRwMl90cDNfd2FrZXVwX3RpbWVfdXMgPSAxMDA7CiAJCQlicmVh azsKIAkJY2FzZSAzOgotCQkJaTkxNS0+dmJ0LnBzci50cDJfdHAzX3dha2V1cF90aW1lX3VzID0g MDsKKwkJCWluZm8tPnBzci50cDJfdHAzX3dha2V1cF90aW1lX3VzID0gMDsKIAkJCWJyZWFrOwog CQlkZWZhdWx0OgogCQkJZHJtX2RiZ19rbXMoJmk5MTUtPmRybSwKQEAgLTk4OCwxOCArOTg3LDE4 IEBAIHBhcnNlX3BzcihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSwgY29uc3Qgc3RydWN0 IGJkYl9oZWFkZXIgKmJkYikKIAkJCQkgICAgcHNyX3RhYmxlLT50cDJfdHAzX3dha2V1cF90aW1l KTsKIAkJCWZhbGx0aHJvdWdoOwogCQljYXNlIDI6Ci0JCQlpOTE1LT52YnQucHNyLnRwMl90cDNf d2FrZXVwX3RpbWVfdXMgPSAyNTAwOworCQkJaW5mby0+cHNyLnRwMl90cDNfd2FrZXVwX3RpbWVf dXMgPSAyNTAwOwogCQlicmVhazsKIAkJfQogCX0gZWxzZSB7Ci0JCWk5MTUtPnZidC5wc3IudHAx X3dha2V1cF90aW1lX3VzID0gcHNyX3RhYmxlLT50cDFfd2FrZXVwX3RpbWUgKiAxMDA7Ci0JCWk5 MTUtPnZidC5wc3IudHAyX3RwM193YWtldXBfdGltZV91cyA9IHBzcl90YWJsZS0+dHAyX3RwM193 YWtldXBfdGltZSAqIDEwMDsKKwkJaW5mby0+cHNyLnRwMV93YWtldXBfdGltZV91cyA9IHBzcl90 YWJsZS0+dHAxX3dha2V1cF90aW1lICogMTAwOworCQlpbmZvLT5wc3IudHAyX3RwM193YWtldXBf dGltZV91cyA9IHBzcl90YWJsZS0+dHAyX3RwM193YWtldXBfdGltZSAqIDEwMDsKIAl9CiAKIAlp ZiAoYmRiLT52ZXJzaW9uID49IDIyNikgewogCQl1MzIgd2FrZXVwX3RpbWUgPSBwc3ItPnBzcjJf dHAyX3RwM193YWtldXBfdGltZTsKIAotCQl3YWtldXBfdGltZSA9ICh3YWtldXBfdGltZSA+PiAo MiAqIHBhbmVsX3R5cGUpKSAmIDB4MzsKKwkJd2FrZXVwX3RpbWUgPSAod2FrZXVwX3RpbWUgPj4g KDIgKiBwYW5lbF9pbmRleCkpICYgMHgzOwogCQlzd2l0Y2ggKHdha2V1cF90aW1lKSB7CiAJCWNh c2UgMDoKIAkJCXdha2V1cF90aW1lID0gNTAwOwpAQCAtMTAxNSwxMCArMTAxNCwxMCBAQCBwYXJz ZV9wc3Ioc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsIGNvbnN0IHN0cnVjdCBiZGJfaGVh ZGVyICpiZGIpCiAJCQl3YWtldXBfdGltZSA9IDI1MDA7CiAJCQlicmVhazsKIAkJfQotCQlpOTE1 LT52YnQucHNyLnBzcjJfdHAyX3RwM193YWtldXBfdGltZV91cyA9IHdha2V1cF90aW1lOworCQlp bmZvLT5wc3IucHNyMl90cDJfdHAzX3dha2V1cF90aW1lX3VzID0gd2FrZXVwX3RpbWU7CiAJfSBl bHNlIHsKIAkJLyogUmV1c2luZyBQU1IxIHdha2V1cCB0aW1lIGZvciBQU1IyIGluIG9sZGVyIFZC VHMgKi8KLQkJaTkxNS0+dmJ0LnBzci5wc3IyX3RwMl90cDNfd2FrZXVwX3RpbWVfdXMgPSBpOTE1 LT52YnQucHNyLnRwMl90cDNfd2FrZXVwX3RpbWVfdXM7CisJCWluZm8tPnBzci5wc3IyX3RwMl90 cDNfd2FrZXVwX3RpbWVfdXMgPSBpbmZvLT5wc3IudHAyX3RwM193YWtldXBfdGltZV91czsKIAl9 CiB9CiAKQEAgLTE5ODYsMTAgKzE5ODUsMTEgQEAgc3RhdGljIHZvaWQgcGFyc2VfaW50ZWdyYXRl ZF9wYW5lbChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSwKIAogCXBhcnNlX3BhbmVsX29w dGlvbnMoaTkxNSwgYmRiLCBpbmZvLCBwYW5lbF9pbmRleCk7CiAJcGFyc2VfcG93ZXJfY29uc2Vy dmF0aW9uX2ZlYXR1cmVzKGk5MTUsIGJkYiwgaW5mbywgcGFuZWxfaW5kZXgpOwotCXBhcnNlX2Ry aXZlcl9mZWF0dXJlc19kcnJzX29ubHkoaTkxNSwgYmRiLCBpbmZvKTsKKwlwYXJzZV9kcml2ZXJf ZmVhdHVyZXNfZHJyc19wc3Jfb25seShpOTE1LCBiZGIsIGluZm8pOwogCXBhcnNlX3BhbmVsX2R0 ZChpOTE1LCBiZGIsIGluZm8sIHBhbmVsX2luZGV4KTsKIAlwYXJzZV9sZnBfYmFja2xpZ2h0KGk5 MTUsIGJkYiwgaW5mbywgcGFuZWxfaW5kZXgpOwogCXBhcnNlX2VkcChpOTE1LCBiZGIsIGluZm8s IHBhbmVsX2luZGV4KTsKKwlwYXJzZV9wc3IoaTkxNSwgYmRiLCBpbmZvLCBwYW5lbF9pbmRleCk7 CiB9CiAKIHN0YXRpYyB2b2lkIHBhcnNlX2RkaV9wb3J0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICppOTE1LApAQCAtMjQ4Niw3ICsyNDg2LDYgQEAgdm9pZCBpbnRlbF9iaW9zX2luaXQoc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUpCiAJcGFyc2VfcGFuZWxfdHlwZShpOTE1LCBiZGIpOwog CXBhcnNlX3Nkdm9fcGFuZWxfZGF0YShpOTE1LCBiZGIpOwogCXBhcnNlX2RyaXZlcl9mZWF0dXJl cyhpOTE1LCBiZGIpOwotCXBhcnNlX3BzcihpOTE1LCBiZGIpOwogCXBhcnNlX21pcGlfY29uZmln KGk5MTUsIGJkYik7CiAJcGFyc2VfbWlwaV9zZXF1ZW5jZShpOTE1LCBiZGIpOwogCkBAIC0zMTQw LDMgKzMxMzksMTMgQEAgaW50ZWxfYmlvc19lZHBfaW5mbyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAq ZW5jb2RlcikKIAogCXJldHVybiAmaTkxNS0+dmJ0LmRkaV9wb3J0X2luZm9bZW5jb2Rlci0+cG9y dF0uZWRwOwogfQorCitjb25zdCBzdHJ1Y3QgdmJ0X3Bzcl9pbmZvICoKK2ludGVsX2Jpb3NfcHNy X2luZm8oc3RydWN0IGludGVsX2RwICppbnRlbF9kcCkKK3sKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqaTkxNSA9IGRwX3RvX2k5MTUoaW50ZWxfZHApOworCXN0cnVjdCBpbnRlbF9kaWdpdGFs X3BvcnQgKmRpZ19wb3J0ID0gZHBfdG9fZGlnX3BvcnQoaW50ZWxfZHApOworCXN0cnVjdCBpbnRl bF9lbmNvZGVyICplbmNvZGVyID0gJmRpZ19wb3J0LT5iYXNlOworCisJcmV0dXJuICZpOTE1LT52 YnQuZGRpX3BvcnRfaW5mb1tlbmNvZGVyLT5wb3J0XS5wc3I7Cit9CmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Jpb3MuaCBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2Rpc3BsYXkvaW50ZWxfYmlvcy5oCmluZGV4IDhmZDliNTJmOTIxZjcuLmM3MDE4NzFkOWE3 NGQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfYmlvcy5o CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfYmlvcy5oCkBAIC0zNSw2 ICszNSw3IEBACiBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZTsKIHN0cnVjdCBpbnRlbF9iaW9zX2Vu Y29kZXJfZGF0YTsKIHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlOworc3RydWN0IGludGVsX2RwOwog c3RydWN0IGludGVsX2VuY29kZXI7CiBlbnVtIHBvcnQ7CiAKQEAgLTI3MCw1ICsyNzEsNiBAQCBl bnVtIGRycnNfc3VwcG9ydF90eXBlIGludGVsX2Jpb3NfZHJyc190eXBlKHN0cnVjdCBpbnRlbF9l bmNvZGVyICplbmNvZGVyKTsKIGNvbnN0IHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICppbnRlbF9i aW9zX2xmcF9sdmRzX2luZm8oc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIpOwogY29uc3Qg c3RydWN0IHZidF9iYWNrbGlnaHRfaW5mbyAqaW50ZWxfYmlvc19iYWNrbGlnaHRfaW5mbyhzdHJ1 Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2Rlcik7CiBzdHJ1Y3QgdmJ0X2VkcF9pbmZvICppbnRlbF9i aW9zX2VkcF9pbmZvKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyKTsKK2NvbnN0IHN0cnVj dCB2YnRfcHNyX2luZm8gKmludGVsX2Jpb3NfcHNyX2luZm8oc3RydWN0IGludGVsX2RwICppbnRl bF9kcCk7CiAKICNlbmRpZiAvKiBfSU5URUxfQklPU19IXyAqLwpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9wc3IuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2Rpc3BsYXkvaW50ZWxfcHNyLmMKaW5kZXggYTU0ZTcxZTRlNTY4Yy4uNGJlOTJjY2ZiMGFkZiAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9wc3IuYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3Bzci5jCkBAIC00MjgsNiArNDI4 LDcgQEAgc3RhdGljIHZvaWQgaW50ZWxfcHNyX2VuYWJsZV9zaW5rKHN0cnVjdCBpbnRlbF9kcCAq aW50ZWxfZHApCiAKIHN0YXRpYyB1MzIgaW50ZWxfcHNyMV9nZXRfdHBfdGltZShzdHJ1Y3QgaW50 ZWxfZHAgKmludGVsX2RwKQogeworCWNvbnN0IHN0cnVjdCB2YnRfcHNyX2luZm8gKnZidF9wc3Jf aW5mbyA9IGludGVsX2Jpb3NfcHNyX2luZm8oaW50ZWxfZHApOwogCXN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdiA9IGRwX3RvX2k5MTUoaW50ZWxfZHApOwogCXUzMiB2YWwgPSAwOwog CkBAIC00NDAsMjAgKzQ0MSwyMCBAQCBzdGF0aWMgdTMyIGludGVsX3BzcjFfZ2V0X3RwX3RpbWUo c3RydWN0IGludGVsX2RwICppbnRlbF9kcCkKIAkJZ290byBjaGVja190cDNfc2VsOwogCX0KIAot CWlmIChkZXZfcHJpdi0+dmJ0LnBzci50cDFfd2FrZXVwX3RpbWVfdXMgPT0gMCkKKwlpZiAodmJ0 X3Bzcl9pbmZvLT50cDFfd2FrZXVwX3RpbWVfdXMgPT0gMCkKIAkJdmFsIHw9IEVEUF9QU1JfVFAx X1RJTUVfMHVzOwotCWVsc2UgaWYgKGRldl9wcml2LT52YnQucHNyLnRwMV93YWtldXBfdGltZV91 cyA8PSAxMDApCisJZWxzZSBpZiAodmJ0X3Bzcl9pbmZvLT50cDFfd2FrZXVwX3RpbWVfdXMgPD0g MTAwKQogCQl2YWwgfD0gRURQX1BTUl9UUDFfVElNRV8xMDB1czsKLQllbHNlIGlmIChkZXZfcHJp di0+dmJ0LnBzci50cDFfd2FrZXVwX3RpbWVfdXMgPD0gNTAwKQorCWVsc2UgaWYgKHZidF9wc3Jf aW5mby0+dHAxX3dha2V1cF90aW1lX3VzIDw9IDUwMCkKIAkJdmFsIHw9IEVEUF9QU1JfVFAxX1RJ TUVfNTAwdXM7CiAJZWxzZQogCQl2YWwgfD0gRURQX1BTUl9UUDFfVElNRV8yNTAwdXM7CiAKLQlp ZiAoZGV2X3ByaXYtPnZidC5wc3IudHAyX3RwM193YWtldXBfdGltZV91cyA9PSAwKQorCWlmICh2 YnRfcHNyX2luZm8tPnRwMl90cDNfd2FrZXVwX3RpbWVfdXMgPT0gMCkKIAkJdmFsIHw9IEVEUF9Q U1JfVFAyX1RQM19USU1FXzB1czsKLQllbHNlIGlmIChkZXZfcHJpdi0+dmJ0LnBzci50cDJfdHAz X3dha2V1cF90aW1lX3VzIDw9IDEwMCkKKwllbHNlIGlmICh2YnRfcHNyX2luZm8tPnRwMl90cDNf d2FrZXVwX3RpbWVfdXMgPD0gMTAwKQogCQl2YWwgfD0gRURQX1BTUl9UUDJfVFAzX1RJTUVfMTAw dXM7Ci0JZWxzZSBpZiAoZGV2X3ByaXYtPnZidC5wc3IudHAyX3RwM193YWtldXBfdGltZV91cyA8 PSA1MDApCisJZWxzZSBpZiAodmJ0X3Bzcl9pbmZvLT50cDJfdHAzX3dha2V1cF90aW1lX3VzIDw9 IDUwMCkKIAkJdmFsIHw9IEVEUF9QU1JfVFAyX1RQM19USU1FXzUwMHVzOwogCWVsc2UKIAkJdmFs IHw9IEVEUF9QU1JfVFAyX1RQM19USU1FXzI1MDB1czsKQEAgLTQ3MCwxMyArNDcxLDE0IEBAIHN0 YXRpYyB1MzIgaW50ZWxfcHNyMV9nZXRfdHBfdGltZShzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2Rw KQogCiBzdGF0aWMgdTggcHNyX2NvbXB1dGVfaWRsZV9mcmFtZXMoc3RydWN0IGludGVsX2RwICpp bnRlbF9kcCkKIHsKKwljb25zdCBzdHJ1Y3QgdmJ0X3Bzcl9pbmZvICp2YnRfcHNyX2luZm8gPSBp bnRlbF9iaW9zX3Bzcl9pbmZvKGludGVsX2RwKTsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYgPSBkcF90b19pOTE1KGludGVsX2RwKTsKIAlpbnQgaWRsZV9mcmFtZXM7CiAKIAkv KiBMZXQncyB1c2UgNiBhcyB0aGUgbWluaW11bSB0byBjb3ZlciBhbGwga25vd24gY2FzZXMgaW5j bHVkaW5nIHRoZQogCSAqIG9mZi1ieS1vbmUgaXNzdWUgdGhhdCBIVyBoYXMgaW4gc29tZSBjYXNl cy4KIAkgKi8KLQlpZGxlX2ZyYW1lcyA9IG1heCg2LCBkZXZfcHJpdi0+dmJ0LnBzci5pZGxlX2Zy YW1lcyk7CisJaWRsZV9mcmFtZXMgPSBtYXgoNiwgdmJ0X3Bzcl9pbmZvLT5pZGxlX2ZyYW1lcyk7 CiAJaWRsZV9mcmFtZXMgPSBtYXgoaWRsZV9mcmFtZXMsIGludGVsX2RwLT5wc3Iuc2lua19zeW5j X2xhdGVuY3kgKyAxKTsKIAogCWlmIChkcm1fV0FSTl9PTigmZGV2X3ByaXYtPmRybSwgaWRsZV9m cmFtZXMgPiAweGYpKQpAQCAtNTEyLDE4ICs1MTQsMTkgQEAgc3RhdGljIHZvaWQgaHN3X2FjdGl2 YXRlX3BzcjEoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCkKIAogc3RhdGljIHUzMiBpbnRlbF9w c3IyX2dldF90cF90aW1lKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHApCiB7CisJY29uc3Qgc3Ry dWN0IHZidF9wc3JfaW5mbyAqdmJ0X3Bzcl9pbmZvID0gaW50ZWxfYmlvc19wc3JfaW5mbyhpbnRl bF9kcCk7CiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZHBfdG9faTkxNShp bnRlbF9kcCk7CiAJdTMyIHZhbCA9IDA7CiAKIAlpZiAoZGV2X3ByaXYtPnBhcmFtcy5wc3Jfc2Fm ZXN0X3BhcmFtcykKIAkJcmV0dXJuIEVEUF9QU1IyX1RQMl9USU1FXzI1MDB1czsKIAotCWlmIChk ZXZfcHJpdi0+dmJ0LnBzci5wc3IyX3RwMl90cDNfd2FrZXVwX3RpbWVfdXMgPj0gMCAmJgotCSAg ICBkZXZfcHJpdi0+dmJ0LnBzci5wc3IyX3RwMl90cDNfd2FrZXVwX3RpbWVfdXMgPD0gNTApCisJ aWYgKHZidF9wc3JfaW5mby0+cHNyMl90cDJfdHAzX3dha2V1cF90aW1lX3VzID49IDAgJiYKKwkg ICAgdmJ0X3Bzcl9pbmZvLT5wc3IyX3RwMl90cDNfd2FrZXVwX3RpbWVfdXMgPD0gNTApCiAJCXZh bCB8PSBFRFBfUFNSMl9UUDJfVElNRV81MHVzOwotCWVsc2UgaWYgKGRldl9wcml2LT52YnQucHNy LnBzcjJfdHAyX3RwM193YWtldXBfdGltZV91cyA8PSAxMDApCisJZWxzZSBpZiAodmJ0X3Bzcl9p bmZvLT5wc3IyX3RwMl90cDNfd2FrZXVwX3RpbWVfdXMgPD0gMTAwKQogCQl2YWwgfD0gRURQX1BT UjJfVFAyX1RJTUVfMTAwdXM7Ci0JZWxzZSBpZiAoZGV2X3ByaXYtPnZidC5wc3IucHNyMl90cDJf dHAzX3dha2V1cF90aW1lX3VzIDw9IDUwMCkKKwllbHNlIGlmICh2YnRfcHNyX2luZm8tPnBzcjJf dHAyX3RwM193YWtldXBfdGltZV91cyA8PSA1MDApCiAJCXZhbCB8PSBFRFBfUFNSMl9UUDJfVElN RV81MDB1czsKIAllbHNlCiAJCXZhbCB8PSBFRFBfUFNSMl9UUDJfVElNRV8yNTAwdXM7CkBAIC0y MTU0LDYgKzIxNTcsNyBAQCB2b2lkIGludGVsX3Bzcl9mbHVzaChzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYsCiAgKi8KIHZvaWQgaW50ZWxfcHNyX2luaXQoc3RydWN0IGludGVsX2Rw ICppbnRlbF9kcCkKIHsKKwljb25zdCBzdHJ1Y3QgdmJ0X3Bzcl9pbmZvICp2YnRfcHNyX2luZm8g PSBpbnRlbF9iaW9zX3Bzcl9pbmZvKGludGVsX2RwKTsKIAlzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9w b3J0ICpkaWdfcG9ydCA9IGRwX3RvX2RpZ19wb3J0KGludGVsX2RwKTsKIAlzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkcF90b19pOTE1KGludGVsX2RwKTsKIApAQCAtMjE4Niw3 ICsyMTkwLDcgQEAgdm9pZCBpbnRlbF9wc3JfaW5pdChzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2Rw KQogCQlkZXZfcHJpdi0+aHN3X3Bzcl9tbWlvX2FkanVzdCA9IF9TUkRfQ1RMX0VEUCAtIF9IU1df RURQX1BTUl9CQVNFOwogCiAJaWYgKGRldl9wcml2LT5wYXJhbXMuZW5hYmxlX3BzciA9PSAtMSkK LQkJaWYgKERJU1BMQVlfVkVSKGRldl9wcml2KSA8IDkgfHwgIWRldl9wcml2LT52YnQucHNyLmVu YWJsZSkKKwkJaWYgKERJU1BMQVlfVkVSKGRldl9wcml2KSA8IDkgfHwgIXZidF9wc3JfaW5mby0+ ZW5hYmxlKQogCQkJZGV2X3ByaXYtPnBhcmFtcy5lbmFibGVfcHNyID0gMDsKIAogCS8qIFNldCBs aW5rX3N0YW5kYnkgeCBsaW5rX29mZiBkZWZhdWx0cyAqLwpAQCAtMjE5NSw3ICsyMTk5LDcgQEAg dm9pZCBpbnRlbF9wc3JfaW5pdChzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQogCQlpbnRlbF9k cC0+cHNyLmxpbmtfc3RhbmRieSA9IGZhbHNlOwogCWVsc2UgaWYgKERJU1BMQVlfVkVSKGRldl9w cml2KSA8IDEyKQogCQkvKiBGb3IgbmV3IHBsYXRmb3JtcyB1cCB0byBUR0wgbGV0J3MgcmVzcGVj dCBWQlQgYmFjayBhZ2FpbiAqLwotCQlpbnRlbF9kcC0+cHNyLmxpbmtfc3RhbmRieSA9IGRldl9w cml2LT52YnQucHNyLmZ1bGxfbGluazsKKwkJaW50ZWxfZHAtPnBzci5saW5rX3N0YW5kYnkgPSB2 YnRfcHNyX2luZm8tPmZ1bGxfbGluazsKIAogCUlOSVRfV09SSygmaW50ZWxfZHAtPnBzci53b3Jr LCBpbnRlbF9wc3Jfd29yayk7CiAJSU5JVF9ERUxBWUVEX1dPUksoJmludGVsX2RwLT5wc3IuZGMz Y29fd29yaywgdGdsX2RjM2NvX2Rpc2FibGVfd29yayk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaApp bmRleCAwZTk1N2JhODA0NmYyLi4yMzNkZmNmODU0YjUyIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2 LmgKQEAgLTY0Miw2ICs2NDIsMTMgQEAgaTkxNV9mZW5jZV90aW1lb3V0KGNvbnN0IHN0cnVjdCBk cm1faTkxNV9wcml2YXRlICppOTE1KQogCiAjZGVmaW5lIEhBU19IV19TQUdWX1dNKGk5MTUpIChE SVNQTEFZX1ZFUihpOTE1KSA+PSAxMyAmJiAhSVNfREdGWChpOTE1KSkKIAorZW51bSBwc3JfbGlu ZXNfdG9fd2FpdCB7CisJUFNSXzBfTElORVNfVE9fV0FJVCA9IDAsCisJUFNSXzFfTElORV9UT19X QUlULAorCVBTUl80X0xJTkVTX1RPX1dBSVQsCisJUFNSXzhfTElORVNfVE9fV0FJVAorfTsKKwog c3RydWN0IGRkaV92YnRfcG9ydF9pbmZvIHsKIAkvKiBOb24tTlVMTCBpZiBwb3J0IHByZXNlbnQu ICovCiAJc3RydWN0IGludGVsX2Jpb3NfZW5jb2Rlcl9kYXRhICpkZXZkYXRhOwpAQCAtNjgxLDEz ICs2ODgsMTcgQEAgc3RydWN0IGRkaV92YnRfcG9ydF9pbmZvIHsKIAkJc3RydWN0IGVkcF9wb3dl cl9zZXEgcHBzOwogCQlib29sIGhvYmw7CiAJfSBlZHA7Ci19OwogCi1lbnVtIHBzcl9saW5lc190 b193YWl0IHsKLQlQU1JfMF9MSU5FU19UT19XQUlUID0gMCwKLQlQU1JfMV9MSU5FX1RPX1dBSVQs Ci0JUFNSXzRfTElORVNfVE9fV0FJVCwKLQlQU1JfOF9MSU5FU19UT19XQUlUCisJc3RydWN0IHZi dF9wc3JfaW5mbyB7CisJCWJvb2wgZW5hYmxlOworCQlib29sIGZ1bGxfbGluazsKKwkJYm9vbCBy ZXF1aXJlX2F1eF93YWtldXA7CisJCWludCBpZGxlX2ZyYW1lczsKKwkJZW51bSBwc3JfbGluZXNf dG9fd2FpdCBsaW5lc190b193YWl0OworCQlpbnQgdHAxX3dha2V1cF90aW1lX3VzOworCQlpbnQg dHAyX3RwM193YWtldXBfdGltZV91czsKKwkJaW50IHBzcjJfdHAyX3RwM193YWtldXBfdGltZV91 czsKKwl9IHBzcjsKIH07CiAKIHN0cnVjdCBpbnRlbF92YnRfZGF0YSB7CkBAIC03MDgsMTcgKzcx OSw2IEBAIHN0cnVjdCBpbnRlbF92YnRfZGF0YSB7CiAJdW5zaWduZWQgaW50IGJpb3NfbHZkc192 YWw7IC8qIGluaXRpYWwgW1BDSF9dTFZEUyByZWcgdmFsIGluIFZCSU9TICovCiAJZW51bSBkcm1f cGFuZWxfb3JpZW50YXRpb24gb3JpZW50YXRpb247CiAKLQlzdHJ1Y3QgewotCQlib29sIGVuYWJs ZTsKLQkJYm9vbCBmdWxsX2xpbms7Ci0JCWJvb2wgcmVxdWlyZV9hdXhfd2FrZXVwOwotCQlpbnQg aWRsZV9mcmFtZXM7Ci0JCWVudW0gcHNyX2xpbmVzX3RvX3dhaXQgbGluZXNfdG9fd2FpdDsKLQkJ aW50IHRwMV93YWtldXBfdGltZV91czsKLQkJaW50IHRwMl90cDNfd2FrZXVwX3RpbWVfdXM7Ci0J CWludCBwc3IyX3RwMl90cDNfd2FrZXVwX3RpbWVfdXM7Ci0JfSBwc3I7Ci0KIAkvKiBNSVBJIERT SSAqLwogCXN0cnVjdCB7CiAJCXUxNiBwYW5lbF9pZDsKLS0gCjIuMzIuMAoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlz dApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0 b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==