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,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 83383C433B4 for ; Mon, 26 Apr 2021 09:42:54 +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 2896A61075 for ; Mon, 26 Apr 2021 09:42:54 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 2896A61075 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 3EC7389D7B; Mon, 26 Apr 2021 09:42:53 +0000 (UTC) Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4461489D7B; Mon, 26 Apr 2021 09:42:52 +0000 (UTC) IronPort-SDR: Q/M5OsJMXHMLYMwtKL/mlID5YbSlyzn59EAutdqBbcyXmEjrLhvfANh/JyCzHSoaE0yi2K/0VM Bf2nQIkSHhYQ== X-IronPort-AV: E=McAfee;i="6200,9189,9965"; a="195861013" X-IronPort-AV: E=Sophos;i="5.82,252,1613462400"; d="scan'208";a="195861013" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 26 Apr 2021 02:42:50 -0700 IronPort-SDR: Gt5NeInwT0YPlGj69f1XHwIuRjFsh/Cas/wia6Y43TfKeuH2GfZR27lTYj0T9nAE8DXEDvsrXh upOPxBDdrGIA== X-IronPort-AV: E=Sophos;i="5.82,252,1613462400"; d="scan'208";a="429334081" Received: from rgunnin1-mobl.ger.corp.intel.com (HELO mwauld-desk1.ger.corp.intel.com) ([10.252.12.201]) by orsmga008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 26 Apr 2021 02:42:46 -0700 From: Matthew Auld To: intel-gfx@lists.freedesktop.org Subject: [PATCH 1/9] drm/doc/rfc: i915 DG1 uAPI Date: Mon, 26 Apr 2021 10:38:53 +0100 Message-Id: <20210426093901.28937-1-matthew.auld@intel.com> X-Mailer: git-send-email 2.26.3 MIME-Version: 1.0 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Lionel Landwerlin , =?UTF-8?q?Thomas=20Hellstr=C3=B6m?= , Dave Airlie , Jordan Justen , dri-devel@lists.freedesktop.org, Daniel Vetter , Kenneth Graunke , Daniele Ceraolo Spurio , Jon Bloomfield , Jason Ekstrand , mesa-dev@lists.freedesktop.org, Daniel Vetter Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" QWRkIGFuIGVudHJ5IGZvciB0aGUgbmV3IHVBUEkgbmVlZGVkIGZvciBERzEuIEFsc28gYWRkIHRo ZSBvdmVyYWxsCnVwc3RyZWFtIHBsYW4sIGluY2x1ZGluZyBzb21lIG5vdGVzIGZvciB0aGUgVFRN IGNvbnZlcnNpb24uCgp2MihEYW5pZWwpOgogIC0gaW5jbHVkZSB0aGUgb3ZlcmFsbCB1cHN0cmVh bWluZyBwbGFuCiAgLSBhZGQgYSBub3RlIGZvciBtbWFwLCB0aGVyZSBhcmUgZGlmZmVyZW5jZXMg aGVyZSBmb3IgVFRNIHZzIGk5MTUKICAtIGJ1bmNoIG9mIG90aGVyIHN1Z2dlc3Rpb25zIGZyb20g RGFuaWVsCnYzOgogKERhbmllbCkKICAtIGFkZCBhIG5vdGUgZm9yIHNldC9nZXQgY2FjaGluZyBz dHVmZgogIC0gYWRkIHNvbWUgbW9yZSBkb2NzIGZvciBleGlzdGluZyBxdWVyeSBhbmQgZXh0ZW5z aW9ucyBzdHVmZgogIC0gYWRkIGFuIGFjdHVhbCBjb2RlIGV4YW1wbGUgZm9yIHJlZ2lvbnMgcXVl cnkKICAtIGJ1bmNoIG9mIG90aGVyIHN0dWZmCiAoSmFzb24pCiAgLSB1QVBJIGNoYW5nZSghKToK CS0gdHJ5IGEgc2ltcGxlciBkZXNpZ24gd2l0aCB0aGUgcGxhY2VtZW50cyBleHRlbnNpb24KCS0g cmF0aGVyIHRoYW4gaGF2ZSBhIGdlbmVyaWMgc2V0cGFyYW0gd2hpY2ggY2FuIGNvdmVyIG11bHRp cGxlCgkgIHVzZSBjYXNlcywgaGF2ZSBlYWNoIGV4dGVuc2lvbiBiZSByZXNwb25zaWJsZSBmb3Ig b25lIHRoaW5nCgkgIG9ubHkKdjQ6CiAoRGFuaWVsKQogIC0gYWRkIHNvbWUgbW9yZSBub3RlcyBm b3IgdHRtIGNvbnZlcnNpb24KICAtIGJ1bmNoIG9mIG90aGVyIHN0dWZmCiAoSmFzb24pCiAgLSB1 QVBJIGNoYW5nZSghKToKCS0gZHJvcCBhbGwgdGhlIGV4dHJhIHJzdmQgbWVtYmVycyBmb3IgdGhl IHJlZ2lvbl9xdWVyeSBhbmQKCSAgcmVnaW9uX2luZm8sIGp1c3Qga2VlcCB0aGUgYmFyZSBtaW5p bXVtIG5lZWRlZCBmb3IgcGFkZGluZwoKU2lnbmVkLW9mZi1ieTogTWF0dGhldyBBdWxkIDxtYXR0 aGV3LmF1bGRAaW50ZWwuY29tPgpDYzogSm9vbmFzIExhaHRpbmVuIDxqb29uYXMubGFodGluZW5A bGludXguaW50ZWwuY29tPgpDYzogVGhvbWFzIEhlbGxzdHLDtm0gPHRob21hcy5oZWxsc3Ryb21A bGludXguaW50ZWwuY29tPgpDYzogRGFuaWVsZSBDZXJhb2xvIFNwdXJpbyA8ZGFuaWVsZS5jZXJh b2xvc3B1cmlvQGludGVsLmNvbT4KQ2M6IExpb25lbCBMYW5kd2VybGluIDxsaW9uZWwuZy5sYW5k d2VybGluQGxpbnV4LmludGVsLmNvbT4KQ2M6IEpvbiBCbG9vbWZpZWxkIDxqb24uYmxvb21maWVs ZEBpbnRlbC5jb20+CkNjOiBKb3JkYW4gSnVzdGVuIDxqb3JkYW4ubC5qdXN0ZW5AaW50ZWwuY29t PgpDYzogRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBpbnRlbC5jb20+CkNjOiBLZW5uZXRo IEdyYXVua2UgPGtlbm5ldGhAd2hpdGVjYXBlLm9yZz4KQ2M6IEphc29uIEVrc3RyYW5kIDxqYXNv bkBqbGVrc3RyYW5kLm5ldD4KQ2M6IERhdmUgQWlybGllIDxhaXJsaWVkQGdtYWlsLmNvbT4KQ2M6 IGRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKQ2M6IG1lc2EtZGV2QGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpBY2tlZC1ieTogRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBmZndsbC5j aD4KQWNrZWQtYnk6IERhdmUgQWlybGllIDxhaXJsaWVkQHJlZGhhdC5jb20+Ci0tLQogRG9jdW1l bnRhdGlvbi9ncHUvcmZjL2k5MTVfZ2VtX2xtZW0uaCAgIHwgMjEyICsrKysrKysrKysrKysrKysr KysrKysrKwogRG9jdW1lbnRhdGlvbi9ncHUvcmZjL2k5MTVfZ2VtX2xtZW0ucnN0IHwgMTMwICsr KysrKysrKysrKysrKwogRG9jdW1lbnRhdGlvbi9ncHUvcmZjL2luZGV4LnJzdCAgICAgICAgIHwg ICA0ICsKIDMgZmlsZXMgY2hhbmdlZCwgMzQ2IGluc2VydGlvbnMoKykKIGNyZWF0ZSBtb2RlIDEw MDY0NCBEb2N1bWVudGF0aW9uL2dwdS9yZmMvaTkxNV9nZW1fbG1lbS5oCiBjcmVhdGUgbW9kZSAx MDA2NDQgRG9jdW1lbnRhdGlvbi9ncHUvcmZjL2k5MTVfZ2VtX2xtZW0ucnN0CgpkaWZmIC0tZ2l0 IGEvRG9jdW1lbnRhdGlvbi9ncHUvcmZjL2k5MTVfZ2VtX2xtZW0uaCBiL0RvY3VtZW50YXRpb24v Z3B1L3JmYy9pOTE1X2dlbV9sbWVtLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw MDAwMDAwLi43ZWQ1OWI2MjAyZDUKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2N1bWVudGF0aW9uL2dw dS9yZmMvaTkxNV9nZW1fbG1lbS5oCkBAIC0wLDAgKzEsMjEyIEBACisvKioKKyAqIGVudW0gZHJt X2k5MTVfZ2VtX21lbW9yeV9jbGFzcyAtIFN1cHBvcnRlZCBtZW1vcnkgY2xhc3NlcworICovCitl bnVtIGRybV9pOTE1X2dlbV9tZW1vcnlfY2xhc3MgeworCS8qKiBASTkxNV9NRU1PUllfQ0xBU1Nf U1lTVEVNOiBTeXN0ZW0gbWVtb3J5ICovCisJSTkxNV9NRU1PUllfQ0xBU1NfU1lTVEVNID0gMCwK KwkvKiogQEk5MTVfTUVNT1JZX0NMQVNTX0RFVklDRTogRGV2aWNlIGxvY2FsLW1lbW9yeSAqLwor CUk5MTVfTUVNT1JZX0NMQVNTX0RFVklDRSwKK307CisKKy8qKgorICogc3RydWN0IGRybV9pOTE1 X2dlbV9tZW1vcnlfY2xhc3NfaW5zdGFuY2UgLSBJZGVudGlmeSBwYXJ0aWN1bGFyIG1lbW9yeSBy ZWdpb24KKyAqLworc3RydWN0IGRybV9pOTE1X2dlbV9tZW1vcnlfY2xhc3NfaW5zdGFuY2Ugewor CS8qKiBAbWVtb3J5X2NsYXNzOiBTZWUgZW51bSBkcm1faTkxNV9nZW1fbWVtb3J5X2NsYXNzICov CisJX191MTYgbWVtb3J5X2NsYXNzOworCisJLyoqIEBtZW1vcnlfaW5zdGFuY2U6IFdoaWNoIGlu c3RhbmNlICovCisJX191MTYgbWVtb3J5X2luc3RhbmNlOworfTsKKworLyoqCisgKiBzdHJ1Y3Qg ZHJtX2k5MTVfbWVtb3J5X3JlZ2lvbl9pbmZvIC0gRGVzY3JpYmVzIG9uZSByZWdpb24gYXMga25v d24gdG8gdGhlCisgKiBkcml2ZXIuCisgKgorICogTm90ZSB0aGF0IHdlIHJlc2VydmUgc29tZSBz dHVmZiBoZXJlIGZvciBwb3RlbnRpYWwgZnV0dXJlIHdvcmsuIEFzIGFuIGV4YW1wbGUKKyAqIHdl IG1pZ2h0IHdhbnQgZXhwb3NlIHRoZSBjYXBhYmlsaXRpZXMoc2VlIEBjYXBzKSBmb3IgYSBnaXZl biByZWdpb24sIHdoaWNoCisgKiBjb3VsZCBpbmNsdWRlIHRoaW5ncyBsaWtlIGlmIHRoZSByZWdp b24gaXMgQ1BVIG1hcHBhYmxlL2FjY2Vzc2libGUsIHdoYXQgYXJlCisgKiB0aGUgc3VwcG9ydGVk IG1hcHBpbmcgdHlwZXMgZXRjLgorICoKKyAqIE5vdGUgdGhpcyBpcyB1c2luZyBib3RoIHN0cnVj dCBkcm1faTkxNV9xdWVyeV9pdGVtIGFuZCBzdHJ1Y3QgZHJtX2k5MTVfcXVlcnkuCisgKiBGb3Ig dGhpcyBuZXcgcXVlcnkgd2UgYXJlIGFkZGluZyB0aGUgbmV3IHF1ZXJ5IGlkIERSTV9JOTE1X1FV RVJZX01FTU9SWV9SRUdJT05TCisgKiBhdCAmZHJtX2k5MTVfcXVlcnlfaXRlbS5xdWVyeV9pZC4K KyAqLworc3RydWN0IGRybV9pOTE1X21lbW9yeV9yZWdpb25faW5mbyB7CisJLyoqIEByZWdpb246 IFRoZSBjbGFzczppbnN0YW5jZSBwYWlyIGVuY29kaW5nICovCisJc3RydWN0IGRybV9pOTE1X2dl bV9tZW1vcnlfY2xhc3NfaW5zdGFuY2UgcmVnaW9uOworCisJLyoqIEBwYWQ6IE1CWiAqLworCV9f dTMyIHBhZDsKKworCS8qKiBAY2FwczogTUJaICovCisJX191NjQgY2FwczsKKworCS8qKiBAcHJv YmVkX3NpemU6IE1lbW9yeSBwcm9iZWQgYnkgdGhlIGRyaXZlciAoLTEgPSB1bmtub3duKSAqLwor CV9fdTY0IHByb2JlZF9zaXplOworCisJLyoqIEB1bmFsbG9jYXRlZF9zaXplOiBFc3RpbWF0ZSBv ZiBtZW1vcnkgcmVtYWluaW5nICgtMSA9IHVua25vd24pICovCisJX191NjQgdW5hbGxvY2F0ZWRf c2l6ZTsKK307CisKKy8qKgorICogc3RydWN0IGRybV9pOTE1X3F1ZXJ5X21lbW9yeV9yZWdpb25z CisgKgorICogVGhlIHJlZ2lvbiBpbmZvIHF1ZXJ5IGVudW1lcmF0ZXMgYWxsIHJlZ2lvbnMga25v d24gdG8gdGhlIGRyaXZlciBieSBmaWxsaW5nCisgKiBpbiBhbiBhcnJheSBvZiBzdHJ1Y3QgZHJt X2k5MTVfbWVtb3J5X3JlZ2lvbl9pbmZvIHN0cnVjdHVyZXMuCisgKgorICogRXhhbXBsZSBmb3Ig Z2V0dGluZyB0aGUgbGlzdCBvZiBzdXBwb3J0ZWQgcmVnaW9uczoKKyAqCisgKiAuLiBjb2RlLWJs b2NrOjogQworICoKKyAqCXN0cnVjdCBkcm1faTkxNV9xdWVyeV9tZW1vcnlfcmVnaW9ucyAqaW5m bzsKKyAqCXN0cnVjdCBkcm1faTkxNV9xdWVyeV9pdGVtIGl0ZW0gPSB7CisgKgkJLnF1ZXJ5X2lk ID0gRFJNX0k5MTVfUVVFUllfTUVNT1JZX1JFR0lPTlM7CisgKgl9OworICoJc3RydWN0IGRybV9p OTE1X3F1ZXJ5IHF1ZXJ5ID0geworICoJCS5udW1faXRlbXMgPSAxLAorICoJCS5pdGVtc19wdHIg PSAodWludHB0cl90KSZpdGVtLAorICoJfTsKKyAqCWludCBlcnIsIGk7CisgKgorICoJLy8gRmly c3QgcXVlcnkgdGhlIHNpemUgb2YgdGhlIGJsb2Igd2UgbmVlZCwgdGhpcyBuZWVkcyB0byBiZSBs YXJnZQorICoJLy8gZW5vdWdoIHRvIGhvbGQgb3VyIGFycmF5IG9mIHJlZ2lvbnMuIFRoZSBrZXJu ZWwgd2lsbCBmaWxsIG91dCB0aGUKKyAqCS8vIGl0ZW0ubGVuZ3RoIGZvciB1cywgd2hpY2ggaXMg dGhlIG51bWJlciBvZiBieXRlcyB3ZSBuZWVkLgorICoJZXJyID0gaW9jdGwoZmQsIERSTV9JT0NU TF9JOTE1X1FVRVJZLCAmcXVlcnkpOworICoJaWYgKGVycikgLi4uCisgKgorICoJaW5mbyA9IGNh bGxvYygxLCBpdGVtLmxlbmd0aCk7CisgKgkvLyBOb3cgdGhhdCB3ZSBhbGxvY2F0ZWQgdGhlIHJl cXVpcmVkIG51bWJlciBvZiBieXRlcywgd2UgY2FsbCB0aGUgaW9jdGwKKyAqCS8vIGFnYWluLCB0 aGlzIHRpbWUgd2l0aCB0aGUgZGF0YV9wdHIgcG9pbnRpbmcgdG8gb3VyIG5ld2x5IGFsbG9jYXRl ZAorICoJLy8gYmxvYiwgd2hpY2ggdGhlIGtlcm5lbCBjYW4gdGhlbiBwb3B1bGF0ZSB3aXRoIHRo ZSBhbGwgdGhlIHJlZ2lvbiBpbmZvLgorICoJaXRlbS5kYXRhX3B0ciA9ICh1aW50cHRyX3QpJmlu Zm8sCisgKgorICoJZXJyID0gaW9jdGwoZmQsIERSTV9JT0NUTF9JOTE1X1FVRVJZLCAmcXVlcnkp OworICoJaWYgKGVycikgLi4uCisgKgorICoJLy8gV2UgY2FuIG5vdyBhY2Nlc3MgZWFjaCByZWdp b24gaW4gdGhlIGFycmF5CisgKglmb3IgKGkgPSAwOyBpIDwgaW5mby0+bnVtX3JlZ2lvbnM7IGkr KykgeworICoJCXN0cnVjdCBkcm1faTkxNV9tZW1vcnlfcmVnaW9uX2luZm8gbXIgPSBpbmZvLT5y ZWdpb25zW2ldOworICoJCXUxNiBjbGFzcyA9IG1yLnJlZ2lvbi5jbGFzczsKKyAqCQl1MTYgaW5z dGFuY2UgPSBtci5yZWdpb24uaW5zdGFuY2U7CisgKgorICoJCS4uLi4KKyAqCX0KKyAqCisgKglm cmVlKGluZm8pOworICovCitzdHJ1Y3QgZHJtX2k5MTVfcXVlcnlfbWVtb3J5X3JlZ2lvbnMgewor CS8qKiBAbnVtX3JlZ2lvbnM6IE51bWJlciBvZiBzdXBwb3J0ZWQgcmVnaW9ucyAqLworCV9fdTMy IG51bV9yZWdpb25zOworCisJLyoqIEBwYWQ6IE1CWiAqLworCV9fdTMyIHBhZDsKKworCS8qKiBA cmVnaW9uczogSW5mbyBhYm91dCBlYWNoIHN1cHBvcnRlZCByZWdpb24gKi8KKwlzdHJ1Y3QgZHJt X2k5MTVfbWVtb3J5X3JlZ2lvbl9pbmZvIHJlZ2lvbnNbXTsKK307CisKKyNkZWZpbmUgRFJNX0k5 MTVfR0VNX0NSRUFURV9FWFQJCTB4ZGVhZGJlYWYKKyNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VN X0NSRUFURV9FWFQJRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9DUkVB VEVfRVhULCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2NyZWF0ZV9leHQpCisKKy8qKgorICogc3RydWN0 IGRybV9pOTE1X2dlbV9jcmVhdGVfZXh0IC0gRXhpc3RpbmcgZ2VtX2NyZWF0ZSBiZWhhdmlvdXIs IHdpdGggYWRkZWQKKyAqIGV4dGVuc2lvbiBzdXBwb3J0IHVzaW5nIHN0cnVjdCBpOTE1X3VzZXJf ZXh0ZW5zaW9uLgorICoKKyAqIE5vdGUgdGhhdCBpbiB0aGUgZnV0dXJlIHdlIHdhbnQgdG8gaGF2 ZSBvdXIgYnVmZmVyIGZsYWdzIGhlcmUsIGF0IGxlYXN0IGZvcgorICogdGhlIHN0dWZmIHRoYXQg aXMgaW1tdXRhYmxlLiBQcmV2aW91c2x5IHdlIHdvdWxkIGhhdmUgdHdvIGlvY3Rscywgb25lIHRv CisgKiBjcmVhdGUgdGhlIG9iamVjdCB3aXRoIGdlbV9jcmVhdGUsIGFuZCBhbm90aGVyIHRvIGFw cGx5IHZhcmlvdXMgcGFyYW1ldGVycywKKyAqIGhvd2V2ZXIgdGhpcyBjcmVhdGVzIHNvbWUgYW1i aWd1aXR5IGZvciB0aGUgcGFyYW1zIHdoaWNoIGFyZSBjb25zaWRlcmVkCisgKiBpbW11dGFibGUu IEFsc28gaW4gZ2VuZXJhbCB3ZSdyZSBwaGFzaW5nIG91dCB0aGUgdmFyaW91cyBTRVQvR0VUIGlv Y3Rscy4KKyAqLworc3RydWN0IGRybV9pOTE1X2dlbV9jcmVhdGVfZXh0IHsKKwkvKioKKwkgKiBA c2l6ZTogUmVxdWVzdGVkIHNpemUgZm9yIHRoZSBvYmplY3QuCisJICoKKwkgKiBUaGUgKHBhZ2Ut YWxpZ25lZCkgYWxsb2NhdGVkIHNpemUgZm9yIHRoZSBvYmplY3Qgd2lsbCBiZSByZXR1cm5lZC4K KwkgKgorCSAqIE5vdGUgdGhhdCBmb3Igc29tZSBkZXZpY2VzIHdlIGhhdmUgbWlnaHQgaGF2ZSBm dXJ0aGVyIG1pbmltdW0KKwkgKiBwYWdlLXNpemUgcmVzdHJpY3Rpb25zKGxhcmdlciB0aGFuIDRL KSwgbGlrZSBmb3IgZGV2aWNlIGxvY2FsLW1lbW9yeS4KKwkgKiBIb3dldmVyIGluIGdlbmVyYWwg dGhlIGZpbmFsIHNpemUgaGVyZSBzaG91bGQgYWx3YXlzIHJlZmxlY3QgYW55CisJICogcm91bmRp bmcgdXAsIGlmIGZvciBleGFtcGxlIHVzaW5nIHRoZSBJOTE1X0dFTV9DUkVBVEVfRVhUX01FTU9S WV9SRUdJT05TCisJICogZXh0ZW5zaW9uIHRvIHBsYWNlIHRoZSBvYmplY3QgaW4gZGV2aWNlIGxv Y2FsLW1lbW9yeS4KKwkgKi8KKwlfX3U2NCBzaXplOworCS8qKgorCSAqIEBoYW5kbGU6IFJldHVy bmVkIGhhbmRsZSBmb3IgdGhlIG9iamVjdC4KKwkgKgorCSAqIE9iamVjdCBoYW5kbGVzIGFyZSBu b256ZXJvLgorCSAqLworCV9fdTMyIGhhbmRsZTsKKwkvKiogQGZsYWdzOiBNQlogKi8KKwlfX3Uz MiBmbGFnczsKKwkvKioKKwkgKiBAZXh0ZW5zaW9uczogVGhlIGNoYWluIG9mIGV4dGVuc2lvbnMg dG8gYXBwbHkgdG8gdGhpcyBvYmplY3QuCisJICoKKwkgKiBUaGlzIHdpbGwgYmUgdXNlZnVsIGlu IHRoZSBmdXR1cmUgd2hlbiB3ZSBuZWVkIHRvIHN1cHBvcnQgc2V2ZXJhbAorCSAqIGRpZmZlcmVu dCBleHRlbnNpb25zLCBhbmQgd2UgbmVlZCB0byBhcHBseSBtb3JlIHRoYW4gb25lIHdoZW4KKwkg KiBjcmVhdGluZyB0aGUgb2JqZWN0LiBTZWUgc3RydWN0IGk5MTVfdXNlcl9leHRlbnNpb24uCisJ ICoKKwkgKiBJZiB3ZSBkb24ndCBzdXBwbHkgYW55IGV4dGVuc2lvbnMgdGhlbiB3ZSBnZXQgdGhl IHNhbWUgb2xkIGdlbV9jcmVhdGUKKwkgKiBiZWhhdmlvdXIuCisJICoKKwkgKiBGb3IgSTkxNV9H RU1fQ1JFQVRFX0VYVF9NRU1PUllfUkVHSU9OUyB1c2FnZSBzZWUKKwkgKiBzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX2NyZWF0ZV9leHRfbWVtb3J5X3JlZ2lvbnMuCisJICovCisjZGVmaW5lIEk5MTVfR0VN X0NSRUFURV9FWFRfTUVNT1JZX1JFR0lPTlMgMAorCV9fdTY0IGV4dGVuc2lvbnM7Cit9OworCisv KioKKyAqIHN0cnVjdCBkcm1faTkxNV9nZW1fY3JlYXRlX2V4dF9tZW1vcnlfcmVnaW9ucyAtIFRo ZQorICogSTkxNV9HRU1fQ1JFQVRFX0VYVF9NRU1PUllfUkVHSU9OUyBleHRlbnNpb24uCisgKgor ICogU2V0IHRoZSBvYmplY3Qgd2l0aCB0aGUgZGVzaXJlZCBzZXQgb2YgcGxhY2VtZW50cy9yZWdp b25zIGluIHByaW9yaXR5CisgKiBvcmRlci4gRWFjaCBlbnRyeSBtdXN0IGJlIHVuaXF1ZSBhbmQg c3VwcG9ydGVkIGJ5IHRoZSBkZXZpY2UuCisgKgorICogVGhpcyBpcyBwcm92aWRlZCBhcyBhbiBh cnJheSBvZiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX21lbW9yeV9jbGFzc19pbnN0YW5jZSwgb3IKKyAq IGFuIGVxdWl2YWxlbnQgbGF5b3V0IG9mIGNsYXNzOmluc3RhbmNlIHBhaXIgZW5jb2RpbmdzLiBT ZWUgc3RydWN0CisgKiBkcm1faTkxNV9xdWVyeV9tZW1vcnlfcmVnaW9ucyBhbmQgRFJNX0k5MTVf UVVFUllfTUVNT1JZX1JFR0lPTlMgZm9yIGhvdyB0bworICogcXVlcnkgdGhlIHN1cHBvcnRlZCBy ZWdpb25zIGZvciBhIGRldmljZS4KKyAqCisgKiBBcyBhbiBleGFtcGxlLCBvbiBkaXNjcmV0ZSBk ZXZpY2VzLCBpZiB3ZSB3aXNoIHRvIHNldCB0aGUgcGxhY2VtZW50IGFzCisgKiBkZXZpY2UgbG9j YWwtbWVtb3J5IHdlIGNhbiBkbyBzb21ldGhpbmcgbGlrZToKKyAqCisgKiAuLiBjb2RlLWJsb2Nr OjogQworICoKKyAqCXN0cnVjdCBkcm1faTkxNV9nZW1fbWVtb3J5X2NsYXNzX2luc3RhbmNlIHJl Z2lvbl9sbWVtID0geworICogICAgICAgICAgICAgIC5tZW1vcnlfY2xhc3MgPSBJOTE1X01FTU9S WV9DTEFTU19ERVZJQ0UsCisgKiAgICAgICAgICAgICAgLm1lbW9yeV9pbnN0YW5jZSA9IDAsCisg KiAgICAgIH07CisgKiAgICAgIHN0cnVjdCBkcm1faTkxNV9nZW1fY3JlYXRlX2V4dF9tZW1vcnlf cmVnaW9ucyByZWdpb25zID0geworICogICAgICAgICAgICAgIC5iYXNlID0geyAubmFtZSA9IEk5 MTVfR0VNX0NSRUFURV9FWFRfTUVNT1JZX1JFR0lPTlMgfSwKKyAqICAgICAgICAgICAgICAucmVn aW9ucyA9ICh1aW50cHRyX3QpJnJlZ2lvbl9sbWVtLAorICogICAgICAgICAgICAgIC5udW1fcmVn aW9ucyA9IDEsCisgKiAgICAgIH07CisgKiAgICAgIHN0cnVjdCBkcm1faTkxNV9nZW1fY3JlYXRl X2V4dCBjcmVhdGVfZXh0ID0geworICogICAgICAgICAgICAgIC5zaXplID0gMTYgKiBQQUdFX1NJ WkUsCisgKiAgICAgICAgICAgICAgLmV4dGVuc2lvbnMgPSAodWludHB0cl90KSZyZWdpb25zLAor ICogICAgICB9OworICoKKyAqICAgICAgaW50IGVyciA9IGlvY3RsKGZkLCBEUk1fSU9DVExfSTkx NV9HRU1fQ1JFQVRFX0VYVCwgJmNyZWF0ZV9leHQpOworICogICAgICBpZiAoZXJyKSAuLi4KKyAq CisgKiBBdCB3aGljaCBwb2ludCB3ZSBnZXQgdGhlIG9iamVjdCBoYW5kbGUgaW4gJmRybV9pOTE1 X2dlbV9jcmVhdGVfZXh0LmhhbmRsZSwKKyAqIGFsb25nIHdpdGggdGhlIGZpbmFsIG9iamVjdCBz aXplIGluICZkcm1faTkxNV9nZW1fY3JlYXRlX2V4dC5zaXplLCB3aGljaAorICogc2hvdWxkIGFj Y291bnQgZm9yIGFueSByb3VuZGluZyB1cCwgaWYgcmVxdWlyZWQuCisgKi8KK3N0cnVjdCBkcm1f aTkxNV9nZW1fY3JlYXRlX2V4dF9tZW1vcnlfcmVnaW9ucyB7CisJLyoqIEBiYXNlOiBFeHRlbnNp b24gbGluay4gU2VlIHN0cnVjdCBpOTE1X3VzZXJfZXh0ZW5zaW9uLiAqLworCXN0cnVjdCBpOTE1 X3VzZXJfZXh0ZW5zaW9uIGJhc2U7CisKKwkvKiogQHBhZDogTUJaICovCisJX191MzIgcGFkOwor CS8qKiBAbnVtX3JlZ2lvbnM6IE51bWJlciBvZiBlbGVtZW50cyBpbiB0aGUgQHJlZ2lvbnMgYXJy YXkuICovCisJX191MzIgbnVtX3JlZ2lvbnM7CisJLyoqCisJICogQHJlZ2lvbnM6IFRoZSByZWdp b25zL3BsYWNlbWVudHMgYXJyYXkuCisJICoKKwkgKiBBbiBhcnJheSBvZiBzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX21lbW9yeV9jbGFzc19pbnN0YW5jZS4KKwkgKi8KKwlfX3U2NCByZWdpb25zOworfTsK ZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ3B1L3JmYy9pOTE1X2dlbV9sbWVtLnJzdCBiL0Rv Y3VtZW50YXRpb24vZ3B1L3JmYy9pOTE1X2dlbV9sbWVtLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAwMDAwMDAwMDAwMDAuLjQ2MmYxZWZkOTAwMwotLS0gL2Rldi9udWxsCisrKyBiL0Rv Y3VtZW50YXRpb24vZ3B1L3JmYy9pOTE1X2dlbV9sbWVtLnJzdApAQCAtMCwwICsxLDEzMCBAQAor PT09PT09PT09PT09PT09PT09PT09PT09PQorSTkxNSBERzEvTE1FTSBSRkMgU2VjdGlvbgorPT09 PT09PT09PT09PT09PT09PT09PT09PQorCitVcHN0cmVhbSBwbGFuCis9PT09PT09PT09PT09CitG b3IgdXBzdHJlYW0gdGhlIG92ZXJhbGwgcGxhbiBmb3IgbGFuZGluZyBhbGwgdGhlIERHMSBzdHVm ZiBhbmQgdHVybmluZyBpdCBmb3IKK3JlYWwsIHdpdGggYWxsIHRoZSB1QVBJIGJpdHMgaXM6CisK KyogTWVyZ2UgYmFzaWMgSFcgZW5hYmxpbmcgb2YgREcxKHN0aWxsIHdpdGhvdXQgcGNpaWQpCisq IE1lcmdlIHRoZSB1QVBJIGJpdHMgYmVoaW5kIHNwZWNpYWwgQ09ORklHX0JST0tFTihvciBzbykg ZmxhZworICAgICAgICAqIEF0IHRoaXMgcG9pbnQgd2UgY2FuIHN0aWxsIG1ha2UgY2hhbmdlcywg YnV0IGltcG9ydGFudGx5IHRoaXMgbGV0cyB1cworICAgICAgICAgIHN0YXJ0IHJ1bm5pbmcgSUdU cyB3aGljaCBjYW4gdXRpbGl6ZSBsb2NhbC1tZW1vcnkgaW4gQ0kKKyogQ29udmVydCBvdmVyIHRv IFRUTSwgbWFrZSBzdXJlIGl0IGFsbCBrZWVwcyB3b3JraW5nLiBTb21lIG9mIHRoZSB3b3JrIGl0 ZW1zOgorICAgICAgICAqIFRUTSBzaHJpbmtlciBmb3IgZGlzY3JldGUKKyAgICAgICAgKiBkbWFf cmVzdl9sb2NraXRlbSBmb3IgZnVsbCBkbWFfcmVzdl9sb2NrLCBpLmUgbm90IGp1c3QgdHJ5bG9j aworICAgICAgICAqIFVzZSBUVE0gQ1BVIHBhZ2VmYXVsdCBoYW5kbGVyCisgICAgICAgICogUm91 dGUgc2htZW0gYmFja2VuZCBvdmVyIHRvIFRUTSBTWVNURU0gZm9yIGRpc2NyZXRlCisgICAgICAg ICogVFRNIHB1cmdlYWJsZSBvYmplY3Qgc3VwcG9ydAorICAgICAgICAqIE1vdmUgaTkxNSBidWRk eSBhbGxvY2F0b3Igb3ZlciB0byBUVE0KKyAgICAgICAgKiBNTUFQIGlvY3RsIG1vZGUoc2VlIGBJ OTE1IE1NQVBgXykKKyAgICAgICAgKiBTRVQvR0VUIGlvY3RsIGNhY2hpbmcoc2VlIGBJOTE1IFNF VC9HRVQgQ0FDSElOR2BfKQorKiBBZGQgcGNpaWQgZm9yIERHMSBhbmQgdHVybiBvbiB1QVBJIGZv ciByZWFsCisKK05ldyBvYmplY3QgcGxhY2VtZW50IGFuZCByZWdpb24gcXVlcnkgdUFQSQorPT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitTdGFydGluZyBmcm9tIERH MSB3ZSBuZWVkIHRvIGdpdmUgdXNlcnNwYWNlIHRoZSBhYmlsaXR5IHRvIGFsbG9jYXRlIGJ1ZmZl cnMgZnJvbQorZGV2aWNlIGxvY2FsLW1lbW9yeS4gQ3VycmVudGx5IHRoZSBkcml2ZXIgc3VwcG9y dHMgZ2VtX2NyZWF0ZSwgd2hpY2ggY2FuIHBsYWNlCitidWZmZXJzIGluIHN5c3RlbSBtZW1vcnkg dmlhIHNobWVtLCBhbmQgdGhlIHVzdWFsIGFzc29ydG1lbnQgb2Ygb3RoZXIKK2ludGVyZmFjZXMs IGxpa2UgZHVtYiBidWZmZXJzIGFuZCB1c2VycHRyLgorCitUbyBzdXBwb3J0IHRoaXMgbmV3IGNh cGFiaWxpdHksIHdoaWxlIGFsc28gcHJvdmlkaW5nIGEgdUFQSSB3aGljaCB3aWxsIHdvcmsKK2Jl eW9uZCBqdXN0IERHMSwgd2UgcHJvcG9zZSB0byBvZmZlciB0aHJlZSBuZXcgYml0cyBvZiB1QVBJ OgorCitEUk1fSTkxNV9RVUVSWV9NRU1PUllfUkVHSU9OUworLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0KK05ldyBxdWVyeSBJRCB3aGljaCBhbGxvd3MgdXNlcnNwYWNlIHRvIGRpc2NvdmVy IHRoZSBsaXN0IG9mIHN1cHBvcnRlZCBtZW1vcnkKK3JlZ2lvbnMobGlrZSBzeXN0ZW0tbWVtb3J5 IGFuZCBsb2NhbC1tZW1vcnkpIGZvciBhIGdpdmVuIGRldmljZS4gV2UgaWRlbnRpZnkKK2VhY2gg cmVnaW9uIHdpdGggYSBjbGFzcyBhbmQgaW5zdGFuY2UgcGFpciwgd2hpY2ggc2hvdWxkIGJlIHVu aXF1ZS4gVGhlIGNsYXNzCitoZXJlIHdvdWxkIGJlIERFVklDRSBvciBTWVNURU0sIGFuZCB0aGUg aW5zdGFuY2Ugd291bGQgYmUgemVybywgb24gcGxhdGZvcm1zCitsaWtlIERHMS4KKworU2lkZSBu b3RlOiBUaGUgY2xhc3MvaW5zdGFuY2UgZGVzaWduIGlzIGJvcnJvd2VkIGZyb20gb3VyIGV4aXN0 aW5nIGVuZ2luZSB1QVBJLAord2hlcmUgd2UgZGVzY3JpYmUgZXZlcnkgcGh5c2ljYWwgZW5naW5l IGluIHRlcm1zIG9mIGl0cyBjbGFzcywgYW5kIHRoZQorcGFydGljdWxhciBpbnN0YW5jZSwgc2lu Y2Ugd2UgY2FuIGhhdmUgbW9yZSB0aGFuIG9uZSBwZXIgY2xhc3MuCisKK0luIHRoZSBmdXR1cmUg d2UgYWxzbyB3YW50IHRvIGV4cG9zZSBtb3JlIGluZm9ybWF0aW9uIHdoaWNoIGNhbiBmdXJ0aGVy CitkZXNjcmliZSB0aGUgY2FwYWJpbGl0aWVzIG9mIGEgcmVnaW9uLgorCisuLiBrZXJuZWwtZG9j OjogRG9jdW1lbnRhdGlvbi9ncHUvcmZjL2k5MTVfZ2VtX2xtZW0uaAorICAgICAgICA6ZnVuY3Rp b25zOiBkcm1faTkxNV9nZW1fbWVtb3J5X2NsYXNzIGRybV9pOTE1X2dlbV9tZW1vcnlfY2xhc3Nf aW5zdGFuY2UgZHJtX2k5MTVfbWVtb3J5X3JlZ2lvbl9pbmZvIGRybV9pOTE1X3F1ZXJ5X21lbW9y eV9yZWdpb25zCisKK0dFTV9DUkVBVEVfRVhUCistLS0tLS0tLS0tLS0tLQorTmV3IGlvY3RsIHdo aWNoIGlzIGJhc2ljYWxseSBqdXN0IGdlbV9jcmVhdGUgYnV0IG5vdyBhbGxvd3MgdXNlcnNwYWNl IHRvCitwcm92aWRlIGEgY2hhaW4gb2YgcG9zc2libGUgZXh0ZW5zaW9ucy4gTm90ZSB0aGF0IGlm IHdlIGRvbid0IHByb3ZpZGUgYW55CitleHRlbnNpb25zIHRoZW4gd2UgZ2V0IHRoZSBleGFjdCBz YW1lIGJlaGF2aW91ciBhcyBnZW1fY3JlYXRlLgorCitTaWRlIG5vdGU6IFdlIGFsc28gbmVlZCB0 byBzdXBwb3J0IFBYUFsxXSBpbiB0aGUgbmVhciBmdXR1cmUsIHdoaWNoIGlzIGFsc28KK2FwcGxp Y2FibGUgdG8gaW50ZWdyYXRlZCBwbGF0Zm9ybXMsIGFuZCBhZGRzIGl0cyBvd24gZ2VtX2NyZWF0 ZV9leHQgZXh0ZW5zaW9uLAord2hpY2ggYmFzaWNhbGx5IGxldHMgdXNlcnNwYWNlIG1hcmsgYSBi dWZmZXIgYXMgInByb3RlY3RlZCIuCisKKy4uIGtlcm5lbC1kb2M6OiBEb2N1bWVudGF0aW9uL2dw dS9yZmMvaTkxNV9nZW1fbG1lbS5oCisgICAgICAgIDpmdW5jdGlvbnM6IGRybV9pOTE1X2dlbV9j cmVhdGVfZXh0CisKK0k5MTVfR0VNX0NSRUFURV9FWFRfTUVNT1JZX1JFR0lPTlMKKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK0ltcGxlbWVudGVkIGFzIGFuIGV4dGVuc2lvbiBm b3IgZ2VtX2NyZWF0ZV9leHQsIHdlIHdvdWxkIG5vdyBhbGxvdyB1c2Vyc3BhY2UgdG8KK29wdGlv bmFsbHkgcHJvdmlkZSBhbiBpbW11dGFibGUgbGlzdCBvZiBwcmVmZXJyZWQgcGxhY2VtZW50cyBh dCBjcmVhdGlvbiB0aW1lLAoraW4gcHJpb3JpdHkgb3JkZXIsIGZvciBhIGdpdmVuIGJ1ZmZlciBv YmplY3QuICBGb3IgdGhlIHBsYWNlbWVudHMgd2UgZXhwZWN0Cit0aGVtIGVhY2ggdG8gdXNlIHRo ZSBjbGFzcy9pbnN0YW5jZSBlbmNvZGluZywgYXMgcGVyIHRoZSBvdXRwdXQgb2YgdGhlIHJlZ2lv bnMKK3F1ZXJ5LiBIYXZpbmcgdGhlIGxpc3QgaW4gcHJpb3JpdHkgb3JkZXIgd2lsbCBiZSB1c2Vm dWwgaW4gdGhlIGZ1dHVyZSB3aGVuCitwbGFjaW5nIGFuIG9iamVjdCwgc2F5IGR1cmluZyBldmlj dGlvbi4KKworLi4ga2VybmVsLWRvYzo6IERvY3VtZW50YXRpb24vZ3B1L3JmYy9pOTE1X2dlbV9s bWVtLmgKKyAgICAgICAgOmZ1bmN0aW9uczogZHJtX2k5MTVfZ2VtX2NyZWF0ZV9leHRfbWVtb3J5 X3JlZ2lvbnMKKworT25lIGZhaXIgY3JpdGljaXNtIGhlcmUgaXMgdGhhdCB0aGlzIHNlZW1zIGEg bGl0dGxlIG92ZXItZW5naW5lZXJlZFsyXS4gSWYgd2UKK2p1c3QgY29uc2lkZXIgREcxIHRoZW4g eWVzLCBhIHNpbXBsZSBnZW1fY3JlYXRlLmZsYWdzIG9yIHNvbWV0aGluZyBpcyB0b3RhbGx5Cith bGwgdGhhdCdzIG5lZWRlZCB0byB0ZWxsIHRoZSBrZXJuZWwgdG8gYWxsb2NhdGUgdGhlIGJ1ZmZl ciBpbiBsb2NhbC1tZW1vcnkgb3IKK3doYXRldmVyLiBIb3dldmVyIGxvb2tpbmcgdG8gdGhlIGZ1 dHVyZSB3ZSBuZWVkIHVBUEkgd2hpY2ggY2FuIGFsc28gc3VwcG9ydAordXBjb21pbmcgWGUgSFAg bXVsdGktdGlsZSBhcmNoaXRlY3R1cmUgaW4gYSBzYW5lIHdheSwgd2hlcmUgdGhlcmUgY2FuIGJl CittdWx0aXBsZSBsb2NhbC1tZW1vcnkgaW5zdGFuY2VzIGZvciBhIGdpdmVuIGRldmljZSwgYW5k IHNvIHVzaW5nIGJvdGggY2xhc3MgYW5kCitpbnN0YW5jZSBpbiBvdXIgdUFQSSB0byBkZXNjcmli ZSByZWdpb25zIGlzIGRlc2lyYWJsZSwgYWx0aG91Z2ggc3BlY2lmaWNhbGx5Citmb3IgREcxIGl0 J3MgdW5pbnRlcmVzdGluZywgc2luY2Ugd2Ugb25seSBoYXZlIGEgc2luZ2xlIGxvY2FsLW1lbW9y eSBpbnN0YW5jZS4KKworRXhpc3RpbmcgdUFQSSBpc3N1ZXMKKz09PT09PT09PT09PT09PT09PT09 CitTb21lIHBvdGVudGlhbCBpc3N1ZXMgd2Ugc3RpbGwgbmVlZCB0byByZXNvbHZlLgorCitJOTE1 IE1NQVAKKy0tLS0tLS0tLQorSW4gaTkxNSB0aGVyZSBhcmUgbXVsdGlwbGUgd2F5cyB0byBNTUFQ IEdFTSBvYmplY3QsIGluY2x1ZGluZyBtYXBwaW5nIHRoZSBzYW1lCitvYmplY3QgdXNpbmcgZGlm ZmVyZW50IG1hcHBpbmcgdHlwZXMoV0MgdnMgV0IpLCBpLmUgbXVsdGlwbGUgYWN0aXZlIG1tYXBz IHBlcgorb2JqZWN0LiBUVE0gZXhwZWN0cyBvbmUgTU1BUCBhdCBtb3N0IGZvciB0aGUgbGlmZXRp bWUgb2YgdGhlIG9iamVjdC4gSWYgaXQKK3R1cm5zIG91dCB0aGF0IHdlIGhhdmUgdG8gYmFja3Bl ZGFsIGhlcmUsIHRoZXJlIG1pZ2h0IGJlIHNvbWUgcG90ZW50aWFsCit1c2Vyc3BhY2UgZmFsbG91 dC4KKworSTkxNSBTRVQvR0VUIENBQ0hJTkcKKy0tLS0tLS0tLS0tLS0tLS0tLS0tCitJbiBpOTE1 IHdlIGhhdmUgc2V0L2dldF9jYWNoaW5nIGlvY3RsLiBUVE0gZG9lc24ndCBsZXQgdXMgdG8gY2hh bmdlIHRoaXMsIGJ1dAorREcxIGRvZXNuJ3Qgc3VwcG9ydCBub24tc25vb3BlZCBwY2llIHRyYW5z YWN0aW9ucywgc28gd2UgY2FuIGp1c3QgYWx3YXlzCithbGxvY2F0ZSBhcyBXQiBmb3Igc21lbS1v bmx5IGJ1ZmZlcnMuICBJZi93aGVuIG91ciBodyBnYWlucyBzdXBwb3J0IGZvcgorbm9uLXNub29w ZWQgcGNpZSB0cmFuc2FjdGlvbnMgdGhlbiB3ZSBtdXN0IGZpeCB0aGlzIG1vZGUgYXQgYWxsb2Nh dGlvbiB0aW1lIGFzCithIG5ldyBHRU0gZXh0ZW5zaW9uLgorCitUaGlzIGlzIHJlbGF0ZWQgdG8g dGhlIG1tYXAgcHJvYmxlbSwgYmVjYXVzZSBpbiBnZW5lcmFsIChtZWFuaW5nLCB3aGVuIHdlJ3Jl Citub3QgcnVubmluZyBvbiBpbnRlbCBjcHVzKSB0aGUgY3B1IG1tYXAgbXVzdCBub3QsIGV2ZXIs IGJlIGluY29uc2lzdGVudCB3aXRoCithbGxvY2F0aW9uIG1vZGUuCisKK1Bvc3NpYmxlIGlkZWEg aXMgdG8gbGV0IHRoZSBrZXJuZWwgcGlja3MgdGhlIG1tYXAgbW9kZSBmb3IgdXNlcnNwYWNlIGZy b20gdGhlCitmb2xsb3dpbmcgdGFibGU6CisKK3NtZW0tb25seTogV0IuIFVzZXJzcGFjZSBkb2Vz IG5vdCBuZWVkIHRvIGNhbGwgY2xmbHVzaC4KKworc21lbStsbWVtOiBXZSBhbGxvY2F0ZSB1bmNh Y2hlZCBtZW1vcnksIGFuZCBnaXZlIHVzZXJzcGFjZSBhIFdDIG1hcHBpbmcKK2ZvciB3aGVuIHRo ZSBidWZmZXIgaXMgaW4gc21lbSwgYW5kIFdDIHdoZW4gaXQncyBpbiBsbWVtLiBHUFUgZG9lcyBz bm9vcGVkCithY2Nlc3MsIHdoaWNoIGlzIGEgYml0IGluZWZmaWNpZW50LgorCitsbWVtIG9ubHk6 IGFsd2F5cyBXQworCitUaGlzIG1lYW5zIG9uIGRpc2NyZXRlIHlvdSBvbmx5IGdldCBhIHNpbmds ZSBtbWFwIG1vZGUsIGFsbCBvdGhlcnMgbXVzdCBiZQorcmVqZWN0ZWQuIFRoYXQncyBwcm9iYWJs eSBnb2luZyB0byBiZSBhIG5ldyBkZWZhdWx0IG1vZGUgb3Igc29tZXRoaW5nIGxpa2UKK3RoYXQu CisKK0xpbmtzCis9PT09PQorWzFdIGh0dHBzOi8vcGF0Y2h3b3JrLmZyZWVkZXNrdG9wLm9yZy9z ZXJpZXMvODY3OTgvCisKK1syXSBodHRwczovL2dpdGxhYi5mcmVlZGVza3RvcC5vcmcvbWVzYS9t ZXNhLy0vbWVyZ2VfcmVxdWVzdHMvNTU5OSNub3RlXzU1Mzc5MQpkaWZmIC0tZ2l0IGEvRG9jdW1l bnRhdGlvbi9ncHUvcmZjL2luZGV4LnJzdCBiL0RvY3VtZW50YXRpb24vZ3B1L3JmYy9pbmRleC5y c3QKaW5kZXggYTg2MjFmN2RhYjhiLi4wNTY3MDQ0MmNhMWIgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50 YXRpb24vZ3B1L3JmYy9pbmRleC5yc3QKKysrIGIvRG9jdW1lbnRhdGlvbi9ncHUvcmZjL2luZGV4 LnJzdApAQCAtMTUsMyArMTUsNyBAQCBob3N0IHN1Y2ggZG9jdW1lbnRhdGlvbjoKIAogKiBPbmNl IHRoZSBjb2RlIGhhcyBsYW5kZWQgbW92ZSBhbGwgdGhlIGRvY3VtZW50YXRpb24gdG8gdGhlIHJp Z2h0IHBsYWNlcyBpbgogICB0aGUgbWFpbiBjb3JlLCBoZWxwZXIgb3IgZHJpdmVyIHNlY3Rpb25z LgorCisuLiB0b2N0cmVlOjoKKworICAgIGk5MTVfZ2VtX2xtZW0ucnN0Ci0tIAoyLjI2LjMKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBt YWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo= 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,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 895CAC43460 for ; Mon, 26 Apr 2021 09:42:57 +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 3C8AF61077 for ; Mon, 26 Apr 2021 09:42:57 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 3C8AF61077 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 8583C89F8E; Mon, 26 Apr 2021 09:42:53 +0000 (UTC) Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4461489D7B; Mon, 26 Apr 2021 09:42:52 +0000 (UTC) IronPort-SDR: Q/M5OsJMXHMLYMwtKL/mlID5YbSlyzn59EAutdqBbcyXmEjrLhvfANh/JyCzHSoaE0yi2K/0VM Bf2nQIkSHhYQ== X-IronPort-AV: E=McAfee;i="6200,9189,9965"; a="195861013" X-IronPort-AV: E=Sophos;i="5.82,252,1613462400"; d="scan'208";a="195861013" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 26 Apr 2021 02:42:50 -0700 IronPort-SDR: Gt5NeInwT0YPlGj69f1XHwIuRjFsh/Cas/wia6Y43TfKeuH2GfZR27lTYj0T9nAE8DXEDvsrXh upOPxBDdrGIA== X-IronPort-AV: E=Sophos;i="5.82,252,1613462400"; d="scan'208";a="429334081" Received: from rgunnin1-mobl.ger.corp.intel.com (HELO mwauld-desk1.ger.corp.intel.com) ([10.252.12.201]) by orsmga008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 26 Apr 2021 02:42:46 -0700 From: Matthew Auld To: intel-gfx@lists.freedesktop.org Date: Mon, 26 Apr 2021 10:38:53 +0100 Message-Id: <20210426093901.28937-1-matthew.auld@intel.com> X-Mailer: git-send-email 2.26.3 MIME-Version: 1.0 Subject: [Intel-gfx] [PATCH 1/9] drm/doc/rfc: i915 DG1 uAPI 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: Lionel Landwerlin , =?UTF-8?q?Thomas=20Hellstr=C3=B6m?= , Dave Airlie , dri-devel@lists.freedesktop.org, Daniel Vetter , Kenneth Graunke , mesa-dev@lists.freedesktop.org, Daniel Vetter Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" QWRkIGFuIGVudHJ5IGZvciB0aGUgbmV3IHVBUEkgbmVlZGVkIGZvciBERzEuIEFsc28gYWRkIHRo ZSBvdmVyYWxsCnVwc3RyZWFtIHBsYW4sIGluY2x1ZGluZyBzb21lIG5vdGVzIGZvciB0aGUgVFRN IGNvbnZlcnNpb24uCgp2MihEYW5pZWwpOgogIC0gaW5jbHVkZSB0aGUgb3ZlcmFsbCB1cHN0cmVh bWluZyBwbGFuCiAgLSBhZGQgYSBub3RlIGZvciBtbWFwLCB0aGVyZSBhcmUgZGlmZmVyZW5jZXMg aGVyZSBmb3IgVFRNIHZzIGk5MTUKICAtIGJ1bmNoIG9mIG90aGVyIHN1Z2dlc3Rpb25zIGZyb20g RGFuaWVsCnYzOgogKERhbmllbCkKICAtIGFkZCBhIG5vdGUgZm9yIHNldC9nZXQgY2FjaGluZyBz dHVmZgogIC0gYWRkIHNvbWUgbW9yZSBkb2NzIGZvciBleGlzdGluZyBxdWVyeSBhbmQgZXh0ZW5z aW9ucyBzdHVmZgogIC0gYWRkIGFuIGFjdHVhbCBjb2RlIGV4YW1wbGUgZm9yIHJlZ2lvbnMgcXVl cnkKICAtIGJ1bmNoIG9mIG90aGVyIHN0dWZmCiAoSmFzb24pCiAgLSB1QVBJIGNoYW5nZSghKToK CS0gdHJ5IGEgc2ltcGxlciBkZXNpZ24gd2l0aCB0aGUgcGxhY2VtZW50cyBleHRlbnNpb24KCS0g cmF0aGVyIHRoYW4gaGF2ZSBhIGdlbmVyaWMgc2V0cGFyYW0gd2hpY2ggY2FuIGNvdmVyIG11bHRp cGxlCgkgIHVzZSBjYXNlcywgaGF2ZSBlYWNoIGV4dGVuc2lvbiBiZSByZXNwb25zaWJsZSBmb3Ig b25lIHRoaW5nCgkgIG9ubHkKdjQ6CiAoRGFuaWVsKQogIC0gYWRkIHNvbWUgbW9yZSBub3RlcyBm b3IgdHRtIGNvbnZlcnNpb24KICAtIGJ1bmNoIG9mIG90aGVyIHN0dWZmCiAoSmFzb24pCiAgLSB1 QVBJIGNoYW5nZSghKToKCS0gZHJvcCBhbGwgdGhlIGV4dHJhIHJzdmQgbWVtYmVycyBmb3IgdGhl IHJlZ2lvbl9xdWVyeSBhbmQKCSAgcmVnaW9uX2luZm8sIGp1c3Qga2VlcCB0aGUgYmFyZSBtaW5p bXVtIG5lZWRlZCBmb3IgcGFkZGluZwoKU2lnbmVkLW9mZi1ieTogTWF0dGhldyBBdWxkIDxtYXR0 aGV3LmF1bGRAaW50ZWwuY29tPgpDYzogSm9vbmFzIExhaHRpbmVuIDxqb29uYXMubGFodGluZW5A bGludXguaW50ZWwuY29tPgpDYzogVGhvbWFzIEhlbGxzdHLDtm0gPHRob21hcy5oZWxsc3Ryb21A bGludXguaW50ZWwuY29tPgpDYzogRGFuaWVsZSBDZXJhb2xvIFNwdXJpbyA8ZGFuaWVsZS5jZXJh b2xvc3B1cmlvQGludGVsLmNvbT4KQ2M6IExpb25lbCBMYW5kd2VybGluIDxsaW9uZWwuZy5sYW5k d2VybGluQGxpbnV4LmludGVsLmNvbT4KQ2M6IEpvbiBCbG9vbWZpZWxkIDxqb24uYmxvb21maWVs ZEBpbnRlbC5jb20+CkNjOiBKb3JkYW4gSnVzdGVuIDxqb3JkYW4ubC5qdXN0ZW5AaW50ZWwuY29t PgpDYzogRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBpbnRlbC5jb20+CkNjOiBLZW5uZXRo IEdyYXVua2UgPGtlbm5ldGhAd2hpdGVjYXBlLm9yZz4KQ2M6IEphc29uIEVrc3RyYW5kIDxqYXNv bkBqbGVrc3RyYW5kLm5ldD4KQ2M6IERhdmUgQWlybGllIDxhaXJsaWVkQGdtYWlsLmNvbT4KQ2M6 IGRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKQ2M6IG1lc2EtZGV2QGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpBY2tlZC1ieTogRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBmZndsbC5j aD4KQWNrZWQtYnk6IERhdmUgQWlybGllIDxhaXJsaWVkQHJlZGhhdC5jb20+Ci0tLQogRG9jdW1l bnRhdGlvbi9ncHUvcmZjL2k5MTVfZ2VtX2xtZW0uaCAgIHwgMjEyICsrKysrKysrKysrKysrKysr KysrKysrKwogRG9jdW1lbnRhdGlvbi9ncHUvcmZjL2k5MTVfZ2VtX2xtZW0ucnN0IHwgMTMwICsr KysrKysrKysrKysrKwogRG9jdW1lbnRhdGlvbi9ncHUvcmZjL2luZGV4LnJzdCAgICAgICAgIHwg ICA0ICsKIDMgZmlsZXMgY2hhbmdlZCwgMzQ2IGluc2VydGlvbnMoKykKIGNyZWF0ZSBtb2RlIDEw MDY0NCBEb2N1bWVudGF0aW9uL2dwdS9yZmMvaTkxNV9nZW1fbG1lbS5oCiBjcmVhdGUgbW9kZSAx MDA2NDQgRG9jdW1lbnRhdGlvbi9ncHUvcmZjL2k5MTVfZ2VtX2xtZW0ucnN0CgpkaWZmIC0tZ2l0 IGEvRG9jdW1lbnRhdGlvbi9ncHUvcmZjL2k5MTVfZ2VtX2xtZW0uaCBiL0RvY3VtZW50YXRpb24v Z3B1L3JmYy9pOTE1X2dlbV9sbWVtLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw MDAwMDAwLi43ZWQ1OWI2MjAyZDUKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2N1bWVudGF0aW9uL2dw dS9yZmMvaTkxNV9nZW1fbG1lbS5oCkBAIC0wLDAgKzEsMjEyIEBACisvKioKKyAqIGVudW0gZHJt X2k5MTVfZ2VtX21lbW9yeV9jbGFzcyAtIFN1cHBvcnRlZCBtZW1vcnkgY2xhc3NlcworICovCitl bnVtIGRybV9pOTE1X2dlbV9tZW1vcnlfY2xhc3MgeworCS8qKiBASTkxNV9NRU1PUllfQ0xBU1Nf U1lTVEVNOiBTeXN0ZW0gbWVtb3J5ICovCisJSTkxNV9NRU1PUllfQ0xBU1NfU1lTVEVNID0gMCwK KwkvKiogQEk5MTVfTUVNT1JZX0NMQVNTX0RFVklDRTogRGV2aWNlIGxvY2FsLW1lbW9yeSAqLwor CUk5MTVfTUVNT1JZX0NMQVNTX0RFVklDRSwKK307CisKKy8qKgorICogc3RydWN0IGRybV9pOTE1 X2dlbV9tZW1vcnlfY2xhc3NfaW5zdGFuY2UgLSBJZGVudGlmeSBwYXJ0aWN1bGFyIG1lbW9yeSBy ZWdpb24KKyAqLworc3RydWN0IGRybV9pOTE1X2dlbV9tZW1vcnlfY2xhc3NfaW5zdGFuY2Ugewor CS8qKiBAbWVtb3J5X2NsYXNzOiBTZWUgZW51bSBkcm1faTkxNV9nZW1fbWVtb3J5X2NsYXNzICov CisJX191MTYgbWVtb3J5X2NsYXNzOworCisJLyoqIEBtZW1vcnlfaW5zdGFuY2U6IFdoaWNoIGlu c3RhbmNlICovCisJX191MTYgbWVtb3J5X2luc3RhbmNlOworfTsKKworLyoqCisgKiBzdHJ1Y3Qg ZHJtX2k5MTVfbWVtb3J5X3JlZ2lvbl9pbmZvIC0gRGVzY3JpYmVzIG9uZSByZWdpb24gYXMga25v d24gdG8gdGhlCisgKiBkcml2ZXIuCisgKgorICogTm90ZSB0aGF0IHdlIHJlc2VydmUgc29tZSBz dHVmZiBoZXJlIGZvciBwb3RlbnRpYWwgZnV0dXJlIHdvcmsuIEFzIGFuIGV4YW1wbGUKKyAqIHdl IG1pZ2h0IHdhbnQgZXhwb3NlIHRoZSBjYXBhYmlsaXRpZXMoc2VlIEBjYXBzKSBmb3IgYSBnaXZl biByZWdpb24sIHdoaWNoCisgKiBjb3VsZCBpbmNsdWRlIHRoaW5ncyBsaWtlIGlmIHRoZSByZWdp b24gaXMgQ1BVIG1hcHBhYmxlL2FjY2Vzc2libGUsIHdoYXQgYXJlCisgKiB0aGUgc3VwcG9ydGVk IG1hcHBpbmcgdHlwZXMgZXRjLgorICoKKyAqIE5vdGUgdGhpcyBpcyB1c2luZyBib3RoIHN0cnVj dCBkcm1faTkxNV9xdWVyeV9pdGVtIGFuZCBzdHJ1Y3QgZHJtX2k5MTVfcXVlcnkuCisgKiBGb3Ig dGhpcyBuZXcgcXVlcnkgd2UgYXJlIGFkZGluZyB0aGUgbmV3IHF1ZXJ5IGlkIERSTV9JOTE1X1FV RVJZX01FTU9SWV9SRUdJT05TCisgKiBhdCAmZHJtX2k5MTVfcXVlcnlfaXRlbS5xdWVyeV9pZC4K KyAqLworc3RydWN0IGRybV9pOTE1X21lbW9yeV9yZWdpb25faW5mbyB7CisJLyoqIEByZWdpb246 IFRoZSBjbGFzczppbnN0YW5jZSBwYWlyIGVuY29kaW5nICovCisJc3RydWN0IGRybV9pOTE1X2dl bV9tZW1vcnlfY2xhc3NfaW5zdGFuY2UgcmVnaW9uOworCisJLyoqIEBwYWQ6IE1CWiAqLworCV9f dTMyIHBhZDsKKworCS8qKiBAY2FwczogTUJaICovCisJX191NjQgY2FwczsKKworCS8qKiBAcHJv YmVkX3NpemU6IE1lbW9yeSBwcm9iZWQgYnkgdGhlIGRyaXZlciAoLTEgPSB1bmtub3duKSAqLwor CV9fdTY0IHByb2JlZF9zaXplOworCisJLyoqIEB1bmFsbG9jYXRlZF9zaXplOiBFc3RpbWF0ZSBv ZiBtZW1vcnkgcmVtYWluaW5nICgtMSA9IHVua25vd24pICovCisJX191NjQgdW5hbGxvY2F0ZWRf c2l6ZTsKK307CisKKy8qKgorICogc3RydWN0IGRybV9pOTE1X3F1ZXJ5X21lbW9yeV9yZWdpb25z CisgKgorICogVGhlIHJlZ2lvbiBpbmZvIHF1ZXJ5IGVudW1lcmF0ZXMgYWxsIHJlZ2lvbnMga25v d24gdG8gdGhlIGRyaXZlciBieSBmaWxsaW5nCisgKiBpbiBhbiBhcnJheSBvZiBzdHJ1Y3QgZHJt X2k5MTVfbWVtb3J5X3JlZ2lvbl9pbmZvIHN0cnVjdHVyZXMuCisgKgorICogRXhhbXBsZSBmb3Ig Z2V0dGluZyB0aGUgbGlzdCBvZiBzdXBwb3J0ZWQgcmVnaW9uczoKKyAqCisgKiAuLiBjb2RlLWJs b2NrOjogQworICoKKyAqCXN0cnVjdCBkcm1faTkxNV9xdWVyeV9tZW1vcnlfcmVnaW9ucyAqaW5m bzsKKyAqCXN0cnVjdCBkcm1faTkxNV9xdWVyeV9pdGVtIGl0ZW0gPSB7CisgKgkJLnF1ZXJ5X2lk ID0gRFJNX0k5MTVfUVVFUllfTUVNT1JZX1JFR0lPTlM7CisgKgl9OworICoJc3RydWN0IGRybV9p OTE1X3F1ZXJ5IHF1ZXJ5ID0geworICoJCS5udW1faXRlbXMgPSAxLAorICoJCS5pdGVtc19wdHIg PSAodWludHB0cl90KSZpdGVtLAorICoJfTsKKyAqCWludCBlcnIsIGk7CisgKgorICoJLy8gRmly c3QgcXVlcnkgdGhlIHNpemUgb2YgdGhlIGJsb2Igd2UgbmVlZCwgdGhpcyBuZWVkcyB0byBiZSBs YXJnZQorICoJLy8gZW5vdWdoIHRvIGhvbGQgb3VyIGFycmF5IG9mIHJlZ2lvbnMuIFRoZSBrZXJu ZWwgd2lsbCBmaWxsIG91dCB0aGUKKyAqCS8vIGl0ZW0ubGVuZ3RoIGZvciB1cywgd2hpY2ggaXMg dGhlIG51bWJlciBvZiBieXRlcyB3ZSBuZWVkLgorICoJZXJyID0gaW9jdGwoZmQsIERSTV9JT0NU TF9JOTE1X1FVRVJZLCAmcXVlcnkpOworICoJaWYgKGVycikgLi4uCisgKgorICoJaW5mbyA9IGNh bGxvYygxLCBpdGVtLmxlbmd0aCk7CisgKgkvLyBOb3cgdGhhdCB3ZSBhbGxvY2F0ZWQgdGhlIHJl cXVpcmVkIG51bWJlciBvZiBieXRlcywgd2UgY2FsbCB0aGUgaW9jdGwKKyAqCS8vIGFnYWluLCB0 aGlzIHRpbWUgd2l0aCB0aGUgZGF0YV9wdHIgcG9pbnRpbmcgdG8gb3VyIG5ld2x5IGFsbG9jYXRl ZAorICoJLy8gYmxvYiwgd2hpY2ggdGhlIGtlcm5lbCBjYW4gdGhlbiBwb3B1bGF0ZSB3aXRoIHRo ZSBhbGwgdGhlIHJlZ2lvbiBpbmZvLgorICoJaXRlbS5kYXRhX3B0ciA9ICh1aW50cHRyX3QpJmlu Zm8sCisgKgorICoJZXJyID0gaW9jdGwoZmQsIERSTV9JT0NUTF9JOTE1X1FVRVJZLCAmcXVlcnkp OworICoJaWYgKGVycikgLi4uCisgKgorICoJLy8gV2UgY2FuIG5vdyBhY2Nlc3MgZWFjaCByZWdp b24gaW4gdGhlIGFycmF5CisgKglmb3IgKGkgPSAwOyBpIDwgaW5mby0+bnVtX3JlZ2lvbnM7IGkr KykgeworICoJCXN0cnVjdCBkcm1faTkxNV9tZW1vcnlfcmVnaW9uX2luZm8gbXIgPSBpbmZvLT5y ZWdpb25zW2ldOworICoJCXUxNiBjbGFzcyA9IG1yLnJlZ2lvbi5jbGFzczsKKyAqCQl1MTYgaW5z dGFuY2UgPSBtci5yZWdpb24uaW5zdGFuY2U7CisgKgorICoJCS4uLi4KKyAqCX0KKyAqCisgKglm cmVlKGluZm8pOworICovCitzdHJ1Y3QgZHJtX2k5MTVfcXVlcnlfbWVtb3J5X3JlZ2lvbnMgewor CS8qKiBAbnVtX3JlZ2lvbnM6IE51bWJlciBvZiBzdXBwb3J0ZWQgcmVnaW9ucyAqLworCV9fdTMy IG51bV9yZWdpb25zOworCisJLyoqIEBwYWQ6IE1CWiAqLworCV9fdTMyIHBhZDsKKworCS8qKiBA cmVnaW9uczogSW5mbyBhYm91dCBlYWNoIHN1cHBvcnRlZCByZWdpb24gKi8KKwlzdHJ1Y3QgZHJt X2k5MTVfbWVtb3J5X3JlZ2lvbl9pbmZvIHJlZ2lvbnNbXTsKK307CisKKyNkZWZpbmUgRFJNX0k5 MTVfR0VNX0NSRUFURV9FWFQJCTB4ZGVhZGJlYWYKKyNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VN X0NSRUFURV9FWFQJRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9DUkVB VEVfRVhULCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2NyZWF0ZV9leHQpCisKKy8qKgorICogc3RydWN0 IGRybV9pOTE1X2dlbV9jcmVhdGVfZXh0IC0gRXhpc3RpbmcgZ2VtX2NyZWF0ZSBiZWhhdmlvdXIs IHdpdGggYWRkZWQKKyAqIGV4dGVuc2lvbiBzdXBwb3J0IHVzaW5nIHN0cnVjdCBpOTE1X3VzZXJf ZXh0ZW5zaW9uLgorICoKKyAqIE5vdGUgdGhhdCBpbiB0aGUgZnV0dXJlIHdlIHdhbnQgdG8gaGF2 ZSBvdXIgYnVmZmVyIGZsYWdzIGhlcmUsIGF0IGxlYXN0IGZvcgorICogdGhlIHN0dWZmIHRoYXQg aXMgaW1tdXRhYmxlLiBQcmV2aW91c2x5IHdlIHdvdWxkIGhhdmUgdHdvIGlvY3Rscywgb25lIHRv CisgKiBjcmVhdGUgdGhlIG9iamVjdCB3aXRoIGdlbV9jcmVhdGUsIGFuZCBhbm90aGVyIHRvIGFw cGx5IHZhcmlvdXMgcGFyYW1ldGVycywKKyAqIGhvd2V2ZXIgdGhpcyBjcmVhdGVzIHNvbWUgYW1i aWd1aXR5IGZvciB0aGUgcGFyYW1zIHdoaWNoIGFyZSBjb25zaWRlcmVkCisgKiBpbW11dGFibGUu IEFsc28gaW4gZ2VuZXJhbCB3ZSdyZSBwaGFzaW5nIG91dCB0aGUgdmFyaW91cyBTRVQvR0VUIGlv Y3Rscy4KKyAqLworc3RydWN0IGRybV9pOTE1X2dlbV9jcmVhdGVfZXh0IHsKKwkvKioKKwkgKiBA c2l6ZTogUmVxdWVzdGVkIHNpemUgZm9yIHRoZSBvYmplY3QuCisJICoKKwkgKiBUaGUgKHBhZ2Ut YWxpZ25lZCkgYWxsb2NhdGVkIHNpemUgZm9yIHRoZSBvYmplY3Qgd2lsbCBiZSByZXR1cm5lZC4K KwkgKgorCSAqIE5vdGUgdGhhdCBmb3Igc29tZSBkZXZpY2VzIHdlIGhhdmUgbWlnaHQgaGF2ZSBm dXJ0aGVyIG1pbmltdW0KKwkgKiBwYWdlLXNpemUgcmVzdHJpY3Rpb25zKGxhcmdlciB0aGFuIDRL KSwgbGlrZSBmb3IgZGV2aWNlIGxvY2FsLW1lbW9yeS4KKwkgKiBIb3dldmVyIGluIGdlbmVyYWwg dGhlIGZpbmFsIHNpemUgaGVyZSBzaG91bGQgYWx3YXlzIHJlZmxlY3QgYW55CisJICogcm91bmRp bmcgdXAsIGlmIGZvciBleGFtcGxlIHVzaW5nIHRoZSBJOTE1X0dFTV9DUkVBVEVfRVhUX01FTU9S WV9SRUdJT05TCisJICogZXh0ZW5zaW9uIHRvIHBsYWNlIHRoZSBvYmplY3QgaW4gZGV2aWNlIGxv Y2FsLW1lbW9yeS4KKwkgKi8KKwlfX3U2NCBzaXplOworCS8qKgorCSAqIEBoYW5kbGU6IFJldHVy bmVkIGhhbmRsZSBmb3IgdGhlIG9iamVjdC4KKwkgKgorCSAqIE9iamVjdCBoYW5kbGVzIGFyZSBu b256ZXJvLgorCSAqLworCV9fdTMyIGhhbmRsZTsKKwkvKiogQGZsYWdzOiBNQlogKi8KKwlfX3Uz MiBmbGFnczsKKwkvKioKKwkgKiBAZXh0ZW5zaW9uczogVGhlIGNoYWluIG9mIGV4dGVuc2lvbnMg dG8gYXBwbHkgdG8gdGhpcyBvYmplY3QuCisJICoKKwkgKiBUaGlzIHdpbGwgYmUgdXNlZnVsIGlu IHRoZSBmdXR1cmUgd2hlbiB3ZSBuZWVkIHRvIHN1cHBvcnQgc2V2ZXJhbAorCSAqIGRpZmZlcmVu dCBleHRlbnNpb25zLCBhbmQgd2UgbmVlZCB0byBhcHBseSBtb3JlIHRoYW4gb25lIHdoZW4KKwkg KiBjcmVhdGluZyB0aGUgb2JqZWN0LiBTZWUgc3RydWN0IGk5MTVfdXNlcl9leHRlbnNpb24uCisJ ICoKKwkgKiBJZiB3ZSBkb24ndCBzdXBwbHkgYW55IGV4dGVuc2lvbnMgdGhlbiB3ZSBnZXQgdGhl IHNhbWUgb2xkIGdlbV9jcmVhdGUKKwkgKiBiZWhhdmlvdXIuCisJICoKKwkgKiBGb3IgSTkxNV9H RU1fQ1JFQVRFX0VYVF9NRU1PUllfUkVHSU9OUyB1c2FnZSBzZWUKKwkgKiBzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX2NyZWF0ZV9leHRfbWVtb3J5X3JlZ2lvbnMuCisJICovCisjZGVmaW5lIEk5MTVfR0VN X0NSRUFURV9FWFRfTUVNT1JZX1JFR0lPTlMgMAorCV9fdTY0IGV4dGVuc2lvbnM7Cit9OworCisv KioKKyAqIHN0cnVjdCBkcm1faTkxNV9nZW1fY3JlYXRlX2V4dF9tZW1vcnlfcmVnaW9ucyAtIFRo ZQorICogSTkxNV9HRU1fQ1JFQVRFX0VYVF9NRU1PUllfUkVHSU9OUyBleHRlbnNpb24uCisgKgor ICogU2V0IHRoZSBvYmplY3Qgd2l0aCB0aGUgZGVzaXJlZCBzZXQgb2YgcGxhY2VtZW50cy9yZWdp b25zIGluIHByaW9yaXR5CisgKiBvcmRlci4gRWFjaCBlbnRyeSBtdXN0IGJlIHVuaXF1ZSBhbmQg c3VwcG9ydGVkIGJ5IHRoZSBkZXZpY2UuCisgKgorICogVGhpcyBpcyBwcm92aWRlZCBhcyBhbiBh cnJheSBvZiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX21lbW9yeV9jbGFzc19pbnN0YW5jZSwgb3IKKyAq IGFuIGVxdWl2YWxlbnQgbGF5b3V0IG9mIGNsYXNzOmluc3RhbmNlIHBhaXIgZW5jb2RpbmdzLiBT ZWUgc3RydWN0CisgKiBkcm1faTkxNV9xdWVyeV9tZW1vcnlfcmVnaW9ucyBhbmQgRFJNX0k5MTVf UVVFUllfTUVNT1JZX1JFR0lPTlMgZm9yIGhvdyB0bworICogcXVlcnkgdGhlIHN1cHBvcnRlZCBy ZWdpb25zIGZvciBhIGRldmljZS4KKyAqCisgKiBBcyBhbiBleGFtcGxlLCBvbiBkaXNjcmV0ZSBk ZXZpY2VzLCBpZiB3ZSB3aXNoIHRvIHNldCB0aGUgcGxhY2VtZW50IGFzCisgKiBkZXZpY2UgbG9j YWwtbWVtb3J5IHdlIGNhbiBkbyBzb21ldGhpbmcgbGlrZToKKyAqCisgKiAuLiBjb2RlLWJsb2Nr OjogQworICoKKyAqCXN0cnVjdCBkcm1faTkxNV9nZW1fbWVtb3J5X2NsYXNzX2luc3RhbmNlIHJl Z2lvbl9sbWVtID0geworICogICAgICAgICAgICAgIC5tZW1vcnlfY2xhc3MgPSBJOTE1X01FTU9S WV9DTEFTU19ERVZJQ0UsCisgKiAgICAgICAgICAgICAgLm1lbW9yeV9pbnN0YW5jZSA9IDAsCisg KiAgICAgIH07CisgKiAgICAgIHN0cnVjdCBkcm1faTkxNV9nZW1fY3JlYXRlX2V4dF9tZW1vcnlf cmVnaW9ucyByZWdpb25zID0geworICogICAgICAgICAgICAgIC5iYXNlID0geyAubmFtZSA9IEk5 MTVfR0VNX0NSRUFURV9FWFRfTUVNT1JZX1JFR0lPTlMgfSwKKyAqICAgICAgICAgICAgICAucmVn aW9ucyA9ICh1aW50cHRyX3QpJnJlZ2lvbl9sbWVtLAorICogICAgICAgICAgICAgIC5udW1fcmVn aW9ucyA9IDEsCisgKiAgICAgIH07CisgKiAgICAgIHN0cnVjdCBkcm1faTkxNV9nZW1fY3JlYXRl X2V4dCBjcmVhdGVfZXh0ID0geworICogICAgICAgICAgICAgIC5zaXplID0gMTYgKiBQQUdFX1NJ WkUsCisgKiAgICAgICAgICAgICAgLmV4dGVuc2lvbnMgPSAodWludHB0cl90KSZyZWdpb25zLAor ICogICAgICB9OworICoKKyAqICAgICAgaW50IGVyciA9IGlvY3RsKGZkLCBEUk1fSU9DVExfSTkx NV9HRU1fQ1JFQVRFX0VYVCwgJmNyZWF0ZV9leHQpOworICogICAgICBpZiAoZXJyKSAuLi4KKyAq CisgKiBBdCB3aGljaCBwb2ludCB3ZSBnZXQgdGhlIG9iamVjdCBoYW5kbGUgaW4gJmRybV9pOTE1 X2dlbV9jcmVhdGVfZXh0LmhhbmRsZSwKKyAqIGFsb25nIHdpdGggdGhlIGZpbmFsIG9iamVjdCBz aXplIGluICZkcm1faTkxNV9nZW1fY3JlYXRlX2V4dC5zaXplLCB3aGljaAorICogc2hvdWxkIGFj Y291bnQgZm9yIGFueSByb3VuZGluZyB1cCwgaWYgcmVxdWlyZWQuCisgKi8KK3N0cnVjdCBkcm1f aTkxNV9nZW1fY3JlYXRlX2V4dF9tZW1vcnlfcmVnaW9ucyB7CisJLyoqIEBiYXNlOiBFeHRlbnNp b24gbGluay4gU2VlIHN0cnVjdCBpOTE1X3VzZXJfZXh0ZW5zaW9uLiAqLworCXN0cnVjdCBpOTE1 X3VzZXJfZXh0ZW5zaW9uIGJhc2U7CisKKwkvKiogQHBhZDogTUJaICovCisJX191MzIgcGFkOwor CS8qKiBAbnVtX3JlZ2lvbnM6IE51bWJlciBvZiBlbGVtZW50cyBpbiB0aGUgQHJlZ2lvbnMgYXJy YXkuICovCisJX191MzIgbnVtX3JlZ2lvbnM7CisJLyoqCisJICogQHJlZ2lvbnM6IFRoZSByZWdp b25zL3BsYWNlbWVudHMgYXJyYXkuCisJICoKKwkgKiBBbiBhcnJheSBvZiBzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX21lbW9yeV9jbGFzc19pbnN0YW5jZS4KKwkgKi8KKwlfX3U2NCByZWdpb25zOworfTsK ZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ3B1L3JmYy9pOTE1X2dlbV9sbWVtLnJzdCBiL0Rv Y3VtZW50YXRpb24vZ3B1L3JmYy9pOTE1X2dlbV9sbWVtLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAwMDAwMDAwMDAwMDAuLjQ2MmYxZWZkOTAwMwotLS0gL2Rldi9udWxsCisrKyBiL0Rv Y3VtZW50YXRpb24vZ3B1L3JmYy9pOTE1X2dlbV9sbWVtLnJzdApAQCAtMCwwICsxLDEzMCBAQAor PT09PT09PT09PT09PT09PT09PT09PT09PQorSTkxNSBERzEvTE1FTSBSRkMgU2VjdGlvbgorPT09 PT09PT09PT09PT09PT09PT09PT09PQorCitVcHN0cmVhbSBwbGFuCis9PT09PT09PT09PT09CitG b3IgdXBzdHJlYW0gdGhlIG92ZXJhbGwgcGxhbiBmb3IgbGFuZGluZyBhbGwgdGhlIERHMSBzdHVm ZiBhbmQgdHVybmluZyBpdCBmb3IKK3JlYWwsIHdpdGggYWxsIHRoZSB1QVBJIGJpdHMgaXM6CisK KyogTWVyZ2UgYmFzaWMgSFcgZW5hYmxpbmcgb2YgREcxKHN0aWxsIHdpdGhvdXQgcGNpaWQpCisq IE1lcmdlIHRoZSB1QVBJIGJpdHMgYmVoaW5kIHNwZWNpYWwgQ09ORklHX0JST0tFTihvciBzbykg ZmxhZworICAgICAgICAqIEF0IHRoaXMgcG9pbnQgd2UgY2FuIHN0aWxsIG1ha2UgY2hhbmdlcywg YnV0IGltcG9ydGFudGx5IHRoaXMgbGV0cyB1cworICAgICAgICAgIHN0YXJ0IHJ1bm5pbmcgSUdU cyB3aGljaCBjYW4gdXRpbGl6ZSBsb2NhbC1tZW1vcnkgaW4gQ0kKKyogQ29udmVydCBvdmVyIHRv IFRUTSwgbWFrZSBzdXJlIGl0IGFsbCBrZWVwcyB3b3JraW5nLiBTb21lIG9mIHRoZSB3b3JrIGl0 ZW1zOgorICAgICAgICAqIFRUTSBzaHJpbmtlciBmb3IgZGlzY3JldGUKKyAgICAgICAgKiBkbWFf cmVzdl9sb2NraXRlbSBmb3IgZnVsbCBkbWFfcmVzdl9sb2NrLCBpLmUgbm90IGp1c3QgdHJ5bG9j aworICAgICAgICAqIFVzZSBUVE0gQ1BVIHBhZ2VmYXVsdCBoYW5kbGVyCisgICAgICAgICogUm91 dGUgc2htZW0gYmFja2VuZCBvdmVyIHRvIFRUTSBTWVNURU0gZm9yIGRpc2NyZXRlCisgICAgICAg ICogVFRNIHB1cmdlYWJsZSBvYmplY3Qgc3VwcG9ydAorICAgICAgICAqIE1vdmUgaTkxNSBidWRk eSBhbGxvY2F0b3Igb3ZlciB0byBUVE0KKyAgICAgICAgKiBNTUFQIGlvY3RsIG1vZGUoc2VlIGBJ OTE1IE1NQVBgXykKKyAgICAgICAgKiBTRVQvR0VUIGlvY3RsIGNhY2hpbmcoc2VlIGBJOTE1IFNF VC9HRVQgQ0FDSElOR2BfKQorKiBBZGQgcGNpaWQgZm9yIERHMSBhbmQgdHVybiBvbiB1QVBJIGZv ciByZWFsCisKK05ldyBvYmplY3QgcGxhY2VtZW50IGFuZCByZWdpb24gcXVlcnkgdUFQSQorPT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitTdGFydGluZyBmcm9tIERH MSB3ZSBuZWVkIHRvIGdpdmUgdXNlcnNwYWNlIHRoZSBhYmlsaXR5IHRvIGFsbG9jYXRlIGJ1ZmZl cnMgZnJvbQorZGV2aWNlIGxvY2FsLW1lbW9yeS4gQ3VycmVudGx5IHRoZSBkcml2ZXIgc3VwcG9y dHMgZ2VtX2NyZWF0ZSwgd2hpY2ggY2FuIHBsYWNlCitidWZmZXJzIGluIHN5c3RlbSBtZW1vcnkg dmlhIHNobWVtLCBhbmQgdGhlIHVzdWFsIGFzc29ydG1lbnQgb2Ygb3RoZXIKK2ludGVyZmFjZXMs IGxpa2UgZHVtYiBidWZmZXJzIGFuZCB1c2VycHRyLgorCitUbyBzdXBwb3J0IHRoaXMgbmV3IGNh cGFiaWxpdHksIHdoaWxlIGFsc28gcHJvdmlkaW5nIGEgdUFQSSB3aGljaCB3aWxsIHdvcmsKK2Jl eW9uZCBqdXN0IERHMSwgd2UgcHJvcG9zZSB0byBvZmZlciB0aHJlZSBuZXcgYml0cyBvZiB1QVBJ OgorCitEUk1fSTkxNV9RVUVSWV9NRU1PUllfUkVHSU9OUworLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0KK05ldyBxdWVyeSBJRCB3aGljaCBhbGxvd3MgdXNlcnNwYWNlIHRvIGRpc2NvdmVy IHRoZSBsaXN0IG9mIHN1cHBvcnRlZCBtZW1vcnkKK3JlZ2lvbnMobGlrZSBzeXN0ZW0tbWVtb3J5 IGFuZCBsb2NhbC1tZW1vcnkpIGZvciBhIGdpdmVuIGRldmljZS4gV2UgaWRlbnRpZnkKK2VhY2gg cmVnaW9uIHdpdGggYSBjbGFzcyBhbmQgaW5zdGFuY2UgcGFpciwgd2hpY2ggc2hvdWxkIGJlIHVu aXF1ZS4gVGhlIGNsYXNzCitoZXJlIHdvdWxkIGJlIERFVklDRSBvciBTWVNURU0sIGFuZCB0aGUg aW5zdGFuY2Ugd291bGQgYmUgemVybywgb24gcGxhdGZvcm1zCitsaWtlIERHMS4KKworU2lkZSBu b3RlOiBUaGUgY2xhc3MvaW5zdGFuY2UgZGVzaWduIGlzIGJvcnJvd2VkIGZyb20gb3VyIGV4aXN0 aW5nIGVuZ2luZSB1QVBJLAord2hlcmUgd2UgZGVzY3JpYmUgZXZlcnkgcGh5c2ljYWwgZW5naW5l IGluIHRlcm1zIG9mIGl0cyBjbGFzcywgYW5kIHRoZQorcGFydGljdWxhciBpbnN0YW5jZSwgc2lu Y2Ugd2UgY2FuIGhhdmUgbW9yZSB0aGFuIG9uZSBwZXIgY2xhc3MuCisKK0luIHRoZSBmdXR1cmUg d2UgYWxzbyB3YW50IHRvIGV4cG9zZSBtb3JlIGluZm9ybWF0aW9uIHdoaWNoIGNhbiBmdXJ0aGVy CitkZXNjcmliZSB0aGUgY2FwYWJpbGl0aWVzIG9mIGEgcmVnaW9uLgorCisuLiBrZXJuZWwtZG9j OjogRG9jdW1lbnRhdGlvbi9ncHUvcmZjL2k5MTVfZ2VtX2xtZW0uaAorICAgICAgICA6ZnVuY3Rp b25zOiBkcm1faTkxNV9nZW1fbWVtb3J5X2NsYXNzIGRybV9pOTE1X2dlbV9tZW1vcnlfY2xhc3Nf aW5zdGFuY2UgZHJtX2k5MTVfbWVtb3J5X3JlZ2lvbl9pbmZvIGRybV9pOTE1X3F1ZXJ5X21lbW9y eV9yZWdpb25zCisKK0dFTV9DUkVBVEVfRVhUCistLS0tLS0tLS0tLS0tLQorTmV3IGlvY3RsIHdo aWNoIGlzIGJhc2ljYWxseSBqdXN0IGdlbV9jcmVhdGUgYnV0IG5vdyBhbGxvd3MgdXNlcnNwYWNl IHRvCitwcm92aWRlIGEgY2hhaW4gb2YgcG9zc2libGUgZXh0ZW5zaW9ucy4gTm90ZSB0aGF0IGlm IHdlIGRvbid0IHByb3ZpZGUgYW55CitleHRlbnNpb25zIHRoZW4gd2UgZ2V0IHRoZSBleGFjdCBz YW1lIGJlaGF2aW91ciBhcyBnZW1fY3JlYXRlLgorCitTaWRlIG5vdGU6IFdlIGFsc28gbmVlZCB0 byBzdXBwb3J0IFBYUFsxXSBpbiB0aGUgbmVhciBmdXR1cmUsIHdoaWNoIGlzIGFsc28KK2FwcGxp Y2FibGUgdG8gaW50ZWdyYXRlZCBwbGF0Zm9ybXMsIGFuZCBhZGRzIGl0cyBvd24gZ2VtX2NyZWF0 ZV9leHQgZXh0ZW5zaW9uLAord2hpY2ggYmFzaWNhbGx5IGxldHMgdXNlcnNwYWNlIG1hcmsgYSBi dWZmZXIgYXMgInByb3RlY3RlZCIuCisKKy4uIGtlcm5lbC1kb2M6OiBEb2N1bWVudGF0aW9uL2dw dS9yZmMvaTkxNV9nZW1fbG1lbS5oCisgICAgICAgIDpmdW5jdGlvbnM6IGRybV9pOTE1X2dlbV9j cmVhdGVfZXh0CisKK0k5MTVfR0VNX0NSRUFURV9FWFRfTUVNT1JZX1JFR0lPTlMKKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK0ltcGxlbWVudGVkIGFzIGFuIGV4dGVuc2lvbiBm b3IgZ2VtX2NyZWF0ZV9leHQsIHdlIHdvdWxkIG5vdyBhbGxvdyB1c2Vyc3BhY2UgdG8KK29wdGlv bmFsbHkgcHJvdmlkZSBhbiBpbW11dGFibGUgbGlzdCBvZiBwcmVmZXJyZWQgcGxhY2VtZW50cyBh dCBjcmVhdGlvbiB0aW1lLAoraW4gcHJpb3JpdHkgb3JkZXIsIGZvciBhIGdpdmVuIGJ1ZmZlciBv YmplY3QuICBGb3IgdGhlIHBsYWNlbWVudHMgd2UgZXhwZWN0Cit0aGVtIGVhY2ggdG8gdXNlIHRo ZSBjbGFzcy9pbnN0YW5jZSBlbmNvZGluZywgYXMgcGVyIHRoZSBvdXRwdXQgb2YgdGhlIHJlZ2lv bnMKK3F1ZXJ5LiBIYXZpbmcgdGhlIGxpc3QgaW4gcHJpb3JpdHkgb3JkZXIgd2lsbCBiZSB1c2Vm dWwgaW4gdGhlIGZ1dHVyZSB3aGVuCitwbGFjaW5nIGFuIG9iamVjdCwgc2F5IGR1cmluZyBldmlj dGlvbi4KKworLi4ga2VybmVsLWRvYzo6IERvY3VtZW50YXRpb24vZ3B1L3JmYy9pOTE1X2dlbV9s bWVtLmgKKyAgICAgICAgOmZ1bmN0aW9uczogZHJtX2k5MTVfZ2VtX2NyZWF0ZV9leHRfbWVtb3J5 X3JlZ2lvbnMKKworT25lIGZhaXIgY3JpdGljaXNtIGhlcmUgaXMgdGhhdCB0aGlzIHNlZW1zIGEg bGl0dGxlIG92ZXItZW5naW5lZXJlZFsyXS4gSWYgd2UKK2p1c3QgY29uc2lkZXIgREcxIHRoZW4g eWVzLCBhIHNpbXBsZSBnZW1fY3JlYXRlLmZsYWdzIG9yIHNvbWV0aGluZyBpcyB0b3RhbGx5Cith bGwgdGhhdCdzIG5lZWRlZCB0byB0ZWxsIHRoZSBrZXJuZWwgdG8gYWxsb2NhdGUgdGhlIGJ1ZmZl ciBpbiBsb2NhbC1tZW1vcnkgb3IKK3doYXRldmVyLiBIb3dldmVyIGxvb2tpbmcgdG8gdGhlIGZ1 dHVyZSB3ZSBuZWVkIHVBUEkgd2hpY2ggY2FuIGFsc28gc3VwcG9ydAordXBjb21pbmcgWGUgSFAg bXVsdGktdGlsZSBhcmNoaXRlY3R1cmUgaW4gYSBzYW5lIHdheSwgd2hlcmUgdGhlcmUgY2FuIGJl CittdWx0aXBsZSBsb2NhbC1tZW1vcnkgaW5zdGFuY2VzIGZvciBhIGdpdmVuIGRldmljZSwgYW5k IHNvIHVzaW5nIGJvdGggY2xhc3MgYW5kCitpbnN0YW5jZSBpbiBvdXIgdUFQSSB0byBkZXNjcmli ZSByZWdpb25zIGlzIGRlc2lyYWJsZSwgYWx0aG91Z2ggc3BlY2lmaWNhbGx5Citmb3IgREcxIGl0 J3MgdW5pbnRlcmVzdGluZywgc2luY2Ugd2Ugb25seSBoYXZlIGEgc2luZ2xlIGxvY2FsLW1lbW9y eSBpbnN0YW5jZS4KKworRXhpc3RpbmcgdUFQSSBpc3N1ZXMKKz09PT09PT09PT09PT09PT09PT09 CitTb21lIHBvdGVudGlhbCBpc3N1ZXMgd2Ugc3RpbGwgbmVlZCB0byByZXNvbHZlLgorCitJOTE1 IE1NQVAKKy0tLS0tLS0tLQorSW4gaTkxNSB0aGVyZSBhcmUgbXVsdGlwbGUgd2F5cyB0byBNTUFQ IEdFTSBvYmplY3QsIGluY2x1ZGluZyBtYXBwaW5nIHRoZSBzYW1lCitvYmplY3QgdXNpbmcgZGlm ZmVyZW50IG1hcHBpbmcgdHlwZXMoV0MgdnMgV0IpLCBpLmUgbXVsdGlwbGUgYWN0aXZlIG1tYXBz IHBlcgorb2JqZWN0LiBUVE0gZXhwZWN0cyBvbmUgTU1BUCBhdCBtb3N0IGZvciB0aGUgbGlmZXRp bWUgb2YgdGhlIG9iamVjdC4gSWYgaXQKK3R1cm5zIG91dCB0aGF0IHdlIGhhdmUgdG8gYmFja3Bl ZGFsIGhlcmUsIHRoZXJlIG1pZ2h0IGJlIHNvbWUgcG90ZW50aWFsCit1c2Vyc3BhY2UgZmFsbG91 dC4KKworSTkxNSBTRVQvR0VUIENBQ0hJTkcKKy0tLS0tLS0tLS0tLS0tLS0tLS0tCitJbiBpOTE1 IHdlIGhhdmUgc2V0L2dldF9jYWNoaW5nIGlvY3RsLiBUVE0gZG9lc24ndCBsZXQgdXMgdG8gY2hh bmdlIHRoaXMsIGJ1dAorREcxIGRvZXNuJ3Qgc3VwcG9ydCBub24tc25vb3BlZCBwY2llIHRyYW5z YWN0aW9ucywgc28gd2UgY2FuIGp1c3QgYWx3YXlzCithbGxvY2F0ZSBhcyBXQiBmb3Igc21lbS1v bmx5IGJ1ZmZlcnMuICBJZi93aGVuIG91ciBodyBnYWlucyBzdXBwb3J0IGZvcgorbm9uLXNub29w ZWQgcGNpZSB0cmFuc2FjdGlvbnMgdGhlbiB3ZSBtdXN0IGZpeCB0aGlzIG1vZGUgYXQgYWxsb2Nh dGlvbiB0aW1lIGFzCithIG5ldyBHRU0gZXh0ZW5zaW9uLgorCitUaGlzIGlzIHJlbGF0ZWQgdG8g dGhlIG1tYXAgcHJvYmxlbSwgYmVjYXVzZSBpbiBnZW5lcmFsIChtZWFuaW5nLCB3aGVuIHdlJ3Jl Citub3QgcnVubmluZyBvbiBpbnRlbCBjcHVzKSB0aGUgY3B1IG1tYXAgbXVzdCBub3QsIGV2ZXIs IGJlIGluY29uc2lzdGVudCB3aXRoCithbGxvY2F0aW9uIG1vZGUuCisKK1Bvc3NpYmxlIGlkZWEg aXMgdG8gbGV0IHRoZSBrZXJuZWwgcGlja3MgdGhlIG1tYXAgbW9kZSBmb3IgdXNlcnNwYWNlIGZy b20gdGhlCitmb2xsb3dpbmcgdGFibGU6CisKK3NtZW0tb25seTogV0IuIFVzZXJzcGFjZSBkb2Vz IG5vdCBuZWVkIHRvIGNhbGwgY2xmbHVzaC4KKworc21lbStsbWVtOiBXZSBhbGxvY2F0ZSB1bmNh Y2hlZCBtZW1vcnksIGFuZCBnaXZlIHVzZXJzcGFjZSBhIFdDIG1hcHBpbmcKK2ZvciB3aGVuIHRo ZSBidWZmZXIgaXMgaW4gc21lbSwgYW5kIFdDIHdoZW4gaXQncyBpbiBsbWVtLiBHUFUgZG9lcyBz bm9vcGVkCithY2Nlc3MsIHdoaWNoIGlzIGEgYml0IGluZWZmaWNpZW50LgorCitsbWVtIG9ubHk6 IGFsd2F5cyBXQworCitUaGlzIG1lYW5zIG9uIGRpc2NyZXRlIHlvdSBvbmx5IGdldCBhIHNpbmds ZSBtbWFwIG1vZGUsIGFsbCBvdGhlcnMgbXVzdCBiZQorcmVqZWN0ZWQuIFRoYXQncyBwcm9iYWJs eSBnb2luZyB0byBiZSBhIG5ldyBkZWZhdWx0IG1vZGUgb3Igc29tZXRoaW5nIGxpa2UKK3RoYXQu CisKK0xpbmtzCis9PT09PQorWzFdIGh0dHBzOi8vcGF0Y2h3b3JrLmZyZWVkZXNrdG9wLm9yZy9z ZXJpZXMvODY3OTgvCisKK1syXSBodHRwczovL2dpdGxhYi5mcmVlZGVza3RvcC5vcmcvbWVzYS9t ZXNhLy0vbWVyZ2VfcmVxdWVzdHMvNTU5OSNub3RlXzU1Mzc5MQpkaWZmIC0tZ2l0IGEvRG9jdW1l bnRhdGlvbi9ncHUvcmZjL2luZGV4LnJzdCBiL0RvY3VtZW50YXRpb24vZ3B1L3JmYy9pbmRleC5y c3QKaW5kZXggYTg2MjFmN2RhYjhiLi4wNTY3MDQ0MmNhMWIgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50 YXRpb24vZ3B1L3JmYy9pbmRleC5yc3QKKysrIGIvRG9jdW1lbnRhdGlvbi9ncHUvcmZjL2luZGV4 LnJzdApAQCAtMTUsMyArMTUsNyBAQCBob3N0IHN1Y2ggZG9jdW1lbnRhdGlvbjoKIAogKiBPbmNl IHRoZSBjb2RlIGhhcyBsYW5kZWQgbW92ZSBhbGwgdGhlIGRvY3VtZW50YXRpb24gdG8gdGhlIHJp Z2h0IHBsYWNlcyBpbgogICB0aGUgbWFpbiBjb3JlLCBoZWxwZXIgb3IgZHJpdmVyIHNlY3Rpb25z LgorCisuLiB0b2N0cmVlOjoKKworICAgIGk5MTVfZ2VtX2xtZW0ucnN0Ci0tIAoyLjI2LjMKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBt YWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=