From mboxrd@z Thu Jan 1 00:00:00 1970 From: Manasi Navare Subject: [PATCH] drm/dp: Add function to parse EDID descriptors for adaptive sync limits Date: Wed, 23 Oct 2019 17:00:41 -0700 Message-ID: <20191024000041.7391-1-manasi.d.navare@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org Cc: Manasi Navare List-Id: intel-gfx@lists.freedesktop.org QWRhcHRpdmUgU3luYyBpcyBhIFZFU0EgZmVhdHVyZSBzbyBhZGQgYSBEUk0gY29yZSBoZWxwZXIg dG8gcGFyc2UKdGhlIEVESUQncyBkZXRhaWxlZCBkZXNjcml0b3JzIHRvIG9idGFpbiB0aGUgYWRh cHRpdmUgc3luYyBtb25pdG9yIHJhbmdlLgpTdG9yZSB0aGlzIGluZm8gYXMgcGFydCBmbyBkcm1f ZGlzcGxheV9pbmZvIHNvIGl0IGNhbiBiZSB1c2VkCmFjcm9zcyBhbGwgZHJpdmVycy4KVGhpcyBw YXJ0IG9mIHRoZSBjb2RlIGlzIHN0cmlwcGVkIG91dCBvZiBhbWRncHUncyBmdW5jdGlvbgphbWRn cHVfZG1fdXBkYXRlX2ZyZWVzeW5jX2NhcHMoKSB0byBtYWtlIGl0IGdlbmVyaWMgYW5kIGJlIHVz ZWQKYWNyb3NzIGFsbCBEUk0gZHJpdmVycwoKQ2M6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3ly amFsYUBsaW51eC5pbnRlbC5jb20+CkNjOiBIYXJyeSBXZW50bGFuZCA8aGFycnkud2VudGxhbmRA YW1kLmNvbT4KQ2M6IENsaW50b24gQSBUYXlsb3IgPGNsaW50b24uYS50YXlsb3JAaW50ZWwuY29t PgpTaWduZWQtb2ZmLWJ5OiBNYW5hc2kgTmF2YXJlIDxtYW5hc2kuZC5uYXZhcmVAaW50ZWwuY29t PgotLS0KIGRyaXZlcnMvZ3B1L2RybS9kcm1fZWRpZC5jICB8IDQ5ICsrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysKIGluY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaCB8IDI1ICsr KysrKysrKysrKysrKysrKysKIGluY2x1ZGUvZHJtL2RybV9lZGlkLmggICAgICB8ICAyICsrCiAz IGZpbGVzIGNoYW5nZWQsIDc2IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vZHJtX2VkaWQuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZWRpZC5jCmluZGV4IDQ3NGFj MDRkNTYwMC4uOTdkZDEyMDA3NzNlIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2Vk aWQuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2VkaWQuYwpAQCAtNDcwNyw2ICs0NzA3LDUy IEBAIHN0YXRpYyB2b2lkIGRybV9wYXJzZV9jZWFfZXh0KHN0cnVjdCBkcm1fY29ubmVjdG9yICpj b25uZWN0b3IsCiAJfQogfQogCit2b2lkIGRybV9nZXRfYWRhcHRpdmVfc3luY19saW1pdHMoc3Ry dWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKKwkJCQkgIGNvbnN0IHN0cnVjdCBlZGlkICpl ZGlkKQoreworCXN0cnVjdCBkcm1fZGlzcGxheV9pbmZvICppbmZvID0gJmNvbm5lY3Rvci0+ZGlz cGxheV9pbmZvOworCWNvbnN0IHN0cnVjdCBkZXRhaWxlZF90aW1pbmcgKnRpbWluZzsKKwljb25z dCBzdHJ1Y3QgZGV0YWlsZWRfbm9uX3BpeGVsICpkYXRhOworCWNvbnN0IHN0cnVjdCBkZXRhaWxl ZF9kYXRhX21vbml0b3JfcmFuZ2UgKnJhbmdlOworCWludCBpOworCisJLyoKKwkgKiBSZXN0cmlj dCBBZGFwdGl2ZSBTeW5jIG9ubHkgZm9yIGRwIGFuZCBlZHAKKwkgKi8KKwlpZiAoY29ubmVjdG9y LT5jb25uZWN0b3JfdHlwZSAhPSBEUk1fTU9ERV9DT05ORUNUT1JfRGlzcGxheVBvcnQgJiYKKwkg ICAgY29ubmVjdG9yLT5jb25uZWN0b3JfdHlwZSAhPSBEUk1fTU9ERV9DT05ORUNUT1JfZURQKQor CQlyZXR1cm47CisKKwlpZiAoZWRpZC0+dmVyc2lvbiA8PSAxICYmICEoZWRpZC0+dmVyc2lvbiA9 PSAxICYmIGVkaWQtPnJldmlzaW9uID4gMSkpCisJCXJldHVybjsKKworCWZvciAoaSA9IDA7IGkg PCA0OyBpKyspIHsKKwkJdGltaW5nICA9ICZlZGlkLT5kZXRhaWxlZF90aW1pbmdzW2ldOworCQlk YXRhICAgID0gJnRpbWluZy0+ZGF0YS5vdGhlcl9kYXRhOworCQlyYW5nZSAgID0gJmRhdGEtPmRh dGEucmFuZ2U7CisJCS8qCisJCSAqIENoZWNrIGlmIG1vbml0b3IgaGFzIGNvbnRpbnVvdXMgZnJl cXVlbmN5IG1vZGUKKwkJICovCisJCWlmIChkYXRhLT50eXBlICE9IEVESURfREVUQUlMX01PTklU T1JfUkFOR0UpCisJCQljb250aW51ZTsKKwkJLyoKKwkJICogQ2hlY2sgZm9yIGZsYWcgcmFuZ2Ug bGltaXRzIG9ubHkuIElmIGZsYWcgPT0gMSB0aGVuCisJCSAqIG5vIGFkZGl0aW9uYWwgdGltaW5n IGluZm9ybWF0aW9uIHByb3ZpZGVkLgorCQkgKiBEZWZhdWx0IEdURiwgR1RGIFNlY29uZGFyeSBj dXJ2ZSBhbmQgQ1ZUIGFyZSBub3QKKwkJICogc3VwcG9ydGVkCisJCSAqLworCQlpZiAocmFuZ2Ut PmZsYWdzICE9IDEpCisJCQljb250aW51ZTsKKworCQlpbmZvLT5hZGFwdGl2ZV9zeW5jLm1pbl92 ZnJlcSA9IHJhbmdlLT5taW5fdmZyZXE7CisJCWluZm8tPmFkYXB0aXZlX3N5bmMubWF4X3ZmcmVx ID0gcmFuZ2UtPm1heF92ZnJlcTsKKwkJaW5mby0+YWRhcHRpdmVfc3luYy5waXhlbF9jbG9ja19t aHogPQorCQkJcmFuZ2UtPnBpeGVsX2Nsb2NrX21oeiAqIDEwOworCQlicmVhazsKKwl9Cit9CitF WFBPUlRfU1lNQk9MKGRybV9nZXRfYWRhcHRpdmVfc3luY19saW1pdHMpOworCiAvKiBBIGNvbm5l Y3RvciBoYXMgbm8gRURJRCBpbmZvcm1hdGlvbiwgc28gd2UndmUgZ290IG5vIEVESUQgdG8gY29t cHV0ZSBxdWlya3MgZnJvbS4gUmVzZXQKICAqIGFsbCBvZiB0aGUgdmFsdWVzIHdoaWNoIHdvdWxk IGhhdmUgYmVlbiBzZXQgZnJvbSBFRElECiAgKi8KQEAgLTQ3MjgsNiArNDc3NCw3IEBAIGRybV9y ZXNldF9kaXNwbGF5X2luZm8oc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKIAltZW1z ZXQoJmluZm8tPmhkbWksIDAsIHNpemVvZihpbmZvLT5oZG1pKSk7CiAKIAlpbmZvLT5ub25fZGVz a3RvcCA9IDA7CisJbWVtc2V0KCZpbmZvLT5hZGFwdGl2ZV9zeW5jLCAwLCBzaXplb2YoaW5mby0+ YWRhcHRpdmVfc3luYykpOwogfQogCiB1MzIgZHJtX2FkZF9kaXNwbGF5X2luZm8oc3RydWN0IGRy bV9jb25uZWN0b3IgKmNvbm5lY3RvciwgY29uc3Qgc3RydWN0IGVkaWQgKmVkaWQpCkBAIC00NzQz LDYgKzQ3OTAsOCBAQCB1MzIgZHJtX2FkZF9kaXNwbGF5X2luZm8oc3RydWN0IGRybV9jb25uZWN0 b3IgKmNvbm5lY3RvciwgY29uc3Qgc3RydWN0IGVkaWQgKmVkaQogCiAJaW5mby0+bm9uX2Rlc2t0 b3AgPSAhIShxdWlya3MgJiBFRElEX1FVSVJLX05PTl9ERVNLVE9QKTsKIAorCWRybV9nZXRfYWRh cHRpdmVfc3luY19saW1pdHMoY29ubmVjdG9yLCBlZGlkKTsKKwogCURSTV9ERUJVR19LTVMoIm5v bl9kZXNrdG9wIHNldCB0byAlZFxuIiwgaW5mby0+bm9uX2Rlc2t0b3ApOwogCiAJaWYgKGVkaWQt PnJldmlzaW9uIDwgMykKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaCBi L2luY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaAppbmRleCA1ZjhjMzM4OWQ0NmYuLmEyN2E4NDI3 MGQ4ZCAxMDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oCisrKyBiL2luY2x1 ZGUvZHJtL2RybV9jb25uZWN0b3IuaApAQCAtMjU0LDYgKzI1NCwyNiBAQCBlbnVtIGRybV9wYW5l bF9vcmllbnRhdGlvbiB7CiAJRFJNX01PREVfUEFORUxfT1JJRU5UQVRJT05fUklHSFRfVVAsCiB9 OwogCisvKioKKyAqIHN0cnVjdCBkcm1fYWRhcHRpdmVfc3luY19pbmZvIC0gUGFuZWwncyBBZGFw dGl2ZSBTeW5jIGNhcGFiaWxpdGllcyBmb3IKKyAqICZkcm1fZGlzcGxheV9pbmZvCisgKgorICog VGhpcyBzdHJ1Y3QgaXMgdXNlZCB0byBzdG9yZSBhIFBhbmVsJ3MgQWRhcHRpdmUgU3luYyBjYXBh YmlsaXRpZXMKKyAqIGFzIHBhcnNlZCBmcm9tIEVESUQncyBkZXRhaWxlZCBtb25pdG9yIHJhbmdl IGRlc2NyaXB0b3IgYmxvY2suCisgKgorICogQG1pbl92ZnJlcTogVGhpcyBpcyB0aGUgbWluIHN1 cHBvcnRlZCByZWZyZXNoIHJhdGUgaW4gSHogZnJvbQorICogICAgICAgICAgICAgRURJRCdzIGRl dGFpbGVkIG1vbml0b3IgcmFuZ2UuCisgKiBAbWF4X3ZmcmVxOiBUaGlzIGlzIHRoZSBtYXggc3Vw cG9ydGVkIHJlZnJlc2ggcmF0ZSBpbiBIeiBmcm9tCisgKiAgICAgICAgICAgICBFRElEJ3MgZGV0 YWlsZWQgbW9uaXRvciByYW5nZQorICogQHBpeGVsX2Nsb2NrX21oejogVGhpcyBpcyB0aGUgZG90 Y2xvY2sgaW4gTUh6IGZyb20KKyAqICAgICAgICAgICAgICAgICAgIEVESUQncyBkZXRhaWxlZCBt b25pdG9yIHJhbmdlCisgKi8KK3N0cnVjdCBkcm1fYWRhcHRpdmVfc3luY19pbmZvIHsKKwlpbnQg bWluX3ZmcmVxOworCWludCBtYXhfdmZyZXE7CisJaW50IHBpeGVsX2Nsb2NrX21oejsKK307CisK IC8qCiAgKiBUaGlzIGlzIGEgY29uc29saWRhdGVkIGNvbG9yaW1ldHJ5IGxpc3Qgc3VwcG9ydGVk IGJ5IEhETUkgYW5kCiAgKiBEUCBwcm90b2NvbCBzdGFuZGFyZC4gVGhlIHJlc3BlY3RpdmUgY29u bmVjdG9ycyB3aWxsIHJlZ2lzdGVyCkBAIC00NjUsNiArNDg1LDExIEBAIHN0cnVjdCBkcm1fZGlz cGxheV9pbmZvIHsKIAkgKiBAbm9uX2Rlc2t0b3A6IE5vbiBkZXNrdG9wIGRpc3BsYXkgKEhNRCku CiAJICovCiAJYm9vbCBub25fZGVza3RvcDsKKworCS8qKgorCSAqIEBhZGFwdGl2ZV9zeW5jOiBB ZGFwdGl2ZSBTeW5jIGNhcGFiaWxpdGllcyBvZiB0aGUgRFAvZURQIHNpbmsKKwkgKi8KKwlzdHJ1 Y3QgZHJtX2FkYXB0aXZlX3N5bmNfaW5mbyBhZGFwdGl2ZV9zeW5jOwogfTsKIAogaW50IGRybV9k aXNwbGF5X2luZm9fc2V0X2J1c19mb3JtYXRzKHN0cnVjdCBkcm1fZGlzcGxheV9pbmZvICppbmZv LApkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2VkaWQuaCBiL2luY2x1ZGUvZHJtL2RybV9l ZGlkLmgKaW5kZXggZjBiMDNkNDAxYzI3Li5iOWEyMzBhYTNlNjkgMTAwNjQ0Ci0tLSBhL2luY2x1 ZGUvZHJtL2RybV9lZGlkLmgKKysrIGIvaW5jbHVkZS9kcm0vZHJtX2VkaWQuaApAQCAtNTAzLDQg KzUwMyw2IEBAIHZvaWQgZHJtX2VkaWRfZ2V0X21vbml0b3JfbmFtZShzdHJ1Y3QgZWRpZCAqZWRp ZCwgY2hhciAqbmFtZSwKIHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICpkcm1fbW9kZV9maW5kX2Rt dChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCQkJCQkgICBpbnQgaHNpemUsIGludCB2c2l6ZSwg aW50IGZyZXNoLAogCQkJCQkgICBib29sIHJiKTsKK3ZvaWQgZHJtX2dldF9hZGFwdGl2ZV9zeW5j X2xpbWl0cyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAorCQkJCSAgY29uc3Qgc3Ry dWN0IGVkaWQgKmVkaWQpOwogI2VuZGlmIC8qIF9fRFJNX0VESURfSF9fICovCi0tIAoyLjE5LjEK Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZl bCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbA== 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=-9.7 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_GIT autolearn=unavailable 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 CE3B1CA9EB9 for ; Wed, 23 Oct 2019 23:58:43 +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 A8C15207FD for ; Wed, 23 Oct 2019 23:58:43 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A8C15207FD 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 157526E055; Wed, 23 Oct 2019 23:58:43 +0000 (UTC) Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id 66FED6E051; Wed, 23 Oct 2019 23:58:41 +0000 (UTC) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga103.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 23 Oct 2019 16:58:40 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.68,222,1569308400"; d="scan'208";a="210198107" Received: from labuser-z97x-ud5h.jf.intel.com ([10.54.75.49]) by orsmga002.jf.intel.com with ESMTP; 23 Oct 2019 16:58:40 -0700 From: Manasi Navare To: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org Date: Wed, 23 Oct 2019 17:00:41 -0700 Message-Id: <20191024000041.7391-1-manasi.d.navare@intel.com> X-Mailer: git-send-email 2.19.1 MIME-Version: 1.0 Subject: [Intel-gfx] [PATCH] drm/dp: Add function to parse EDID descriptors for adaptive sync limits X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Harry Wentland Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" Message-ID: <20191024000041.ugOt_juumtOFfkT-ecoT1xYiJ7hlUVVzHGicx0CTQGc@z> QWRhcHRpdmUgU3luYyBpcyBhIFZFU0EgZmVhdHVyZSBzbyBhZGQgYSBEUk0gY29yZSBoZWxwZXIg dG8gcGFyc2UKdGhlIEVESUQncyBkZXRhaWxlZCBkZXNjcml0b3JzIHRvIG9idGFpbiB0aGUgYWRh cHRpdmUgc3luYyBtb25pdG9yIHJhbmdlLgpTdG9yZSB0aGlzIGluZm8gYXMgcGFydCBmbyBkcm1f ZGlzcGxheV9pbmZvIHNvIGl0IGNhbiBiZSB1c2VkCmFjcm9zcyBhbGwgZHJpdmVycy4KVGhpcyBw YXJ0IG9mIHRoZSBjb2RlIGlzIHN0cmlwcGVkIG91dCBvZiBhbWRncHUncyBmdW5jdGlvbgphbWRn cHVfZG1fdXBkYXRlX2ZyZWVzeW5jX2NhcHMoKSB0byBtYWtlIGl0IGdlbmVyaWMgYW5kIGJlIHVz ZWQKYWNyb3NzIGFsbCBEUk0gZHJpdmVycwoKQ2M6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3ly amFsYUBsaW51eC5pbnRlbC5jb20+CkNjOiBIYXJyeSBXZW50bGFuZCA8aGFycnkud2VudGxhbmRA YW1kLmNvbT4KQ2M6IENsaW50b24gQSBUYXlsb3IgPGNsaW50b24uYS50YXlsb3JAaW50ZWwuY29t PgpTaWduZWQtb2ZmLWJ5OiBNYW5hc2kgTmF2YXJlIDxtYW5hc2kuZC5uYXZhcmVAaW50ZWwuY29t PgotLS0KIGRyaXZlcnMvZ3B1L2RybS9kcm1fZWRpZC5jICB8IDQ5ICsrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysKIGluY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaCB8IDI1ICsr KysrKysrKysrKysrKysrKysKIGluY2x1ZGUvZHJtL2RybV9lZGlkLmggICAgICB8ICAyICsrCiAz IGZpbGVzIGNoYW5nZWQsIDc2IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vZHJtX2VkaWQuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZWRpZC5jCmluZGV4IDQ3NGFj MDRkNTYwMC4uOTdkZDEyMDA3NzNlIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2Vk aWQuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2VkaWQuYwpAQCAtNDcwNyw2ICs0NzA3LDUy IEBAIHN0YXRpYyB2b2lkIGRybV9wYXJzZV9jZWFfZXh0KHN0cnVjdCBkcm1fY29ubmVjdG9yICpj b25uZWN0b3IsCiAJfQogfQogCit2b2lkIGRybV9nZXRfYWRhcHRpdmVfc3luY19saW1pdHMoc3Ry dWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKKwkJCQkgIGNvbnN0IHN0cnVjdCBlZGlkICpl ZGlkKQoreworCXN0cnVjdCBkcm1fZGlzcGxheV9pbmZvICppbmZvID0gJmNvbm5lY3Rvci0+ZGlz cGxheV9pbmZvOworCWNvbnN0IHN0cnVjdCBkZXRhaWxlZF90aW1pbmcgKnRpbWluZzsKKwljb25z dCBzdHJ1Y3QgZGV0YWlsZWRfbm9uX3BpeGVsICpkYXRhOworCWNvbnN0IHN0cnVjdCBkZXRhaWxl ZF9kYXRhX21vbml0b3JfcmFuZ2UgKnJhbmdlOworCWludCBpOworCisJLyoKKwkgKiBSZXN0cmlj dCBBZGFwdGl2ZSBTeW5jIG9ubHkgZm9yIGRwIGFuZCBlZHAKKwkgKi8KKwlpZiAoY29ubmVjdG9y LT5jb25uZWN0b3JfdHlwZSAhPSBEUk1fTU9ERV9DT05ORUNUT1JfRGlzcGxheVBvcnQgJiYKKwkg ICAgY29ubmVjdG9yLT5jb25uZWN0b3JfdHlwZSAhPSBEUk1fTU9ERV9DT05ORUNUT1JfZURQKQor CQlyZXR1cm47CisKKwlpZiAoZWRpZC0+dmVyc2lvbiA8PSAxICYmICEoZWRpZC0+dmVyc2lvbiA9 PSAxICYmIGVkaWQtPnJldmlzaW9uID4gMSkpCisJCXJldHVybjsKKworCWZvciAoaSA9IDA7IGkg PCA0OyBpKyspIHsKKwkJdGltaW5nICA9ICZlZGlkLT5kZXRhaWxlZF90aW1pbmdzW2ldOworCQlk YXRhICAgID0gJnRpbWluZy0+ZGF0YS5vdGhlcl9kYXRhOworCQlyYW5nZSAgID0gJmRhdGEtPmRh dGEucmFuZ2U7CisJCS8qCisJCSAqIENoZWNrIGlmIG1vbml0b3IgaGFzIGNvbnRpbnVvdXMgZnJl cXVlbmN5IG1vZGUKKwkJICovCisJCWlmIChkYXRhLT50eXBlICE9IEVESURfREVUQUlMX01PTklU T1JfUkFOR0UpCisJCQljb250aW51ZTsKKwkJLyoKKwkJICogQ2hlY2sgZm9yIGZsYWcgcmFuZ2Ug bGltaXRzIG9ubHkuIElmIGZsYWcgPT0gMSB0aGVuCisJCSAqIG5vIGFkZGl0aW9uYWwgdGltaW5n IGluZm9ybWF0aW9uIHByb3ZpZGVkLgorCQkgKiBEZWZhdWx0IEdURiwgR1RGIFNlY29uZGFyeSBj dXJ2ZSBhbmQgQ1ZUIGFyZSBub3QKKwkJICogc3VwcG9ydGVkCisJCSAqLworCQlpZiAocmFuZ2Ut PmZsYWdzICE9IDEpCisJCQljb250aW51ZTsKKworCQlpbmZvLT5hZGFwdGl2ZV9zeW5jLm1pbl92 ZnJlcSA9IHJhbmdlLT5taW5fdmZyZXE7CisJCWluZm8tPmFkYXB0aXZlX3N5bmMubWF4X3ZmcmVx ID0gcmFuZ2UtPm1heF92ZnJlcTsKKwkJaW5mby0+YWRhcHRpdmVfc3luYy5waXhlbF9jbG9ja19t aHogPQorCQkJcmFuZ2UtPnBpeGVsX2Nsb2NrX21oeiAqIDEwOworCQlicmVhazsKKwl9Cit9CitF WFBPUlRfU1lNQk9MKGRybV9nZXRfYWRhcHRpdmVfc3luY19saW1pdHMpOworCiAvKiBBIGNvbm5l Y3RvciBoYXMgbm8gRURJRCBpbmZvcm1hdGlvbiwgc28gd2UndmUgZ290IG5vIEVESUQgdG8gY29t cHV0ZSBxdWlya3MgZnJvbS4gUmVzZXQKICAqIGFsbCBvZiB0aGUgdmFsdWVzIHdoaWNoIHdvdWxk IGhhdmUgYmVlbiBzZXQgZnJvbSBFRElECiAgKi8KQEAgLTQ3MjgsNiArNDc3NCw3IEBAIGRybV9y ZXNldF9kaXNwbGF5X2luZm8oc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKIAltZW1z ZXQoJmluZm8tPmhkbWksIDAsIHNpemVvZihpbmZvLT5oZG1pKSk7CiAKIAlpbmZvLT5ub25fZGVz a3RvcCA9IDA7CisJbWVtc2V0KCZpbmZvLT5hZGFwdGl2ZV9zeW5jLCAwLCBzaXplb2YoaW5mby0+ YWRhcHRpdmVfc3luYykpOwogfQogCiB1MzIgZHJtX2FkZF9kaXNwbGF5X2luZm8oc3RydWN0IGRy bV9jb25uZWN0b3IgKmNvbm5lY3RvciwgY29uc3Qgc3RydWN0IGVkaWQgKmVkaWQpCkBAIC00NzQz LDYgKzQ3OTAsOCBAQCB1MzIgZHJtX2FkZF9kaXNwbGF5X2luZm8oc3RydWN0IGRybV9jb25uZWN0 b3IgKmNvbm5lY3RvciwgY29uc3Qgc3RydWN0IGVkaWQgKmVkaQogCiAJaW5mby0+bm9uX2Rlc2t0 b3AgPSAhIShxdWlya3MgJiBFRElEX1FVSVJLX05PTl9ERVNLVE9QKTsKIAorCWRybV9nZXRfYWRh cHRpdmVfc3luY19saW1pdHMoY29ubmVjdG9yLCBlZGlkKTsKKwogCURSTV9ERUJVR19LTVMoIm5v bl9kZXNrdG9wIHNldCB0byAlZFxuIiwgaW5mby0+bm9uX2Rlc2t0b3ApOwogCiAJaWYgKGVkaWQt PnJldmlzaW9uIDwgMykKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaCBi L2luY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaAppbmRleCA1ZjhjMzM4OWQ0NmYuLmEyN2E4NDI3 MGQ4ZCAxMDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oCisrKyBiL2luY2x1 ZGUvZHJtL2RybV9jb25uZWN0b3IuaApAQCAtMjU0LDYgKzI1NCwyNiBAQCBlbnVtIGRybV9wYW5l bF9vcmllbnRhdGlvbiB7CiAJRFJNX01PREVfUEFORUxfT1JJRU5UQVRJT05fUklHSFRfVVAsCiB9 OwogCisvKioKKyAqIHN0cnVjdCBkcm1fYWRhcHRpdmVfc3luY19pbmZvIC0gUGFuZWwncyBBZGFw dGl2ZSBTeW5jIGNhcGFiaWxpdGllcyBmb3IKKyAqICZkcm1fZGlzcGxheV9pbmZvCisgKgorICog VGhpcyBzdHJ1Y3QgaXMgdXNlZCB0byBzdG9yZSBhIFBhbmVsJ3MgQWRhcHRpdmUgU3luYyBjYXBh YmlsaXRpZXMKKyAqIGFzIHBhcnNlZCBmcm9tIEVESUQncyBkZXRhaWxlZCBtb25pdG9yIHJhbmdl IGRlc2NyaXB0b3IgYmxvY2suCisgKgorICogQG1pbl92ZnJlcTogVGhpcyBpcyB0aGUgbWluIHN1 cHBvcnRlZCByZWZyZXNoIHJhdGUgaW4gSHogZnJvbQorICogICAgICAgICAgICAgRURJRCdzIGRl dGFpbGVkIG1vbml0b3IgcmFuZ2UuCisgKiBAbWF4X3ZmcmVxOiBUaGlzIGlzIHRoZSBtYXggc3Vw cG9ydGVkIHJlZnJlc2ggcmF0ZSBpbiBIeiBmcm9tCisgKiAgICAgICAgICAgICBFRElEJ3MgZGV0 YWlsZWQgbW9uaXRvciByYW5nZQorICogQHBpeGVsX2Nsb2NrX21oejogVGhpcyBpcyB0aGUgZG90 Y2xvY2sgaW4gTUh6IGZyb20KKyAqICAgICAgICAgICAgICAgICAgIEVESUQncyBkZXRhaWxlZCBt b25pdG9yIHJhbmdlCisgKi8KK3N0cnVjdCBkcm1fYWRhcHRpdmVfc3luY19pbmZvIHsKKwlpbnQg bWluX3ZmcmVxOworCWludCBtYXhfdmZyZXE7CisJaW50IHBpeGVsX2Nsb2NrX21oejsKK307CisK IC8qCiAgKiBUaGlzIGlzIGEgY29uc29saWRhdGVkIGNvbG9yaW1ldHJ5IGxpc3Qgc3VwcG9ydGVk IGJ5IEhETUkgYW5kCiAgKiBEUCBwcm90b2NvbCBzdGFuZGFyZC4gVGhlIHJlc3BlY3RpdmUgY29u bmVjdG9ycyB3aWxsIHJlZ2lzdGVyCkBAIC00NjUsNiArNDg1LDExIEBAIHN0cnVjdCBkcm1fZGlz cGxheV9pbmZvIHsKIAkgKiBAbm9uX2Rlc2t0b3A6IE5vbiBkZXNrdG9wIGRpc3BsYXkgKEhNRCku CiAJICovCiAJYm9vbCBub25fZGVza3RvcDsKKworCS8qKgorCSAqIEBhZGFwdGl2ZV9zeW5jOiBB ZGFwdGl2ZSBTeW5jIGNhcGFiaWxpdGllcyBvZiB0aGUgRFAvZURQIHNpbmsKKwkgKi8KKwlzdHJ1 Y3QgZHJtX2FkYXB0aXZlX3N5bmNfaW5mbyBhZGFwdGl2ZV9zeW5jOwogfTsKIAogaW50IGRybV9k aXNwbGF5X2luZm9fc2V0X2J1c19mb3JtYXRzKHN0cnVjdCBkcm1fZGlzcGxheV9pbmZvICppbmZv LApkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2VkaWQuaCBiL2luY2x1ZGUvZHJtL2RybV9l ZGlkLmgKaW5kZXggZjBiMDNkNDAxYzI3Li5iOWEyMzBhYTNlNjkgMTAwNjQ0Ci0tLSBhL2luY2x1 ZGUvZHJtL2RybV9lZGlkLmgKKysrIGIvaW5jbHVkZS9kcm0vZHJtX2VkaWQuaApAQCAtNTAzLDQg KzUwMyw2IEBAIHZvaWQgZHJtX2VkaWRfZ2V0X21vbml0b3JfbmFtZShzdHJ1Y3QgZWRpZCAqZWRp ZCwgY2hhciAqbmFtZSwKIHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICpkcm1fbW9kZV9maW5kX2Rt dChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCQkJCQkgICBpbnQgaHNpemUsIGludCB2c2l6ZSwg aW50IGZyZXNoLAogCQkJCQkgICBib29sIHJiKTsKK3ZvaWQgZHJtX2dldF9hZGFwdGl2ZV9zeW5j X2xpbWl0cyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAorCQkJCSAgY29uc3Qgc3Ry dWN0IGVkaWQgKmVkaWQpOwogI2VuZGlmIC8qIF9fRFJNX0VESURfSF9fICovCi0tIAoyLjE5LjEK Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdm eCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA==