* [PATCH v2 0/2] clk: samsung: Update PLL locktime and samsung function
[not found] <CGME20250225132431epcas5p148b0c62e36ea09c35473c8da7f312ece@epcas5p1.samsung.com>
@ 2025-02-25 13:19 ` Varada Pavani
[not found] ` <CGME20250225132447epcas5p4576a3dac624edbd5edc0a047e008de05@epcas5p4.samsung.com>
[not found] ` <CGME20250225132507epcas5p455347acbd580b26ee807e467d3a6a05e@epcas5p4.samsung.com>
0 siblings, 2 replies; 8+ messages in thread
From: Varada Pavani @ 2025-02-25 13:19 UTC (permalink / raw)
To: krzk, aswani.reddy, pankaj.dubey, s.nawrocki, cw00.choi,
alim.akhtar, mturquette, sboyd, linux-samsung-soc, linux-clk,
linux-arm-kernel, linux-kernel
Cc: gost.dev, Varada Pavani
This patch series updates samsung clock driver with common samsung
CCF function and defines locktime value for PLL142XX controller.
Changes since v1:
1. Addressed review comment by Krzysztof. Removed fixes tag and updated commit
message. Below is the link for v1.
https://patchwork.kernel.org/project/linux-clk/patch/20240926144513.71349-3-v.pavani@samsung.com/
Varada Pavani (2):
clk: samsung: Use samsung CCF common function
This patch is missed in this series https://patchwork.kernel.org/project/linux-clk/cover/20240926144513.71349-1-v.pavani@samsung.com/ hence posting again.
clk: samsung: Fixes PLL locktime for PLL142XX used on FSD platfom
Got review comment in this patch will address in next patch series.
drivers/clk/samsung/clk-exynos4.c | 78 +++++++++++++++++--------------
drivers/clk/samsung/clk-pll.c | 7 ++-
2 files changed, 50 insertions(+), 35 deletions(-)
--
2.17.1
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH v2 1/2] clk: samsung: Use samsung CCF common function
[not found] ` <CGME20250225132447epcas5p4576a3dac624edbd5edc0a047e008de05@epcas5p4.samsung.com>
@ 2025-02-25 13:19 ` Varada Pavani
2025-03-05 19:15 ` Krzysztof Kozlowski
0 siblings, 1 reply; 8+ messages in thread
From: Varada Pavani @ 2025-02-25 13:19 UTC (permalink / raw)
To: krzk, aswani.reddy, pankaj.dubey, s.nawrocki, cw00.choi,
alim.akhtar, mturquette, sboyd, linux-samsung-soc, linux-clk,
linux-arm-kernel, linux-kernel
Cc: gost.dev, Varada Pavani
Use samsung CCF function which registers multiple clock providers using
single function call samsung_cmu_register_clocks().
Signed-off-by: Varada Pavani <v.pavani@samsung.com>
---
drivers/clk/samsung/clk-exynos4.c | 78 +++++++++++++++++--------------
1 file changed, 44 insertions(+), 34 deletions(-)
diff --git a/drivers/clk/samsung/clk-exynos4.c b/drivers/clk/samsung/clk-exynos4.c
index 16be0c53903c..ca5036ba45b9 100644
--- a/drivers/clk/samsung/clk-exynos4.c
+++ b/drivers/clk/samsung/clk-exynos4.c
@@ -1269,6 +1269,45 @@ static const struct samsung_cpu_clock exynos4412_cpu_clks[] __initconst = {
CPUCLK_LAYOUT_E4210, e4412_armclk_d),
};
+static const struct samsung_cmu_info cmu_info_exynos4 __initconst = {
+ .mux_clks = exynos4_mux_clks,
+ .nr_mux_clks = ARRAY_SIZE(exynos4_mux_clks),
+ .div_clks = exynos4_div_clks,
+ .nr_div_clks = ARRAY_SIZE(exynos4_div_clks),
+ .gate_clks = exynos4_gate_clks,
+ .nr_gate_clks = ARRAY_SIZE(exynos4_gate_clks),
+ .fixed_factor_clks = exynos4_fixed_factor_clks,
+ .nr_fixed_factor_clks = ARRAY_SIZE(exynos4_fixed_factor_clks),
+ .fixed_clks = exynos4_fixed_rate_clks,
+ .nr_fixed_clks = ARRAY_SIZE(exynos4_fixed_rate_clks),
+};
+
+static const struct samsung_cmu_info cmu_info_exynos4210 __initconst = {
+ .mux_clks = exynos4210_mux_clks,
+ .nr_mux_clks = ARRAY_SIZE(exynos4210_mux_clks),
+ .div_clks = exynos4210_div_clks,
+ .nr_div_clks = ARRAY_SIZE(exynos4210_div_clks),
+ .gate_clks = exynos4210_gate_clks,
+ .nr_gate_clks = ARRAY_SIZE(exynos4210_gate_clks),
+ .fixed_factor_clks = exynos4210_fixed_factor_clks,
+ .nr_fixed_factor_clks = ARRAY_SIZE(exynos4210_fixed_factor_clks),
+ .fixed_clks = exynos4210_fixed_rate_clks,
+ .nr_fixed_clks = ARRAY_SIZE(exynos4210_fixed_rate_clks),
+ .cpu_clks = exynos4210_cpu_clks,
+ .nr_cpu_clks = ARRAY_SIZE(exynos4210_cpu_clks),
+};
+
+static const struct samsung_cmu_info cmu_info_exynos4x12 __initconst = {
+ .mux_clks = exynos4x12_mux_clks,
+ .nr_mux_clks = ARRAY_SIZE(exynos4x12_mux_clks),
+ .div_clks = exynos4x12_div_clks,
+ .nr_div_clks = ARRAY_SIZE(exynos4x12_div_clks),
+ .gate_clks = exynos4x12_gate_clks,
+ .nr_gate_clks = ARRAY_SIZE(exynos4x12_gate_clks),
+ .fixed_factor_clks = exynos4x12_fixed_factor_clks,
+ .nr_fixed_factor_clks = ARRAY_SIZE(exynos4x12_fixed_factor_clks),
+};
+
/* register exynos4 clocks */
static void __init exynos4_clk_init(struct device_node *np,
enum exynos4_soc soc)
@@ -1322,41 +1361,12 @@ static void __init exynos4_clk_init(struct device_node *np,
ARRAY_SIZE(exynos4x12_plls));
}
- samsung_clk_register_fixed_rate(ctx, exynos4_fixed_rate_clks,
- ARRAY_SIZE(exynos4_fixed_rate_clks));
- samsung_clk_register_mux(ctx, exynos4_mux_clks,
- ARRAY_SIZE(exynos4_mux_clks));
- samsung_clk_register_div(ctx, exynos4_div_clks,
- ARRAY_SIZE(exynos4_div_clks));
- samsung_clk_register_gate(ctx, exynos4_gate_clks,
- ARRAY_SIZE(exynos4_gate_clks));
- samsung_clk_register_fixed_factor(ctx, exynos4_fixed_factor_clks,
- ARRAY_SIZE(exynos4_fixed_factor_clks));
+ samsung_cmu_register_clocks(ctx, &cmu_info_exynos4);
- if (exynos4_soc == EXYNOS4210) {
- samsung_clk_register_fixed_rate(ctx, exynos4210_fixed_rate_clks,
- ARRAY_SIZE(exynos4210_fixed_rate_clks));
- samsung_clk_register_mux(ctx, exynos4210_mux_clks,
- ARRAY_SIZE(exynos4210_mux_clks));
- samsung_clk_register_div(ctx, exynos4210_div_clks,
- ARRAY_SIZE(exynos4210_div_clks));
- samsung_clk_register_gate(ctx, exynos4210_gate_clks,
- ARRAY_SIZE(exynos4210_gate_clks));
- samsung_clk_register_fixed_factor(ctx,
- exynos4210_fixed_factor_clks,
- ARRAY_SIZE(exynos4210_fixed_factor_clks));
- samsung_clk_register_cpu(ctx, exynos4210_cpu_clks,
- ARRAY_SIZE(exynos4210_cpu_clks));
- } else {
- samsung_clk_register_mux(ctx, exynos4x12_mux_clks,
- ARRAY_SIZE(exynos4x12_mux_clks));
- samsung_clk_register_div(ctx, exynos4x12_div_clks,
- ARRAY_SIZE(exynos4x12_div_clks));
- samsung_clk_register_gate(ctx, exynos4x12_gate_clks,
- ARRAY_SIZE(exynos4x12_gate_clks));
- samsung_clk_register_fixed_factor(ctx,
- exynos4x12_fixed_factor_clks,
- ARRAY_SIZE(exynos4x12_fixed_factor_clks));
+ if (exynos4_soc == EXYNOS4210)
+ samsung_cmu_register_clocks(ctx, &cmu_info_exynos4210);
+ else {
+ samsung_cmu_register_clocks(ctx, &cmu_info_exynos4x12);
if (soc == EXYNOS4412)
samsung_clk_register_cpu(ctx, exynos4412_cpu_clks,
ARRAY_SIZE(exynos4412_cpu_clks));
--
2.17.1
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH v2 2/2] clk: samsung: update PLL locktime for PLL142XX used on FSD platform
[not found] ` <CGME20250225132507epcas5p455347acbd580b26ee807e467d3a6a05e@epcas5p4.samsung.com>
@ 2025-02-25 13:19 ` Varada Pavani
2025-03-01 14:14 ` Krzysztof Kozlowski
2025-03-05 19:15 ` (subset) " Krzysztof Kozlowski
0 siblings, 2 replies; 8+ messages in thread
From: Varada Pavani @ 2025-02-25 13:19 UTC (permalink / raw)
To: krzk, aswani.reddy, pankaj.dubey, s.nawrocki, cw00.choi,
alim.akhtar, mturquette, sboyd, linux-samsung-soc, linux-clk,
linux-arm-kernel, linux-kernel
Cc: gost.dev, Varada Pavani, stable
Currently PLL142XX locktime is 270. As per spec, it should be 150. Hence
update PLL142XX controller locktime to 150.
Cc: stable@vger.kernel.org
Signed-off-by: Varada Pavani <v.pavani@samsung.com>
---
drivers/clk/samsung/clk-pll.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/drivers/clk/samsung/clk-pll.c b/drivers/clk/samsung/clk-pll.c
index 2e94bba6c396..023a25af73c4 100644
--- a/drivers/clk/samsung/clk-pll.c
+++ b/drivers/clk/samsung/clk-pll.c
@@ -206,6 +206,7 @@ static const struct clk_ops samsung_pll3000_clk_ops = {
*/
/* Maximum lock time can be 270 * PDIV cycles */
#define PLL35XX_LOCK_FACTOR (270)
+#define PLL142XX_LOCK_FACTOR (150)
#define PLL35XX_MDIV_MASK (0x3FF)
#define PLL35XX_PDIV_MASK (0x3F)
@@ -272,7 +273,11 @@ static int samsung_pll35xx_set_rate(struct clk_hw *hw, unsigned long drate,
}
/* Set PLL lock time. */
- writel_relaxed(rate->pdiv * PLL35XX_LOCK_FACTOR,
+ if (pll->type == pll_142xx)
+ writel_relaxed(rate->pdiv * PLL142XX_LOCK_FACTOR,
+ pll->lock_reg);
+ else
+ writel_relaxed(rate->pdiv * PLL35XX_LOCK_FACTOR,
pll->lock_reg);
/* Change PLL PMS values */
--
2.17.1
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 2/2] clk: samsung: update PLL locktime for PLL142XX used on FSD platform
2025-02-25 13:19 ` [PATCH v2 2/2] clk: samsung: update PLL locktime for PLL142XX used on FSD platform Varada Pavani
@ 2025-03-01 14:14 ` Krzysztof Kozlowski
2025-03-05 19:12 ` Krzysztof Kozlowski
2025-03-05 19:15 ` (subset) " Krzysztof Kozlowski
1 sibling, 1 reply; 8+ messages in thread
From: Krzysztof Kozlowski @ 2025-03-01 14:14 UTC (permalink / raw)
To: Varada Pavani, aswani.reddy, pankaj.dubey, s.nawrocki, cw00.choi,
alim.akhtar, mturquette, sboyd, linux-samsung-soc, linux-clk,
linux-arm-kernel, linux-kernel
Cc: gost.dev, stable
On 25/02/2025 14:19, Varada Pavani wrote:
> Currently PLL142XX locktime is 270. As per spec, it should be 150. Hence
> update PLL142XX controller locktime to 150.
>
> Cc: stable@vger.kernel.org
Fixes commit?
> Signed-off-by: Varada Pavani <v.pavani@samsung.com>
> ---
> drivers/clk/samsung/clk-pll.c | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/clk/samsung/clk-pll.c b/drivers/clk/samsung/clk-pll.c
> index 2e94bba6c396..023a25af73c4 100644
> --- a/drivers/clk/samsung/clk-pll.c
> +++ b/drivers/clk/samsung/clk-pll.c
> @@ -206,6 +206,7 @@ static const struct clk_ops samsung_pll3000_clk_ops = {
> */
> /* Maximum lock time can be 270 * PDIV cycles */
> #define PLL35XX_LOCK_FACTOR (270)
> +#define PLL142XX_LOCK_FACTOR (150)
>
> #define PLL35XX_MDIV_MASK (0x3FF)
> #define PLL35XX_PDIV_MASK (0x3F)
> @@ -272,7 +273,11 @@ static int samsung_pll35xx_set_rate(struct clk_hw *hw, unsigned long drate,
> }
>
> /* Set PLL lock time. */
> - writel_relaxed(rate->pdiv * PLL35XX_LOCK_FACTOR,
> + if (pll->type == pll_142xx)
> + writel_relaxed(rate->pdiv * PLL142XX_LOCK_FACTOR,
> + pll->lock_reg);
> + else
> + writel_relaxed(rate->pdiv * PLL35XX_LOCK_FACTOR,
> pll->lock_reg);
>
> /* Change PLL PMS values */
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 2/2] clk: samsung: update PLL locktime for PLL142XX used on FSD platform
2025-03-01 14:14 ` Krzysztof Kozlowski
@ 2025-03-05 19:12 ` Krzysztof Kozlowski
2025-03-05 19:14 ` Krzysztof Kozlowski
0 siblings, 1 reply; 8+ messages in thread
From: Krzysztof Kozlowski @ 2025-03-05 19:12 UTC (permalink / raw)
To: Varada Pavani, aswani.reddy, pankaj.dubey, s.nawrocki, cw00.choi,
alim.akhtar, mturquette, sboyd, linux-samsung-soc, linux-clk,
linux-arm-kernel, linux-kernel
Cc: gost.dev, stable
On 01/03/2025 15:14, Krzysztof Kozlowski wrote:
> On 25/02/2025 14:19, Varada Pavani wrote:
>> Currently PLL142XX locktime is 270. As per spec, it should be 150. Hence
>> update PLL142XX controller locktime to 150.
>>
>> Cc: stable@vger.kernel.org
>
> Fixes commit?
If this is a fix, commit msg should describe the bug. You decided to
drop the fixes tag, but you kept stable, so this makes no sense.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 2/2] clk: samsung: update PLL locktime for PLL142XX used on FSD platform
2025-03-05 19:12 ` Krzysztof Kozlowski
@ 2025-03-05 19:14 ` Krzysztof Kozlowski
0 siblings, 0 replies; 8+ messages in thread
From: Krzysztof Kozlowski @ 2025-03-05 19:14 UTC (permalink / raw)
To: Varada Pavani, aswani.reddy, pankaj.dubey, s.nawrocki, cw00.choi,
alim.akhtar, mturquette, sboyd, linux-samsung-soc, linux-clk,
linux-arm-kernel, linux-kernel
Cc: gost.dev, stable
On 05/03/2025 20:12, Krzysztof Kozlowski wrote:
> On 01/03/2025 15:14, Krzysztof Kozlowski wrote:
>> On 25/02/2025 14:19, Varada Pavani wrote:
>>> Currently PLL142XX locktime is 270. As per spec, it should be 150. Hence
>>> update PLL142XX controller locktime to 150.
>>>
>>> Cc: stable@vger.kernel.org
>>
>> Fixes commit?
>
> If this is a fix, commit msg should describe the bug. You decided to
> drop the fixes tag, but you kept stable, so this makes no sense.
>
Also in the future: run checkpatch.
CHECK: Alignment should match open parenthesis
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: (subset) [PATCH v2 2/2] clk: samsung: update PLL locktime for PLL142XX used on FSD platform
2025-02-25 13:19 ` [PATCH v2 2/2] clk: samsung: update PLL locktime for PLL142XX used on FSD platform Varada Pavani
2025-03-01 14:14 ` Krzysztof Kozlowski
@ 2025-03-05 19:15 ` Krzysztof Kozlowski
1 sibling, 0 replies; 8+ messages in thread
From: Krzysztof Kozlowski @ 2025-03-05 19:15 UTC (permalink / raw)
To: krzk, aswani.reddy, pankaj.dubey, s.nawrocki, cw00.choi,
alim.akhtar, mturquette, sboyd, linux-samsung-soc, linux-clk,
linux-arm-kernel, linux-kernel, Varada Pavani
Cc: gost.dev, stable
On Tue, 25 Feb 2025 18:49:18 +0530, Varada Pavani wrote:
> Currently PLL142XX locktime is 270. As per spec, it should be 150. Hence
> update PLL142XX controller locktime to 150.
>
>
Applied, thanks!
[2/2] clk: samsung: update PLL locktime for PLL142XX used on FSD platform
https://git.kernel.org/krzk/linux/c/53517a70873c7a91675f7244768aad5006cc45de
Best regards,
--
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 1/2] clk: samsung: Use samsung CCF common function
2025-02-25 13:19 ` [PATCH v2 1/2] clk: samsung: Use samsung CCF common function Varada Pavani
@ 2025-03-05 19:15 ` Krzysztof Kozlowski
0 siblings, 0 replies; 8+ messages in thread
From: Krzysztof Kozlowski @ 2025-03-05 19:15 UTC (permalink / raw)
To: Varada Pavani, aswani.reddy, pankaj.dubey, s.nawrocki, cw00.choi,
alim.akhtar, mturquette, sboyd, linux-samsung-soc, linux-clk,
linux-arm-kernel, linux-kernel
Cc: gost.dev
On 25/02/2025 14:19, Varada Pavani wrote:
> Use samsung CCF function which registers multiple clock providers using
> single function call samsung_cmu_register_clocks().
>
> Signed-off-by: Varada Pavani <v.pavani@samsung.com>
> ---
> drivers/clk/samsung/clk-exynos4.c | 78 +++++++++++++++++--------------
> 1 file changed, 44 insertions(+), 34 deletions(-)
Please run scripts/checkpatch.pl and fix reported warnings. After that,
run also `scripts/checkpatch.pl --strict` and (probably) fix more
warnings. Some warnings can be ignored, especially from --strict run,
but the code here looks like it needs a fix. Feel free to get in touch
if the warning is not clear.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2025-03-05 19:15 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <CGME20250225132431epcas5p148b0c62e36ea09c35473c8da7f312ece@epcas5p1.samsung.com>
2025-02-25 13:19 ` [PATCH v2 0/2] clk: samsung: Update PLL locktime and samsung function Varada Pavani
[not found] ` <CGME20250225132447epcas5p4576a3dac624edbd5edc0a047e008de05@epcas5p4.samsung.com>
2025-02-25 13:19 ` [PATCH v2 1/2] clk: samsung: Use samsung CCF common function Varada Pavani
2025-03-05 19:15 ` Krzysztof Kozlowski
[not found] ` <CGME20250225132507epcas5p455347acbd580b26ee807e467d3a6a05e@epcas5p4.samsung.com>
2025-02-25 13:19 ` [PATCH v2 2/2] clk: samsung: update PLL locktime for PLL142XX used on FSD platform Varada Pavani
2025-03-01 14:14 ` Krzysztof Kozlowski
2025-03-05 19:12 ` Krzysztof Kozlowski
2025-03-05 19:14 ` Krzysztof Kozlowski
2025-03-05 19:15 ` (subset) " Krzysztof Kozlowski
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®