Commit a4b431f8 authored by Peng Fan's avatar Peng Fan Committed by Shawn Guo
Browse files

clk: imx: clk-composite-8m: Switch to clk_hw based API



Switch the imx8m_clk_hw_composite_flags function to clk_hw based API,
rename accordingly and add a macro for clk based legacy. This allows
us to move closer to a clear split between consumer and provider clk
APIs.

Reviewed-by: default avatarAbel Vesa <abel.vesa@nxp.com>
Signed-off-by: default avatarPeng Fan <peng.fan@nxp.com>
Signed-off-by: default avatarShawn Guo <shawnguo@kernel.org>
parent 10c34b50
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -123,7 +123,7 @@ static const struct clk_ops imx8m_clk_composite_divider_ops = {
	.set_rate = imx8m_clk_composite_divider_set_rate,
};

struct clk *imx8m_clk_composite_flags(const char *name,
struct clk_hw *imx8m_clk_hw_composite_flags(const char *name,
					const char * const *parent_names,
					int num_parents, void __iomem *reg,
					unsigned long flags)
@@ -169,7 +169,7 @@ struct clk *imx8m_clk_composite_flags(const char *name,
	if (IS_ERR(hw))
		goto fail;

	return hw->clk;
	return hw;

fail:
	kfree(gate);
+22 −7
Original line number Diff line number Diff line
@@ -460,19 +460,34 @@ struct clk_hw *imx_clk_hw_cpu(const char *name, const char *parent_name,
		struct clk *div, struct clk *mux, struct clk *pll,
		struct clk *step);

struct clk *imx8m_clk_composite_flags(const char *name,
struct clk_hw *imx8m_clk_hw_composite_flags(const char *name,
					    const char * const *parent_names,
					int num_parents, void __iomem *reg,
					    int num_parents,
					    void __iomem *reg,
					    unsigned long flags);

#define __imx8m_clk_composite(name, parent_names, reg, flags) \
	imx8m_clk_composite_flags(name, parent_names, \
#define imx8m_clk_composite_flags(name, parent_names, num_parents, reg, \
				  flags) \
	to_clk(imx8m_clk_hw_composite_flags(name, parent_names, \
				num_parents, reg, flags))

#define __imx8m_clk_hw_composite(name, parent_names, reg, flags) \
	imx8m_clk_hw_composite_flags(name, parent_names, \
		ARRAY_SIZE(parent_names), reg, \
		flags | CLK_SET_RATE_NO_REPARENT | CLK_OPS_PARENT_ENABLE)

#define __imx8m_clk_composite(name, parent_names, reg, flags) \
	to_clk(__imx8m_clk_hw_composite(name, parent_names, reg, flags))

#define imx8m_clk_hw_composite(name, parent_names, reg) \
	__imx8m_clk_hw_composite(name, parent_names, reg, 0)

#define imx8m_clk_composite(name, parent_names, reg) \
	__imx8m_clk_composite(name, parent_names, reg, 0)

#define imx8m_clk_hw_composite_critical(name, parent_names, reg) \
	__imx8m_clk_hw_composite(name, parent_names, reg, CLK_IS_CRITICAL)

#define imx8m_clk_composite_critical(name, parent_names, reg) \
	__imx8m_clk_composite(name, parent_names, reg, CLK_IS_CRITICAL)