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 BEC20C63793 for ; Thu, 22 Jul 2021 05:39:34 +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 7189161001 for ; Thu, 22 Jul 2021 05:39:34 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 7189161001 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 384476EDFB; 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 46F3E6E92E for ; Thu, 22 Jul 2021 05:39:25 +0000 (UTC) X-IronPort-AV: E=McAfee;i="6200,9189,10052"; a="208456071" X-IronPort-AV: E=Sophos;i="5.84,260,1620716400"; d="scan'208";a="208456071" 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:24 -0700 X-IronPort-AV: E=Sophos;i="5.84,260,1620716400"; d="scan'208";a="470415078" 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:24 -0700 From: =?UTF-8?q?Jos=C3=A9=20Roberto=20de=20Souza?= To: intel-gfx@lists.freedesktop.org Date: Wed, 21 Jul 2021 22:43:32 -0700 Message-Id: <20210722054338.12891-4-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 04/10] drm/i915/bios: Enable parse of two integrated panels backlight 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 IHRvIHR3bywgbm93CmhhbmRsaW5nIGJhY2tsaWdodCBkYXRhLgoKQ2M6IFZpbGxlIFN5cmrDpGzD pCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+CkNjOiBKYW5pIE5pa3VsYSA8amFuaS5u aWt1bGFAaW50ZWwuY29tPgpTaWduZWQtb2ZmLWJ5OiBKb3PDqSBSb2JlcnRvIGRlIFNvdXphIDxq b3NlLnNvdXphQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2lu dGVsX2Jpb3MuYyAgICAgfCA1OSArKysrKysrKysrKy0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0v aTkxNS9kaXNwbGF5L2ludGVsX2Jpb3MuaCAgICAgfCAgMSArCiAuLi4vZHJtL2k5MTUvZGlzcGxh eS9pbnRlbF9kcF9hdXhfYmFja2xpZ2h0LmMgfCAxMSArKy0tCiAuLi4vaTkxNS9kaXNwbGF5L2lu dGVsX2RzaV9kY3NfYmFja2xpZ2h0LmMgICAgfCAgNSArLQogZHJpdmVycy9ncHUvZHJtL2k5MTUv ZGlzcGxheS9pbnRlbF9wYW5lbC5jICAgIHwgMzIgKysrKysrLS0tLQogZHJpdmVycy9ncHUvZHJt L2k5MTUvZGlzcGxheS9pbnRlbF9wcHMuYyAgICAgIHwgIDggKystCiBkcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2Rydi5oICAgICAgICAgICAgICAgfCAxOCArKystLS0KIDcgZmlsZXMgY2hhbmdl ZCwgODMgaW5zZXJ0aW9ucygrKSwgNTEgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9iaW9zLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9kaXNwbGF5L2ludGVsX2Jpb3MuYwppbmRleCA1OTA2ZTlmYThmOTc2Li42NzcwZWQ4YjI2MGJl IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Jpb3MuYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Jpb3MuYwpAQCAtNDQxLDEx ICs0NDEsMTIgQEAgcGFyc2VfcGFuZWxfZHRkKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1 LAogCiBzdGF0aWMgdm9pZAogcGFyc2VfbGZwX2JhY2tsaWdodChzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqaTkxNSwKLQkJICAgIGNvbnN0IHN0cnVjdCBiZGJfaGVhZGVyICpiZGIpCisJCSAgICBj b25zdCBzdHJ1Y3QgYmRiX2hlYWRlciAqYmRiLAorCQkgICAgc3RydWN0IGRkaV92YnRfcG9ydF9p bmZvICppbmZvLAorCQkgICAgaW50IHBhbmVsX2luZGV4KQogewogCWNvbnN0IHN0cnVjdCBiZGJf bGZwX2JhY2tsaWdodF9kYXRhICpiYWNrbGlnaHRfZGF0YTsKIAljb25zdCBzdHJ1Y3QgbGZwX2Jh Y2tsaWdodF9kYXRhX2VudHJ5ICplbnRyeTsKLQlpbnQgcGFuZWxfdHlwZSA9IGk5MTUtPnZidC5w YW5lbF90eXBlOwogCXUxNiBsZXZlbDsKIAogCWJhY2tsaWdodF9kYXRhID0gZmluZF9zZWN0aW9u KGJkYiwgQkRCX0xWRFNfQkFDS0xJR0hUKTsKQEAgLTQ1OSwzOCArNDYwLDM4IEBAIHBhcnNlX2xm cF9iYWNrbGlnaHQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsCiAJCXJldHVybjsKIAl9 CiAKLQllbnRyeSA9ICZiYWNrbGlnaHRfZGF0YS0+ZGF0YVtwYW5lbF90eXBlXTsKKwllbnRyeSA9 ICZiYWNrbGlnaHRfZGF0YS0+ZGF0YVtwYW5lbF9pbmRleF07CiAKLQlpOTE1LT52YnQuYmFja2xp Z2h0LnByZXNlbnQgPSBlbnRyeS0+dHlwZSA9PSBCREJfQkFDS0xJR0hUX1RZUEVfUFdNOwotCWlm ICghaTkxNS0+dmJ0LmJhY2tsaWdodC5wcmVzZW50KSB7CisJaW5mby0+YmFja2xpZ2h0LnByZXNl bnQgPSBlbnRyeS0+dHlwZSA9PSBCREJfQkFDS0xJR0hUX1RZUEVfUFdNOworCWlmICghaW5mby0+ YmFja2xpZ2h0LnByZXNlbnQpIHsKIAkJZHJtX2RiZ19rbXMoJmk5MTUtPmRybSwKIAkJCSAgICAi UFdNIGJhY2tsaWdodCBub3QgcHJlc2VudCBpbiBWQlQgKHR5cGUgJXUpXG4iLAogCQkJICAgIGVu dHJ5LT50eXBlKTsKIAkJcmV0dXJuOwogCX0KIAotCWk5MTUtPnZidC5iYWNrbGlnaHQudHlwZSA9 IElOVEVMX0JBQ0tMSUdIVF9ESVNQTEFZX0RESTsKKwlpbmZvLT5iYWNrbGlnaHQudHlwZSA9IElO VEVMX0JBQ0tMSUdIVF9ESVNQTEFZX0RESTsKIAlpZiAoYmRiLT52ZXJzaW9uID49IDE5MSAmJgog CSAgICBnZXRfYmxvY2tzaXplKGJhY2tsaWdodF9kYXRhKSA+PSBzaXplb2YoKmJhY2tsaWdodF9k YXRhKSkgewogCQljb25zdCBzdHJ1Y3QgbGZwX2JhY2tsaWdodF9jb250cm9sX21ldGhvZCAqbWV0 aG9kOwogCi0JCW1ldGhvZCA9ICZiYWNrbGlnaHRfZGF0YS0+YmFja2xpZ2h0X2NvbnRyb2xbcGFu ZWxfdHlwZV07Ci0JCWk5MTUtPnZidC5iYWNrbGlnaHQudHlwZSA9IG1ldGhvZC0+dHlwZTsKLQkJ aTkxNS0+dmJ0LmJhY2tsaWdodC5jb250cm9sbGVyID0gbWV0aG9kLT5jb250cm9sbGVyOworCQlt ZXRob2QgPSAmYmFja2xpZ2h0X2RhdGEtPmJhY2tsaWdodF9jb250cm9sW3BhbmVsX2luZGV4XTsK KwkJaW5mby0+YmFja2xpZ2h0LnR5cGUgPSBtZXRob2QtPnR5cGU7CisJCWluZm8tPmJhY2tsaWdo dC5jb250cm9sbGVyID0gbWV0aG9kLT5jb250cm9sbGVyOwogCX0KIAotCWk5MTUtPnZidC5iYWNr bGlnaHQucHdtX2ZyZXFfaHogPSBlbnRyeS0+cHdtX2ZyZXFfaHo7Ci0JaTkxNS0+dmJ0LmJhY2ts aWdodC5hY3RpdmVfbG93X3B3bSA9IGVudHJ5LT5hY3RpdmVfbG93X3B3bTsKKwlpbmZvLT5iYWNr bGlnaHQucHdtX2ZyZXFfaHogPSBlbnRyeS0+cHdtX2ZyZXFfaHo7CisJaW5mby0+YmFja2xpZ2h0 LmFjdGl2ZV9sb3dfcHdtID0gZW50cnktPmFjdGl2ZV9sb3dfcHdtOwogCiAJaWYgKGJkYi0+dmVy c2lvbiA+PSAyMzQpIHsKIAkJdTE2IG1pbl9sZXZlbDsKIAkJYm9vbCBzY2FsZTsKIAotCQlsZXZl bCA9IGJhY2tsaWdodF9kYXRhLT5icmlnaHRuZXNzX2xldmVsW3BhbmVsX3R5cGVdLmxldmVsOwot CQltaW5fbGV2ZWwgPSBiYWNrbGlnaHRfZGF0YS0+YnJpZ2h0bmVzc19taW5fbGV2ZWxbcGFuZWxf dHlwZV0ubGV2ZWw7CisJCWxldmVsID0gYmFja2xpZ2h0X2RhdGEtPmJyaWdodG5lc3NfbGV2ZWxb cGFuZWxfaW5kZXhdLmxldmVsOworCQltaW5fbGV2ZWwgPSBiYWNrbGlnaHRfZGF0YS0+YnJpZ2h0 bmVzc19taW5fbGV2ZWxbcGFuZWxfaW5kZXhdLmxldmVsOwogCiAJCWlmIChiZGItPnZlcnNpb24g Pj0gMjM2KQotCQkJc2NhbGUgPSBiYWNrbGlnaHRfZGF0YS0+YnJpZ2h0bmVzc19wcmVjaXNpb25f Yml0c1twYW5lbF90eXBlXSA9PSAxNjsKKwkJCXNjYWxlID0gYmFja2xpZ2h0X2RhdGEtPmJyaWdo dG5lc3NfcHJlY2lzaW9uX2JpdHNbcGFuZWxfaW5kZXhdID09IDE2OwogCQllbHNlCiAJCQlzY2Fs ZSA9IGxldmVsID4gMjU1OwogCkBAIC01MDEsMjAgKzUwMiwyMCBAQCBwYXJzZV9sZnBfYmFja2xp Z2h0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1LAogCQkJZHJtX3dhcm4oJmk5MTUtPmRy bSwgIkJyaWdodG5lc3MgbWluIGxldmVsID4gMjU1XG4iKTsKIAkJCWxldmVsID0gMjU1OwogCQl9 Ci0JCWk5MTUtPnZidC5iYWNrbGlnaHQubWluX2JyaWdodG5lc3MgPSBtaW5fbGV2ZWw7CisJCWlu Zm8tPmJhY2tsaWdodC5taW5fYnJpZ2h0bmVzcyA9IG1pbl9sZXZlbDsKIAl9IGVsc2UgewotCQls ZXZlbCA9IGJhY2tsaWdodF9kYXRhLT5sZXZlbFtwYW5lbF90eXBlXTsKLQkJaTkxNS0+dmJ0LmJh Y2tsaWdodC5taW5fYnJpZ2h0bmVzcyA9IGVudHJ5LT5taW5fYnJpZ2h0bmVzczsKKwkJbGV2ZWwg PSBiYWNrbGlnaHRfZGF0YS0+bGV2ZWxbcGFuZWxfaW5kZXhdOworCQlpbmZvLT5iYWNrbGlnaHQu bWluX2JyaWdodG5lc3MgPSBlbnRyeS0+bWluX2JyaWdodG5lc3M7CiAJfQogCiAJZHJtX2RiZ19r bXMoJmk5MTUtPmRybSwKIAkJICAgICJWQlQgYmFja2xpZ2h0IFBXTSBtb2R1bGF0aW9uIGZyZXF1 ZW5jeSAldSBIeiwgIgogCQkgICAgImFjdGl2ZSAlcywgbWluIGJyaWdodG5lc3MgJXUsIGxldmVs ICV1LCBjb250cm9sbGVyICV1XG4iLAotCQkgICAgaTkxNS0+dmJ0LmJhY2tsaWdodC5wd21fZnJl cV9oeiwKLQkJICAgIGk5MTUtPnZidC5iYWNrbGlnaHQuYWN0aXZlX2xvd19wd20gPyAibG93IiA6 ICJoaWdoIiwKLQkJICAgIGk5MTUtPnZidC5iYWNrbGlnaHQubWluX2JyaWdodG5lc3MsCisJCSAg ICBpbmZvLT5iYWNrbGlnaHQucHdtX2ZyZXFfaHosCisJCSAgICBpbmZvLT5iYWNrbGlnaHQuYWN0 aXZlX2xvd19wd20gPyAibG93IiA6ICJoaWdoIiwKKwkJICAgIGluZm8tPmJhY2tsaWdodC5taW5f YnJpZ2h0bmVzcywKIAkJICAgIGxldmVsLAotCQkgICAgaTkxNS0+dmJ0LmJhY2tsaWdodC5jb250 cm9sbGVyKTsKKwkJICAgIGluZm8tPmJhY2tsaWdodC5jb250cm9sbGVyKTsKIH0KIAogLyogVHJ5 IHRvIGZpbmQgc2R2byBwYW5lbCBkYXRhICovCkBAIC0xOTg3LDYgKzE5ODgsNyBAQCBzdGF0aWMg dm9pZCBwYXJzZV9pbnRlZ3JhdGVkX3BhbmVsKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1 LAogCXBhcnNlX3Bvd2VyX2NvbnNlcnZhdGlvbl9mZWF0dXJlcyhpOTE1LCBiZGIsIGluZm8sIHBh bmVsX2luZGV4KTsKIAlwYXJzZV9kcml2ZXJfZmVhdHVyZXNfZHJyc19vbmx5KGk5MTUsIGJkYiwg aW5mbyk7CiAJcGFyc2VfcGFuZWxfZHRkKGk5MTUsIGJkYiwgaW5mbywgcGFuZWxfaW5kZXgpOwor CXBhcnNlX2xmcF9iYWNrbGlnaHQoaTkxNSwgYmRiLCBpbmZvLCBwYW5lbF9pbmRleCk7CiB9CiAK IHN0YXRpYyB2b2lkIHBhcnNlX2RkaV9wb3J0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1 LApAQCAtMjEyMCw2ICsyMTIyLDkgQEAgc3RhdGljIHZvaWQgcGFyc2VfZGRpX3BvcnQoc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsCiAJCQkgICAgcG9ydF9uYW1lKHBvcnQpLCBpbmZvLT5k cF9tYXhfbGlua19yYXRlKTsKIAl9CiAKKwkvKiBEZWZhdWx0IHRvIGhhdmluZyBiYWNrbGlnaHQg Ki8KKwlpbmZvLT5iYWNrbGlnaHQucHJlc2VudCA9IHRydWU7CisKIAlwYXJzZV9pbnRlZ3JhdGVk X3BhbmVsKGk5MTUsIGRldmRhdGEsIGluZm8pOwogCiAJaW5mby0+ZGV2ZGF0YSA9IGRldmRhdGE7 CkBAIC0yMjQ1LDkgKzIyNTAsNiBAQCBpbml0X3ZidF9kZWZhdWx0cyhzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqaTkxNSkKIHsKIAlpOTE1LT52YnQuY3J0X2RkY19waW4gPSBHTUJVU19QSU5fVkdB RERDOwogCi0JLyogRGVmYXVsdCB0byBoYXZpbmcgYmFja2xpZ2h0ICovCi0JaTkxNS0+dmJ0LmJh Y2tsaWdodC5wcmVzZW50ID0gdHJ1ZTsKLQogCS8qIFNEVk8gcGFuZWwgZGF0YSAqLwogCWk5MTUt PnZidC5zZHZvX2x2ZHNfdmJ0X21vZGUgPSBOVUxMOwogCkBAIC0yNDgxLDcgKzI0ODMsNiBAQCB2 b2lkIGludGVsX2Jpb3NfaW5pdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkKIAlwYXJz ZV9nZW5lcmFsX2ZlYXR1cmVzKGk5MTUsIGJkYik7CiAJcGFyc2VfZ2VuZXJhbF9kZWZpbml0aW9u cyhpOTE1LCBiZGIpOwogCXBhcnNlX3BhbmVsX3R5cGUoaTkxNSwgYmRiKTsKLQlwYXJzZV9sZnBf YmFja2xpZ2h0KGk5MTUsIGJkYik7CiAJcGFyc2Vfc2R2b19wYW5lbF9kYXRhKGk5MTUsIGJkYik7 CiAJcGFyc2VfZHJpdmVyX2ZlYXR1cmVzKGk5MTUsIGJkYik7CiAJcGFyc2VfZWRwKGk5MTUsIGJk Yik7CkBAIC0zMTIzLDMgKzMxMjQsMTEgQEAgaW50ZWxfYmlvc19sZnBfbHZkc19pbmZvKHN0cnVj dCBpbnRlbF9lbmNvZGVyICplbmNvZGVyKQogCiAJcmV0dXJuIGk5MTUtPnZidC5kZGlfcG9ydF9p bmZvW2VuY29kZXItPnBvcnRdLmxmcF9sdmRzX3ZidF9tb2RlOwogfQorCitjb25zdCBzdHJ1Y3Qg dmJ0X2JhY2tsaWdodF9pbmZvICoKK2ludGVsX2Jpb3NfYmFja2xpZ2h0X2luZm8oc3RydWN0IGlu dGVsX2VuY29kZXIgKmVuY29kZXIpCit7CisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUg PSB0b19pOTE1KGVuY29kZXItPmJhc2UuZGV2KTsKKworCXJldHVybiAmaTkxNS0+dmJ0LmRkaV9w b3J0X2luZm9bZW5jb2Rlci0+cG9ydF0uYmFja2xpZ2h0OworfQpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9iaW9zLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9kaXNwbGF5L2ludGVsX2Jpb3MuaAppbmRleCBmMTMzYzUxYzE1NWNkLi41YjYxNjdjOTdhOGQ5 IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Jpb3MuaAor KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Jpb3MuaApAQCAtMjY4LDUg KzI2OCw2IEBAIGludCBpbnRlbF9iaW9zX2VuY29kZXJfaGRtaV9ib29zdF9sZXZlbChjb25zdCBz dHJ1Y3QgaW50ZWxfYmlvc19lbmNvZGVyX2RhdGEgKmRlCiAKIGVudW0gZHJyc19zdXBwb3J0X3R5 cGUgaW50ZWxfYmlvc19kcnJzX3R5cGUoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIpOwog Y29uc3Qgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKmludGVsX2Jpb3NfbGZwX2x2ZHNfaW5mbyhz dHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2Rlcik7Citjb25zdCBzdHJ1Y3QgdmJ0X2JhY2tsaWdo dF9pbmZvICppbnRlbF9iaW9zX2JhY2tsaWdodF9pbmZvKHN0cnVjdCBpbnRlbF9lbmNvZGVyICpl bmNvZGVyKTsKIAogI2VuZGlmIC8qIF9JTlRFTF9CSU9TX0hfICovCmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RwX2F1eF9iYWNrbGlnaHQuYyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZHBfYXV4X2JhY2tsaWdodC5jCmluZGV4IDZh YzU2ODYxN2VmMzcuLjQwMWE5ZDk1MzMxNTggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2Rpc3BsYXkvaW50ZWxfZHBfYXV4X2JhY2tsaWdodC5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2Rpc3BsYXkvaW50ZWxfZHBfYXV4X2JhY2tsaWdodC5jCkBAIC0zMTAsMTMgKzMxMCwx NCBAQCBzdGF0aWMgaW50IGludGVsX2RwX2F1eF92ZXNhX3NldHVwX2JhY2tsaWdodChzdHJ1Y3Qg aW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3IsCiB7CiAJc3RydWN0IGludGVsX2RwICppbnRlbF9k cCA9IGludGVsX2F0dGFjaGVkX2RwKGNvbm5lY3Rvcik7CiAJc3RydWN0IGludGVsX3BhbmVsICpw YW5lbCA9ICZjb25uZWN0b3ItPnBhbmVsOwotCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1 ID0gZHBfdG9faTkxNShpbnRlbF9kcCk7CisJY29uc3Qgc3RydWN0IHZidF9iYWNrbGlnaHRfaW5m byAqYmFja2xpZ2h0X2luZm87CiAJdTE2IGN1cnJlbnRfbGV2ZWw7CiAJdTggY3VycmVudF9tb2Rl OwogCWludCByZXQ7CiAKKwliYWNrbGlnaHRfaW5mbyA9IGludGVsX2Jpb3NfYmFja2xpZ2h0X2lu Zm8oY29ubmVjdG9yLT5lbmNvZGVyKTsKIAlyZXQgPSBkcm1fZWRwX2JhY2tsaWdodF9pbml0KCZp bnRlbF9kcC0+YXV4LCAmcGFuZWwtPmJhY2tsaWdodC5lZHAudmVzYS5pbmZvLAotCQkJCSAgICAg aTkxNS0+dmJ0LmJhY2tsaWdodC5wd21fZnJlcV9oeiwgaW50ZWxfZHAtPmVkcF9kcGNkLAorCQkJ CSAgICAgYmFja2xpZ2h0X2luZm8tPnB3bV9mcmVxX2h6LCBpbnRlbF9kcC0+ZWRwX2RwY2QsCiAJ CQkJICAgICAmY3VycmVudF9sZXZlbCwgJmN1cnJlbnRfbW9kZSk7CiAJaWYgKHJldCA8IDApCiAJ CXJldHVybiByZXQ7CkBAIC0zODMsNyArMzg0LDkgQEAgaW50IGludGVsX2RwX2F1eF9pbml0X2Jh Y2tsaWdodF9mdW5jcyhzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3IpCiAJc3RydWN0 IGludGVsX2RwICppbnRlbF9kcCA9IGVuY190b19pbnRlbF9kcChjb25uZWN0b3ItPmVuY29kZXIp OwogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1ID0gZHBfdG9faTkxNShpbnRlbF9kcCk7 CiAJYm9vbCB0cnlfaW50ZWxfaW50ZXJmYWNlID0gZmFsc2UsIHRyeV92ZXNhX2ludGVyZmFjZSA9 IGZhbHNlOworCWNvbnN0IHN0cnVjdCB2YnRfYmFja2xpZ2h0X2luZm8gKmJhY2tsaWdodF9pbmZv OwogCisJYmFja2xpZ2h0X2luZm8gPSBpbnRlbF9iaW9zX2JhY2tsaWdodF9pbmZvKGNvbm5lY3Rv ci0+ZW5jb2Rlcik7CiAJLyogQ2hlY2sgdGhlIFZCVCBhbmQgdXNlcidzIG1vZHVsZSBwYXJhbWV0 ZXJzIHRvIGZpZ3VyZSBvdXQgd2hpY2gKIAkgKiBpbnRlcmZhY2VzIHRvIHByb2JlCiAJICovCkBA IC0zOTEsNyArMzk0LDcgQEAgaW50IGludGVsX2RwX2F1eF9pbml0X2JhY2tsaWdodF9mdW5jcyhz dHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3IpCiAJY2FzZSBJTlRFTF9EUF9BVVhfQkFD S0xJR0hUX09GRjoKIAkJcmV0dXJuIC1FTk9ERVY7CiAJY2FzZSBJTlRFTF9EUF9BVVhfQkFDS0xJ R0hUX0FVVE86Ci0JCXN3aXRjaCAoaTkxNS0+dmJ0LmJhY2tsaWdodC50eXBlKSB7CisJCXN3aXRj aCAoYmFja2xpZ2h0X2luZm8tPnR5cGUpIHsKIAkJY2FzZSBJTlRFTF9CQUNLTElHSFRfVkVTQV9F RFBfQVVYX0lOVEVSRkFDRToKIAkJCXRyeV92ZXNhX2ludGVyZmFjZSA9IHRydWU7CiAJCQlicmVh azsKQEAgLTQwMyw3ICs0MDYsNyBAQCBpbnQgaW50ZWxfZHBfYXV4X2luaXRfYmFja2xpZ2h0X2Z1 bmNzKHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3RvcikKIAkJfQogCQlicmVhazsKIAlj YXNlIElOVEVMX0RQX0FVWF9CQUNLTElHSFRfT046Ci0JCWlmIChpOTE1LT52YnQuYmFja2xpZ2h0 LnR5cGUgIT0gSU5URUxfQkFDS0xJR0hUX1ZFU0FfRURQX0FVWF9JTlRFUkZBQ0UpCisJCWlmIChi YWNrbGlnaHRfaW5mby0+dHlwZSAhPSBJTlRFTF9CQUNLTElHSFRfVkVTQV9FRFBfQVVYX0lOVEVS RkFDRSkKIAkJCXRyeV9pbnRlbF9pbnRlcmZhY2UgPSB0cnVlOwogCiAJCXRyeV92ZXNhX2ludGVy ZmFjZSA9IHRydWU7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2lu dGVsX2RzaV9kY3NfYmFja2xpZ2h0LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2lu dGVsX2RzaV9kY3NfYmFja2xpZ2h0LmMKaW5kZXggNTg0YzE0YzRjYmQwZS4uNGRiZDBjNjc1NGFm OSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kc2lfZGNz X2JhY2tsaWdodC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZHNp X2Rjc19iYWNrbGlnaHQuYwpAQCAtMTY2LDExICsxNjYsMTIgQEAgc3RhdGljIGNvbnN0IHN0cnVj dCBpbnRlbF9wYW5lbF9ibF9mdW5jcyBkY3NfYmxfZnVuY3MgPSB7CiBpbnQgaW50ZWxfZHNpX2Rj c19pbml0X2JhY2tsaWdodF9mdW5jcyhzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICppbnRlbF9jb25u ZWN0b3IpCiB7CiAJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGludGVsX2Nvbm5lY3Rvci0+YmFz ZS5kZXY7Ci0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShkZXYp OwogCXN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyID0gaW50ZWxfYXR0YWNoZWRfZW5jb2Rl cihpbnRlbF9jb25uZWN0b3IpOwogCXN0cnVjdCBpbnRlbF9wYW5lbCAqcGFuZWwgPSAmaW50ZWxf Y29ubmVjdG9yLT5wYW5lbDsKKwljb25zdCBzdHJ1Y3QgdmJ0X2JhY2tsaWdodF9pbmZvICpiYWNr bGlnaHRfaW5mbzsKIAotCWlmIChkZXZfcHJpdi0+dmJ0LmJhY2tsaWdodC50eXBlICE9IElOVEVM X0JBQ0tMSUdIVF9EU0lfRENTKQorCWJhY2tsaWdodF9pbmZvID0gaW50ZWxfYmlvc19iYWNrbGln aHRfaW5mbyhlbmNvZGVyKTsKKwlpZiAoYmFja2xpZ2h0X2luZm8tPnR5cGUgIT0gSU5URUxfQkFD S0xJR0hUX0RTSV9EQ1MpCiAJCXJldHVybiAtRU5PREVWOwogCiAJaWYgKGRybV9XQVJOX09OKGRl diwgZW5jb2Rlci0+dHlwZSAhPSBJTlRFTF9PVVRQVVRfRFNJKSkKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfcGFuZWwuYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2Rpc3BsYXkvaW50ZWxfcGFuZWwuYwppbmRleCBhODhlMzBjOTY2ZmU3Li45Yzg5MjQ3NmQ4 NjIxIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3BhbmVs LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9wYW5lbC5jCkBAIC0x NTk2LDkgKzE1OTYsMTQgQEAgc3RhdGljIHUzMiB2bHZfaHpfdG9fcHdtKHN0cnVjdCBpbnRlbF9j b25uZWN0b3IgKmNvbm5lY3RvciwgdTMyIHB3bV9mcmVxX2h6KQogCXJldHVybiBESVZfUk9VTkRf Q0xPU0VTVChjbG9jaywgcHdtX2ZyZXFfaHogKiBtdWwpOwogfQogCi1zdGF0aWMgdTE2IGdldF92 YnRfcHdtX2ZyZXEoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQorc3RhdGljIHUx NiBnZXRfdmJ0X3B3bV9mcmVxKHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3RvcikKIHsK LQl1MTYgcHdtX2ZyZXFfaHogPSBkZXZfcHJpdi0+dmJ0LmJhY2tsaWdodC5wd21fZnJlcV9oejsK KwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNvbm5lY3Rvci0+ YmFzZS5kZXYpOworCWNvbnN0IHN0cnVjdCB2YnRfYmFja2xpZ2h0X2luZm8gKmJhY2tsaWdodF9p bmZvOworCXUxNiBwd21fZnJlcV9oejsKKworCWJhY2tsaWdodF9pbmZvID0gaW50ZWxfYmlvc19i YWNrbGlnaHRfaW5mbyhjb25uZWN0b3ItPmVuY29kZXIpOworCXB3bV9mcmVxX2h6ID0gYmFja2xp Z2h0X2luZm8tPnB3bV9mcmVxX2h6OwogCiAJaWYgKHB3bV9mcmVxX2h6KSB7CiAJCWRybV9kYmdf a21zKCZkZXZfcHJpdi0+ZHJtLApAQCAtMTYxOCw3ICsxNjIzLDcgQEAgc3RhdGljIHUzMiBnZXRf YmFja2xpZ2h0X21heF92YnQoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yKQogewog CXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoY29ubmVjdG9yLT5i YXNlLmRldik7CiAJc3RydWN0IGludGVsX3BhbmVsICpwYW5lbCA9ICZjb25uZWN0b3ItPnBhbmVs OwotCXUxNiBwd21fZnJlcV9oeiA9IGdldF92YnRfcHdtX2ZyZXEoZGV2X3ByaXYpOworCXUxNiBw d21fZnJlcV9oeiA9IGdldF92YnRfcHdtX2ZyZXEoY29ubmVjdG9yKTsKIAl1MzIgcHdtOwogCiAJ aWYgKCFwYW5lbC0+YmFja2xpZ2h0LnB3bV9mdW5jcy0+aHpfdG9fcHdtKSB7CkBAIC0xNjQzLDEx ICsxNjQ4LDE0IEBAIHN0YXRpYyB1MzIgZ2V0X2JhY2tsaWdodF9tYXhfdmJ0KHN0cnVjdCBpbnRl bF9jb25uZWN0b3IgKmNvbm5lY3RvcikKIHN0YXRpYyB1MzIgZ2V0X2JhY2tsaWdodF9taW5fdmJ0 KHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3RvcikKIHsKIAlzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNvbm5lY3Rvci0+YmFzZS5kZXYpOworCWNvbnN0 IHN0cnVjdCB2YnRfYmFja2xpZ2h0X2luZm8gKmJhY2tsaWdodF9pbmZvOwogCXN0cnVjdCBpbnRl bF9wYW5lbCAqcGFuZWwgPSAmY29ubmVjdG9yLT5wYW5lbDsKIAlpbnQgbWluOwogCiAJZHJtX1dB Uk5fT04oJmRldl9wcml2LT5kcm0sIHBhbmVsLT5iYWNrbGlnaHQucHdtX2xldmVsX21heCA9PSAw KTsKIAorCWJhY2tsaWdodF9pbmZvID0gaW50ZWxfYmlvc19iYWNrbGlnaHRfaW5mbyhjb25uZWN0 b3ItPmVuY29kZXIpOworCiAJLyoKIAkgKiBYWFg6IElmIHRoZSB2YnQgdmFsdWUgaXMgMjU1LCBp dCBtYWtlcyBtaW4gZXF1YWwgdG8gbWF4LCB3aGljaCBsZWFkcwogCSAqIHRvIHByb2JsZW1zLiBU aGVyZSBhcmUgc3VjaCBtYWNoaW5lcyBvdXQgdGhlcmUuIEVpdGhlciBvdXIKQEAgLTE2NTUsMTEg KzE2NjMsMTEgQEAgc3RhdGljIHUzMiBnZXRfYmFja2xpZ2h0X21pbl92YnQoc3RydWN0IGludGVs X2Nvbm5lY3RvciAqY29ubmVjdG9yKQogCSAqIGFnYWluc3QgdGhpcyBieSBsZXR0aW5nIHRoZSBt aW5pbXVtIGJlIGF0IG1vc3QgKGFyYml0cmFyaWx5IGNob3NlbikKIAkgKiAyNSUgb2YgdGhlIG1h eC4KIAkgKi8KLQltaW4gPSBjbGFtcF90KGludCwgZGV2X3ByaXYtPnZidC5iYWNrbGlnaHQubWlu X2JyaWdodG5lc3MsIDAsIDY0KTsKLQlpZiAobWluICE9IGRldl9wcml2LT52YnQuYmFja2xpZ2h0 Lm1pbl9icmlnaHRuZXNzKSB7CisJbWluID0gY2xhbXBfdChpbnQsIGJhY2tsaWdodF9pbmZvLT5t aW5fYnJpZ2h0bmVzcywgMCwgNjQpOworCWlmIChtaW4gIT0gYmFja2xpZ2h0X2luZm8tPm1pbl9i cmlnaHRuZXNzKSB7CiAJCWRybV9kYmdfa21zKCZkZXZfcHJpdi0+ZHJtLAogCQkJICAgICJjbGFt cGluZyBWQlQgbWluIGJhY2tsaWdodCAlZC8yNTUgdG8gJWQvMjU1XG4iLAotCQkJICAgIGRldl9w cml2LT52YnQuYmFja2xpZ2h0Lm1pbl9icmlnaHRuZXNzLCBtaW4pOworCQkJICAgIGJhY2tsaWdo dF9pbmZvLT5taW5fYnJpZ2h0bmVzcywgbWluKTsKIAl9CiAKIAkvKiB2YnQgdmFsdWUgaXMgYSBj b2VmZmljaWVudCBpbiByYW5nZSBbMC4uMjU1XSAqLwpAQCAtMTg0NSwxMCArMTg1MywxMiBAQCBz dGF0aWMgaW50CiBieHRfc2V0dXBfYmFja2xpZ2h0KHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNv bm5lY3RvciwgZW51bSBwaXBlIHVudXNlZCkKIHsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYgPSB0b19pOTE1KGNvbm5lY3Rvci0+YmFzZS5kZXYpOworCWNvbnN0IHN0cnVjdCB2 YnRfYmFja2xpZ2h0X2luZm8gKmJhY2tsaWdodF9pbmZvOwogCXN0cnVjdCBpbnRlbF9wYW5lbCAq cGFuZWwgPSAmY29ubmVjdG9yLT5wYW5lbDsKIAl1MzIgcHdtX2N0bCwgdmFsOwogCi0JcGFuZWwt PmJhY2tsaWdodC5jb250cm9sbGVyID0gZGV2X3ByaXYtPnZidC5iYWNrbGlnaHQuY29udHJvbGxl cjsKKwliYWNrbGlnaHRfaW5mbyA9IGludGVsX2Jpb3NfYmFja2xpZ2h0X2luZm8oY29ubmVjdG9y LT5lbmNvZGVyKTsKKwlwYW5lbC0+YmFja2xpZ2h0LmNvbnRyb2xsZXIgPSBiYWNrbGlnaHRfaW5m by0+Y29udHJvbGxlcjsKIAogCXB3bV9jdGwgPSBpbnRlbF9kZV9yZWFkKGRldl9wcml2LAogCQkJ CUJYVF9CTENfUFdNX0NUTChwYW5lbC0+YmFja2xpZ2h0LmNvbnRyb2xsZXIpKTsKQEAgLTE5NTAs MTEgKzE5NjAsMTEgQEAgc3RhdGljIGludCBleHRfcHdtX3NldHVwX2JhY2tsaWdodChzdHJ1Y3Qg aW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3IsCiAKIAkJZHJtX2RiZ19rbXMoJmRldl9wcml2LT5k cm0sICJQV00gYWxyZWFkeSBlbmFibGVkIGF0IGZyZXEgJWxkLCBWQlQgZnJlcSAlZCwgbGV2ZWwg JWRcbiIsCiAJCQkgICAgTlNFQ19QRVJfU0VDIC8gKHVuc2lnbmVkIGxvbmcpcGFuZWwtPmJhY2ts aWdodC5wd21fc3RhdGUucGVyaW9kLAotCQkJICAgIGdldF92YnRfcHdtX2ZyZXEoZGV2X3ByaXYp LCBsZXZlbCk7CisJCQkgICAgZ2V0X3ZidF9wd21fZnJlcShjb25uZWN0b3IpLCBsZXZlbCk7CiAJ fSBlbHNlIHsKIAkJLyogU2V0IHBlcmlvZCBmcm9tIFZCVCBmcmVxdWVuY3ksIGxlYXZlIG90aGVy IHNldHRpbmdzIGF0IDAuICovCiAJCXBhbmVsLT5iYWNrbGlnaHQucHdtX3N0YXRlLnBlcmlvZCA9 Ci0JCQlOU0VDX1BFUl9TRUMgLyBnZXRfdmJ0X3B3bV9mcmVxKGRldl9wcml2KTsKKwkJCU5TRUNf UEVSX1NFQyAvIGdldF92YnRfcHdtX2ZyZXEoY29ubmVjdG9yKTsKIAl9CiAKIAlkcm1faW5mbygm ZGV2X3ByaXYtPmRybSwgIlVzaW5nICVzIFBXTSBmb3IgTENEIGJhY2tsaWdodCBjb250cm9sXG4i LApAQCAtMjAzNywxMCArMjA0NywxMiBAQCBpbnQgaW50ZWxfcGFuZWxfc2V0dXBfYmFja2xpZ2h0 KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsIGVudW0gcGlwZSBwaXBlKQogewogCXN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoY29ubmVjdG9yLT5kZXYp OwogCXN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmludGVsX2Nvbm5lY3RvciA9IHRvX2ludGVsX2Nv bm5lY3Rvcihjb25uZWN0b3IpOworCWNvbnN0IHN0cnVjdCB2YnRfYmFja2xpZ2h0X2luZm8gKmJh Y2tsaWdodF9pbmZvOwogCXN0cnVjdCBpbnRlbF9wYW5lbCAqcGFuZWwgPSAmaW50ZWxfY29ubmVj dG9yLT5wYW5lbDsKIAlpbnQgcmV0OwogCi0JaWYgKCFkZXZfcHJpdi0+dmJ0LmJhY2tsaWdodC5w cmVzZW50KSB7CisJYmFja2xpZ2h0X2luZm8gPSBpbnRlbF9iaW9zX2JhY2tsaWdodF9pbmZvKGlu dGVsX2Nvbm5lY3Rvci0+ZW5jb2Rlcik7CisJaWYgKCFiYWNrbGlnaHRfaW5mby0+cHJlc2VudCkg ewogCQlpZiAoZGV2X3ByaXYtPnF1aXJrcyAmIFFVSVJLX0JBQ0tMSUdIVF9QUkVTRU5UKSB7CiAJ CQlkcm1fZGJnX2ttcygmZGV2X3ByaXYtPmRybSwKIAkJCQkgICAgIm5vIGJhY2tsaWdodCBwcmVz ZW50IHBlciBWQlQsIGJ1dCBwcmVzZW50IHBlciBxdWlya1xuIik7CmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3Bwcy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvZGlzcGxheS9pbnRlbF9wcHMuYwppbmRleCBhMzZlYzRhODE4ZmY1Li45Njg5NGQ3MGE5MmMx IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3Bwcy5jCisr KyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfcHBzLmMKQEAgLTIwNyw3ICsy MDcsMTMgQEAgc3RhdGljIGludAogYnh0X3Bvd2VyX3NlcXVlbmNlcl9pZHgoc3RydWN0IGludGVs X2RwICppbnRlbF9kcCkKIHsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBk cF90b19pOTE1KGludGVsX2RwKTsKLQlpbnQgYmFja2xpZ2h0X2NvbnRyb2xsZXIgPSBkZXZfcHJp di0+dmJ0LmJhY2tsaWdodC5jb250cm9sbGVyOworCXN0cnVjdCBpbnRlbF9kaWdpdGFsX3BvcnQg KmRpZ19wb3J0ID0gZHBfdG9fZGlnX3BvcnQoaW50ZWxfZHApOworCXN0cnVjdCBpbnRlbF9lbmNv ZGVyICplbmNvZGVyID0gJmRpZ19wb3J0LT5iYXNlOworCWNvbnN0IHN0cnVjdCB2YnRfYmFja2xp Z2h0X2luZm8gKmJhY2tsaWdodF9pbmZvOworCWludCBiYWNrbGlnaHRfY29udHJvbGxlcjsKKwor CWJhY2tsaWdodF9pbmZvID0gaW50ZWxfYmlvc19iYWNrbGlnaHRfaW5mbyhlbmNvZGVyKTsKKwli YWNrbGlnaHRfY29udHJvbGxlciA9IGJhY2tsaWdodF9pbmZvLT5jb250cm9sbGVyOwogCiAJbG9j a2RlcF9hc3NlcnRfaGVsZCgmZGV2X3ByaXYtPnBwc19tdXRleCk7CiAKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2Rydi5oCmluZGV4IDYyYTBjMWY2NGY4NzAuLjA0N2YwZDJmYzk3MWYgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9kcnYuaApAQCAtNjYwLDYgKzY2MCwxNSBAQCBzdHJ1Y3QgZGRpX3ZidF9wb3J0X2luZm8g ewogCWVudW0gZHJyc19zdXBwb3J0X3R5cGUgZHJyc190eXBlOwogCiAJc3RydWN0IGRybV9kaXNw bGF5X21vZGUgKmxmcF9sdmRzX3ZidF9tb2RlOyAvKiBpZiBhbnkgKi8KKworCXN0cnVjdCB2YnRf YmFja2xpZ2h0X2luZm8geworCQl1MTYgcHdtX2ZyZXFfaHo7CisJCWJvb2wgcHJlc2VudDsKKwkJ Ym9vbCBhY3RpdmVfbG93X3B3bTsKKwkJdTggbWluX2JyaWdodG5lc3M7CS8qIG1pbl9icmlnaHRu ZXNzLzI1NSBvZiBtYXggKi8KKwkJdTggY29udHJvbGxlcjsJCS8qIGJyaWdodG5lc3MgY29udHJv bGxlciBudW1iZXIgKi8KKwkJZW51bSBpbnRlbF9iYWNrbGlnaHRfdHlwZSB0eXBlOworCX0gYmFj a2xpZ2h0OwogfTsKIAogZW51bSBwc3JfbGluZXNfdG9fd2FpdCB7CkBAIC03MTAsMTUgKzcxOSw2 IEBAIHN0cnVjdCBpbnRlbF92YnRfZGF0YSB7CiAJCWludCBwc3IyX3RwMl90cDNfd2FrZXVwX3Rp bWVfdXM7CiAJfSBwc3I7CiAKLQlzdHJ1Y3QgewotCQl1MTYgcHdtX2ZyZXFfaHo7Ci0JCWJvb2wg cHJlc2VudDsKLQkJYm9vbCBhY3RpdmVfbG93X3B3bTsKLQkJdTggbWluX2JyaWdodG5lc3M7CS8q IG1pbl9icmlnaHRuZXNzLzI1NSBvZiBtYXggKi8KLQkJdTggY29udHJvbGxlcjsJCS8qIGJyaWdo dG5lc3MgY29udHJvbGxlciBudW1iZXIgKi8KLQkJZW51bSBpbnRlbF9iYWNrbGlnaHRfdHlwZSB0 eXBlOwotCX0gYmFja2xpZ2h0OwotCiAJLyogTUlQSSBEU0kgKi8KIAlzdHJ1Y3QgewogCQl1MTYg cGFuZWxfaWQ7Ci0tIAoyLjMyLjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2ludGVsLWdmeAo=