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 <aford...@gmail.com> Cc: Christoph Niedermaier <cniederma...@dh-electronics.com> Cc: Dong Aisheng <aisheng.d...@nxp.com> Cc: Fabio Estevam <feste...@denx.de> Cc: Hou Zhiqiang <zhiqiang....@nxp.com> Cc: Michael Trimarchi <mich...@amarulasolutions.com> Cc: Peng Fan <peng....@nxp.com> Cc: Tim Harvey <thar...@gateworks.com> Cc: Tom Rini <tr...@konsulko.com> Cc: u-boot@lists.denx.de Cc: uboot-...@nxp.com -- 2.47.2