lkml.org 
[lkml]   [2019]   [Mar]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[RFC 08/19] clk: imx: clk-pllv3: Switch to clk_hw based API
    Date
    Switch the imx_clk_hw_pllv3 function to clk_hw based API,
    rename accordingly and add a macro for clk based legacy.

    Signed-off-by: Abel Vesa <abel.vesa@nxp.com>
    ---
    drivers/clk/imx/clk-pllv3.c | 14 +++++++++-----
    drivers/clk/imx/clk.h | 5 ++++-
    2 files changed, 13 insertions(+), 6 deletions(-)

    diff --git a/drivers/clk/imx/clk-pllv3.c b/drivers/clk/imx/clk-pllv3.c
    index 9af62ee..2e9201a 100644
    --- a/drivers/clk/imx/clk-pllv3.c
    +++ b/drivers/clk/imx/clk-pllv3.c
    @@ -412,14 +412,15 @@ static const struct clk_ops clk_pllv3_enet_ops = {
    .recalc_rate = clk_pllv3_enet_recalc_rate,
    };

    -struct clk *imx_clk_pllv3(enum imx_pllv3_type type, const char *name,
    +struct clk_hw *imx_clk_hw_pllv3(enum imx_pllv3_type type, const char *name,
    const char *parent_name, void __iomem *base,
    u32 div_mask)
    {
    struct clk_pllv3 *pll;
    const struct clk_ops *ops;
    - struct clk *clk;
    + struct clk_hw *hw;
    struct clk_init_data init;
    + int ret;

    pll = kzalloc(sizeof(*pll), GFP_KERNEL);
    if (!pll)
    @@ -469,10 +470,13 @@ struct clk *imx_clk_pllv3(enum imx_pllv3_type type, const char *name,
    init.num_parents = 1;

    pll->hw.init = &init;
    + hw = &pll->hw;

    - clk = clk_register(NULL, &pll->hw);
    - if (IS_ERR(clk))
    + ret = clk_hw_register(NULL, hw);
    + if (ret) {
    kfree(pll);
    + return ERR_PTR(ret);
    + }

    - return clk;
    + return hw;
    }
    diff --git a/drivers/clk/imx/clk.h b/drivers/clk/imx/clk.h
    index cd1a820..89f1276 100644
    --- a/drivers/clk/imx/clk.h
    +++ b/drivers/clk/imx/clk.h
    @@ -63,6 +63,9 @@ struct imx_pll14xx_clk {
    clk_hw_register_gate2(dev, name, parent_name, flags, reg, bit_idx, \
    cgr_val, clk_gate_flags, lock, share_count)->clk

    +#define imx_clk_pllv3(type, name, parent_name, base, div_mask) \
    + imx_clk_hw_pllv3(type, name, parent_name, base, div_mask)->clk
    +
    struct clk *imx_clk_pll14xx(const char *name, const char *parent_name,
    void __iomem *base, const struct imx_pll14xx_clk *pll_clk);

    @@ -94,7 +97,7 @@ enum imx_pllv3_type {
    IMX_PLLV3_DDR_IMX7,
    };

    -struct clk *imx_clk_pllv3(enum imx_pllv3_type type, const char *name,
    +struct clk_hw *imx_clk_hw_pllv3(enum imx_pllv3_type type, const char *name,
    const char *parent_name, void __iomem *base, u32 div_mask);

    struct clk_hw *imx_clk_pllv4(const char *name, const char *parent_name,
    --
    2.7.4
    \
     
     \ /
      Last update: 2019-03-22 16:39    [W:4.294 / U:0.460 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site