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 | 80 +++---- drivers/clk/imx/clk-imx8mm.c | 254 +++++++++++---------- drivers/clk/imx/clk-imx8mn.c | 246 ++++++++++---------- 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 | 42 ++-- drivers/clk/imx/clk-imxrt1050.c | 78 +++---- 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, 783 insertions(+), 769 deletions(-) --- Cc: Adam Ford <[email protected]> Cc: Christoph Niedermaier <[email protected]> Cc: Dong Aisheng <[email protected]> Cc: Fabio Estevam <[email protected]> Cc: Hou Zhiqiang <[email protected]> Cc: Michael Trimarchi <[email protected]> Cc: Peng Fan <[email protected]> Cc: Tim Harvey <[email protected]> Cc: Tom Rini <[email protected]> Cc: [email protected] Cc: [email protected] -- 2.47.2

