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 F3543C6FD1C for ; Thu, 23 Mar 2023 23:02:21 +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=Uu8IcIt8sV4ypBj8sFkjnR5G6YNm+JEyB7EPKGIUIMc=; b=ea7j3++t8ojJcs ZNrPeRAyrMluacsy1n+ZOcIRCIl50HkRtqxCcFY1aOEiK3KgpI6XN0GYS9ckyAaGwuAf4HSe5/eph bVlkstZnNJka+he1zJZS79k3Sv3Lwwa6ZjSYPmxYbaJSt5UxfNlK0K6bYsTuUSy7UGUD1muPUl8Mq aXEtfokcWSAq9MWi+i/iUJLU+GDGGtXTykMm6VvEnAWdBGw9S9f9f6wDBjS/uzeMP/LPPhUybI3nh yzMJ/bPnNs1T6ab59eV+9oUkS33kNlfivyWk85EbcZs4PqeBV9LaBsd4qUqr2X3lfq6YxWMBLJ9Ud HFRcNWACn2YIPn61isBQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1pfTw8-0039GT-2R; Thu, 23 Mar 2023 23:01:36 +0000 Received: from mail-il1-x131.google.com ([2607:f8b0:4864:20::131]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1pfTw5-0039FB-0E for linux-arm-kernel@lists.infradead.org; Thu, 23 Mar 2023 23:01:34 +0000 Received: by mail-il1-x131.google.com with SMTP id l15so112449ilv.4 for ; Thu, 23 Mar 2023 16:01:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1679612491; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=xoCYglyZRXBAsXij28ODxM/pUlkw5MAovi/FF2CLHQ8=; b=EuLUTSOXPcNUYVeKnTB4g9KwdaJWobchhRiVJyyhfD91KWS+b0MlS4OMpooyKBAgdV xzItG1xrsWtlkihU9MEE62fZDbxXLWsB1oyAZ9l81RR09vJtVXDgKzfNUfItxVgzgEER KkH1kc77ClORzJv+QgH0phBb8q1NHPyuTQPTdjiUg8DiHZdDgl4uuudjhHPPxK1tUqT7 Bto8XS+HZJogUJF/gclufOTDTb8E3lCnvPY40uH/UjHICTRruzl6NXH9LGXfEQz8iDvy DDDfQhNRw83hx23TMXfD9o9aWYobLjqDkO6EYD3g32v5cuEfY8Nw+hiyMC3N0sYaBkq4 npiw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1679612491; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=xoCYglyZRXBAsXij28ODxM/pUlkw5MAovi/FF2CLHQ8=; b=f17QIpxF7vvZ03yIxBx8hz53RP6HRxnKMoefsUYFAIrOJldDfTpg7rnqjBzMHspVhl BqfH45UwY186E47hNd65wU3+ZeLZczyqSNGgW4IXAIBe6u4j6vkgFuJyV48SDIJgVqB5 mXh1+D3o25RXpVw7UUGA1EvgLtd4mhy3TjI7qeE/LzedrW7+/0JkLFrT/d+225F8cA0b tWmDCPUlt4fwZxoz5UjREVRVSAwIh84n2oUG1zdvE3JjegwKXy4Dh3LEAr9BiHWjwoLp vz1a7R0kL8FAhbr+wzdU+YuykmSF7mQ4jxlwUWKYe42BSYJFaQ9Ap64bXG11y4pRK8Kc g6OA== X-Gm-Message-State: AAQBX9dIDhsxt/Yw2fGPDzBLUcNuVTJGpeY3Aeh17Jhyu7M0pZ/RKyQT waRUJ0tmLERm9U1ScRlL2Ug= X-Google-Smtp-Source: AKy350aB8mG/RWYSizA0hQrtNJ+VzeQIYF95T4UM+86HtnAts5iISqBLXr56ECHs23F+T51U/wzZWw== X-Received: by 2002:a92:cb47:0:b0:325:da54:ae8b with SMTP id f7-20020a92cb47000000b00325da54ae8bmr703358ilq.9.1679612491131; Thu, 23 Mar 2023 16:01:31 -0700 (PDT) Received: from aford-IdeaCentre-A730.lan ([2601:447:d001:897f:f38d:f05d:4666:1249]) by smtp.gmail.com with ESMTPSA id w20-20020a056e0213f400b00314201bcbdfsm5405492ilj.3.2023.03.23.16.01.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 23 Mar 2023 16:01:30 -0700 (PDT) From: Adam Ford To: linux-clk@vger.kernel.org Cc: aford@beaconembedded.com, Adam Ford , Peng Fan , Fabio Estevam , Abel Vesa , Michael Turquette , Stephen Boyd , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , NXP Linux Team , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH V4 1/4] clk: imx: composite-8m: Add support to determine_rate Date: Thu, 23 Mar 2023 18:01:24 -0500 Message-Id: <20230323230127.120883-2-aford173@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230323230127.120883-1-aford173@gmail.com> References: <20230323230127.120883-1-aford173@gmail.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230323_160133_108002_E7BE38E6 X-CRM114-Status: GOOD ( 11.91 ) 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="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Similar to imx/clk-composite-93 and imx/clk-divider-gate, the imx8m_clk_composite_divider_ops can support determine_rate. Without this the parent clocks are set to a fixed value, and if a consumer needs a slower reate, the clock is divided, but the division is only as good as the parent clock rate. With this added, the system can attempt to adjust the parent rate if the proper flags are set which can lead to a more precise clock value. Signed-off-by: Adam Ford Reviewed-by: Peng Fan Reviewed-by: Fabio Estevam --- V4: Sorry for the noise. I forgot to 'git ammend' What V3 was supposed to be. V3: Change name clk_divider_determine_rate to imx8m_clk_divider_determine_rate to match naming convention V2: No Change diff --git a/drivers/clk/imx/clk-composite-8m.c b/drivers/clk/imx/clk-composite-8m.c index cbf0d7955a00..6883a8199b6c 100644 --- a/drivers/clk/imx/clk-composite-8m.c +++ b/drivers/clk/imx/clk-composite-8m.c @@ -119,10 +119,17 @@ static int imx8m_clk_composite_divider_set_rate(struct clk_hw *hw, return ret; } +static int imx8m_clk_divider_determine_rate(struct clk_hw *hw, + struct clk_rate_request *req) +{ + return clk_divider_ops.determine_rate(hw, req); +} + static const struct clk_ops imx8m_clk_composite_divider_ops = { .recalc_rate = imx8m_clk_composite_divider_recalc_rate, .round_rate = imx8m_clk_composite_divider_round_rate, .set_rate = imx8m_clk_composite_divider_set_rate, + .determine_rate = imx8m_clk_divider_determine_rate, }; static u8 imx8m_clk_composite_mux_get_parent(struct clk_hw *hw) -- 2.34.1 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel