From: Abel Vesa <abel.vesa@linaro.org>
To: Bjorn Andersson <bjorn.andersson@linaro.org>,
Andy Gross <agross@kernel.org>,
Konrad Dybcio <konrad.dybcio@somainline.org>,
Mike Turquette <mturquette@baylibre.com>,
Stephen Boyd <sboyd@kernel.org>
Cc: linux-arm-msm@vger.kernel.org, linux-clk@vger.kernel.org,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Abel Vesa <abel.vesa@linaro.org>
Subject: [RFC 4/9] clk: qcom: alpha-pll: Add macros to collapse definition
Date: Tue, 26 Jul 2022 17:22:58 +0300 [thread overview]
Message-ID: <20220726142303.4126434-5-abel.vesa@linaro.org> (raw)
In-Reply-To: <20220726142303.4126434-1-abel.vesa@linaro.org>
Add macros for a visually more compact alpha-pll clocks definition,
one for alpha-pll and one for alpha-pll postdiv. These are only the ones
used by gcc-sdm845 driver. More will be added later on.
Signed-off-by: Abel Vesa <abel.vesa@linaro.org>
---
drivers/clk/qcom/clk-alpha-pll.h | 61 ++++++++++++++++++++++++++++++++
1 file changed, 61 insertions(+)
diff --git a/drivers/clk/qcom/clk-alpha-pll.h b/drivers/clk/qcom/clk-alpha-pll.h
index 447efb82fe59..1bf7a3ecb7f1 100644
--- a/drivers/clk/qcom/clk-alpha-pll.h
+++ b/drivers/clk/qcom/clk-alpha-pll.h
@@ -127,6 +127,67 @@ struct alpha_pll_config {
u32 vco_mask;
};
+#define __DEFINE_QCOM_CC_CLK_ALPHA_PLL(_name, _offset, _regs, \
+ _enable_reg, _enable_mask, \
+ _parent_fw_name, _flags, _ops) \
+ static struct clk_alpha_pll _name = { \
+ .offset = _offset, \
+ .regs = _regs, \
+ .clkr = { \
+ .enable_reg = _enable_reg, \
+ .enable_mask = _enable_mask, \
+ .hw.init = &(struct clk_init_data){ \
+ .name = #_name, \
+ .parent_data = &(const struct clk_parent_data){ \
+ .fw_name = _parent_fw_name, \
+ .name = _parent_fw_name, \
+ }, \
+ .num_parents = 1, \
+ .ops = _ops, \
+ .flags = _flags, \
+ }, \
+ }, \
+ }
+
+#define __DEFINE_QCOM_CC_CLK_ALPHA_PLL_POSTDIV(_name, _offset, \
+ _post_div_shift, _post_div_table, \
+ _width, _regs, \
+ _parent_hws, _flags, _ops) \
+ static struct clk_alpha_pll_postdiv _name = { \
+ .offset = _offset, \
+ .post_div_shift = _post_div_shift, \
+ .post_div_table = _post_div_table, \
+ .num_post_div = ARRAY_SIZE(_post_div_table), \
+ .width = _width, \
+ .regs = _regs, \
+ .clkr.hw.init = &(struct clk_init_data){ \
+ .name = #_name, \
+ .parent_hws = (const struct clk_hw*[]){ \
+ _parent_hws, \
+ }, \
+ .num_parents = 1, \
+ .ops = _ops, \
+ .flags = _flags, \
+ }, \
+ }
+
+#define DEFINE_QCOM_CC_CLK_ALPHA_PLL(_name, _offset, \
+ _enable_reg, _enable_mask, \
+ _parent_fw_name) \
+ __DEFINE_QCOM_CC_CLK_ALPHA_PLL(_name, _offset, \
+ clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], \
+ _enable_reg, _enable_mask, \
+ _parent_fw_name, 0, \
+ &clk_alpha_pll_fixed_fabia_ops)
+
+#define DEFINE_QCOM_CC_CLK_ALPHA_PLL_POSTDIV(_name, _offset, \
+ _post_div_shift, _post_div_table, \
+ _width, _parent_hws) \
+ __DEFINE_QCOM_CC_CLK_ALPHA_PLL_POSTDIV(_name, _offset, \
+ _post_div_shift, _post_div_table, _width, \
+ clk_alpha_pll_regs[CLK_ALPHA_PLL_TYPE_FABIA], \
+ _parent_hws, 0, &clk_alpha_pll_postdiv_fabia_ops)
+
extern const struct clk_ops clk_alpha_pll_ops;
extern const struct clk_ops clk_alpha_pll_fixed_ops;
extern const struct clk_ops clk_alpha_pll_hwfsm_ops;
--
2.34.3
next prev parent reply other threads:[~2022-07-26 14:23 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-26 14:22 [RFC 0/9] clk: qcom: gcc-sdm845: Swicth from expanded definitions to compact macros Abel Vesa
2022-07-26 14:22 ` [RFC 1/9] clk: qcom: qcc-sdm845: Collapse gdsc structs into macros Abel Vesa
2022-07-26 16:36 ` Dmitry Baryshkov
2022-08-09 20:25 ` Bjorn Andersson
2022-08-10 7:45 ` Abel Vesa
2022-07-26 14:22 ` [RFC 2/9] clk: qcom: gcc-sdm845: Switch from parent_hws to parent_data Abel Vesa
2022-07-26 14:22 ` [RFC 3/9] clk: qcom: rcg: Add macros to collapse definition Abel Vesa
2022-07-26 16:39 ` Dmitry Baryshkov
2022-07-26 14:22 ` Abel Vesa [this message]
2022-07-26 14:22 ` [RFC 5/9] clk: qcom: branch: " Abel Vesa
2022-07-26 14:23 ` [RFC 6/9] clk: qcom: common: Add macro wrapper for all clock types Abel Vesa
2022-07-26 16:48 ` Dmitry Baryshkov
2022-07-26 14:23 ` [RFC 7/9] clk: qcom: gcc-sdm845: Switch to macros to collapse branch clocks definitions Abel Vesa
2022-07-26 14:23 ` [RFC 8/9] clk: qcom: gcc-sdm845: Switch to macros to collapse rcg2 " Abel Vesa
2022-07-26 16:47 ` Dmitry Baryshkov
2022-07-26 14:23 ` [RFC 9/9] clk: qcom: gcc-sdm845: Switch to macros to collapse alpha-pll " Abel Vesa
2022-07-26 19:16 ` [RFC 0/9] clk: qcom: gcc-sdm845: Swicth from expanded definitions to compact macros Konrad Dybcio
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=20220726142303.4126434-5-abel.vesa@linaro.org \
--to=abel.vesa@linaro.org \
--cc=agross@kernel.org \
--cc=bjorn.andersson@linaro.org \
--cc=konrad.dybcio@somainline.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-clk@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mturquette@baylibre.com \
--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