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,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0B34EC433E0 for ; Tue, 30 Mar 2021 18:20:40 +0000 (UTC) Received: from desiato.infradead.org (desiato.infradead.org [90.155.92.199]) (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 942F961983 for ; Tue, 30 Mar 2021 18:20:39 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 942F961983 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=pengutronix.de Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding :Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: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:List-Owner; bh=UVvZZrPru8HCwV7rawcvQtoOyqSwBzKM9JZ5j9tUGi8=; b=Q9XK4tBnbwcuWnImT5FjEUktL HcRlr6XVez3ec4L2RrE8WGX76xAFHFt0UZhWmVdOjRIwhK0/fie3LNiCPlZ290Myc4bMjbpmxWAga 3tokgj7YeCrHNyw4o4CHO0aTeGbbKFGajluA2ZG6uz21xo4XEuvUcyIpoXdH8WYiX2Wahw+knf4yB cen0jlCZmgNJujj9zIQKCWUHcpjcMf+4DBt5K1V6+4hVyx5qQFEtsKmWVQsZ0oGlh/20gepnYzkxJ bMv6sgf2uotBpU7ZgnuJjHay9WeZB10JIwjqHwAzwezP9U8moBlK887x5d92QgRUJIFciDetYNF1F 662ivzAjg==; Received: from localhost ([::1] helo=desiato.infradead.org) by desiato.infradead.org with esmtp (Exim 4.94 #2 (Red Hat Linux)) id 1lRIx0-004ZTT-3x; Tue, 30 Mar 2021 18:18:50 +0000 Received: from metis.ext.pengutronix.de ([2001:67c:670:201:290:27ff:fe1d:cc33]) by desiato.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1lRIwU-004ZL7-5i for linux-arm-kernel@lists.infradead.org; Tue, 30 Mar 2021 18:18:21 +0000 Received: from ptx.hi.pengutronix.de ([2001:67c:670:100:1d::c0]) by metis.ext.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lRIwK-0007hv-T6; Tue, 30 Mar 2021 20:18:08 +0200 Received: from ukl by ptx.hi.pengutronix.de with local (Exim 4.92) (envelope-from ) id 1lRIwI-0000Dt-BK; Tue, 30 Mar 2021 20:18:06 +0200 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Michael Turquette , Stephen Boyd Subject: [PATCH v4 2/6] clk: Provide new devm_clk_helpers for prepared and enabled clocks Date: Tue, 30 Mar 2021 20:17:51 +0200 Message-Id: <20210330181755.204339-3-u.kleine-koenig@pengutronix.de> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20210330181755.204339-1-u.kleine-koenig@pengutronix.de> References: <20210330181755.204339-1-u.kleine-koenig@pengutronix.de> MIME-Version: 1.0 X-SA-Exim-Connect-IP: 2001:67c:670:100:1d::c0 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-arm-kernel@lists.infradead.org X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210330_191818_578272_E9DBBB5F X-CRM114-Status: GOOD ( 18.42 ) 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: , Cc: linux-rtc@vger.kernel.org, linux-pwm@vger.kernel.org, Alexandre Belloni , Alessandro Zummo , Mark Brown , Claudiu Beznea , Ludovic Desroches , Thierry Reding , kernel@pengutronix.de, linux-spi@vger.kernel.org, Lee Jones , linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org 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 V2hlbiBhIGRyaXZlciBrZWVwcyBhIGNsb2NrIHByZXBhcmVkIChvciBlbmFibGVkKSBkdXJpbmcg dGhlIHdob2xlCmxpZmV0aW1lIG9mIHRoZSBkcml2ZXIsIHRoZXNlIGhlbHBlcnMgYWxsb3cgdG8g c2ltcGxpZnkgdGhlIGRyaXZlcnMuCgpTaWduZWQtb2ZmLWJ5OiBVd2UgS2xlaW5lLUvDtm5pZyA8 dS5rbGVpbmUta29lbmlnQHBlbmd1dHJvbml4LmRlPgotLS0KIGRyaXZlcnMvY2xrL2Nsay1kZXZy ZXMuYyB8IDMxICsrKysrKysrKysrKysrCiBpbmNsdWRlL2xpbnV4L2Nsay5oICAgICAgfCA4NyAr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystCiAyIGZpbGVzIGNoYW5nZWQs IDExNyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9j bGsvY2xrLWRldnJlcy5jIGIvZHJpdmVycy9jbGsvY2xrLWRldnJlcy5jCmluZGV4IDkxYzk5NTgx NWI1Ny4uYjU0ZjdmMGYyYTM1IDEwMDY0NAotLS0gYS9kcml2ZXJzL2Nsay9jbGstZGV2cmVzLmMK KysrIGIvZHJpdmVycy9jbGsvY2xrLWRldnJlcy5jCkBAIC02NywxMiArNjcsNDMgQEAgc3RydWN0 IGNsayAqZGV2bV9jbGtfZ2V0KHN0cnVjdCBkZXZpY2UgKmRldiwgY29uc3QgY2hhciAqaWQpCiB9 CiBFWFBPUlRfU1lNQk9MKGRldm1fY2xrX2dldCk7CiAKK3N0cnVjdCBjbGsgKmRldm1fY2xrX2dl dF9wcmVwYXJlZChzdHJ1Y3QgZGV2aWNlICpkZXYsIGNvbnN0IGNoYXIgKmlkKQoreworCXJldHVy biBfX2Rldm1fY2xrX2dldChkZXYsIGlkLCBjbGtfZ2V0LCBjbGtfcHJlcGFyZSwgY2xrX3VucHJl cGFyZSk7CisKK30KK0VYUE9SVF9TWU1CT0woZGV2bV9jbGtfZ2V0X3ByZXBhcmVkKTsKKworc3Ry dWN0IGNsayAqZGV2bV9jbGtfZ2V0X2VuYWJsZWQoc3RydWN0IGRldmljZSAqZGV2LCBjb25zdCBj aGFyICppZCkKK3sKKwlyZXR1cm4gX19kZXZtX2Nsa19nZXQoZGV2LCBpZCwgY2xrX2dldCwKKwkJ CSAgICAgIGNsa19wcmVwYXJlX2VuYWJsZSwgY2xrX2Rpc2FibGVfdW5wcmVwYXJlKTsKKworfQor RVhQT1JUX1NZTUJPTChkZXZtX2Nsa19nZXRfZW5hYmxlZCk7CisKIHN0cnVjdCBjbGsgKmRldm1f Y2xrX2dldF9vcHRpb25hbChzdHJ1Y3QgZGV2aWNlICpkZXYsIGNvbnN0IGNoYXIgKmlkKQogewog CXJldHVybiBfX2Rldm1fY2xrX2dldChkZXYsIGlkLCBjbGtfZ2V0X29wdGlvbmFsLCBOVUxMLCBO VUxMKTsKIH0KIEVYUE9SVF9TWU1CT0woZGV2bV9jbGtfZ2V0X29wdGlvbmFsKTsKIAorc3RydWN0 IGNsayAqZGV2bV9jbGtfZ2V0X29wdGlvbmFsX3ByZXBhcmVkKHN0cnVjdCBkZXZpY2UgKmRldiwg Y29uc3QgY2hhciAqaWQpCit7CisJcmV0dXJuIF9fZGV2bV9jbGtfZ2V0KGRldiwgaWQsIGNsa19n ZXRfb3B0aW9uYWwsCisJCQkgICAgICBjbGtfcHJlcGFyZSwgY2xrX3VucHJlcGFyZSk7CisKK30K K0VYUE9SVF9TWU1CT0woZGV2bV9jbGtfZ2V0X29wdGlvbmFsX3ByZXBhcmVkKTsKKworc3RydWN0 IGNsayAqZGV2bV9jbGtfZ2V0X29wdGlvbmFsX2VuYWJsZWQoc3RydWN0IGRldmljZSAqZGV2LCBj b25zdCBjaGFyICppZCkKK3sKKwlyZXR1cm4gX19kZXZtX2Nsa19nZXQoZGV2LCBpZCwgY2xrX2dl dF9vcHRpb25hbCwKKwkJCSAgICAgIGNsa19wcmVwYXJlX2VuYWJsZSwgY2xrX2Rpc2FibGVfdW5w cmVwYXJlKTsKKworfQorRVhQT1JUX1NZTUJPTChkZXZtX2Nsa19nZXRfb3B0aW9uYWxfZW5hYmxl ZCk7CisKIHN0cnVjdCBjbGtfYnVsa19kZXZyZXMgewogCXN0cnVjdCBjbGtfYnVsa19kYXRhICpj bGtzOwogCWludCBudW1fY2xrczsKZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvY2xrLmggYi9p bmNsdWRlL2xpbnV4L2Nsay5oCmluZGV4IDI2NmU4ZGUzY2I1MS4uYjNjNWRhMzg4YjA4IDEwMDY0 NAotLS0gYS9pbmNsdWRlL2xpbnV4L2Nsay5oCisrKyBiL2luY2x1ZGUvbGludXgvY2xrLmgKQEAg LTQ0OSw3ICs0NDksNyBAQCBpbnQgX19tdXN0X2NoZWNrIGRldm1fY2xrX2J1bGtfZ2V0X2FsbChz dHJ1Y3QgZGV2aWNlICpkZXYsCiAgKiB0aGUgY2xvY2sgcHJvZHVjZXIuICAoSU9XLCBAaWQgbWF5 IGJlIGlkZW50aWNhbCBzdHJpbmdzLCBidXQKICAqIGNsa19nZXQgbWF5IHJldHVybiBkaWZmZXJl bnQgY2xvY2sgcHJvZHVjZXJzIGRlcGVuZGluZyBvbiBAZGV2LikKICAqCi0gKiBEcml2ZXJzIG11 c3QgYXNzdW1lIHRoYXQgdGhlIGNsb2NrIHNvdXJjZSBpcyBub3QgZW5hYmxlZC4KKyAqIERyaXZl cnMgbXVzdCBhc3N1bWUgdGhhdCB0aGUgY2xvY2sgc291cmNlIGlzIG5laXRoZXIgcHJlcGFyZWQg bm9yIGVuYWJsZWQuCiAgKgogICogZGV2bV9jbGtfZ2V0IHNob3VsZCBub3QgYmUgY2FsbGVkIGZy b20gd2l0aGluIGludGVycnVwdCBjb250ZXh0LgogICoKQEAgLTQ1OCw2ICs0NTgsNDcgQEAgaW50 IF9fbXVzdF9jaGVjayBkZXZtX2Nsa19idWxrX2dldF9hbGwoc3RydWN0IGRldmljZSAqZGV2LAog ICovCiBzdHJ1Y3QgY2xrICpkZXZtX2Nsa19nZXQoc3RydWN0IGRldmljZSAqZGV2LCBjb25zdCBj aGFyICppZCk7CiAKKy8qKgorICogZGV2bV9jbGtfZ2V0X3ByZXBhcmVkIC0gZGV2bV9jbGtfZ2V0 KCkgKyBjbGtfcHJlcGFyZSgpCisgKiBAZGV2OiBkZXZpY2UgZm9yIGNsb2NrICJjb25zdW1lciIK KyAqIEBpZDogY2xvY2sgY29uc3VtZXIgSUQKKyAqCisgKiBSZXR1cm5zIGEgc3RydWN0IGNsayBj b3JyZXNwb25kaW5nIHRvIHRoZSBjbG9jayBwcm9kdWNlciwgb3IKKyAqIHZhbGlkIElTX0VSUigp IGNvbmRpdGlvbiBjb250YWluaW5nIGVycm5vLiAgVGhlIGltcGxlbWVudGF0aW9uCisgKiB1c2Vz IEBkZXYgYW5kIEBpZCB0byBkZXRlcm1pbmUgdGhlIGNsb2NrIGNvbnN1bWVyLCBhbmQgdGhlcmVi eQorICogdGhlIGNsb2NrIHByb2R1Y2VyLiAgKElPVywgQGlkIG1heSBiZSBpZGVudGljYWwgc3Ry aW5ncywgYnV0CisgKiBjbGtfZ2V0IG1heSByZXR1cm4gZGlmZmVyZW50IGNsb2NrIHByb2R1Y2Vy cyBkZXBlbmRpbmcgb24gQGRldi4pCisgKgorICogVGhlIHJldHVybmVkIGNsayAoaWYgdmFsaWQp IGlzIHByZXBhcmVkLiBEcml2ZXJzIG11c3QgaG93ZXZlciBhc3N1bWUgdGhhdCB0aGUKKyAqIGNs b2NrIGlzIG5vdCBlbmFibGVkLgorICoKKyAqIGRldm1fY2xrX2dldF9wcmVwYXJlZCBzaG91bGQg bm90IGJlIGNhbGxlZCBmcm9tIHdpdGhpbiBpbnRlcnJ1cHQgY29udGV4dC4KKyAqCisgKiBUaGUg Y2xvY2sgd2lsbCBhdXRvbWF0aWNhbGx5IGJlIHVucHJlcGFyZWQgYW5kIGZyZWVkIHdoZW4gdGhl CisgKiBkZXZpY2UgaXMgdW5ib3VuZCBmcm9tIHRoZSBidXMuCisgKi8KK3N0cnVjdCBjbGsgKmRl dm1fY2xrX2dldF9wcmVwYXJlZChzdHJ1Y3QgZGV2aWNlICpkZXYsIGNvbnN0IGNoYXIgKmlkKTsK KworLyoqCisgKiBkZXZtX2Nsa19nZXRfZW5hYmxlZCAtIGRldm1fY2xrX2dldCgpICsgY2xrX3By ZXBhcmVfZW5hYmxlKCkKKyAqIEBkZXY6IGRldmljZSBmb3IgY2xvY2sgImNvbnN1bWVyIgorICog QGlkOiBjbG9jayBjb25zdW1lciBJRAorICoKKyAqIFJldHVybnMgYSBzdHJ1Y3QgY2xrIGNvcnJl c3BvbmRpbmcgdG8gdGhlIGNsb2NrIHByb2R1Y2VyLCBvcgorICogdmFsaWQgSVNfRVJSKCkgY29u ZGl0aW9uIGNvbnRhaW5pbmcgZXJybm8uICBUaGUgaW1wbGVtZW50YXRpb24KKyAqIHVzZXMgQGRl diBhbmQgQGlkIHRvIGRldGVybWluZSB0aGUgY2xvY2sgY29uc3VtZXIsIGFuZCB0aGVyZWJ5Cisg KiB0aGUgY2xvY2sgcHJvZHVjZXIuICAoSU9XLCBAaWQgbWF5IGJlIGlkZW50aWNhbCBzdHJpbmdz LCBidXQKKyAqIGNsa19nZXQgbWF5IHJldHVybiBkaWZmZXJlbnQgY2xvY2sgcHJvZHVjZXJzIGRl cGVuZGluZyBvbiBAZGV2LikKKyAqCisgKiBUaGUgcmV0dXJuZWQgY2xrIChpZiB2YWxpZCkgaXMg cHJlcGFyZWQgYW5kIGVuYWJsZWQuCisgKgorICogZGV2bV9jbGtfZ2V0X3ByZXBhcmVkIHNob3Vs ZCBub3QgYmUgY2FsbGVkIGZyb20gd2l0aGluIGludGVycnVwdCBjb250ZXh0LgorICoKKyAqIFRo ZSBjbG9jayB3aWxsIGF1dG9tYXRpY2FsbHkgYmUgZGlzYWJsZWQsIHVucHJlcGFyZWQgYW5kIGZy ZWVkIHdoZW4gdGhlCisgKiBkZXZpY2UgaXMgdW5ib3VuZCBmcm9tIHRoZSBidXMuCisgKi8KK3N0 cnVjdCBjbGsgKmRldm1fY2xrX2dldF9lbmFibGVkKHN0cnVjdCBkZXZpY2UgKmRldiwgY29uc3Qg Y2hhciAqaWQpOworCiAvKioKICAqIGRldm1fY2xrX2dldF9vcHRpb25hbCAtIGxvb2t1cCBhbmQg b2J0YWluIGEgbWFuYWdlZCByZWZlcmVuY2UgdG8gYW4gb3B0aW9uYWwKICAqCQkJICAgY2xvY2sg cHJvZHVjZXIuCkBAIC00NjksNiArNTEwLDI2IEBAIHN0cnVjdCBjbGsgKmRldm1fY2xrX2dldChz dHJ1Y3QgZGV2aWNlICpkZXYsIGNvbnN0IGNoYXIgKmlkKTsKICAqLwogc3RydWN0IGNsayAqZGV2 bV9jbGtfZ2V0X29wdGlvbmFsKHN0cnVjdCBkZXZpY2UgKmRldiwgY29uc3QgY2hhciAqaWQpOwog CisvKioKKyAqIGRldm1fY2xrX2dldF9vcHRpb25hbF9wcmVwYXJlZCAtIGRldm1fY2xrX2dldF9v cHRpb25hbCgpICsgY2xrX3ByZXBhcmUoKQorICogQGRldjogZGV2aWNlIGZvciBjbG9jayAiY29u c3VtZXIiCisgKiBAaWQ6IGNsb2NrIGNvbnN1bWVyIElECisgKgorICogQmVoYXZlcyB0aGUgc2Ft ZSBhcyBkZXZtX2Nsa19nZXRfcHJlcGFyZWQoKSBleGNlcHQgd2hlcmUgdGhlcmUgaXMgbm8gY2xv Y2sgcHJvZHVjZXIuCisgKiBJbiB0aGlzIGNhc2UsIGluc3RlYWQgb2YgcmV0dXJuaW5nIC1FTk9F TlQsIHRoZSBmdW5jdGlvbiByZXR1cm5zIE5VTEwuCisgKi8KK3N0cnVjdCBjbGsgKmRldm1fY2xr X2dldF9vcHRpb25hbF9wcmVwYXJlZChzdHJ1Y3QgZGV2aWNlICpkZXYsIGNvbnN0IGNoYXIgKmlk KTsKKworLyoqCisgKiBkZXZtX2Nsa19nZXRfb3B0aW9uYWxfZW5hYmxlZCAtIGRldm1fY2xrX2dl dF9vcHRpb25hbCgpICsgY2xrX3ByZXBhcmVfZW5hYmxlKCkKKyAqIEBkZXY6IGRldmljZSBmb3Ig Y2xvY2sgImNvbnN1bWVyIgorICogQGlkOiBjbG9jayBjb25zdW1lciBJRAorICoKKyAqIEJlaGF2 ZXMgdGhlIHNhbWUgYXMgZGV2bV9jbGtfZ2V0X2VuYWJsZWQoKSBleGNlcHQgd2hlcmUgdGhlcmUg aXMgbm8gY2xvY2sgcHJvZHVjZXIuCisgKiBJbiB0aGlzIGNhc2UsIGluc3RlYWQgb2YgcmV0dXJu aW5nIC1FTk9FTlQsIHRoZSBmdW5jdGlvbiByZXR1cm5zIE5VTEwuCisgKi8KK3N0cnVjdCBjbGsg KmRldm1fY2xrX2dldF9vcHRpb25hbF9lbmFibGVkKHN0cnVjdCBkZXZpY2UgKmRldiwgY29uc3Qg Y2hhciAqaWQpOworCiAvKioKICAqIGRldm1fZ2V0X2Nsa19mcm9tX2NoaWxkIC0gbG9va3VwIGFu ZCBvYnRhaW4gYSBtYW5hZ2VkIHJlZmVyZW5jZSB0byBhCiAgKgkJCSAgICAgY2xvY2sgcHJvZHVj ZXIgZnJvbSBjaGlsZCBub2RlLgpAQCAtODEzLDEyICs4NzQsMzYgQEAgc3RhdGljIGlubGluZSBz dHJ1Y3QgY2xrICpkZXZtX2Nsa19nZXQoc3RydWN0IGRldmljZSAqZGV2LCBjb25zdCBjaGFyICpp ZCkKIAlyZXR1cm4gTlVMTDsKIH0KIAorc3RhdGljIGlubGluZSBzdHJ1Y3QgY2xrICpkZXZtX2Ns a19nZXRfcHJlcGFyZWQoc3RydWN0IGRldmljZSAqZGV2LAorCQkJCQkJY29uc3QgY2hhciAqaWQp Cit7CisJcmV0dXJuIE5VTEw7Cit9CisKK3N0YXRpYyBpbmxpbmUgc3RydWN0IGNsayAqZGV2bV9j bGtfZ2V0X2VuYWJsZWQoc3RydWN0IGRldmljZSAqZGV2LAorCQkJCQkgICAgICAgY29uc3QgY2hh ciAqaWQpCit7CisJcmV0dXJuIE5VTEw7Cit9CisKIHN0YXRpYyBpbmxpbmUgc3RydWN0IGNsayAq ZGV2bV9jbGtfZ2V0X29wdGlvbmFsKHN0cnVjdCBkZXZpY2UgKmRldiwKIAkJCQkJCWNvbnN0IGNo YXIgKmlkKQogewogCXJldHVybiBOVUxMOwogfQogCitzdGF0aWMgaW5saW5lIHN0cnVjdCBjbGsg KmRldm1fY2xrX2dldF9vcHRpb25hbF9wcmVwYXJlZChzdHJ1Y3QgZGV2aWNlICpkZXYsCisJCQkJ CQkJIGNvbnN0IGNoYXIgKmlkKQoreworCXJldHVybiBOVUxMOworfQorCitzdGF0aWMgaW5saW5l IHN0cnVjdCBjbGsgKmRldm1fY2xrX2dldF9vcHRpb25hbF9lbmFibGVkKHN0cnVjdCBkZXZpY2Ug KmRldiwKKwkJCQkJCQljb25zdCBjaGFyICppZCkKK3sKKwlyZXR1cm4gTlVMTDsKK30KKwogc3Rh dGljIGlubGluZSBpbnQgX19tdXN0X2NoZWNrIGRldm1fY2xrX2J1bGtfZ2V0KHN0cnVjdCBkZXZp Y2UgKmRldiwgaW50IG51bV9jbGtzLAogCQkJCQkJIHN0cnVjdCBjbGtfYnVsa19kYXRhICpjbGtz KQogewotLSAKMi4zMC4yCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgtYXJtLWtlcm5lbEBs aXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlz dGluZm8vbGludXgtYXJtLWtlcm5lbAo=