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 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id CF699C4828F for ; Sat, 3 Feb 2024 00:30:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=/HLhJpXA600MxlmCysx8+CBIHdsuUtqU16C2qbBxjE4=; b=YLdTMbXIOp+sxZ S2QFB/bYOm/AdGymPKM2sHODKIlLsUaeucYxe65e6T1y/Q5AW+TUookNDKCBdRfgGapm1EozRPT7E 5RJcC35kY776Vj2hn96coqSwN/mhnV7eK99ZPnYo9uzreqKU/yjgN9PORk9eLZZVECp8H5Zj6IOmd t15zdIUXkUrQaCCVW04h/zIA15utCMx6xOebAfGkMuyrZUu6jIzXUhX3ZLYkvDohPJUhNArrDBxoz b3UF/ScgOcHgi0vmMpssU3FQ2bmtPv6aKCm6ae2UlOFIM9cq49CrXq/uOJATiTYjI1dsgCjN94p+K 7iZDD4HA7J2fmWRSVPkQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1rW3us-0000000Dwtd-3Caa; Sat, 03 Feb 2024 00:29:54 +0000 Received: from lpdvacalvio01.broadcom.com ([192.19.166.228] helo=relay.smtp-ext.broadcom.com) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1rW3uY-0000000DwbJ-2q1m; Sat, 03 Feb 2024 00:29:40 +0000 Received: from mail-lvn-it-01.lvn.broadcom.net (mail-lvn-it-01.lvn.broadcom.net [10.36.132.253]) by relay.smtp-ext.broadcom.com (Postfix) with ESMTP id 0346AC0029C3; Fri, 2 Feb 2024 16:29:34 -0800 (PST) DKIM-Filter: OpenDKIM Filter v2.11.0 relay.smtp-ext.broadcom.com 0346AC0029C3 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=broadcom.com; s=dkimrelay; t=1706920174; bh=HJmayayglRjzNuDoR3ncSaWYDcO4qmVMXw1OpsKuZao=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=tEE/h1kCLnmnRFh3/Bp+mOrPbct1ocRZhpsHLaFYPdCR687lnZYQM0xWZFRYSHhO5 6PLwnybx6Co8M7YgICy2EWSSe4b/BuTjvj+XNX4TjNisQHuOqk8wum5P4ejzO48VJ/ Q7/Sa9M18LEow53C02pMjncPU/ar2nrNwXKjerr8= Received: from bcacpedev-irv-3.lvn.broadcom.net (bcacpedev-irv-3.lvn.broadcom.net [10.173.232.202]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail-lvn-it-01.lvn.broadcom.net (Postfix) with ESMTPSA id 8D1F318041CAC4; Fri, 2 Feb 2024 16:29:32 -0800 (PST) From: William Zhang To: Linux MTD List , Linux ARM List , Broadcom Kernel List Cc: f.fainelli@gmail.com, kursad.oney@broadcom.com, joel.peshkin@broadcom.com, anand.gore@broadcom.com, dregan@mail.com, kamal.dasu@broadcom.com, tomer.yacoby@broadcom.com, dan.beygelman@broadcom.com, William Zhang , David Regan , Florian Fainelli , Miquel Raynal , linux-kernel@vger.kernel.org, Vignesh Raghavendra , Brian Norris , Richard Weinberger , =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= Subject: [PATCH v4 07/12] mtd: rawnand: brcmnand: Rename bcm63138 nand driver Date: Fri, 2 Feb 2024 16:28:28 -0800 Message-Id: <20240203002834.171462-8-william.zhang@broadcom.com> X-Mailer: git-send-email 2.37.3 In-Reply-To: <20240203002834.171462-1-william.zhang@broadcom.com> References: <20240203002834.171462-1-william.zhang@broadcom.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240202_162935_050107_DDBBFAF0 X-CRM114-Status: GOOD ( 22.00 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org SW4gcHJlcGFyaW5nIHRvIHN1cHBvcnQgbXVsdGlwbGUgQkNNQkNBIFNvQ3MsIHJlbmFtZSBiY202 MzEzOCB0byBiY21iY2EKaW4gdGhlIGRyaXZlciBjb2RlIGFuZCBkcml2ZXIgZmlsZSBuYW1lLgoK U2lnbmVkLW9mZi1ieTogV2lsbGlhbSBaaGFuZyA8d2lsbGlhbS56aGFuZ0Bicm9hZGNvbS5jb20+ ClJldmlld2VkLWJ5OiBEYXZpZCBSZWdhbiA8ZHJlZ2FuQGJyb2FkY29tLmNvbT4KQWNrZWQtYnk6 IEZsb3JpYW4gRmFpbmVsbGkgPGZsb3JpYW4uZmFpbmVsbGlAYnJvYWRjb20uY29tPgotLS0KCkNo YW5nZXMgaW4gdjQ6IE5vbmUKQ2hhbmdlcyBpbiB2MzogTm9uZQpDaGFuZ2VzIGluIHYyOiBOb25l CgogZHJpdmVycy9tdGQvbmFuZC9yYXcvYnJjbW5hbmQvTWFrZWZpbGUgICAgICAgIHwgIDIgKy0K IGRyaXZlcnMvbXRkL25hbmQvcmF3L2JyY21uYW5kL2JjbTYzMTM4X25hbmQuYyB8IDk5IC0tLS0t LS0tLS0tLS0tLS0tLS0KIGRyaXZlcnMvbXRkL25hbmQvcmF3L2JyY21uYW5kL2JjbWJjYV9uYW5k LmMgICB8IDk5ICsrKysrKysrKysrKysrKysrKysKIDMgZmlsZXMgY2hhbmdlZCwgMTAwIGluc2Vy dGlvbnMoKyksIDEwMCBkZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL210 ZC9uYW5kL3Jhdy9icmNtbmFuZC9iY202MzEzOF9uYW5kLmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBk cml2ZXJzL210ZC9uYW5kL3Jhdy9icmNtbmFuZC9iY21iY2FfbmFuZC5jCgpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9tdGQvbmFuZC9yYXcvYnJjbW5hbmQvTWFrZWZpbGUgYi9kcml2ZXJzL210ZC9uYW5k L3Jhdy9icmNtbmFuZC9NYWtlZmlsZQppbmRleCA5OTA3ZTNlYzRiYjIuLjA1MzY1NjhjNjQ2NyAx MDA2NDQKLS0tIGEvZHJpdmVycy9tdGQvbmFuZC9yYXcvYnJjbW5hbmQvTWFrZWZpbGUKKysrIGIv ZHJpdmVycy9tdGQvbmFuZC9yYXcvYnJjbW5hbmQvTWFrZWZpbGUKQEAgLTIsNyArMiw3IEBACiAj IGxpbmsgb3JkZXIgbWF0dGVyczsgZG9uJ3QgbGluayB0aGUgbW9yZSBnZW5lcmljIGJyY21zdGJf bmFuZC5vIGJlZm9yZSB0aGUKICMgbW9yZSBzcGVjaWZpYyBpcHJvY19uYW5kLm8sIGZvciBpbnN0 YW5jZQogb2JqLSQoQ09ORklHX01URF9OQU5EX0JSQ01OQU5EX0lQUk9DKQkrPSBpcHJvY19uYW5k Lm8KLW9iai0kKENPTkZJR19NVERfTkFORF9CUkNNTkFORF9CQ01CQ0EpCSs9IGJjbTYzMTM4X25h bmQubworb2JqLSQoQ09ORklHX01URF9OQU5EX0JSQ01OQU5EX0JDTUJDQSkJKz0gYmNtYmNhX25h bmQubwogb2JqLSQoQ09ORklHX01URF9OQU5EX0JSQ01OQU5EX0JDTTYzWFgpCSs9IGJjbTYzNjhf bmFuZC5vCiBvYmotJChDT05GSUdfTVREX05BTkRfQlJDTU5BTkRfQlJDTVNUQikJKz0gYnJjbXN0 Yl9uYW5kLm8KIG9iai0kKENPTkZJR19NVERfTkFORF9CUkNNTkFORCkJCSs9IGJyY21uYW5kLm8K ZGlmZiAtLWdpdCBhL2RyaXZlcnMvbXRkL25hbmQvcmF3L2JyY21uYW5kL2JjbTYzMTM4X25hbmQu YyBiL2RyaXZlcnMvbXRkL25hbmQvcmF3L2JyY21uYW5kL2JjbTYzMTM4X25hbmQuYwpkZWxldGVk IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOTY4YzViNjc0YjA4Li4wMDAwMDAwMDAwMDAKLS0tIGEv ZHJpdmVycy9tdGQvbmFuZC9yYXcvYnJjbW5hbmQvYmNtNjMxMzhfbmFuZC5jCisrKyAvZGV2L251 bGwKQEAgLTEsOTkgKzAsMCBAQAotLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0yLjAt b25seQotLyoKLSAqIENvcHlyaWdodCDCqSAyMDE1IEJyb2FkY29tIENvcnBvcmF0aW9uCi0gKi8K LQotI2luY2x1ZGUgPGxpbnV4L2RldmljZS5oPgotI2luY2x1ZGUgPGxpbnV4L2lvLmg+Ci0jaW5j bHVkZSA8bGludXgvaW9wb3J0Lmg+Ci0jaW5jbHVkZSA8bGludXgvbW9kdWxlLmg+Ci0jaW5jbHVk ZSA8bGludXgvb2YuaD4KLSNpbmNsdWRlIDxsaW51eC9vZl9hZGRyZXNzLmg+Ci0jaW5jbHVkZSA8 bGludXgvcGxhdGZvcm1fZGV2aWNlLmg+Ci0jaW5jbHVkZSA8bGludXgvc2xhYi5oPgotCi0jaW5j bHVkZSAiYnJjbW5hbmQuaCIKLQotc3RydWN0IGJjbTYzMTM4X25hbmRfc29jIHsKLQlzdHJ1Y3Qg YnJjbW5hbmRfc29jIHNvYzsKLQl2b2lkIF9faW9tZW0gKmJhc2U7Ci19OwotCi0jZGVmaW5lIEJD TTYzMTM4X05BTkRfSU5UX1NUQVRVUwkJMHgwMAotI2RlZmluZSBCQ002MzEzOF9OQU5EX0lOVF9F TgkJCTB4MDQKLQotZW51bSB7Ci0JQkNNNjMxMzhfQ1RMUkRZCQk9IEJJVCg0KSwKLX07Ci0KLXN0 YXRpYyBib29sIGJjbTYzMTM4X25hbmRfaW50Y19hY2soc3RydWN0IGJyY21uYW5kX3NvYyAqc29j KQotewotCXN0cnVjdCBiY202MzEzOF9uYW5kX3NvYyAqcHJpdiA9Ci0JCQljb250YWluZXJfb2Yo c29jLCBzdHJ1Y3QgYmNtNjMxMzhfbmFuZF9zb2MsIHNvYyk7Ci0Jdm9pZCBfX2lvbWVtICptbWlv ID0gcHJpdi0+YmFzZSArIEJDTTYzMTM4X05BTkRfSU5UX1NUQVRVUzsKLQl1MzIgdmFsID0gYnJj bW5hbmRfcmVhZGwobW1pbyk7Ci0KLQlpZiAodmFsICYgQkNNNjMxMzhfQ1RMUkRZKSB7Ci0JCWJy Y21uYW5kX3dyaXRlbCh2YWwgJiB+QkNNNjMxMzhfQ1RMUkRZLCBtbWlvKTsKLQkJcmV0dXJuIHRy dWU7Ci0JfQotCi0JcmV0dXJuIGZhbHNlOwotfQotCi1zdGF0aWMgdm9pZCBiY202MzEzOF9uYW5k X2ludGNfc2V0KHN0cnVjdCBicmNtbmFuZF9zb2MgKnNvYywgYm9vbCBlbikKLXsKLQlzdHJ1Y3Qg YmNtNjMxMzhfbmFuZF9zb2MgKnByaXYgPQotCQkJY29udGFpbmVyX29mKHNvYywgc3RydWN0IGJj bTYzMTM4X25hbmRfc29jLCBzb2MpOwotCXZvaWQgX19pb21lbSAqbW1pbyA9IHByaXYtPmJhc2Ug KyBCQ002MzEzOF9OQU5EX0lOVF9FTjsKLQl1MzIgdmFsID0gYnJjbW5hbmRfcmVhZGwobW1pbyk7 Ci0KLQlpZiAoZW4pCi0JCXZhbCB8PSBCQ002MzEzOF9DVExSRFk7Ci0JZWxzZQotCQl2YWwgJj0g fkJDTTYzMTM4X0NUTFJEWTsKLQotCWJyY21uYW5kX3dyaXRlbCh2YWwsIG1taW8pOwotfQotCi1z dGF0aWMgaW50IGJjbTYzMTM4X25hbmRfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRl dikKLXsKLQlzdHJ1Y3QgZGV2aWNlICpkZXYgPSAmcGRldi0+ZGV2OwotCXN0cnVjdCBiY202MzEz OF9uYW5kX3NvYyAqcHJpdjsKLQlzdHJ1Y3QgYnJjbW5hbmRfc29jICpzb2M7Ci0KLQlwcml2ID0g ZGV2bV9remFsbG9jKGRldiwgc2l6ZW9mKCpwcml2KSwgR0ZQX0tFUk5FTCk7Ci0JaWYgKCFwcml2 KQotCQlyZXR1cm4gLUVOT01FTTsKLQlzb2MgPSAmcHJpdi0+c29jOwotCi0JcHJpdi0+YmFzZSA9 IGRldm1fcGxhdGZvcm1faW9yZW1hcF9yZXNvdXJjZV9ieW5hbWUocGRldiwgIm5hbmQtaW50LWJh c2UiKTsKLQlpZiAoSVNfRVJSKHByaXYtPmJhc2UpKQotCQlyZXR1cm4gUFRSX0VSUihwcml2LT5i YXNlKTsKLQotCXNvYy0+Y3RscmR5X2FjayA9IGJjbTYzMTM4X25hbmRfaW50Y19hY2s7Ci0Jc29j LT5jdGxyZHlfc2V0X2VuYWJsZWQgPSBiY202MzEzOF9uYW5kX2ludGNfc2V0OwotCi0JcmV0dXJu IGJyY21uYW5kX3Byb2JlKHBkZXYsIHNvYyk7Ci19Ci0KLXN0YXRpYyBjb25zdCBzdHJ1Y3Qgb2Zf ZGV2aWNlX2lkIGJjbTYzMTM4X25hbmRfb2ZfbWF0Y2hbXSA9IHsKLQl7IC5jb21wYXRpYmxlID0g ImJyY20sbmFuZC1iY202MzEzOCIgfSwKLQl7fSwKLX07Ci1NT0RVTEVfREVWSUNFX1RBQkxFKG9m LCBiY202MzEzOF9uYW5kX29mX21hdGNoKTsKLQotc3RhdGljIHN0cnVjdCBwbGF0Zm9ybV9kcml2 ZXIgYmNtNjMxMzhfbmFuZF9kcml2ZXIgPSB7Ci0JLnByb2JlCQkJPSBiY202MzEzOF9uYW5kX3By b2JlLAotCS5yZW1vdmVfbmV3CQk9IGJyY21uYW5kX3JlbW92ZSwKLQkuZHJpdmVyID0gewotCQku bmFtZQkJPSAiYmNtNjMxMzhfbmFuZCIsCi0JCS5wbQkJPSAmYnJjbW5hbmRfcG1fb3BzLAotCQku b2ZfbWF0Y2hfdGFibGUJPSBiY202MzEzOF9uYW5kX29mX21hdGNoLAotCX0KLX07Ci1tb2R1bGVf cGxhdGZvcm1fZHJpdmVyKGJjbTYzMTM4X25hbmRfZHJpdmVyKTsKLQotTU9EVUxFX0xJQ0VOU0Uo IkdQTCB2MiIpOwotTU9EVUxFX0FVVEhPUigiQnJpYW4gTm9ycmlzIik7Ci1NT0RVTEVfREVTQ1JJ UFRJT04oIk5BTkQgZHJpdmVyIGZvciBCQ002MzEzOCIpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9t dGQvbmFuZC9yYXcvYnJjbW5hbmQvYmNtYmNhX25hbmQuYyBiL2RyaXZlcnMvbXRkL25hbmQvcmF3 L2JyY21uYW5kL2JjbWJjYV9uYW5kLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw MDAwMDAwLi4zZTJmM2I3OTc4OGQKLS0tIC9kZXYvbnVsbAorKysgYi9kcml2ZXJzL210ZC9uYW5k L3Jhdy9icmNtbmFuZC9iY21iY2FfbmFuZC5jCkBAIC0wLDAgKzEsOTkgQEAKKy8vIFNQRFgtTGlj ZW5zZS1JZGVudGlmaWVyOiBHUEwtMi4wLW9ubHkKKy8qCisgKiBDb3B5cmlnaHQgwqkgMjAxNSBC cm9hZGNvbSBDb3Jwb3JhdGlvbgorICovCisKKyNpbmNsdWRlIDxsaW51eC9kZXZpY2UuaD4KKyNp bmNsdWRlIDxsaW51eC9pby5oPgorI2luY2x1ZGUgPGxpbnV4L2lvcG9ydC5oPgorI2luY2x1ZGUg PGxpbnV4L21vZHVsZS5oPgorI2luY2x1ZGUgPGxpbnV4L29mLmg+CisjaW5jbHVkZSA8bGludXgv b2ZfYWRkcmVzcy5oPgorI2luY2x1ZGUgPGxpbnV4L3BsYXRmb3JtX2RldmljZS5oPgorI2luY2x1 ZGUgPGxpbnV4L3NsYWIuaD4KKworI2luY2x1ZGUgImJyY21uYW5kLmgiCisKK3N0cnVjdCBiY21i Y2FfbmFuZF9zb2MgeworCXN0cnVjdCBicmNtbmFuZF9zb2Mgc29jOworCXZvaWQgX19pb21lbSAq YmFzZTsKK307CisKKyNkZWZpbmUgQkNNQkNBX05BTkRfSU5UX1NUQVRVUwkJMHgwMAorI2RlZmlu ZSBCQ01CQ0FfTkFORF9JTlRfRU4JCQkweDA0CisKK2VudW0geworCUJDTUJDQV9DVExSRFkJCT0g QklUKDQpLAorfTsKKworc3RhdGljIGJvb2wgYmNtYmNhX25hbmRfaW50Y19hY2soc3RydWN0IGJy Y21uYW5kX3NvYyAqc29jKQoreworCXN0cnVjdCBiY21iY2FfbmFuZF9zb2MgKnByaXYgPQorCQkJ Y29udGFpbmVyX29mKHNvYywgc3RydWN0IGJjbWJjYV9uYW5kX3NvYywgc29jKTsKKwl2b2lkIF9f aW9tZW0gKm1taW8gPSBwcml2LT5iYXNlICsgQkNNQkNBX05BTkRfSU5UX1NUQVRVUzsKKwl1MzIg dmFsID0gYnJjbW5hbmRfcmVhZGwobW1pbyk7CisKKwlpZiAodmFsICYgQkNNQkNBX0NUTFJEWSkg eworCQlicmNtbmFuZF93cml0ZWwodmFsICYgfkJDTUJDQV9DVExSRFksIG1taW8pOworCQlyZXR1 cm4gdHJ1ZTsKKwl9CisKKwlyZXR1cm4gZmFsc2U7Cit9CisKK3N0YXRpYyB2b2lkIGJjbWJjYV9u YW5kX2ludGNfc2V0KHN0cnVjdCBicmNtbmFuZF9zb2MgKnNvYywgYm9vbCBlbikKK3sKKwlzdHJ1 Y3QgYmNtYmNhX25hbmRfc29jICpwcml2ID0KKwkJCWNvbnRhaW5lcl9vZihzb2MsIHN0cnVjdCBi Y21iY2FfbmFuZF9zb2MsIHNvYyk7CisJdm9pZCBfX2lvbWVtICptbWlvID0gcHJpdi0+YmFzZSAr IEJDTUJDQV9OQU5EX0lOVF9FTjsKKwl1MzIgdmFsID0gYnJjbW5hbmRfcmVhZGwobW1pbyk7CisK KwlpZiAoZW4pCisJCXZhbCB8PSBCQ01CQ0FfQ1RMUkRZOworCWVsc2UKKwkJdmFsICY9IH5CQ01C Q0FfQ1RMUkRZOworCisJYnJjbW5hbmRfd3JpdGVsKHZhbCwgbW1pbyk7Cit9CisKK3N0YXRpYyBp bnQgYmNtYmNhX25hbmRfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikKK3sKKwlz dHJ1Y3QgZGV2aWNlICpkZXYgPSAmcGRldi0+ZGV2OworCXN0cnVjdCBiY21iY2FfbmFuZF9zb2Mg KnByaXY7CisJc3RydWN0IGJyY21uYW5kX3NvYyAqc29jOworCisJcHJpdiA9IGRldm1fa3phbGxv YyhkZXYsIHNpemVvZigqcHJpdiksIEdGUF9LRVJORUwpOworCWlmICghcHJpdikKKwkJcmV0dXJu IC1FTk9NRU07CisJc29jID0gJnByaXYtPnNvYzsKKworCXByaXYtPmJhc2UgPSBkZXZtX3BsYXRm b3JtX2lvcmVtYXBfcmVzb3VyY2VfYnluYW1lKHBkZXYsICJuYW5kLWludC1iYXNlIik7CisJaWYg KElTX0VSUihwcml2LT5iYXNlKSkKKwkJcmV0dXJuIFBUUl9FUlIocHJpdi0+YmFzZSk7CisKKwlz b2MtPmN0bHJkeV9hY2sgPSBiY21iY2FfbmFuZF9pbnRjX2FjazsKKwlzb2MtPmN0bHJkeV9zZXRf ZW5hYmxlZCA9IGJjbWJjYV9uYW5kX2ludGNfc2V0OworCisJcmV0dXJuIGJyY21uYW5kX3Byb2Jl KHBkZXYsIHNvYyk7Cit9CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3Qgb2ZfZGV2aWNlX2lkIGJjbWJj YV9uYW5kX29mX21hdGNoW10gPSB7CisJeyAuY29tcGF0aWJsZSA9ICJicmNtLG5hbmQtYmNtNjMx MzgiIH0sCisJe30sCit9OworTU9EVUxFX0RFVklDRV9UQUJMRShvZiwgYmNtYmNhX25hbmRfb2Zf bWF0Y2gpOworCitzdGF0aWMgc3RydWN0IHBsYXRmb3JtX2RyaXZlciBiY21iY2FfbmFuZF9kcml2 ZXIgPSB7CisJLnByb2JlCQkJPSBiY21iY2FfbmFuZF9wcm9iZSwKKwkucmVtb3ZlX25ldwkJPSBi cmNtbmFuZF9yZW1vdmUsCisJLmRyaXZlciA9IHsKKwkJLm5hbWUJCT0gImJjbWJjYV9uYW5kIiwK KwkJLnBtCQk9ICZicmNtbmFuZF9wbV9vcHMsCisJCS5vZl9tYXRjaF90YWJsZQk9IGJjbWJjYV9u YW5kX29mX21hdGNoLAorCX0KK307Cittb2R1bGVfcGxhdGZvcm1fZHJpdmVyKGJjbWJjYV9uYW5k X2RyaXZlcik7CisKK01PRFVMRV9MSUNFTlNFKCJHUEwgdjIiKTsKK01PRFVMRV9BVVRIT1IoIkJy aWFuIE5vcnJpcyIpOworTU9EVUxFX0RFU0NSSVBUSU9OKCJOQU5EIGRyaXZlciBmb3IgQkNNQkNB Iik7Ci0tIAoyLjM3LjMKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpsaW51eC1hcm0ta2VybmVsIG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxp c3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0 aW5mby9saW51eC1hcm0ta2VybmVsCg==