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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 59CC0C433EF for ; Mon, 17 Jan 2022 06:24:38 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234691AbiAQGYe (ORCPT ); Mon, 17 Jan 2022 01:24:34 -0500 Received: from mail-sz.amlogic.com ([211.162.65.117]:60889 "EHLO mail-sz.amlogic.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234661AbiAQGYc (ORCPT ); Mon, 17 Jan 2022 01:24:32 -0500 Received: from [10.28.39.106] (10.28.39.106) by mail-sz.amlogic.com (10.28.11.5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2176.2; Mon, 17 Jan 2022 14:24:28 +0800 Message-ID: Date: Mon, 17 Jan 2022 14:24:28 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:91.0) Gecko/20100101 Thunderbird/91.5.0 Subject: Re: [PATCH v9 4/4] clk: meson: add sub MMC clock controller driver Content-Language: en-US To: Stephen Boyd , Jerome Brunet , Kevin Hilman , Michael Turquette , Neil Armstrong , Rob Herring , CC: Martin Blumenstingl , Jianxin Pan , Victor Wan , XianWei Zhao , Kelvin Zhang , BiChao Zheng , YongHui Yu , , , References: <20220113115745.45826-1-liang.yang@amlogic.com> <20220113115745.45826-5-liang.yang@amlogic.com> <20220113213513.9819AC36AEA@smtp.kernel.org> <09ff9044-9abc-d1ad-26c1-5e6ece56d30c@amlogic.com> <20220114230130.35EAAC36AE7@smtp.kernel.org> From: Liang Yang In-Reply-To: <20220114230130.35EAAC36AE7@smtp.kernel.org> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-Originating-IP: [10.28.39.106] X-ClientProxiedBy: mail-sz.amlogic.com (10.28.11.5) To mail-sz.amlogic.com (10.28.11.5) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2022/1/15 7:01, Stephen Boyd wrote: > [ EXTERNAL EMAIL ] > > Quoting Liang Yang (2022-01-13 21:14:46) >> On 2022/1/14 5:35, Stephen Boyd wrote: >>> Quoting Liang Yang (2022-01-13 03:57:45) >>>> diff --git a/drivers/clk/meson/mmc-clkc.c b/drivers/clk/meson/mmc-clkc.c >>>> new file mode 100644 >>>> index 000000000000..f53977f61390 >>>> --- /dev/null >>>> +++ b/drivers/clk/meson/mmc-clkc.c >>>> @@ -0,0 +1,300 @@ > [..] >>>> + >>>> +static int mmc_clkc_probe(struct platform_device *pdev) >>>> +{ >>>> + struct clk_hw_onecell_data *onecell_data; >>>> + struct device *dev = &pdev->dev; >>>> + struct mmc_clkc_data *data; >>>> + struct regmap *map; >>>> + struct clk_regmap *clk, *core; >>>> + struct meson_sclk_div_data *div_data; >>>> + >>>> + /*cast to drop the const in match->data*/ >>> >>> Space after *, also why do we need to cast away const? The user of this >>> pointer passes it all the way down to mmc_clkc_register_clk() which >>> could take the data as const void pointer and decide to cast away const >>> there. >> >> if use 'const' here, it will report a warning: >> drivers/clk/meson/mmc-clkc.c:224:7: error: assignment discards ‘const’ >> qualifier from pointer targe >> t type [-Werror=discarded-qualifiers] >> >> data = (const struct mmc_clkc_data *)of_device_get_match_data(dev); > > Of course. The type declaration up above needs const added to it.The parm of mmc_clkc_register_clk_with_parent(...., void *data) does not have 'const', so make the type declaration cause a further 'const' cast warning. Could i copy these infos just like below: struct mmc_clkc_data *data_clkc; ...... data = of_device_get_match_data(dev); data_clkc = devm_kmalloc(dev, sizeof(*data_clkc), GFP_KERNEL); memcpy(data_clkc, data, sizeof(*data_clkc)); ...... clk = mmc_clkc_register_clk_with_parent(...., &data_clkc->rx); > > . 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 A37A3C433EF for ; Mon, 17 Jan 2022 06:24:52 +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-Type: Content-Transfer-Encoding:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:From:References:CC:To:Subject: MIME-Version:Date:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=foYZAmOVhCFPjozGqmNn3s0wxGZAyGhs4joQw+PvWDw=; b=EBolWd5UXro3NB fz7o3CLxK2l/NAPyx9oGQV3TKNoc2YhwO/q8QDLFo+lDpTNP0L1xqXU11EKNMhRRU82u3UxSyijg1 NavcxPIit83hHashim0purWV4BvBtCXLUpBK+uieDjKj88lh9PdQkkuDW8qGhRxzED9pQQVzyjg50 KT1cODKk7eQ+A2P1Sb/nNIVoQvvf8gx9q7UE76u4ZhIiWeY8Xu2frFLyQpxaBpos5JjUB1bzesoch 0q+xUVgWoOeQDC/jFB353J7YqSaYzoK3yoUTKHO553Lpg0ok1NGhUoVUuSIGAtbn7zFZia3byFSsH UvLpjIEUwk2iuldNET4g==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1n9LRe-00DfHw-Mz; Mon, 17 Jan 2022 06:24:46 +0000 Received: from mail-sz.amlogic.com ([211.162.65.117]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1n9LRS-00DfGE-V5; Mon, 17 Jan 2022 06:24:36 +0000 Received: from [10.28.39.106] (10.28.39.106) by mail-sz.amlogic.com (10.28.11.5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2176.2; Mon, 17 Jan 2022 14:24:28 +0800 Message-ID: Date: Mon, 17 Jan 2022 14:24:28 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:91.0) Gecko/20100101 Thunderbird/91.5.0 Subject: Re: [PATCH v9 4/4] clk: meson: add sub MMC clock controller driver Content-Language: en-US To: Stephen Boyd , Jerome Brunet , Kevin Hilman , Michael Turquette , Neil Armstrong , Rob Herring , CC: Martin Blumenstingl , Jianxin Pan , Victor Wan , XianWei Zhao , Kelvin Zhang , BiChao Zheng , YongHui Yu , , , References: <20220113115745.45826-1-liang.yang@amlogic.com> <20220113115745.45826-5-liang.yang@amlogic.com> <20220113213513.9819AC36AEA@smtp.kernel.org> <09ff9044-9abc-d1ad-26c1-5e6ece56d30c@amlogic.com> <20220114230130.35EAAC36AE7@smtp.kernel.org> From: Liang Yang In-Reply-To: <20220114230130.35EAAC36AE7@smtp.kernel.org> X-Originating-IP: [10.28.39.106] X-ClientProxiedBy: mail-sz.amlogic.com (10.28.11.5) To mail-sz.amlogic.com (10.28.11.5) X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220116_222435_028532_8150DA01 X-CRM114-Status: UNSURE ( 7.97 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-amlogic@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-amlogic" Errors-To: linux-amlogic-bounces+linux-amlogic=archiver.kernel.org@lists.infradead.org CgpPbiAyMDIyLzEvMTUgNzowMSwgU3RlcGhlbiBCb3lkIHdyb3RlOgo+IFsgRVhURVJOQUwgRU1B SUwgXQo+IAo+IFF1b3RpbmcgTGlhbmcgWWFuZyAoMjAyMi0wMS0xMyAyMToxNDo0NikKPj4gT24g MjAyMi8xLzE0IDU6MzUsIFN0ZXBoZW4gQm95ZCB3cm90ZToKPj4+IFF1b3RpbmcgTGlhbmcgWWFu ZyAoMjAyMi0wMS0xMyAwMzo1Nzo0NSkKPj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9jbGsvbWVz b24vbW1jLWNsa2MuYyBiL2RyaXZlcnMvY2xrL21lc29uL21tYy1jbGtjLmMKPj4+PiBuZXcgZmls ZSBtb2RlIDEwMDY0NAo+Pj4+IGluZGV4IDAwMDAwMDAwMDAwMC4uZjUzOTc3ZjYxMzkwCj4+Pj4g LS0tIC9kZXYvbnVsbAo+Pj4+ICsrKyBiL2RyaXZlcnMvY2xrL21lc29uL21tYy1jbGtjLmMKPj4+ PiBAQCAtMCwwICsxLDMwMCBAQAo+IFsuLl0KPj4+PiArCj4+Pj4gK3N0YXRpYyBpbnQgbW1jX2Ns a2NfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikKPj4+PiArewo+Pj4+ICsgICAg ICAgc3RydWN0IGNsa19od19vbmVjZWxsX2RhdGEgKm9uZWNlbGxfZGF0YTsKPj4+PiArICAgICAg IHN0cnVjdCBkZXZpY2UgKmRldiA9ICZwZGV2LT5kZXY7Cj4+Pj4gKyAgICAgICBzdHJ1Y3QgbW1j X2Nsa2NfZGF0YSAqZGF0YTsKPj4+PiArICAgICAgIHN0cnVjdCByZWdtYXAgKm1hcDsKPj4+PiAr ICAgICAgIHN0cnVjdCBjbGtfcmVnbWFwICpjbGssICpjb3JlOwo+Pj4+ICsgICAgICAgc3RydWN0 IG1lc29uX3NjbGtfZGl2X2RhdGEgKmRpdl9kYXRhOwo+Pj4+ICsKPj4+PiArICAgICAgIC8qY2Fz dCB0byBkcm9wIHRoZSBjb25zdCBpbiBtYXRjaC0+ZGF0YSovCj4+Pgo+Pj4gU3BhY2UgYWZ0ZXIg KiwgYWxzbyB3aHkgZG8gd2UgbmVlZCB0byBjYXN0IGF3YXkgY29uc3Q/IFRoZSB1c2VyIG9mIHRo aXMKPj4+IHBvaW50ZXIgcGFzc2VzIGl0IGFsbCB0aGUgd2F5IGRvd24gdG8gbW1jX2Nsa2NfcmVn aXN0ZXJfY2xrKCkgd2hpY2gKPj4+IGNvdWxkIHRha2UgdGhlIGRhdGEgYXMgY29uc3Qgdm9pZCBw b2ludGVyIGFuZCBkZWNpZGUgdG8gY2FzdCBhd2F5IGNvbnN0Cj4+PiB0aGVyZS4KPj4KPj4gaWYg dXNlICdjb25zdCcgaGVyZSwgaXQgIHdpbGwgcmVwb3J0IGEgd2FybmluZzoKPj4gZHJpdmVycy9j bGsvbWVzb24vbW1jLWNsa2MuYzoyMjQ6NzogZXJyb3I6IGFzc2lnbm1lbnQgZGlzY2FyZHMg4oCY Y29uc3TigJkKPj4gcXVhbGlmaWVyIGZyb20gcG9pbnRlciB0YXJnZQo+PiB0IHR5cGUgWy1XZXJy b3I9ZGlzY2FyZGVkLXF1YWxpZmllcnNdCj4+Cj4+ICAgICBkYXRhID0gKGNvbnN0IHN0cnVjdCBt bWNfY2xrY19kYXRhICopb2ZfZGV2aWNlX2dldF9tYXRjaF9kYXRhKGRldik7Cj4gCj4gT2YgY291 cnNlLiBUaGUgdHlwZSBkZWNsYXJhdGlvbiB1cCBhYm92ZSBuZWVkcyBjb25zdCBhZGRlZCB0byBp dC5UaGUgcGFybSBvZiBtbWNfY2xrY19yZWdpc3Rlcl9jbGtfd2l0aF9wYXJlbnQoLi4uLiwgdm9p ZCAqZGF0YSkgZG9lcyBub3QgCmhhdmUgJ2NvbnN0Jywgc28gbWFrZSB0aGUgdHlwZSBkZWNsYXJh dGlvbiBjYXVzZSBhIGZ1cnRoZXIgJ2NvbnN0JyBjYXN0IAp3YXJuaW5nLiBDb3VsZCBpIGNvcHkg dGhlc2UgaW5mb3MganVzdCBsaWtlIGJlbG93OgoKc3RydWN0IG1tY19jbGtjX2RhdGEgKmRhdGFf Y2xrYzsKLi4uLi4uCmRhdGEgPSBvZl9kZXZpY2VfZ2V0X21hdGNoX2RhdGEoZGV2KTsKZGF0YV9j bGtjID0gZGV2bV9rbWFsbG9jKGRldiwgc2l6ZW9mKCpkYXRhX2Nsa2MpLCBHRlBfS0VSTkVMKTsK bWVtY3B5KGRhdGFfY2xrYywgZGF0YSwgc2l6ZW9mKCpkYXRhX2Nsa2MpKTsKLi4uLi4uCmNsayA9 IG1tY19jbGtjX3JlZ2lzdGVyX2Nsa193aXRoX3BhcmVudCguLi4uLCAmZGF0YV9jbGtjLT5yeCk7 Cgo+IAo+IC4KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CmxpbnV4LWFtbG9naWMgbWFpbGluZyBsaXN0CmxpbnV4LWFtbG9naWNAbGlzdHMuaW5mcmFkZWFk Lm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFt bG9naWMK 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 BA1FEC433EF for ; Mon, 17 Jan 2022 06:26:10 +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-Type: Content-Transfer-Encoding:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:From:References:CC:To:Subject: MIME-Version:Date:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=wf3goYcinkjD2NaYVrK3K/12LARpq9h5QkeMBsNSBHE=; b=b56TSMa/hg0Wdf Vihi8qoVyl6PwlJRfiJj4B89jlf19v3KEGErKxUxUdu5T9E02tuqwHXktrYV8Iw/WYY6InmhxKTuL OXP4rZkHwwcTPlIFPxBtHmIYEnbRDQtxoczpzojK76uxQYY/5c3V2q2SdZsXOdopwtZXLyUu/G+xL jz+Wqn3hCoWxnAbKzf/lupsH5fUVhmZk7cp+CpgnLKliuLJOkQOtJjLAFT7NN4hFdmXARHIAQe/e/ J0FTNbQqf2A+g889gCmDLKMec96rM+LzDLUJ5p/OM71J9kjol3euPbaR/pGI0E2elKtaGqj+9YbdN g9EPg9t2JNj3LlXhUzKw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1n9LRW-00DfGo-6g; Mon, 17 Jan 2022 06:24:38 +0000 Received: from mail-sz.amlogic.com ([211.162.65.117]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1n9LRS-00DfGE-V5; Mon, 17 Jan 2022 06:24:36 +0000 Received: from [10.28.39.106] (10.28.39.106) by mail-sz.amlogic.com (10.28.11.5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2176.2; Mon, 17 Jan 2022 14:24:28 +0800 Message-ID: Date: Mon, 17 Jan 2022 14:24:28 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:91.0) Gecko/20100101 Thunderbird/91.5.0 Subject: Re: [PATCH v9 4/4] clk: meson: add sub MMC clock controller driver Content-Language: en-US To: Stephen Boyd , Jerome Brunet , Kevin Hilman , Michael Turquette , Neil Armstrong , Rob Herring , CC: Martin Blumenstingl , Jianxin Pan , Victor Wan , XianWei Zhao , Kelvin Zhang , BiChao Zheng , YongHui Yu , , , References: <20220113115745.45826-1-liang.yang@amlogic.com> <20220113115745.45826-5-liang.yang@amlogic.com> <20220113213513.9819AC36AEA@smtp.kernel.org> <09ff9044-9abc-d1ad-26c1-5e6ece56d30c@amlogic.com> <20220114230130.35EAAC36AE7@smtp.kernel.org> From: Liang Yang In-Reply-To: <20220114230130.35EAAC36AE7@smtp.kernel.org> X-Originating-IP: [10.28.39.106] X-ClientProxiedBy: mail-sz.amlogic.com (10.28.11.5) To mail-sz.amlogic.com (10.28.11.5) X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220116_222435_028532_8150DA01 X-CRM114-Status: UNSURE ( 7.97 ) X-CRM114-Notice: Please train this message. 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-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org CgpPbiAyMDIyLzEvMTUgNzowMSwgU3RlcGhlbiBCb3lkIHdyb3RlOgo+IFsgRVhURVJOQUwgRU1B SUwgXQo+IAo+IFF1b3RpbmcgTGlhbmcgWWFuZyAoMjAyMi0wMS0xMyAyMToxNDo0NikKPj4gT24g MjAyMi8xLzE0IDU6MzUsIFN0ZXBoZW4gQm95ZCB3cm90ZToKPj4+IFF1b3RpbmcgTGlhbmcgWWFu ZyAoMjAyMi0wMS0xMyAwMzo1Nzo0NSkKPj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9jbGsvbWVz b24vbW1jLWNsa2MuYyBiL2RyaXZlcnMvY2xrL21lc29uL21tYy1jbGtjLmMKPj4+PiBuZXcgZmls ZSBtb2RlIDEwMDY0NAo+Pj4+IGluZGV4IDAwMDAwMDAwMDAwMC4uZjUzOTc3ZjYxMzkwCj4+Pj4g LS0tIC9kZXYvbnVsbAo+Pj4+ICsrKyBiL2RyaXZlcnMvY2xrL21lc29uL21tYy1jbGtjLmMKPj4+ PiBAQCAtMCwwICsxLDMwMCBAQAo+IFsuLl0KPj4+PiArCj4+Pj4gK3N0YXRpYyBpbnQgbW1jX2Ns a2NfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikKPj4+PiArewo+Pj4+ICsgICAg ICAgc3RydWN0IGNsa19od19vbmVjZWxsX2RhdGEgKm9uZWNlbGxfZGF0YTsKPj4+PiArICAgICAg IHN0cnVjdCBkZXZpY2UgKmRldiA9ICZwZGV2LT5kZXY7Cj4+Pj4gKyAgICAgICBzdHJ1Y3QgbW1j X2Nsa2NfZGF0YSAqZGF0YTsKPj4+PiArICAgICAgIHN0cnVjdCByZWdtYXAgKm1hcDsKPj4+PiAr ICAgICAgIHN0cnVjdCBjbGtfcmVnbWFwICpjbGssICpjb3JlOwo+Pj4+ICsgICAgICAgc3RydWN0 IG1lc29uX3NjbGtfZGl2X2RhdGEgKmRpdl9kYXRhOwo+Pj4+ICsKPj4+PiArICAgICAgIC8qY2Fz dCB0byBkcm9wIHRoZSBjb25zdCBpbiBtYXRjaC0+ZGF0YSovCj4+Pgo+Pj4gU3BhY2UgYWZ0ZXIg KiwgYWxzbyB3aHkgZG8gd2UgbmVlZCB0byBjYXN0IGF3YXkgY29uc3Q/IFRoZSB1c2VyIG9mIHRo aXMKPj4+IHBvaW50ZXIgcGFzc2VzIGl0IGFsbCB0aGUgd2F5IGRvd24gdG8gbW1jX2Nsa2NfcmVn aXN0ZXJfY2xrKCkgd2hpY2gKPj4+IGNvdWxkIHRha2UgdGhlIGRhdGEgYXMgY29uc3Qgdm9pZCBw b2ludGVyIGFuZCBkZWNpZGUgdG8gY2FzdCBhd2F5IGNvbnN0Cj4+PiB0aGVyZS4KPj4KPj4gaWYg dXNlICdjb25zdCcgaGVyZSwgaXQgIHdpbGwgcmVwb3J0IGEgd2FybmluZzoKPj4gZHJpdmVycy9j bGsvbWVzb24vbW1jLWNsa2MuYzoyMjQ6NzogZXJyb3I6IGFzc2lnbm1lbnQgZGlzY2FyZHMg4oCY Y29uc3TigJkKPj4gcXVhbGlmaWVyIGZyb20gcG9pbnRlciB0YXJnZQo+PiB0IHR5cGUgWy1XZXJy b3I9ZGlzY2FyZGVkLXF1YWxpZmllcnNdCj4+Cj4+ICAgICBkYXRhID0gKGNvbnN0IHN0cnVjdCBt bWNfY2xrY19kYXRhICopb2ZfZGV2aWNlX2dldF9tYXRjaF9kYXRhKGRldik7Cj4gCj4gT2YgY291 cnNlLiBUaGUgdHlwZSBkZWNsYXJhdGlvbiB1cCBhYm92ZSBuZWVkcyBjb25zdCBhZGRlZCB0byBp dC5UaGUgcGFybSBvZiBtbWNfY2xrY19yZWdpc3Rlcl9jbGtfd2l0aF9wYXJlbnQoLi4uLiwgdm9p ZCAqZGF0YSkgZG9lcyBub3QgCmhhdmUgJ2NvbnN0Jywgc28gbWFrZSB0aGUgdHlwZSBkZWNsYXJh dGlvbiBjYXVzZSBhIGZ1cnRoZXIgJ2NvbnN0JyBjYXN0IAp3YXJuaW5nLiBDb3VsZCBpIGNvcHkg dGhlc2UgaW5mb3MganVzdCBsaWtlIGJlbG93OgoKc3RydWN0IG1tY19jbGtjX2RhdGEgKmRhdGFf Y2xrYzsKLi4uLi4uCmRhdGEgPSBvZl9kZXZpY2VfZ2V0X21hdGNoX2RhdGEoZGV2KTsKZGF0YV9j bGtjID0gZGV2bV9rbWFsbG9jKGRldiwgc2l6ZW9mKCpkYXRhX2Nsa2MpLCBHRlBfS0VSTkVMKTsK bWVtY3B5KGRhdGFfY2xrYywgZGF0YSwgc2l6ZW9mKCpkYXRhX2Nsa2MpKTsKLi4uLi4uCmNsayA9 IG1tY19jbGtjX3JlZ2lzdGVyX2Nsa193aXRoX3BhcmVudCguLi4uLCAmZGF0YV9jbGtjLT5yeCk7 Cgo+IAo+IC4KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5m cmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xp bnV4LWFybS1rZXJuZWwK