Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 73de5c8b authored by Michael Turquette's avatar Michael Turquette
Browse files

clk: meson: add peripheral gate macro



There are a series of peripheral and system gate clocks that fan out
from the clk81 signal. Add a helper macro to statically initialize these
gate clocks.

Tested-by: default avatarKevin Hilman <khilman@baylibre.com>
Signed-off-by: default avatarMichael Turquette <mturquette@baylibre.com>
parent cb7c47d7
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -73,6 +73,20 @@ struct meson_clk_cpu {
int meson_clk_cpu_notifier_cb(struct notifier_block *nb, unsigned long event,
		void *data);

#define MESON_GATE(_name, _reg, _bit)					\
struct clk_gate gxbb_##_name = { 						\
	.reg = (void __iomem *) _reg, 					\
	.bit_idx = (_bit), 						\
	.lock = &clk_lock,						\
	.hw.init = &(struct clk_init_data) { 				\
		.name = #_name,					\
		.ops = &clk_gate_ops,					\
		.parent_names = (const char *[]){ "clk81" },		\
		.num_parents = 1,					\
		.flags = (CLK_SET_RATE_PARENT | CLK_IGNORE_UNUSED), 	\
	},								\
};

/* clk_ops */
extern const struct clk_ops meson_clk_pll_ro_ops;
extern const struct clk_ops meson_clk_pll_ops;