From: Yao Zi <ziyao@disroot.org>
To: Michael Turquette <mturquette@baylibre.com>,
Stephen Boyd <sboyd@kernel.org>, Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Heiko Stuebner <heiko@sntech.de>,
Philipp Zabel <p.zabel@pengutronix.de>
Cc: linux-clk@vger.kernel.org, devicetree@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org,
Celeste Liu <CoelacanthusHex@gmail.com>,
Yao Zi <ziyao@disroot.org>
Subject: [PATCH 5/8] clk: rockchip: Add clock type GATE_NO_SET_RATE
Date: Tue, 1 Oct 2024 04:23:59 +0000 [thread overview]
Message-ID: <20241001042401.31903-7-ziyao@disroot.org> (raw)
In-Reply-To: <20241001042401.31903-2-ziyao@disroot.org>
This clock type is similar to GATE, but doesn't allow rate setting,
which presents on RK3528 platform.
Signed-off-by: Yao Zi <ziyao@disroot.org>
---
drivers/clk/rockchip/clk.c | 8 ++++++++
drivers/clk/rockchip/clk.h | 14 ++++++++++++++
2 files changed, 22 insertions(+)
diff --git a/drivers/clk/rockchip/clk.c b/drivers/clk/rockchip/clk.c
index 73d2cbdc716b..7d233770e68b 100644
--- a/drivers/clk/rockchip/clk.c
+++ b/drivers/clk/rockchip/clk.c
@@ -521,6 +521,14 @@ void rockchip_clk_register_branches(struct rockchip_clk_provider *ctx,
case branch_gate:
flags |= CLK_SET_RATE_PARENT;
+ clk = clk_register_gate(NULL, list->name,
+ list->parent_names[0], flags,
+ ctx->reg_base + list->gate_offset,
+ list->gate_shift, list->gate_flags, &ctx->lock);
+ break;
+ case branch_gate_no_set_rate:
+ flags &= ~CLK_SET_RATE_PARENT;
+
clk = clk_register_gate(NULL, list->name,
list->parent_names[0], flags,
ctx->reg_base + list->gate_offset,
diff --git a/drivers/clk/rockchip/clk.h b/drivers/clk/rockchip/clk.h
index 1efc5c3a1e77..360d16402fe5 100644
--- a/drivers/clk/rockchip/clk.h
+++ b/drivers/clk/rockchip/clk.h
@@ -519,6 +519,7 @@ enum rockchip_clk_branch_type {
branch_divider,
branch_fraction_divider,
branch_gate,
+ branch_gate_no_set_rate,
branch_mmc,
branch_inverter,
branch_factor,
@@ -844,6 +845,19 @@ struct rockchip_clk_branch {
.gate_flags = gf, \
}
+#define GATE_NO_SET_RATE(_id, cname, pname, f, o, b, gf) \
+ { \
+ .id = _id, \
+ .branch_type = branch_gate_no_set_rate, \
+ .name = cname, \
+ .parent_names = (const char *[]){ pname }, \
+ .num_parents = 1, \
+ .flags = f, \
+ .gate_offset = o, \
+ .gate_shift = b, \
+ .gate_flags = gf, \
+ }
+
#define MMC(_id, cname, pname, offset, shift) \
{ \
.id = _id, \
--
2.46.0
next prev parent reply other threads:[~2024-10-01 4:25 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-01 4:23 [PATCH 0/8] Support clock and reset unit of Rockchip RK3528 Yao Zi
2024-10-01 4:23 ` [PATCH 1/8] dt-bindings: clock: Add clock ID definition for " Yao Zi
2024-10-02 6:32 ` Krzysztof Kozlowski
2024-10-02 9:24 ` Yao Zi
2024-10-01 4:23 ` [PATCH 2/8] dt-bindings: reset: Add reset " Yao Zi
2024-10-01 16:29 ` Conor Dooley
2024-10-02 6:31 ` Krzysztof Kozlowski
2024-10-02 9:54 ` Yao Zi
2024-10-02 10:07 ` Heiko Stübner
2024-10-02 10:19 ` Yao Zi
2024-10-01 4:23 ` [PATCH 3/8] dt-bindings: clock: Add rockchip,rk3528-cru Yao Zi
2024-10-01 16:29 ` Conor Dooley
2024-10-01 21:18 ` Yao Zi
2024-10-02 8:49 ` Conor Dooley
2024-10-02 10:02 ` Yao Zi
2024-10-01 4:23 ` [PATCH 4/8] clk: rockchip: Add PLL flag ROCKCHIP_PLL_FIXED_MODE Yao Zi
2024-10-02 8:16 ` Heiko Stübner
2024-10-02 10:08 ` Yao Zi
2024-10-02 10:12 ` Heiko Stübner
2024-10-02 10:22 ` Yao Zi
2024-10-01 4:23 ` Yao Zi [this message]
2024-10-02 8:08 ` [PATCH 5/8] clk: rockchip: Add clock type GATE_NO_SET_RATE Heiko Stübner
2024-10-02 10:30 ` Yao Zi
2024-10-01 4:24 ` [PATCH 6/8] clk: rockchip: Add clock controller driver for RK3528 SoC Yao Zi
2024-10-02 10:21 ` Heiko Stübner
2024-10-02 10:38 ` Yao Zi
2024-10-01 4:38 ` [PATCH 7/8] arm64: dts: rockchip: Add clock generators " Yao Zi
2024-10-01 4:38 ` [PATCH 8/8] arm64: dts: rockchip: Add UART clocks " Yao Zi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20241001042401.31903-7-ziyao@disroot.org \
--to=ziyao@disroot.org \
--cc=CoelacanthusHex@gmail.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=heiko@sntech.de \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-clk@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=mturquette@baylibre.com \
--cc=p.zabel@pengutronix.de \
--cc=robh@kernel.org \
--cc=sboyd@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).