Message ID | 20240225-pll-v1-1-fad6511479c6@outlook.com (mailing list archive) |
---|---|
State | Changes Requested, archived |
Headers | show |
Series | clk: hisilicon: add support for PLL | expand |
Quoting Yang Xiwen via B4 Relay (2024-02-24 08:56:09) > diff --git a/drivers/clk/hisilicon/clk-hi3559a.c b/drivers/clk/hisilicon/clk-hi3559a.c > index ff4ca0edce06..77fa4203a428 100644 > --- a/drivers/clk/hisilicon/clk-hi3559a.c > +++ b/drivers/clk/hisilicon/clk-hi3559a.c > @@ -452,7 +452,7 @@ static const struct clk_ops hisi_clk_pll_ops = { > .recalc_rate = clk_pll_recalc_rate, > }; > > -static void hisi_clk_register_pll(struct hi3559av100_pll_clock *clks, > +static void _hisi_clk_register_pll(struct hi3559av100_pll_clock *clks, Prefix it with hi3559a then to be SoC specific please. But this is also static so I'm not sure why this patch is needed at all.
On 4/11/2024 2:52 PM, Stephen Boyd wrote: > Quoting Yang Xiwen via B4 Relay (2024-02-24 08:56:09) >> diff --git a/drivers/clk/hisilicon/clk-hi3559a.c b/drivers/clk/hisilicon/clk-hi3559a.c >> index ff4ca0edce06..77fa4203a428 100644 >> --- a/drivers/clk/hisilicon/clk-hi3559a.c >> +++ b/drivers/clk/hisilicon/clk-hi3559a.c >> @@ -452,7 +452,7 @@ static const struct clk_ops hisi_clk_pll_ops = { >> .recalc_rate = clk_pll_recalc_rate, >> }; >> >> -static void hisi_clk_register_pll(struct hi3559av100_pll_clock *clks, >> +static void _hisi_clk_register_pll(struct hi3559av100_pll_clock *clks, > Prefix it with hi3559a then to be SoC specific please. But this is also > static so I'm not sure why this patch is needed at all. it includes the header that marks this function non-static. Also the prototype is incompatible.
Quoting Yang Xiwen (2024-04-11 00:44:33) > On 4/11/2024 2:52 PM, Stephen Boyd wrote: > > Quoting Yang Xiwen via B4 Relay (2024-02-24 08:56:09) > >> diff --git a/drivers/clk/hisilicon/clk-hi3559a.c b/drivers/clk/hisilicon/clk-hi3559a.c > >> index ff4ca0edce06..77fa4203a428 100644 > >> --- a/drivers/clk/hisilicon/clk-hi3559a.c > >> +++ b/drivers/clk/hisilicon/clk-hi3559a.c > >> @@ -452,7 +452,7 @@ static const struct clk_ops hisi_clk_pll_ops = { > >> .recalc_rate = clk_pll_recalc_rate, > >> }; > >> > >> -static void hisi_clk_register_pll(struct hi3559av100_pll_clock *clks, > >> +static void _hisi_clk_register_pll(struct hi3559av100_pll_clock *clks, > > Prefix it with hi3559a then to be SoC specific please. But this is also > > static so I'm not sure why this patch is needed at all. > > > it includes the header that marks this function non-static. Also the > prototype is incompatible. What is 'it'? $ git grep hisi_clk_register_pll drivers/clk/hisilicon/clk-hi3559a.c:static void hisi_clk_register_pll(struct hi3559av100_pll_clock *clks, drivers/clk/hisilicon/clk-hi3559a.c: hisi_clk_register_pll(hi3559av100_pll_clks,
On 4/11/2024 3:53 PM, Stephen Boyd wrote: > Quoting Yang Xiwen (2024-04-11 00:44:33) >> On 4/11/2024 2:52 PM, Stephen Boyd wrote: >>> Quoting Yang Xiwen via B4 Relay (2024-02-24 08:56:09) >>>> diff --git a/drivers/clk/hisilicon/clk-hi3559a.c b/drivers/clk/hisilicon/clk-hi3559a.c >>>> index ff4ca0edce06..77fa4203a428 100644 >>>> --- a/drivers/clk/hisilicon/clk-hi3559a.c >>>> +++ b/drivers/clk/hisilicon/clk-hi3559a.c >>>> @@ -452,7 +452,7 @@ static const struct clk_ops hisi_clk_pll_ops = { >>>> .recalc_rate = clk_pll_recalc_rate, >>>> }; >>>> >>>> -static void hisi_clk_register_pll(struct hi3559av100_pll_clock *clks, >>>> +static void _hisi_clk_register_pll(struct hi3559av100_pll_clock *clks, >>> Prefix it with hi3559a then to be SoC specific please. But this is also >>> static so I'm not sure why this patch is needed at all. >> >> it includes the header that marks this function non-static. Also the >> prototype is incompatible. > What is 'it'? The line 18 `#include "clk.h"`, and please see patch 2. Patch 2 added 2 functions to "clk.h", one of them reused the `hisi_clk_register_pll` name with a different prototype. > > $ git grep hisi_clk_register_pll > drivers/clk/hisilicon/clk-hi3559a.c:static void hisi_clk_register_pll(struct hi3559av100_pll_clock *clks, > drivers/clk/hisilicon/clk-hi3559a.c: hisi_clk_register_pll(hi3559av100_pll_clks, a snippet copied from patch 2: +int hisi_clk_register_pll(struct device *dev, const struct hisi_pll_clock *clks, + int nums, struct hisi_clock_data *data);
Quoting Yang Xiwen (2024-04-11 03:31:58) > On 4/11/2024 3:53 PM, Stephen Boyd wrote: > > Quoting Yang Xiwen (2024-04-11 00:44:33) > >> On 4/11/2024 2:52 PM, Stephen Boyd wrote: > >>> Quoting Yang Xiwen via B4 Relay (2024-02-24 08:56:09) > >>>> diff --git a/drivers/clk/hisilicon/clk-hi3559a.c b/drivers/clk/hisilicon/clk-hi3559a.c > >>>> index ff4ca0edce06..77fa4203a428 100644 > >>>> --- a/drivers/clk/hisilicon/clk-hi3559a.c > >>>> +++ b/drivers/clk/hisilicon/clk-hi3559a.c > >>>> @@ -452,7 +452,7 @@ static const struct clk_ops hisi_clk_pll_ops = { > >>>> .recalc_rate = clk_pll_recalc_rate, > >>>> }; > >>>> > >>>> -static void hisi_clk_register_pll(struct hi3559av100_pll_clock *clks, > >>>> +static void _hisi_clk_register_pll(struct hi3559av100_pll_clock *clks, > >>> Prefix it with hi3559a then to be SoC specific please. But this is also > >>> static so I'm not sure why this patch is needed at all. > >> > >> it includes the header that marks this function non-static. Also the > >> prototype is incompatible. > > What is 'it'? > > > The line 18 `#include "clk.h"`, and please see patch 2. > > > Patch 2 added 2 functions to "clk.h", one of them reused the > `hisi_clk_register_pll` name with a different prototype. > > > > > > $ git grep hisi_clk_register_pll > > drivers/clk/hisilicon/clk-hi3559a.c:static void hisi_clk_register_pll(struct hi3559av100_pll_clock *clks, > > drivers/clk/hisilicon/clk-hi3559a.c: hisi_clk_register_pll(hi3559av100_pll_clks, > > > a snippet copied from patch 2: > > > +int hisi_clk_register_pll(struct device *dev, const struct hisi_pll_clock *clks, > + int nums, struct hisi_clock_data *data); > > Ok, got it. Prefix the existing hisi_clk_register_pll() as hi3559a_clk_register_pll().
diff --git a/drivers/clk/hisilicon/clk-hi3559a.c b/drivers/clk/hisilicon/clk-hi3559a.c index ff4ca0edce06..77fa4203a428 100644 --- a/drivers/clk/hisilicon/clk-hi3559a.c +++ b/drivers/clk/hisilicon/clk-hi3559a.c @@ -452,7 +452,7 @@ static const struct clk_ops hisi_clk_pll_ops = { .recalc_rate = clk_pll_recalc_rate, }; -static void hisi_clk_register_pll(struct hi3559av100_pll_clock *clks, +static void _hisi_clk_register_pll(struct hi3559av100_pll_clock *clks, int nums, struct hisi_clock_data *data, struct device *dev) { void __iomem *base = data->base; @@ -517,7 +517,7 @@ static struct hisi_clock_data *hi3559av100_clk_register( if (ret) return ERR_PTR(ret); - hisi_clk_register_pll(hi3559av100_pll_clks, + _hisi_clk_register_pll(hi3559av100_pll_clks, ARRAY_SIZE(hi3559av100_pll_clks), clk_data, &pdev->dev); ret = hisi_clk_register_mux(hi3559av100_mux_clks_crg,