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=-12.8 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,SIGNED_OFF_BY,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 66D86C4727E for ; Thu, 1 Oct 2020 22:03:15 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (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 08ED1206DB for ; Thu, 1 Oct 2020 22:03:14 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="u7w69WhT" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 08ED1206DB Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=linux.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-rockchip-bounces+linux-rockchip=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:To:From: Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender :Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Owner; bh=3+5masd8jEJnj6Z1XGiZ9RJzT3rAiJMuuHycmNamBCQ=; b=u7w69WhTCHg0RGyXqmZqT7S7E2 z9aJygaPwl153LrBMKKvUJyf9hF/lxo21MRf+I+Di08btwJ7XYvPRhyJvxqRYGN4vbRV1Y2Jbgi9/ B29Ji08/f9jzBvQ82S01bCcB6FFkNGxTRuwQ/1qS+a6oP1FeQf6l4SJmXmynDTU9zvNUmYdPtrKkv as0w6Jcap9V0vuJvqnHERfBz7lVkKqGrI9PuqGWt3Cm3xjBvQyWGh9oy62tIq74IdmSZ83ViLrUYz 0M500gJbtKvJgOfNRehq43DT0VU1ePSbYNSwx/dM2SCgjisDQSUoLMFB6zj1aPEDs6jwz1QkSxyyF 2Tvms6xA==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kO6fL-0004oU-KM; Thu, 01 Oct 2020 22:03:07 +0000 Received: from mail-lj1-f193.google.com ([209.85.208.193]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kO6f3-0004fy-6u; Thu, 01 Oct 2020 22:02:51 +0000 Received: by mail-lj1-f193.google.com with SMTP id u4so135235ljd.10; Thu, 01 Oct 2020 15:02:47 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=7+0iqnqR1+uN0pgQm+DWt3g7O2MdVYRWt5r0a7zSrgA=; b=H4HQHu2NPdH3ipot1jvCfwjaa9AWzF1A3bTAAYIAVvKKBiQryMaZQZbgoXhCeUVAhk 9HJCqO7yI0PUuZyvp6tx8fjlwTgxf0ew6EYZ+QtwL74FjbaWwFRe/Dea7VdXdavHLMqB NYnM7PZqdRPhWwqb1s2jEPf+J5+c3Mop7HS5LoSlJEKUPOqfVBeo4JAIBRPNxTUn9Hl6 Igei1rNEVXuK/fvnj7zwmLHdRJIFV0gBSMkd1wnE4gA2/FMRKJVCrYimw7s47H8XwHoS YqftVKWQtvwLj+za8wHX8muwNC0xoDvSQh9/pCwnrhcYg9qdq4ZFeDGn1DuJkVEDKdWi O4tw== X-Gm-Message-State: AOAM530oxRqwrKGRYJhYT0WFwYPKroAVtIKp2jxNCi2Kx9MlELhef+Yk wF6914Z8LuWWpj00tJJsxTI= X-Google-Smtp-Source: ABdhPJzxiz4ywkGK2++fFndUVni9+gOpIkzZCHiZNrN9W0+g0WvnhxG4vDFORBo9gt/sSS5qSz4cxw== X-Received: by 2002:a2e:90c3:: with SMTP id o3mr2843247ljg.147.1601589765998; Thu, 01 Oct 2020 15:02:45 -0700 (PDT) Received: from workstation.lan ([95.155.85.46]) by smtp.gmail.com with ESMTPSA id f25sm582154ljn.29.2020.10.01.15.02.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 01 Oct 2020 15:02:45 -0700 (PDT) From: =?UTF-8?q?Krzysztof=20Wilczy=C5=84ski?= To: Bjorn Helgaas Subject: [PATCH v3] PCI: Unify ECAM constants in native PCI Express drivers Date: Thu, 1 Oct 2020 22:02:44 +0000 Message-Id: <20201001220244.1271878-1-kw@linux.com> X-Mailer: git-send-email 2.28.0 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20201001_180249_278942_DE2EC328 X-CRM114-Status: GOOD ( 24.10 ) X-BeenThere: linux-rockchip@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Upstream kernel work for Rockchip platforms List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Rob Herring , Lorenzo Pieralisi , Heiko Stuebner , linux-pci@vger.kernel.org, Shawn Lin , Jonathan Cameron , Michal Simek , linux-rockchip@lists.infradead.org, Zhou Wang , Robert Richter , Jonathan Chocron , Toan Le , Will Deacon , linux-arm-kernel@lists.infradead.org Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "Linux-rockchip" Errors-To: linux-rockchip-bounces+linux-rockchip=archiver.kernel.org@lists.infradead.org VW5pZnkgRUNBTS1yZWxhdGVkIGNvbnN0YW50cyBpbnRvIGEgc2luZ2xlIHNldCBvZiBzdGFuZGFy ZCBjb25zdGFudHMKZGVmaW5pbmcgbWVtb3J5IGFkZHJlc3Mgc2hpZnQgdmFsdWVzIGZvciB0aGUg Ynl0ZS1sZXZlbCBhZGRyZXNzIHRoYXQgY2FuCmJlIHVzZWQgd2hlbiBhY2Nlc3NpbmcgdGhlIFBD SSBFeHByZXNzIENvbmZpZ3VyYXRpb24gU3BhY2UsIGFuZCB0aGVuCm1vdmUgbmF0aXZlIFBDSSBF eHByZXNzIGNvbnRyb2xsZXIgZHJpdmVycyB0byB1c2UgbmV3bHkgaW50cm9kdWNlZApkZWZpbml0 aW9ucyByZXRpcmluZyBhbnkgZHJpdmVyLXNwZWNpZmljIG9uZXMuCgpUaGUgRUNBTSAoIkVuaGFu Y2VkIENvbmZpZ3VyYXRpb24gQWNjZXNzIE1lY2hhbmlzbSIpIGlzIGRlZmluZWQgYnkgdGhlClBD SSBFeHByZXNzIHNwZWNpZmljYXRpb24gKHNlZSBQQ0kgRXhwcmVzcyBCYXNlIFNwZWNpZmljYXRp b24sIFJldmlzaW9uCjUuMCwgVmVyc2lvbiAxLjAsIFNlY3Rpb24gNy4yLjIsIHAuIDY3NiksIHRo dXMgbW9zdCBoYXJkd2FyZSBzaG91bGQKaW1wbGVtZW50IGl0IHRoZSBzYW1lIHdheS4gIE1vc3Qg b2YgdGhlIG5hdGl2ZSBQQ0kgRXhwcmVzcyBjb250cm9sbGVyCmRyaXZlcnMgZGVmaW5lIHRoZWly IEVDQU0tcmVsYXRlZCBjb25zdGFudHMsIG1hbnkgb2YgdGhlc2UgY291bGQgYmUKc2hhcmVkLCBv ciB1c2Ugb3Blbi1jb2RlZCB2YWx1ZXMgd2hlbiBzZXR0aW5nIHRoZSAuYnVzX3NoaWZ0IGZpZWxk IG9mCnRoZSBzdHJ1Y3QgcGNpX2VjYW1fb3BzLgoKQWxsIG9mIHRoZSBuZXdseSBhZGRlZCBjb25z dGFudHMgc2hvdWxkIHJlbW92ZSBhbWJpZ3VpdHkgYW5kIHJlZHVjZSB0aGUKbnVtYmVyIG9mIG9w ZW4tY29kZWQgdmFsdWVzLCBhbmQgYWxzbyBjb3JyZWxhdGUgbW9yZSBzdHJvbmdseSB3aXRoIHRo ZQpkZXNjcmlwdGlvbnMgaW4gdGhlIGFmb3JlbWVudGlvbmVkIHNwZWNpZmljYXRpb24gKHNlZSBU YWJsZSA3LTEKIkVuaGFuY2VkIENvbmZpZ3VyYXRpb24gQWRkcmVzcyBNYXBwaW5nIiwgcC4gNjc3 KS4KClRoZXJlIGlzIG5vIGNoYW5nZSB0byBmdW5jdGlvbmFsaXR5LgoKU3VnZ2VzdGVkLWJ5OiBC am9ybiBIZWxnYWFzIDxiaGVsZ2Fhc0Bnb29nbGUuY29tPgpTaWduZWQtb2ZmLWJ5OiBLcnp5c3p0 b2YgV2lsY3p5xYRza2kgPGt3QGxpbnV4LmNvbT4KLS0tCkNoYW5nZXMgaW4gdjM6CiAgVXBkYXRl ZCBjb21taXQgbWVzc2FnZSB3b3JkaW5nLgogIFVwZGF0ZWQgcmVnYXJkaW5nIGN1c3RvbSBFQ0FN IGJ1cyBzaGlmdCB2YWx1ZXMgYW5kIGNvbmNlcm5pbmcgUENJIGJhc2UKICBjb25maWd1cmF0aW9u IHNwYWNlIGFjY2VzcyBmb3IgVHlwZSAxIGFjY2Vzcy4KICBSZWZhY3RvcmVkIHJvY2tjaGlwX3Bj aWVfcmRfb3RoZXJfY29uZigpIGFuZCByb2NrY2hpcF9wY2llX3dyX290aGVyX2NvbmYoKQogIGFu ZCByZW1vdmVkIHRoZSAiYnVzZGV2IiB2YXJpYWJsZS4KICBSZW1vdmVkIHN1cnBsdXMgInJlbGJ1 cyIgdmFyaWFibGUgZnJvbSBud2xfcGNpZV9tYXBfYnVzKCkgYW5kCiAgeGlsaW54X3BjaWVfbWFw X2J1cygpLgogIFJlbmFtZWQgdGhlIFBDSUVfRUNBTV9BRERSKCkgbWFjcm8gdG8gUENJRV9FQ0FN X09GRlNFVCgpLgoKQ2hhbmdlcyBpbiB2MjoKICBVc2UgUENJRV9FQ0FNX0FERFIgbWFjcm8gd2hl biBjb21wdXRpbmcgRUNBTSBhZGRyZXNzIG9mZnNldCwgYnV0IGRyb3AKICBQQ0lfU0xPVCBhbmQg UENJX0ZVTkMgbWFjcm9zIGZyb20gdGhlIFBDSUVfRUNBTV9BRERSIG1hY3JvIGluIGZhdm91cgog IG9mIHVzaW5nIGEgc2luZ2xlIHZhbHVlIGZvciB0aGUgZGV2aWNlL2Z1bmN0aW9uLgoKIGRyaXZl cnMvcGNpL2NvbnRyb2xsZXIvZHdjL3BjaWUtYWwuYyAgICAgICAgfCAgOCArKy0tLS0KIGRyaXZl cnMvcGNpL2NvbnRyb2xsZXIvZHdjL3BjaWUtaGlzaS5jICAgICAgfCAgNCArLS0KIGRyaXZlcnMv cGNpL2NvbnRyb2xsZXIvcGNpLWhvc3QtZ2VuZXJpYy5jICAgfCAgNCArLS0KIGRyaXZlcnMvcGNp L2NvbnRyb2xsZXIvcGNpLXRodW5kZXItZWNhbS5jICAgfCAgMiArLQogZHJpdmVycy9wY2kvY29u dHJvbGxlci9wY2ktdGh1bmRlci1wZW0uYyAgICB8IDEzICsrKysrKystLQogZHJpdmVycy9wY2kv Y29udHJvbGxlci9wY2kteGdlbmUuYyAgICAgICAgICB8IDEzICsrKysrKystLQogZHJpdmVycy9w Y2kvY29udHJvbGxlci9wY2llLXJvY2tjaGlwLWhvc3QuYyB8IDI3ICsrKysrKysrKy0tLS0tLS0t CiBkcml2ZXJzL3BjaS9jb250cm9sbGVyL3BjaWUtcm9ja2NoaXAuaCAgICAgIHwgIDggKy0tLS0t CiBkcml2ZXJzL3BjaS9jb250cm9sbGVyL3BjaWUtdGFuZ28uYyAgICAgICAgIHwgIDIgKy0KIGRy aXZlcnMvcGNpL2NvbnRyb2xsZXIvcGNpZS14aWxpbngtbndsLmMgICAgfCAgOSArKy0tLS0KIGRy aXZlcnMvcGNpL2NvbnRyb2xsZXIvcGNpZS14aWxpbnguYyAgICAgICAgfCAxMSArKy0tLS0tCiBk cml2ZXJzL3BjaS9lY2FtLmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKy0tCiBpbmNs dWRlL2xpbnV4L3BjaS1lY2FtLmggICAgICAgICAgICAgICAgICAgIHwgMzIgKysrKysrKysrKysr KysrKysrKysrCiAxMyBmaWxlcyBjaGFuZ2VkLCA4MyBpbnNlcnRpb25zKCspLCA1NCBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL3BjaS9jb250cm9sbGVyL2R3Yy9wY2llLWFsLmMg Yi9kcml2ZXJzL3BjaS9jb250cm9sbGVyL2R3Yy9wY2llLWFsLmMKaW5kZXggZDU3ZDRlZTE1ODQ4 Li43YzJhYTA0OTExM2MgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvcGNpL2NvbnRyb2xsZXIvZHdjL3Bj aWUtYWwuYworKysgYi9kcml2ZXJzL3BjaS9jb250cm9sbGVyL2R3Yy9wY2llLWFsLmMKQEAgLTc2 LDcgKzc2LDcgQEAgc3RhdGljIGludCBhbF9wY2llX2luaXQoc3RydWN0IHBjaV9jb25maWdfd2lu ZG93ICpjZmcpCiB9CiAKIGNvbnN0IHN0cnVjdCBwY2lfZWNhbV9vcHMgYWxfcGNpZV9vcHMgPSB7 Ci0JLmJ1c19zaGlmdCAgICA9IDIwLAorCS5idXNfc2hpZnQgICAgPSBQQ0lFX0VDQU1fQlVTX1NI SUZULAogCS5pbml0ICAgICAgICAgPSAgYWxfcGNpZV9pbml0LAogCS5wY2lfb3BzICAgICAgPSB7 CiAJCS5tYXBfYnVzICAgID0gYWxfcGNpZV9tYXBfYnVzLApAQCAtMTM4LDggKzEzOCw2IEBAIHN0 cnVjdCBhbF9wY2llIHsKIAlzdHJ1Y3QgYWxfcGNpZV90YXJnZXRfYnVzX2NmZyB0YXJnZXRfYnVz X2NmZzsKIH07CiAKLSNkZWZpbmUgUENJRV9FQ0FNX0RFVkZOKHgpCQkoKCh4KSAmIDB4ZmYpIDw8 IDEyKQotCiAjZGVmaW5lIHRvX2FsX3BjaWUoeCkJCWRldl9nZXRfZHJ2ZGF0YSgoeCktPmRldikK IAogc3RhdGljIGlubGluZSB1MzIgYWxfcGNpZV9jb250cm9sbGVyX3JlYWRsKHN0cnVjdCBhbF9w Y2llICpwY2llLCB1MzIgb2Zmc2V0KQpAQCAtMjI4LDcgKzIyNiw3IEBAIHN0YXRpYyB2b2lkIF9f aW9tZW0gKmFsX3BjaWVfY29uZl9hZGRyX21hcChzdHJ1Y3QgYWxfcGNpZSAqcGNpZSwKIAl2b2lk IF9faW9tZW0gKnBjaV9iYXNlX2FkZHI7CiAKIAlwY2lfYmFzZV9hZGRyID0gKHZvaWQgX19pb21l bSAqKSgodWludHB0cl90KXBwLT52YV9jZmcwX2Jhc2UgKwotCQkJCQkgKGJ1c25yX2VjYW0gPDwg MjApICsKKwkJCQkJIFBDSUVfRUNBTV9CVVMoYnVzbnJfZWNhbSkgKwogCQkJCQkgUENJRV9FQ0FN X0RFVkZOKGRldmZuKSk7CiAKIAlpZiAoYnVzbnJfcmVnICE9IHRhcmdldF9idXNfY2ZnLT5yZWdf dmFsKSB7CkBAIC0zMDAsNyArMjk4LDcgQEAgc3RhdGljIHZvaWQgYWxfcGNpZV9jb25maWdfcHJl cGFyZShzdHJ1Y3QgYWxfcGNpZSAqcGNpZSkKIAogCXRhcmdldF9idXNfY2ZnID0gJnBjaWUtPnRh cmdldF9idXNfY2ZnOwogCi0JZWNhbV9idXNfbWFzayA9IChwY2llLT5lY2FtX3NpemUgPj4gMjAp IC0gMTsKKwllY2FtX2J1c19tYXNrID0gKHBjaWUtPmVjYW1fc2l6ZSA+PiBQQ0lFX0VDQU1fQlVT X1NISUZUKSAtIDE7CiAJaWYgKGVjYW1fYnVzX21hc2sgPiAyNTUpIHsKIAkJZGV2X3dhcm4ocGNp ZS0+ZGV2LCAiRUNBTSB3aW5kb3cgc2l6ZSBpcyBsYXJnZXIgdGhhbiAyNTZNQi4gQ3V0dGluZyBv ZmYgYXQgMjU2XG4iKTsKIAkJZWNhbV9idXNfbWFzayA9IDI1NTsKZGlmZiAtLWdpdCBhL2RyaXZl cnMvcGNpL2NvbnRyb2xsZXIvZHdjL3BjaWUtaGlzaS5jIGIvZHJpdmVycy9wY2kvY29udHJvbGxl ci9kd2MvcGNpZS1oaXNpLmMKaW5kZXggNWNhODY3OTZkNDNhLi5iN2FmYmYxZDRiZDkgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvcGNpL2NvbnRyb2xsZXIvZHdjL3BjaWUtaGlzaS5jCisrKyBiL2RyaXZl cnMvcGNpL2NvbnRyb2xsZXIvZHdjL3BjaWUtaGlzaS5jCkBAIC0xMDAsNyArMTAwLDcgQEAgc3Rh dGljIGludCBoaXNpX3BjaWVfaW5pdChzdHJ1Y3QgcGNpX2NvbmZpZ193aW5kb3cgKmNmZykKIH0K IAogY29uc3Qgc3RydWN0IHBjaV9lY2FtX29wcyBoaXNpX3BjaWVfb3BzID0gewotCS5idXNfc2hp ZnQgICAgPSAyMCwKKwkuYnVzX3NoaWZ0ICAgID0gUENJRV9FQ0FNX0JVU19TSElGVCwKIAkuaW5p dCAgICAgICAgID0gIGhpc2lfcGNpZV9pbml0LAogCS5wY2lfb3BzICAgICAgPSB7CiAJCS5tYXBf YnVzICAgID0gaGlzaV9wY2llX21hcF9idXMsCkBAIC0xMzUsNyArMTM1LDcgQEAgc3RhdGljIGlu dCBoaXNpX3BjaWVfcGxhdGZvcm1faW5pdChzdHJ1Y3QgcGNpX2NvbmZpZ193aW5kb3cgKmNmZykK IH0KIAogc3RhdGljIGNvbnN0IHN0cnVjdCBwY2lfZWNhbV9vcHMgaGlzaV9wY2llX3BsYXRmb3Jt X29wcyA9IHsKLQkuYnVzX3NoaWZ0ICAgID0gMjAsCisJLmJ1c19zaGlmdCAgICA9IFBDSUVfRUNB TV9CVVNfU0hJRlQsCiAJLmluaXQgICAgICAgICA9ICBoaXNpX3BjaWVfcGxhdGZvcm1faW5pdCwK IAkucGNpX29wcyAgICAgID0gewogCQkubWFwX2J1cyAgICA9IGhpc2lfcGNpZV9tYXBfYnVzLApk aWZmIC0tZ2l0IGEvZHJpdmVycy9wY2kvY29udHJvbGxlci9wY2ktaG9zdC1nZW5lcmljLmMgYi9k cml2ZXJzL3BjaS9jb250cm9sbGVyL3BjaS1ob3N0LWdlbmVyaWMuYwppbmRleCBiNTE5NzdhYmZk ZjEuLjU5MzQzNmFlZTdhMCAxMDA2NDQKLS0tIGEvZHJpdmVycy9wY2kvY29udHJvbGxlci9wY2kt aG9zdC1nZW5lcmljLmMKKysrIGIvZHJpdmVycy9wY2kvY29udHJvbGxlci9wY2ktaG9zdC1nZW5l cmljLmMKQEAgLTE1LDcgKzE1LDcgQEAKICNpbmNsdWRlIDxsaW51eC9wbGF0Zm9ybV9kZXZpY2Uu aD4KIAogc3RhdGljIGNvbnN0IHN0cnVjdCBwY2lfZWNhbV9vcHMgZ2VuX3BjaV9jZmdfY2FtX2J1 c19vcHMgPSB7Ci0JLmJ1c19zaGlmdAk9IDE2LAorCS5idXNfc2hpZnQJPSBQQ0lFX0NBTV9CVVNf U0hJRlQsCiAJLnBjaV9vcHMJPSB7CiAJCS5tYXBfYnVzCT0gcGNpX2VjYW1fbWFwX2J1cywKIAkJ LnJlYWQJCT0gcGNpX2dlbmVyaWNfY29uZmlnX3JlYWQsCkBAIC00OSw3ICs0OSw3IEBAIHN0YXRp YyB2b2lkIF9faW9tZW0gKnBjaV9kd19lY2FtX21hcF9idXMoc3RydWN0IHBjaV9idXMgKmJ1cywK IH0KIAogc3RhdGljIGNvbnN0IHN0cnVjdCBwY2lfZWNhbV9vcHMgcGNpX2R3X2VjYW1fYnVzX29w cyA9IHsKLQkuYnVzX3NoaWZ0CT0gMjAsCisJLmJ1c19zaGlmdAk9IFBDSUVfRUNBTV9CVVNfU0hJ RlQsCiAJLnBjaV9vcHMJPSB7CiAJCS5tYXBfYnVzCT0gcGNpX2R3X2VjYW1fbWFwX2J1cywKIAkJ LnJlYWQJCT0gcGNpX2dlbmVyaWNfY29uZmlnX3JlYWQsCmRpZmYgLS1naXQgYS9kcml2ZXJzL3Bj aS9jb250cm9sbGVyL3BjaS10aHVuZGVyLWVjYW0uYyBiL2RyaXZlcnMvcGNpL2NvbnRyb2xsZXIv cGNpLXRodW5kZXItZWNhbS5jCmluZGV4IDdlODgzNWZlZTVmNy4uMjJlZDdlOTk1YjM5IDEwMDY0 NAotLS0gYS9kcml2ZXJzL3BjaS9jb250cm9sbGVyL3BjaS10aHVuZGVyLWVjYW0uYworKysgYi9k cml2ZXJzL3BjaS9jb250cm9sbGVyL3BjaS10aHVuZGVyLWVjYW0uYwpAQCAtMzQ2LDcgKzM0Niw3 IEBAIHN0YXRpYyBpbnQgdGh1bmRlcl9lY2FtX2NvbmZpZ193cml0ZShzdHJ1Y3QgcGNpX2J1cyAq YnVzLCB1bnNpZ25lZCBpbnQgZGV2Zm4sCiB9CiAKIGNvbnN0IHN0cnVjdCBwY2lfZWNhbV9vcHMg cGNpX3RodW5kZXJfZWNhbV9vcHMgPSB7Ci0JLmJ1c19zaGlmdAk9IDIwLAorCS5idXNfc2hpZnQJ PSBQQ0lFX0VDQU1fQlVTX1NISUZULAogCS5wY2lfb3BzCT0gewogCQkubWFwX2J1cyAgICAgICAg PSBwY2lfZWNhbV9tYXBfYnVzLAogCQkucmVhZCAgICAgICAgICAgPSB0aHVuZGVyX2VjYW1fY29u ZmlnX3JlYWQsCmRpZmYgLS1naXQgYS9kcml2ZXJzL3BjaS9jb250cm9sbGVyL3BjaS10aHVuZGVy LXBlbS5jIGIvZHJpdmVycy9wY2kvY29udHJvbGxlci9wY2ktdGh1bmRlci1wZW0uYwppbmRleCAz Zjg0Nzk2OTE0M2UuLjFhM2Y3MGFjNjFmYyAxMDA2NDQKLS0tIGEvZHJpdmVycy9wY2kvY29udHJv bGxlci9wY2ktdGh1bmRlci1wZW0uYworKysgYi9kcml2ZXJzL3BjaS9jb250cm9sbGVyL3BjaS10 aHVuZGVyLXBlbS5jCkBAIC0xOSw2ICsxOSwxNSBAQAogI2RlZmluZSBQRU1fQ0ZHX1dSIDB4MjgK ICNkZWZpbmUgUEVNX0NGR19SRCAweDMwCiAKKy8qCisgKiBFbmhhbmNlZCBDb25maWd1cmF0aW9u IEFjY2VzcyBNZWNoYW5pc20gKEVDQU0pCisgKgorICogTi5CLiBUaGlzIGlzIGEgbm9uLXN0YW5k YXJkIHBsYXRmb3JtLXNwZWNpZmljIEVDQU0gYnVzIHNoaWZ0IHZhbHVlLiAgRm9yCisgKiBzdGFu ZGFyZCB2YWx1ZXMgZGVmaW5lZCBpbiB0aGUgUENJIEV4cHJlc3MgQmFzZSBTcGVjaWZpY2F0aW9u IHNlZQorICogaW5jbHVkZS9saW51eC9wY2ktZWNhbS5oLgorICovCisjZGVmaW5lIFRIVU5ERVJf UENJRV9FQ0FNX0JVU19TSElGVAkyNAorCiBzdHJ1Y3QgdGh1bmRlcl9wZW1fcGNpIHsKIAl1MzIJ CWVhX2VudHJ5WzNdOwogCXZvaWQgX19pb21lbQkqcGVtX3JlZ19iYXNlOwpAQCAtNDA0LDcgKzQx Myw3IEBAIHN0YXRpYyBpbnQgdGh1bmRlcl9wZW1fYWNwaV9pbml0KHN0cnVjdCBwY2lfY29uZmln X3dpbmRvdyAqY2ZnKQogfQogCiBjb25zdCBzdHJ1Y3QgcGNpX2VjYW1fb3BzIHRodW5kZXJfcGVt X2VjYW1fb3BzID0gewotCS5idXNfc2hpZnQJPSAyNCwKKwkuYnVzX3NoaWZ0CT0gVEhVTkRFUl9Q Q0lFX0VDQU1fQlVTX1NISUZULAogCS5pbml0CQk9IHRodW5kZXJfcGVtX2FjcGlfaW5pdCwKIAku cGNpX29wcwk9IHsKIAkJLm1hcF9idXMJPSBwY2lfZWNhbV9tYXBfYnVzLApAQCAtNDQxLDcgKzQ1 MCw3IEBAIHN0YXRpYyBpbnQgdGh1bmRlcl9wZW1fcGxhdGZvcm1faW5pdChzdHJ1Y3QgcGNpX2Nv bmZpZ193aW5kb3cgKmNmZykKIH0KIAogc3RhdGljIGNvbnN0IHN0cnVjdCBwY2lfZWNhbV9vcHMg cGNpX3RodW5kZXJfcGVtX29wcyA9IHsKLQkuYnVzX3NoaWZ0CT0gMjQsCisJLmJ1c19zaGlmdAk9 IFRIVU5ERVJfUENJRV9FQ0FNX0JVU19TSElGVCwKIAkuaW5pdAkJPSB0aHVuZGVyX3BlbV9wbGF0 Zm9ybV9pbml0LAogCS5wY2lfb3BzCT0gewogCQkubWFwX2J1cwk9IHBjaV9lY2FtX21hcF9idXMs CmRpZmYgLS1naXQgYS9kcml2ZXJzL3BjaS9jb250cm9sbGVyL3BjaS14Z2VuZS5jIGIvZHJpdmVy cy9wY2kvY29udHJvbGxlci9wY2kteGdlbmUuYwppbmRleCA4ZTBkYjg0ZjA4OWQuLmU2N2U3Mjgx OGQyNCAxMDA2NDQKLS0tIGEvZHJpdmVycy9wY2kvY29udHJvbGxlci9wY2kteGdlbmUuYworKysg Yi9kcml2ZXJzL3BjaS9jb250cm9sbGVyL3BjaS14Z2VuZS5jCkBAIC02MCw2ICs2MCwxNSBAQAog I2RlZmluZSBYR0VORV9QQ0lFX0lQX1ZFUl8xCQkxCiAjZGVmaW5lIFhHRU5FX1BDSUVfSVBfVkVS XzIJCTIKIAorLyoKKyAqIEVuaGFuY2VkIENvbmZpZ3VyYXRpb24gQWNjZXNzIE1lY2hhbmlzbSAo RUNBTSkKKyAqCisgKiBOLkIuIFRoaXMgaXMgYSBub24tc3RhbmRhcmQgcGxhdGZvcm0tc3BlY2lm aWMgRUNBTSBidXMgc2hpZnQgdmFsdWUuICBGb3IKKyAqIHN0YW5kYXJkIHZhbHVlcyBkZWZpbmVk IGluIHRoZSBQQ0kgRXhwcmVzcyBCYXNlIFNwZWNpZmljYXRpb24gc2VlCisgKiBpbmNsdWRlL2xp bnV4L3BjaS1lY2FtLmguCisgKi8KKyNkZWZpbmUgWEdFTkVfUENJRV9FQ0FNX0JVU19TSElGVAkx NgorCiAjaWYgZGVmaW5lZChDT05GSUdfUENJX1hHRU5FKSB8fCAoZGVmaW5lZChDT05GSUdfQUNQ SSkgJiYgZGVmaW5lZChDT05GSUdfUENJX1FVSVJLUykpCiBzdHJ1Y3QgeGdlbmVfcGNpZV9wb3J0 IHsKIAlzdHJ1Y3QgZGV2aWNlX25vZGUJKm5vZGU7CkBAIC0yNTcsNyArMjY2LDcgQEAgc3RhdGlj IGludCB4Z2VuZV92MV9wY2llX2VjYW1faW5pdChzdHJ1Y3QgcGNpX2NvbmZpZ193aW5kb3cgKmNm ZykKIH0KIAogY29uc3Qgc3RydWN0IHBjaV9lY2FtX29wcyB4Z2VuZV92MV9wY2llX2VjYW1fb3Bz ID0gewotCS5idXNfc2hpZnQJPSAxNiwKKwkuYnVzX3NoaWZ0CT0gWEdFTkVfUENJRV9FQ0FNX0JV U19TSElGVCwKIAkuaW5pdAkJPSB4Z2VuZV92MV9wY2llX2VjYW1faW5pdCwKIAkucGNpX29wcwk9 IHsKIAkJLm1hcF9idXMJPSB4Z2VuZV9wY2llX21hcF9idXMsCkBAIC0yNzIsNyArMjgxLDcgQEAg c3RhdGljIGludCB4Z2VuZV92Ml9wY2llX2VjYW1faW5pdChzdHJ1Y3QgcGNpX2NvbmZpZ193aW5k b3cgKmNmZykKIH0KIAogY29uc3Qgc3RydWN0IHBjaV9lY2FtX29wcyB4Z2VuZV92Ml9wY2llX2Vj YW1fb3BzID0gewotCS5idXNfc2hpZnQJPSAxNiwKKwkuYnVzX3NoaWZ0CT0gWEdFTkVfUENJRV9F Q0FNX0JVU19TSElGVCwKIAkuaW5pdAkJPSB4Z2VuZV92Ml9wY2llX2VjYW1faW5pdCwKIAkucGNp X29wcwk9IHsKIAkJLm1hcF9idXMJPSB4Z2VuZV9wY2llX21hcF9idXMsCmRpZmYgLS1naXQgYS9k cml2ZXJzL3BjaS9jb250cm9sbGVyL3BjaWUtcm9ja2NoaXAtaG9zdC5jIGIvZHJpdmVycy9wY2kv Y29udHJvbGxlci9wY2llLXJvY2tjaGlwLWhvc3QuYwppbmRleCAwYmIyZmIzZThhMGIuLjRjMDY5 ZjhmYTQyMCAxMDA2NDQKLS0tIGEvZHJpdmVycy9wY2kvY29udHJvbGxlci9wY2llLXJvY2tjaGlw LWhvc3QuYworKysgYi9kcml2ZXJzL3BjaS9jb250cm9sbGVyL3BjaWUtcm9ja2NoaXAtaG9zdC5j CkBAIC0xNjAsMTIgKzE2MCwxMSBAQCBzdGF0aWMgaW50IHJvY2tjaGlwX3BjaWVfcmRfb3RoZXJf Y29uZihzdHJ1Y3Qgcm9ja2NoaXBfcGNpZSAqcm9ja2NoaXAsCiAJCQkJICAgICAgIHN0cnVjdCBw Y2lfYnVzICpidXMsIHUzMiBkZXZmbiwKIAkJCQkgICAgICAgaW50IHdoZXJlLCBpbnQgc2l6ZSwg dTMyICp2YWwpCiB7Ci0JdTMyIGJ1c2RldjsKKwl2b2lkIF9faW9tZW0gKmFkZHI7CiAKLQlidXNk ZXYgPSBQQ0lFX0VDQU1fQUREUihidXMtPm51bWJlciwgUENJX1NMT1QoZGV2Zm4pLAotCQkJCVBD SV9GVU5DKGRldmZuKSwgd2hlcmUpOworCWFkZHIgPSByb2NrY2hpcC0+cmVnX2Jhc2UgKyBQQ0lF X0VDQU1fT0ZGU0VUKGJ1cywgZGV2Zm4sIHdoZXJlKTsKIAotCWlmICghSVNfQUxJR05FRChidXNk ZXYsIHNpemUpKSB7CisJaWYgKCFJU19BTElHTkVEKCh1aW50cHRyX3QpYWRkciwgc2l6ZSkpIHsK IAkJKnZhbCA9IDA7CiAJCXJldHVybiBQQ0lCSU9TX0JBRF9SRUdJU1RFUl9OVU1CRVI7CiAJfQpA QCAtMTc4LDExICsxNzcsMTEgQEAgc3RhdGljIGludCByb2NrY2hpcF9wY2llX3JkX290aGVyX2Nv bmYoc3RydWN0IHJvY2tjaGlwX3BjaWUgKnJvY2tjaGlwLAogCQkJCQkJQVhJX1dSQVBQRVJfVFlQ RTFfQ0ZHKTsKIAogCWlmIChzaXplID09IDQpIHsKLQkJKnZhbCA9IHJlYWRsKHJvY2tjaGlwLT5y ZWdfYmFzZSArIGJ1c2Rldik7CisJCSp2YWwgPSByZWFkbChhZGRyKTsKIAl9IGVsc2UgaWYgKHNp emUgPT0gMikgewotCQkqdmFsID0gcmVhZHcocm9ja2NoaXAtPnJlZ19iYXNlICsgYnVzZGV2KTsK KwkJKnZhbCA9IHJlYWR3KGFkZHIpOwogCX0gZWxzZSBpZiAoc2l6ZSA9PSAxKSB7Ci0JCSp2YWwg PSByZWFkYihyb2NrY2hpcC0+cmVnX2Jhc2UgKyBidXNkZXYpOworCQkqdmFsID0gcmVhZGIoYWRk cik7CiAJfSBlbHNlIHsKIAkJKnZhbCA9IDA7CiAJCXJldHVybiBQQ0lCSU9TX0JBRF9SRUdJU1RF Ul9OVU1CRVI7CkBAIC0xOTQsMTEgKzE5MywxMSBAQCBzdGF0aWMgaW50IHJvY2tjaGlwX3BjaWVf d3Jfb3RoZXJfY29uZihzdHJ1Y3Qgcm9ja2NoaXBfcGNpZSAqcm9ja2NoaXAsCiAJCQkJICAgICAg IHN0cnVjdCBwY2lfYnVzICpidXMsIHUzMiBkZXZmbiwKIAkJCQkgICAgICAgaW50IHdoZXJlLCBp bnQgc2l6ZSwgdTMyIHZhbCkKIHsKLQl1MzIgYnVzZGV2OworCXZvaWQgX19pb21lbSAqYWRkcjsK IAotCWJ1c2RldiA9IFBDSUVfRUNBTV9BRERSKGJ1cy0+bnVtYmVyLCBQQ0lfU0xPVChkZXZmbiks Ci0JCQkJUENJX0ZVTkMoZGV2Zm4pLCB3aGVyZSk7Ci0JaWYgKCFJU19BTElHTkVEKGJ1c2Rldiwg c2l6ZSkpCisJYWRkciA9IHJvY2tjaGlwLT5yZWdfYmFzZSArIFBDSUVfRUNBTV9PRkZTRVQoYnVz LCBkZXZmbiwgd2hlcmUpOworCisJaWYgKCFJU19BTElHTkVEKCh1aW50cHRyX3QpYWRkciwgc2l6 ZSkpCiAJCXJldHVybiBQQ0lCSU9TX0JBRF9SRUdJU1RFUl9OVU1CRVI7CiAKIAlpZiAocGNpX2lz X3Jvb3RfYnVzKGJ1cy0+cGFyZW50KSkKQEAgLTIwOSwxMSArMjA4LDExIEBAIHN0YXRpYyBpbnQg cm9ja2NoaXBfcGNpZV93cl9vdGhlcl9jb25mKHN0cnVjdCByb2NrY2hpcF9wY2llICpyb2NrY2hp cCwKIAkJCQkJCUFYSV9XUkFQUEVSX1RZUEUxX0NGRyk7CiAKIAlpZiAoc2l6ZSA9PSA0KQotCQl3 cml0ZWwodmFsLCByb2NrY2hpcC0+cmVnX2Jhc2UgKyBidXNkZXYpOworCQl3cml0ZWwodmFsLCBh ZGRyKTsKIAllbHNlIGlmIChzaXplID09IDIpCi0JCXdyaXRldyh2YWwsIHJvY2tjaGlwLT5yZWdf YmFzZSArIGJ1c2Rldik7CisJCXdyaXRldyh2YWwsIGFkZHIpOwogCWVsc2UgaWYgKHNpemUgPT0g MSkKLQkJd3JpdGViKHZhbCwgcm9ja2NoaXAtPnJlZ19iYXNlICsgYnVzZGV2KTsKKwkJd3JpdGVi KHZhbCwgYWRkcik7CiAJZWxzZQogCQlyZXR1cm4gUENJQklPU19CQURfUkVHSVNURVJfTlVNQkVS OwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL3BjaS9jb250cm9sbGVyL3BjaWUtcm9ja2NoaXAuaCBi L2RyaXZlcnMvcGNpL2NvbnRyb2xsZXIvcGNpZS1yb2NrY2hpcC5oCmluZGV4IGM3ZDAxNzhmYzhj Mi4uMTY1MGE1MDg3NDUwIDEwMDY0NAotLS0gYS9kcml2ZXJzL3BjaS9jb250cm9sbGVyL3BjaWUt cm9ja2NoaXAuaAorKysgYi9kcml2ZXJzL3BjaS9jb250cm9sbGVyL3BjaWUtcm9ja2NoaXAuaApA QCAtMTMsNiArMTMsNyBAQAogCiAjaW5jbHVkZSA8bGludXgva2VybmVsLmg+CiAjaW5jbHVkZSA8 bGludXgvcGNpLmg+CisjaW5jbHVkZSA8bGludXgvcGNpLWVjYW0uaD4KIAogLyoKICAqIFRoZSB1 cHBlciAxNiBiaXRzIG9mIFBDSUVfQ0xJRU5UX0NPTkZJRyBhcmUgYSB3cml0ZSBtYXNrIGZvciB0 aGUgbG93ZXIgMTYKQEAgLTE3OCwxMyArMTc5LDYgQEAKICNkZWZpbmUgTUlOX0FYSV9BRERSX0JJ VFNfUEFTU0VECQk4CiAjZGVmaW5lIFBDSUVfUkNfU0VORF9QTUVfT0ZGCQkJMHgxMTk2MAogI2Rl ZmluZSBST0NLQ0hJUF9WRU5ET1JfSUQJCQkweDFkODcKLSNkZWZpbmUgUENJRV9FQ0FNX0JVUyh4 KQkJCSgoKHgpICYgMHhmZikgPDwgMjApCi0jZGVmaW5lIFBDSUVfRUNBTV9ERVYoeCkJCQkoKCh4 KSAmIDB4MWYpIDw8IDE1KQotI2RlZmluZSBQQ0lFX0VDQU1fRlVOQyh4KQkJCSgoKHgpICYgMHg3 KSA8PCAxMikKLSNkZWZpbmUgUENJRV9FQ0FNX1JFRyh4KQkJCSgoKHgpICYgMHhmZmYpIDw8IDAp Ci0jZGVmaW5lIFBDSUVfRUNBTV9BRERSKGJ1cywgZGV2LCBmdW5jLCByZWcpIFwKLQkgIChQQ0lF X0VDQU1fQlVTKGJ1cykgfCBQQ0lFX0VDQU1fREVWKGRldikgfCBcCi0JICAgUENJRV9FQ0FNX0ZV TkMoZnVuYykgfCBQQ0lFX0VDQU1fUkVHKHJlZykpCiAjZGVmaW5lIFBDSUVfTElOS19JU19MMih4 KSBcCiAJKCgoeCkgJiBQQ0lFX0NMSUVOVF9ERUJVR19MVFNTTV9NQVNLKSA9PSBQQ0lFX0NMSUVO VF9ERUJVR19MVFNTTV9MMikKICNkZWZpbmUgUENJRV9MSU5LX1VQKHgpIFwKZGlmZiAtLWdpdCBh L2RyaXZlcnMvcGNpL2NvbnRyb2xsZXIvcGNpZS10YW5nby5jIGIvZHJpdmVycy9wY2kvY29udHJv bGxlci9wY2llLXRhbmdvLmMKaW5kZXggZDA5M2E4Y2U0YmIxLi44ZjBkNjk1YWZiZGUgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvcGNpL2NvbnRyb2xsZXIvcGNpZS10YW5nby5jCisrKyBiL2RyaXZlcnMv cGNpL2NvbnRyb2xsZXIvcGNpZS10YW5nby5jCkBAIC0yMDgsNyArMjA4LDcgQEAgc3RhdGljIGlu dCBzbXA4NzU5X2NvbmZpZ193cml0ZShzdHJ1Y3QgcGNpX2J1cyAqYnVzLCB1bnNpZ25lZCBpbnQg ZGV2Zm4sCiB9CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgcGNpX2VjYW1fb3BzIHNtcDg3NTlfZWNh bV9vcHMgPSB7Ci0JLmJ1c19zaGlmdAk9IDIwLAorCS5idXNfc2hpZnQJPSBQQ0lFX0VDQU1fQlVT X1NISUZULAogCS5wY2lfb3BzCT0gewogCQkubWFwX2J1cwk9IHBjaV9lY2FtX21hcF9idXMsCiAJ CS5yZWFkCQk9IHNtcDg3NTlfY29uZmlnX3JlYWQsCmRpZmYgLS1naXQgYS9kcml2ZXJzL3BjaS9j b250cm9sbGVyL3BjaWUteGlsaW54LW53bC5jIGIvZHJpdmVycy9wY2kvY29udHJvbGxlci9wY2ll LXhpbGlueC1ud2wuYwppbmRleCBmM2NmN2Q2MTkyNGYuLmNmZDEyYjc1YmFjYiAxMDA2NDQKLS0t IGEvZHJpdmVycy9wY2kvY29udHJvbGxlci9wY2llLXhpbGlueC1ud2wuYworKysgYi9kcml2ZXJz L3BjaS9jb250cm9sbGVyL3BjaWUteGlsaW54LW53bC5jCkBAIC0xOCw2ICsxOCw3IEBACiAjaW5j bHVkZSA8bGludXgvb2ZfcGxhdGZvcm0uaD4KICNpbmNsdWRlIDxsaW51eC9vZl9pcnEuaD4KICNp bmNsdWRlIDxsaW51eC9wY2kuaD4KKyNpbmNsdWRlIDxsaW51eC9wY2ktZWNhbS5oPgogI2luY2x1 ZGUgPGxpbnV4L3BsYXRmb3JtX2RldmljZS5oPgogI2luY2x1ZGUgPGxpbnV4L2lycWNoaXAvY2hh aW5lZF9pcnEuaD4KIApAQCAtMTI0LDggKzEyNSw2IEBACiAjZGVmaW5lIEVfRUNBTV9DUl9FTkFC TEUJCUJJVCgwKQogI2RlZmluZSBFX0VDQU1fU0laRV9MT0MJCQlHRU5NQVNLKDIwLCAxNikKICNk ZWZpbmUgRV9FQ0FNX1NJWkVfU0hJRlQJCTE2Ci0jZGVmaW5lIEVDQU1fQlVTX0xPQ19TSElGVAkJ MjAKLSNkZWZpbmUgRUNBTV9ERVZfTE9DX1NISUZUCQkxMgogI2RlZmluZSBOV0xfRUNBTV9WQUxV RV9ERUZBVUxUCQkxMgogCiAjZGVmaW5lIENGR19ETUFfUkVHX0JBUgkJCUdFTk1BU0soMiwgMCkK QEAgLTI0MCwxNSArMjM5LDExIEBAIHN0YXRpYyB2b2lkIF9faW9tZW0gKm53bF9wY2llX21hcF9i dXMoc3RydWN0IHBjaV9idXMgKmJ1cywgdW5zaWduZWQgaW50IGRldmZuLAogCQkJCSAgICAgIGlu dCB3aGVyZSkKIHsKIAlzdHJ1Y3QgbndsX3BjaWUgKnBjaWUgPSBidXMtPnN5c2RhdGE7Ci0JaW50 IHJlbGJ1czsKIAogCWlmICghbndsX3BjaWVfdmFsaWRfZGV2aWNlKGJ1cywgZGV2Zm4pKQogCQly ZXR1cm4gTlVMTDsKIAotCXJlbGJ1cyA9IChidXMtPm51bWJlciA8PCBFQ0FNX0JVU19MT0NfU0hJ RlQpIHwKLQkJCShkZXZmbiA8PCBFQ0FNX0RFVl9MT0NfU0hJRlQpOwotCi0JcmV0dXJuIHBjaWUt PmVjYW1fYmFzZSArIHJlbGJ1cyArIHdoZXJlOworCXJldHVybiBwY2llLT5lY2FtX2Jhc2UgKyBQ Q0lFX0VDQU1fT0ZGU0VUKGJ1cywgZGV2Zm4sIHdoZXJlKTsKIH0KIAogLyogUENJZSBvcGVyYXRp b25zICovCmRpZmYgLS1naXQgYS9kcml2ZXJzL3BjaS9jb250cm9sbGVyL3BjaWUteGlsaW54LmMg Yi9kcml2ZXJzL3BjaS9jb250cm9sbGVyL3BjaWUteGlsaW54LmMKaW5kZXggODUyM2JlNjFiYmE1 Li40OWJkZTUyNjZhYTIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvcGNpL2NvbnRyb2xsZXIvcGNpZS14 aWxpbnguYworKysgYi9kcml2ZXJzL3BjaS9jb250cm9sbGVyL3BjaWUteGlsaW54LmMKQEAgLTIx LDYgKzIxLDcgQEAKICNpbmNsdWRlIDxsaW51eC9vZl9wbGF0Zm9ybS5oPgogI2luY2x1ZGUgPGxp bnV4L29mX2lycS5oPgogI2luY2x1ZGUgPGxpbnV4L3BjaS5oPgorI2luY2x1ZGUgPGxpbnV4L3Bj aS1lY2FtLmg+CiAjaW5jbHVkZSA8bGludXgvcGxhdGZvcm1fZGV2aWNlLmg+CiAKICNpbmNsdWRl ICIuLi9wY2kuaCIKQEAgLTg2LDEwICs4Nyw2IEBACiAvKiBQaHkgU3RhdHVzL0NvbnRyb2wgUmVn aXN0ZXIgZGVmaW5pdGlvbnMgKi8KICNkZWZpbmUgWElMSU5YX1BDSUVfUkVHX1BTQ1JfTE5LVVAJ QklUKDExKQogCi0vKiBFQ0FNIGRlZmluaXRpb25zICovCi0jZGVmaW5lIEVDQU1fQlVTX05VTV9T SElGVAkJMjAKLSNkZWZpbmUgRUNBTV9ERVZfTlVNX1NISUZUCQkxMgotCiAvKiBOdW1iZXIgb2Yg TVNJIElSUXMgKi8KICNkZWZpbmUgWElMSU5YX05VTV9NU0lfSVJRUwkJMTI4CiAKQEAgLTE4Mywx NSArMTgwLDExIEBAIHN0YXRpYyB2b2lkIF9faW9tZW0gKnhpbGlueF9wY2llX21hcF9idXMoc3Ry dWN0IHBjaV9idXMgKmJ1cywKIAkJCQkJIHVuc2lnbmVkIGludCBkZXZmbiwgaW50IHdoZXJlKQog ewogCXN0cnVjdCB4aWxpbnhfcGNpZV9wb3J0ICpwb3J0ID0gYnVzLT5zeXNkYXRhOwotCWludCBy ZWxidXM7CiAKIAlpZiAoIXhpbGlueF9wY2llX3ZhbGlkX2RldmljZShidXMsIGRldmZuKSkKIAkJ cmV0dXJuIE5VTEw7CiAKLQlyZWxidXMgPSAoYnVzLT5udW1iZXIgPDwgRUNBTV9CVVNfTlVNX1NI SUZUKSB8Ci0JCSAoZGV2Zm4gPDwgRUNBTV9ERVZfTlVNX1NISUZUKTsKLQotCXJldHVybiBwb3J0 LT5yZWdfYmFzZSArIHJlbGJ1cyArIHdoZXJlOworCXJldHVybiBwb3J0LT5yZWdfYmFzZSArIFBD SUVfRUNBTV9PRkZTRVQoYnVzLCBkZXZmbiwgd2hlcmUpOwogfQogCiAvKiBQQ0llIG9wZXJhdGlv bnMgKi8KZGlmZiAtLWdpdCBhL2RyaXZlcnMvcGNpL2VjYW0uYyBiL2RyaXZlcnMvcGNpL2VjYW0u YwppbmRleCA4ZjA2NWE0MmZjMWEuLmZmZDAxMDI5MDA4NCAxMDA2NDQKLS0tIGEvZHJpdmVycy9w Y2kvZWNhbS5jCisrKyBiL2RyaXZlcnMvcGNpL2VjYW0uYwpAQCAtMTQ5LDcgKzE0OSw3IEBAIEVY UE9SVF9TWU1CT0xfR1BMKHBjaV9lY2FtX21hcF9idXMpOwogCiAvKiBFQ0FNIG9wcyAqLwogY29u c3Qgc3RydWN0IHBjaV9lY2FtX29wcyBwY2lfZ2VuZXJpY19lY2FtX29wcyA9IHsKLQkuYnVzX3No aWZ0CT0gMjAsCisJLmJ1c19zaGlmdAk9IFBDSUVfRUNBTV9CVVNfU0hJRlQsCiAJLnBjaV9vcHMJ PSB7CiAJCS5tYXBfYnVzCT0gcGNpX2VjYW1fbWFwX2J1cywKIAkJLnJlYWQJCT0gcGNpX2dlbmVy aWNfY29uZmlnX3JlYWQsCkBAIC0xNjEsNyArMTYxLDcgQEAgRVhQT1JUX1NZTUJPTF9HUEwocGNp X2dlbmVyaWNfZWNhbV9vcHMpOwogI2lmIGRlZmluZWQoQ09ORklHX0FDUEkpICYmIGRlZmluZWQo Q09ORklHX1BDSV9RVUlSS1MpCiAvKiBFQ0FNIG9wcyBmb3IgMzItYml0IGFjY2VzcyBvbmx5IChu b24tY29tcGxpYW50KSAqLwogY29uc3Qgc3RydWN0IHBjaV9lY2FtX29wcyBwY2lfMzJiX29wcyA9 IHsKLQkuYnVzX3NoaWZ0CT0gMjAsCisJLmJ1c19zaGlmdAk9IFBDSUVfRUNBTV9CVVNfU0hJRlQs CiAJLnBjaV9vcHMJPSB7CiAJCS5tYXBfYnVzCT0gcGNpX2VjYW1fbWFwX2J1cywKIAkJLnJlYWQJ CT0gcGNpX2dlbmVyaWNfY29uZmlnX3JlYWQzMiwKZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgv cGNpLWVjYW0uaCBiL2luY2x1ZGUvbGludXgvcGNpLWVjYW0uaAppbmRleCAxYWY1Y2IwMmVmN2Yu LjJjMjJkYTZiZjgxOCAxMDA2NDQKLS0tIGEvaW5jbHVkZS9saW51eC9wY2ktZWNhbS5oCisrKyBi L2luY2x1ZGUvbGludXgvcGNpLWVjYW0uaApAQCAtOSw2ICs5LDM4IEBACiAjaW5jbHVkZSA8bGlu dXgva2VybmVsLmg+CiAjaW5jbHVkZSA8bGludXgvcGxhdGZvcm1fZGV2aWNlLmg+CiAKKy8qCisg KiBNZW1vcnkgYWRkcmVzcyBzaGlmdCB2YWx1ZXMgZm9yIHRoZSBieXRlLWxldmVsIGFkZHJlc3Mg dGhhdAorICogY2FuIGJlIHVzZWQgd2hlbiBhY2Nlc3NpbmcgdGhlIFBDSS9QQ0kgRXhwcmVzcyBD b25maWd1cmF0aW9uIFNwYWNlLgorICovCisKKy8qCisgKiBDb25maWd1cmF0aW9uIEFjY2VzcyBN ZWNoYW5pc20gKENBTSkKKyAqCisgKiBTZWUgUENJIExvY2FsIEJ1cyBTcGVjaWZpY2F0aW9uLCBS ZXZpc2lvbiAzLjAsIFNlY3Rpb24gMy4yLjIuMywKKyAqIHAuIDQ4IGFuZCBTZWN0aW9uIDYuMSwg cC4gMjEzLgorICovCisjZGVmaW5lIFBDSUVfQ0FNX0JVU19TSElGVAkxNiAvKiBCdXMgTnVtYmVy ICovCisKKy8qCisgKiBFbmhhbmNlZCBDb25maWd1cmF0aW9uIEFjY2VzcyBNZWNoYW5pc20gKEVD QU0pCisgKgorICogU2VlIFBDSSBFeHByZXNzIEJhc2UgU3BlY2lmaWNhdGlvbiwgUmV2aXNpb24g NS4wLCBWZXJzaW9uIDEuMCwKKyAqIFNlY3Rpb24gNy4yLjIsIFRhYmxlIDctMSwgcC4gNjc3Lgor ICovCisjZGVmaW5lIFBDSUVfRUNBTV9CVVNfU0hJRlQJMjAgLyogQnVzIE51bWJlciAqLworI2Rl ZmluZSBQQ0lFX0VDQU1fREVWX1NISUZUCTE1IC8qIERldmljZSBOdW1iZXIgKi8KKyNkZWZpbmUg UENJRV9FQ0FNX0ZVTl9TSElGVAkxMiAvKiBGdW5jdGlvbiBOdW1iZXIgKi8KKworI2RlZmluZSBQ Q0lFX0VDQU1fQlVTKHgpCSgoKHgpICYgMHhmZikgPDwgUENJRV9FQ0FNX0JVU19TSElGVCkKKyNk ZWZpbmUgUENJRV9FQ0FNX0RFVkZOKHgpCSgoKHgpICYgMHhmZikgPDwgUENJRV9FQ0FNX0ZVTl9T SElGVCkKKyNkZWZpbmUgUENJRV9FQ0FNX1JFRyh4KQkoKHgpICYgMHhmZmYpCisKKyNkZWZpbmUg UENJRV9FQ0FNX09GRlNFVChidXMsIGRldmZuLCB3aGVyZSkgXAorICAgIChQQ0lFX0VDQU1fQlVT KGJ1cy0+bnVtYmVyKSB8IFwKKyAgICAgUENJRV9FQ0FNX0RFVkZOKGRldmZuKSB8IFwKKyAgICAg UENJRV9FQ0FNX1JFRyh3aGVyZSkpCisKIC8qCiAgKiBzdHJ1Y3QgdG8gaG9sZCBwY2kgb3BzIGFu ZCBidXMgc2hpZnQgb2YgdGhlIGNvbmZpZyB3aW5kb3cKICAqIGZvciBhIFBDSSBjb250cm9sbGVy LgotLSAKMi4yOC4wCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KTGludXgtcm9ja2NoaXAgbWFpbGluZyBsaXN0CkxpbnV4LXJvY2tjaGlwQGxpc3RzLmlu ZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9s aW51eC1yb2NrY2hpcAo=