On 3/19/25 4:17 AM, Marek Vasut wrote:
Add clk_resolve_parent_clk() to resolve parent clock udevice name
based on clock-names DT property. This is used in SoC clock drivers
to look up the clock name in clock tables, which matches a clock
name in DT clock-names property, and convert it into udevice name
which is used by U-Boot clock framework to look up parent clock in
e.g. clk_register() using uclass_get_device_by_name(UCLASS_CLK,
parent_name, &parent);
Pass struct udevice pointer through the various iMX clock drivers.
Marek Vasut (24):
clk: Add clk_resolve_parent_clk()
clk: clk-mux: Fold clk_register_mux()
clk: clk-mux: Use struct udevice instead of struct device
clk: clk-mux: Resolve parent clock by name
clk: imx: Pass struct udevice into imx_clk_mux*()
clk: imx: Pass struct udevice to clk_register_mux()
clk: clk-gate: Use struct udevice instead of struct device
clk: clk-gate: Resolve parent clock by name
clk: imx: gate2: Use struct udevice instead of struct device
clk: imx: gate2: Resolve parent clock by name
clk: imx: Pass struct udevice into imx_clk_gate*()
clk: imx: Pass struct udevice to clk_register_gate*()
clk: clk-composite: Use struct udevice instead of struct device
clk: clk-composite: Resolve parent clock by name
clk: imx: Pass struct udevice into imx_clk_composite*()
clk: imx: Convert clock-osc-* back to osc_*
clk: imx: Pass struct udevice into imx_clk_pllv3*()
clk: imx: pllv3: Resolve parent clock by name
clk: clk-divider: Use struct udevice instead of struct device
clk: imx: Pass struct udevice into imx_clk_divider*()
clk: clk-divider: Resolve parent clock by name
clk: clk-fixed-factor: Use struct udevice instead of struct device
clk: clk-fixed-factor: Resolve parent clock by name
clk: imx: Pass struct udevice into imx_clk_fixed_factor*()
drivers/clk/clk-composite.c | 4 +-
drivers/clk/clk-divider.c | 7 +-
drivers/clk/clk-fixed-factor.c | 6 +-
drivers/clk/clk-gate.c | 5 +-
drivers/clk/clk-mux.c | 47 +---
drivers/clk/clk-uclass.c | 18 ++
drivers/clk/imx/clk-composite-8m.c | 4 +-
drivers/clk/imx/clk-gate2.c | 5 +-
drivers/clk/imx/clk-imx6q.c | 66 +++---
drivers/clk/imx/clk-imx8mm.c | 236 +++++++++----------
drivers/clk/imx/clk-imx8mn.c | 230 +++++++++----------
drivers/clk/imx/clk-imx8mp.c | 348 ++++++++++++++---------------
drivers/clk/imx/clk-imx8mq.c | 226 +++++++++----------
drivers/clk/imx/clk-imx93.c | 8 +-
drivers/clk/imx/clk-imxrt1020.c | 38 ++--
drivers/clk/imx/clk-imxrt1050.c | 70 +++---
drivers/clk/imx/clk-imxrt1170.c | 30 +--
drivers/clk/imx/clk-pllv3.c | 9 +-
drivers/clk/imx/clk.h | 116 +++++-----
include/clk.h | 9 +
include/linux/clk-provider.h | 10 +-
21 files changed, 754 insertions(+), 738 deletions(-)
Sigh, get maintainers missed Fabio, sorry, +CCed now.
Fabio, do you want me to resend this with you on CC?