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 272DAC7EE2D for ; Fri, 5 May 2023 11:28:27 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231941AbjEEL20 (ORCPT ); Fri, 5 May 2023 07:28:26 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39050 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231998AbjEEL2Q (ORCPT ); Fri, 5 May 2023 07:28:16 -0400 Received: from wout1-smtp.messagingengine.com (wout1-smtp.messagingengine.com [64.147.123.24]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CFAA81A48C for ; Fri, 5 May 2023 04:28:10 -0700 (PDT) Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.west.internal (Postfix) with ESMTP id A5E623200907; Fri, 5 May 2023 07:28:09 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute5.internal (MEProxy); Fri, 05 May 2023 07:28:10 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cerno.tech; h=cc :cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm2; t= 1683286089; x=1683372489; bh=sdlpRXLo9d8u/J02F/pSNfCPqLv0NBH2V0R YgvZa5mY=; b=JRNlKYx5ZjG7zOJpXUi3/XJSejKbZX1IEatjK+1LzXY09LJGIj7 b1eMzGYQcDKMI4wVEV2C6OzNSN8N2+Isz5YyvwZoHGaUswBpKHkTIhzO1pYUGnZR kqiWNG+p8VNNX5LGxZP1CplMliPHQ81KOLQ+5se8n6UBb6UnnXIq4S49tiUePC0Y 6qe3iP9fnBoFuAU3YAnSsXzgdMQxNPRmmHFXxS2y6Zyp4qIks/ZnFqTbaPTFKOKN vNe7ZlYYjUIvUE+M+ELC70JKlAF7A77ZYYPa3vVGTH4TAuCz7FrwrAtd4TgWTTvZ pm2w0Wm8muoP/2goGduAbvztEp6xfry3K5g== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t= 1683286089; x=1683372489; bh=sdlpRXLo9d8u/J02F/pSNfCPqLv0NBH2V0R YgvZa5mY=; b=NUCmixA9zL8L/xBglG89pLuYW0lZeXXEAbPbUgdjtmkUnJ5s7ko L8WugmAFgNNZsF1pZ8TW/H2aE+W9JN9GgTSiOvYwKw9fYhw5LCxAkCDJPnTVWXT8 c+ZtFj9TUW6Cmb01rdQlvf2uGht73/nvsCqhR7mM2+mftymVjnR2kNh69nM8zyQz eIneK4xFDDQIUbUJXsGdDSaW5z4yFphLMxC2nD9qWTWSAOD4SsF8fVpDkenwGajh f8Xydgfm966mPT0GJvVDF1Kr5BXYlpX4OCtIH0M47nNCIacC4Mwg2LN76FgOnFZe UTl7ZsLIXRJiOflWiOmaBnbaaFZV6BvrudQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeefvddggedtucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephfffufggtgfgkfhfjgfvvefosehtkeertdertdejnecuhfhrohhmpeforgig ihhmvgcutfhiphgrrhguuceomhgrgihimhgvsegtvghrnhhordhtvggthheqnecuggftrf grthhtvghrnhepudduudfhveejteefgedvffdvvedvjedugedukeejhedtlefhffevtefh jeeltdevnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomh epmhgrgihimhgvsegtvghrnhhordhtvggthh X-ME-Proxy: Feedback-ID: i8771445c:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri, 5 May 2023 07:28:08 -0400 (EDT) From: Maxime Ripard Date: Fri, 05 May 2023 13:25:50 +0200 Subject: [PATCH v4 48/68] clk: actions: composite: fact: Switch to determine_rate MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit Message-Id: <20221018-clk-range-checks-fixes-v4-48-971d5077e7d2@cerno.tech> References: <20221018-clk-range-checks-fixes-v4-0-971d5077e7d2@cerno.tech> In-Reply-To: <20221018-clk-range-checks-fixes-v4-0-971d5077e7d2@cerno.tech> To: Michael Turquette , Stephen Boyd Cc: linux-clk@vger.kernel.org, Maxime Ripard , =?utf-8?q?Andreas_F=C3=A4rber?= , Manivannan Sadhasivam , linux-actions@lists.infradead.org, linux-arm-kernel@lists.infradead.org X-Mailer: b4 0.12.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2964; i=maxime@cerno.tech; h=from:subject:message-id; bh=uyBaAmdNnpNkmO3cXNcw5v1QgunRrFr2A3EejTTdAcw=; b=owGbwMvMwCX2+D1vfrpE4FHG02pJDCkhz5dk5XiULZ1mt7v/ydqcltQ5arNe2MwO/b0pW76nWb+0 gv9DRykLgxgXg6yYIkuMsPmSuFOzXney8c2DmcPKBDKEgYtTACai8oSR4eC6gJLpr+pi5yVslVlx8P yLFXyvb3j1ZbGf2VhgrN220Yjhr0Cl9lkWabGDHiduBn3Qfa6mcMLHJm2lTr74pwWcqk1NDAA= X-Developer-Key: i=maxime@cerno.tech; a=openpgp; fpr=BE5675C37E818C8B5764241C254BCFC56BF6CE8D Precedence: bulk List-ID: X-Mailing-List: linux-clk@vger.kernel.org The Actions composite factor clocks implements a mux with a set_parent hook, but doesn't provide a determine_rate implementation. This is a bit odd, since set_parent() is there to, as its name implies, change the parent of a clock. However, the most likely candidate to trigger that parent change is a call to clk_set_rate(), with determine_rate() figuring out which parent is the best suited for a given rate. The other trigger would be a call to clk_set_parent(), but it's far less used, and it doesn't look like there's any obvious user for that clock. So, the set_parent hook is effectively unused, possibly because of an oversight. However, it could also be an explicit decision by the original author to avoid any reparenting but through an explicit call to clk_set_parent(). The driver does implement round_rate() though, which means that we can change the rate of the clock, but we will never get to change the parent. However, It's hard to tell whether it's been done on purpose or not. Since we'll start mandating a determine_rate() implementation, let's convert the round_rate() implementation to a determine_rate(), which will also make the current behavior explicit. And if it was an oversight, the clock behaviour can be adjusted later on. Cc: "Andreas Färber" Cc: Manivannan Sadhasivam Cc: linux-actions@lists.infradead.org Cc: linux-arm-kernel@lists.infradead.org Signed-off-by: Maxime Ripard --- drivers/clk/actions/owl-composite.c | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/drivers/clk/actions/owl-composite.c b/drivers/clk/actions/owl-composite.c index 2f1e282134b2..48f177f6ce9c 100644 --- a/drivers/clk/actions/owl-composite.c +++ b/drivers/clk/actions/owl-composite.c @@ -86,14 +86,20 @@ static int owl_comp_div_set_rate(struct clk_hw *hw, unsigned long rate, rate, parent_rate); } -static long owl_comp_fact_round_rate(struct clk_hw *hw, unsigned long rate, - unsigned long *parent_rate) +static int owl_comp_fact_determine_rate(struct clk_hw *hw, + struct clk_rate_request *req) { struct owl_composite *comp = hw_to_owl_comp(hw); + long rate; - return owl_factor_helper_round_rate(&comp->common, - &comp->rate.factor_hw, - rate, parent_rate); + rate = owl_factor_helper_round_rate(&comp->common, + &comp->rate.factor_hw, + req->rate, &req->best_parent_rate); + if (rate < 0) + return rate; + + req->rate = rate; + return 0; } static unsigned long owl_comp_fact_recalc_rate(struct clk_hw *hw, @@ -175,7 +181,7 @@ const struct clk_ops owl_comp_fact_ops = { .is_enabled = owl_comp_is_enabled, /* fact_ops */ - .round_rate = owl_comp_fact_round_rate, + .determine_rate = owl_comp_fact_determine_rate, .recalc_rate = owl_comp_fact_recalc_rate, .set_rate = owl_comp_fact_set_rate, }; -- 2.40.0 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 361FFC77B75 for ; Fri, 5 May 2023 11:29:17 +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:Cc:To:In-Reply-To:References:Message-Id :MIME-Version:Subject:Date:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=cTrDfhZZ1+xiqedMN2m2dgxc5xBxqVaG5HuVtYD5l+A=; b=P2tje1epbfFxaq 2vchxqHwUmkYzV0APajH3UWFgjog0mr5wE1vPDyboEJCXEsI9WVEYY86GWkdwWi+P2O8bNgXQic+U N9QnfARgMiKttoikixAkoQrJQ2FfOP7Zx8KwKLGz1VdmJ20I2hJo6lnBp0FK5h15DaBYZb2hLm3O/ 4osu4kb01l/S4I3RvUQbTsKpv3t/T49k3G+oyL6T3vu9DV2YvRL80J4dZbYEAbpsWs0nCP7ku9XKA HDmh4ijka3al80xnFcN518LqSAaaxFuZI1feDEdeTdSIcS4xvbvZnSN+CqpY6wwCFGud8iNbfptna 6111UFJ3xg99+8ul4j4Q==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1putbk-00AgCT-1W; Fri, 05 May 2023 11:28:16 +0000 Received: from wout1-smtp.messagingengine.com ([64.147.123.24]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1putbe-00Ag8J-2J; Fri, 05 May 2023 11:28:12 +0000 Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.west.internal (Postfix) with ESMTP id A5E623200907; Fri, 5 May 2023 07:28:09 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute5.internal (MEProxy); Fri, 05 May 2023 07:28:10 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cerno.tech; h=cc :cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm2; t= 1683286089; x=1683372489; bh=sdlpRXLo9d8u/J02F/pSNfCPqLv0NBH2V0R YgvZa5mY=; b=JRNlKYx5ZjG7zOJpXUi3/XJSejKbZX1IEatjK+1LzXY09LJGIj7 b1eMzGYQcDKMI4wVEV2C6OzNSN8N2+Isz5YyvwZoHGaUswBpKHkTIhzO1pYUGnZR kqiWNG+p8VNNX5LGxZP1CplMliPHQ81KOLQ+5se8n6UBb6UnnXIq4S49tiUePC0Y 6qe3iP9fnBoFuAU3YAnSsXzgdMQxNPRmmHFXxS2y6Zyp4qIks/ZnFqTbaPTFKOKN vNe7ZlYYjUIvUE+M+ELC70JKlAF7A77ZYYPa3vVGTH4TAuCz7FrwrAtd4TgWTTvZ pm2w0Wm8muoP/2goGduAbvztEp6xfry3K5g== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t= 1683286089; x=1683372489; bh=sdlpRXLo9d8u/J02F/pSNfCPqLv0NBH2V0R YgvZa5mY=; b=NUCmixA9zL8L/xBglG89pLuYW0lZeXXEAbPbUgdjtmkUnJ5s7ko L8WugmAFgNNZsF1pZ8TW/H2aE+W9JN9GgTSiOvYwKw9fYhw5LCxAkCDJPnTVWXT8 c+ZtFj9TUW6Cmb01rdQlvf2uGht73/nvsCqhR7mM2+mftymVjnR2kNh69nM8zyQz eIneK4xFDDQIUbUJXsGdDSaW5z4yFphLMxC2nD9qWTWSAOD4SsF8fVpDkenwGajh f8Xydgfm966mPT0GJvVDF1Kr5BXYlpX4OCtIH0M47nNCIacC4Mwg2LN76FgOnFZe UTl7ZsLIXRJiOflWiOmaBnbaaFZV6BvrudQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeefvddggedtucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephfffufggtgfgkfhfjgfvvefosehtkeertdertdejnecuhfhrohhmpeforgig ihhmvgcutfhiphgrrhguuceomhgrgihimhgvsegtvghrnhhordhtvggthheqnecuggftrf grthhtvghrnhepudduudfhveejteefgedvffdvvedvjedugedukeejhedtlefhffevtefh jeeltdevnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomh epmhgrgihimhgvsegtvghrnhhordhtvggthh X-ME-Proxy: Feedback-ID: i8771445c:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri, 5 May 2023 07:28:08 -0400 (EDT) From: Maxime Ripard Date: Fri, 05 May 2023 13:25:50 +0200 Subject: [PATCH v4 48/68] clk: actions: composite: fact: Switch to determine_rate MIME-Version: 1.0 Message-Id: <20221018-clk-range-checks-fixes-v4-48-971d5077e7d2@cerno.tech> References: <20221018-clk-range-checks-fixes-v4-0-971d5077e7d2@cerno.tech> In-Reply-To: <20221018-clk-range-checks-fixes-v4-0-971d5077e7d2@cerno.tech> To: Michael Turquette , Stephen Boyd Cc: linux-clk@vger.kernel.org, Maxime Ripard , =?utf-8?q?Andreas_F=C3=A4rber?= , Manivannan Sadhasivam , linux-actions@lists.infradead.org, linux-arm-kernel@lists.infradead.org X-Mailer: b4 0.12.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2964; i=maxime@cerno.tech; h=from:subject:message-id; bh=uyBaAmdNnpNkmO3cXNcw5v1QgunRrFr2A3EejTTdAcw=; b=owGbwMvMwCX2+D1vfrpE4FHG02pJDCkhz5dk5XiULZ1mt7v/ydqcltQ5arNe2MwO/b0pW76nWb+0 gv9DRykLgxgXg6yYIkuMsPmSuFOzXney8c2DmcPKBDKEgYtTACai8oSR4eC6gJLpr+pi5yVslVlx8P yLFXyvb3j1ZbGf2VhgrN220Yjhr0Cl9lkWabGDHiduBn3Qfa6mcMLHJm2lTr74pwWcqk1NDAA= X-Developer-Key: i=maxime@cerno.tech; a=openpgp; fpr=BE5675C37E818C8B5764241C254BCFC56BF6CE8D X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230505_042810_787220_13F6BE2B X-CRM114-Status: GOOD ( 18.81 ) 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 VGhlIEFjdGlvbnMgY29tcG9zaXRlIGZhY3RvciBjbG9ja3MgaW1wbGVtZW50cyBhIG11eCB3aXRo IGEgc2V0X3BhcmVudApob29rLCBidXQgZG9lc24ndCBwcm92aWRlIGEgZGV0ZXJtaW5lX3JhdGUg aW1wbGVtZW50YXRpb24uCgpUaGlzIGlzIGEgYml0IG9kZCwgc2luY2Ugc2V0X3BhcmVudCgpIGlz IHRoZXJlIHRvLCBhcyBpdHMgbmFtZSBpbXBsaWVzLApjaGFuZ2UgdGhlIHBhcmVudCBvZiBhIGNs b2NrLiBIb3dldmVyLCB0aGUgbW9zdCBsaWtlbHkgY2FuZGlkYXRlIHRvCnRyaWdnZXIgdGhhdCBw YXJlbnQgY2hhbmdlIGlzIGEgY2FsbCB0byBjbGtfc2V0X3JhdGUoKSwgd2l0aApkZXRlcm1pbmVf cmF0ZSgpIGZpZ3VyaW5nIG91dCB3aGljaCBwYXJlbnQgaXMgdGhlIGJlc3Qgc3VpdGVkIGZvciBh CmdpdmVuIHJhdGUuCgpUaGUgb3RoZXIgdHJpZ2dlciB3b3VsZCBiZSBhIGNhbGwgdG8gY2xrX3Nl dF9wYXJlbnQoKSwgYnV0IGl0J3MgZmFyIGxlc3MKdXNlZCwgYW5kIGl0IGRvZXNuJ3QgbG9vayBs aWtlIHRoZXJlJ3MgYW55IG9idmlvdXMgdXNlciBmb3IgdGhhdCBjbG9jay4KClNvLCB0aGUgc2V0 X3BhcmVudCBob29rIGlzIGVmZmVjdGl2ZWx5IHVudXNlZCwgcG9zc2libHkgYmVjYXVzZSBvZiBh bgpvdmVyc2lnaHQuIEhvd2V2ZXIsIGl0IGNvdWxkIGFsc28gYmUgYW4gZXhwbGljaXQgZGVjaXNp b24gYnkgdGhlCm9yaWdpbmFsIGF1dGhvciB0byBhdm9pZCBhbnkgcmVwYXJlbnRpbmcgYnV0IHRo cm91Z2ggYW4gZXhwbGljaXQgY2FsbCB0bwpjbGtfc2V0X3BhcmVudCgpLgoKVGhlIGRyaXZlciBk b2VzIGltcGxlbWVudCByb3VuZF9yYXRlKCkgdGhvdWdoLCB3aGljaCBtZWFucyB0aGF0IHdlIGNh bgpjaGFuZ2UgdGhlIHJhdGUgb2YgdGhlIGNsb2NrLCBidXQgd2Ugd2lsbCBuZXZlciBnZXQgdG8g Y2hhbmdlIHRoZQpwYXJlbnQuCgpIb3dldmVyLCBJdCdzIGhhcmQgdG8gdGVsbCB3aGV0aGVyIGl0 J3MgYmVlbiBkb25lIG9uIHB1cnBvc2Ugb3Igbm90LgoKU2luY2Ugd2UnbGwgc3RhcnQgbWFuZGF0 aW5nIGEgZGV0ZXJtaW5lX3JhdGUoKSBpbXBsZW1lbnRhdGlvbiwgbGV0J3MKY29udmVydCB0aGUg cm91bmRfcmF0ZSgpIGltcGxlbWVudGF0aW9uIHRvIGEgZGV0ZXJtaW5lX3JhdGUoKSwgd2hpY2gK d2lsbCBhbHNvIG1ha2UgdGhlIGN1cnJlbnQgYmVoYXZpb3IgZXhwbGljaXQuIEFuZCBpZiBpdCB3 YXMgYW4Kb3ZlcnNpZ2h0LCB0aGUgY2xvY2sgYmVoYXZpb3VyIGNhbiBiZSBhZGp1c3RlZCBsYXRl ciBvbi4KCkNjOiAiQW5kcmVhcyBGw6RyYmVyIiA8YWZhZXJiZXJAc3VzZS5kZT4KQ2M6IE1hbml2 YW5uYW4gU2FkaGFzaXZhbSA8bWFuaUBrZXJuZWwub3JnPgpDYzogbGludXgtYWN0aW9uc0BsaXN0 cy5pbmZyYWRlYWQub3JnCkNjOiBsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJhZGVhZC5vcmcK U2lnbmVkLW9mZi1ieTogTWF4aW1lIFJpcGFyZCA8bWF4aW1lQGNlcm5vLnRlY2g+Ci0tLQogZHJp dmVycy9jbGsvYWN0aW9ucy9vd2wtY29tcG9zaXRlLmMgfCAxOCArKysrKysrKysrKystLS0tLS0K IDEgZmlsZSBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL2RyaXZlcnMvY2xrL2FjdGlvbnMvb3dsLWNvbXBvc2l0ZS5jIGIvZHJpdmVycy9jbGsv YWN0aW9ucy9vd2wtY29tcG9zaXRlLmMKaW5kZXggMmYxZTI4MjEzNGIyLi40OGYxNzdmNmNlOWMg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvY2xrL2FjdGlvbnMvb3dsLWNvbXBvc2l0ZS5jCisrKyBiL2Ry aXZlcnMvY2xrL2FjdGlvbnMvb3dsLWNvbXBvc2l0ZS5jCkBAIC04NiwxNCArODYsMjAgQEAgc3Rh dGljIGludCBvd2xfY29tcF9kaXZfc2V0X3JhdGUoc3RydWN0IGNsa19odyAqaHcsIHVuc2lnbmVk IGxvbmcgcmF0ZSwKIAkJCQkJcmF0ZSwgcGFyZW50X3JhdGUpOwogfQogCi1zdGF0aWMgbG9uZyBv d2xfY29tcF9mYWN0X3JvdW5kX3JhdGUoc3RydWN0IGNsa19odyAqaHcsIHVuc2lnbmVkIGxvbmcg cmF0ZSwKLQkJCXVuc2lnbmVkIGxvbmcgKnBhcmVudF9yYXRlKQorc3RhdGljIGludCBvd2xfY29t cF9mYWN0X2RldGVybWluZV9yYXRlKHN0cnVjdCBjbGtfaHcgKmh3LAorCQkJCQlzdHJ1Y3QgY2xr X3JhdGVfcmVxdWVzdCAqcmVxKQogewogCXN0cnVjdCBvd2xfY29tcG9zaXRlICpjb21wID0gaHdf dG9fb3dsX2NvbXAoaHcpOworCWxvbmcgcmF0ZTsKIAotCXJldHVybiBvd2xfZmFjdG9yX2hlbHBl cl9yb3VuZF9yYXRlKCZjb21wLT5jb21tb24sCi0JCQkJCSZjb21wLT5yYXRlLmZhY3Rvcl9odywK LQkJCQkJcmF0ZSwgcGFyZW50X3JhdGUpOworCXJhdGUgPSBvd2xfZmFjdG9yX2hlbHBlcl9yb3Vu ZF9yYXRlKCZjb21wLT5jb21tb24sCisJCQkJCSAgICAmY29tcC0+cmF0ZS5mYWN0b3JfaHcsCisJ CQkJCSAgICByZXEtPnJhdGUsICZyZXEtPmJlc3RfcGFyZW50X3JhdGUpOworCWlmIChyYXRlIDwg MCkKKwkJcmV0dXJuIHJhdGU7CisKKwlyZXEtPnJhdGUgPSByYXRlOworCXJldHVybiAwOwogfQog CiBzdGF0aWMgdW5zaWduZWQgbG9uZyBvd2xfY29tcF9mYWN0X3JlY2FsY19yYXRlKHN0cnVjdCBj bGtfaHcgKmh3LApAQCAtMTc1LDcgKzE4MSw3IEBAIGNvbnN0IHN0cnVjdCBjbGtfb3BzIG93bF9j b21wX2ZhY3Rfb3BzID0gewogCS5pc19lbmFibGVkCT0gb3dsX2NvbXBfaXNfZW5hYmxlZCwKIAog CS8qIGZhY3Rfb3BzICovCi0JLnJvdW5kX3JhdGUJPSBvd2xfY29tcF9mYWN0X3JvdW5kX3JhdGUs CisJLmRldGVybWluZV9yYXRlCT0gb3dsX2NvbXBfZmFjdF9kZXRlcm1pbmVfcmF0ZSwKIAkucmVj YWxjX3JhdGUJPSBvd2xfY29tcF9mYWN0X3JlY2FsY19yYXRlLAogCS5zZXRfcmF0ZQk9IG93bF9j b21wX2ZhY3Rfc2V0X3JhdGUsCiB9OwoKLS0gCjIuNDAuMAoKCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0 CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFk ZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK