#define pr_fmt(fmt) …
#include <linux/module.h>
#include <linux/clk-provider.h>
#include <linux/errno.h>
#include <linux/export.h>
#include <linux/io.h>
#include <linux/slab.h>
#include <linux/regmap.h>
#include <linux/mfd/syscon.h>
#include "clk.h"
struct imx_clk_gpr { … };
static struct imx_clk_gpr *to_imx_clk_gpr(struct clk_hw *hw)
{ … }
static u8 imx_clk_gpr_mux_get_parent(struct clk_hw *hw)
{ … }
static int imx_clk_gpr_mux_set_parent(struct clk_hw *hw, u8 index)
{ … }
static const struct clk_ops imx_clk_gpr_mux_ops = …;
struct clk_hw *imx_clk_gpr_mux(const char *name, const char *compatible,
u32 reg, const char **parent_names,
u8 num_parents, const u32 *mux_table, u32 mask)
{ … }