diff options
author | Abel Vesa <abel.vesa@nxp.com> | 2019-05-29 15:26:43 +0300 |
---|---|---|
committer | Shawn Guo <shawnguo@kernel.org> | 2019-06-07 03:36:27 +0300 |
commit | 995087c91e9c2d0e7f312e6f5cc320b9847265c9 (patch) | |
tree | 268504c260955c3f21ccb679dbd63659bd8d528d /drivers/clk/imx/clk-pfd.c | |
parent | e5674a4d076299a94f0a0bf15cc08ca8baeaaa0e (diff) | |
download | linux-995087c91e9c2d0e7f312e6f5cc320b9847265c9.tar.xz |
clk: imx: clk-pfd: Switch to clk_hw based API
Switch the imx_clk_pfd 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.
Signed-off-by: Abel Vesa <abel.vesa@nxp.com>
Reviewed-by: Stephen Boyd <sboyd@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Diffstat (limited to 'drivers/clk/imx/clk-pfd.c')
-rw-r--r-- | drivers/clk/imx/clk-pfd.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/drivers/clk/imx/clk-pfd.c b/drivers/clk/imx/clk-pfd.c index 04a3e78ea1bc..3b43d2990fe9 100644 --- a/drivers/clk/imx/clk-pfd.c +++ b/drivers/clk/imx/clk-pfd.c @@ -127,12 +127,13 @@ static const struct clk_ops clk_pfd_ops = { .is_enabled = clk_pfd_is_enabled, }; -struct clk *imx_clk_pfd(const char *name, const char *parent_name, +struct clk_hw *imx_clk_hw_pfd(const char *name, const char *parent_name, void __iomem *reg, u8 idx) { struct clk_pfd *pfd; - struct clk *clk; + struct clk_hw *hw; struct clk_init_data init; + int ret; pfd = kzalloc(sizeof(*pfd), GFP_KERNEL); if (!pfd) @@ -148,10 +149,13 @@ struct clk *imx_clk_pfd(const char *name, const char *parent_name, init.num_parents = 1; pfd->hw.init = &init; + hw = &pfd->hw; - clk = clk_register(NULL, &pfd->hw); - if (IS_ERR(clk)) + ret = clk_hw_register(NULL, hw); + if (ret) { kfree(pfd); + return ERR_PTR(ret); + } - return clk; + return hw; } |