[PATCH 0/3] clk: Support spread spectrum and use it in clk-scmi

From: Peng Fan
Date: Tue Aug 12 2025 - 08:18:47 EST


Since the assigned-clock-sscs property [1] has been accepted into the device
tree schema, we can now support it in the Linux clock driver. Therefore,
I’ve picked up the previously submitted work [2] titled “clk: Support
spread spectrum and use it in clk-pll144x and clk-scmi.”
As more than six months have passed since [2] was posted, I’m treating this
patchset as a new submission rather than a v3.

- Introduce clk_set_spread_spectrum to set the parameters for enabling
spread spectrum of a clock.
- Parse 'assigned-clock-sscs' and configure it by default before using the
clock. This property is parsed before parsing clock rate.
- Enable this feature for clk-scmi on i.MX95.

Because SCMI spec will not include spread spectrum as a standard
extension, we still need to use NXP i.MX OEM extension.

[1] https://github.com/devicetree-org/dt-schema/pull/154
[2] https://lore.kernel.org/all/20250205-clk-ssc-v2-0-fa73083caa92@xxxxxxx/

Signed-off-by: Peng Fan <peng.fan@xxxxxxx>
---
Peng Fan (3):
clk: Introduce clk_hw_set_spread_spectrum
clk: conf: Support assigned-clock-sscs
clk: scmi: Support Spread Spectrum for NXP i.MX95

drivers/clk/clk-conf.c | 70 +++++++++++++++++++++++++++++++++++++++++++
drivers/clk/clk-scmi.c | 64 ++++++++++++++++++++++++++++++++++++---
drivers/clk/clk.c | 32 ++++++++++++++++++++
include/linux/clk-provider.h | 29 ++++++++++++++++++
include/linux/scmi_protocol.h | 5 ++++
5 files changed, 196 insertions(+), 4 deletions(-)
---
base-commit: b1549501188cc9eba732c25b033df7a53ccc341f
change-id: 20250812-clk-ssc-version1-acf6f6efbd96

Best regards,
--
Peng Fan <peng.fan@xxxxxxx>