diff mbox series

clk: imx: imx8: Add .name for "acm_aud_clk0_sel" and "acm_aud_clk1_sel"

Message ID 1719996771-11220-1-git-send-email-shengjiu.wang@nxp.com (mailing list archive)
State New
Headers show
Series clk: imx: imx8: Add .name for "acm_aud_clk0_sel" and "acm_aud_clk1_sel" | expand

Commit Message

Shengjiu Wang July 3, 2024, 8:52 a.m. UTC
"acm_aud_clk0_sel" and "acm_aud_clk1_sel" are registered by this ACM
driver, but they are the parent clocks for other clocks, in order to
use assigned-clock-parents in device tree, they need to have the
global name.

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
---
 drivers/clk/imx/clk-imx8-acm.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

Comments

Stephen Boyd July 8, 2024, 10:45 p.m. UTC | #1
Quoting Shengjiu Wang (2024-07-03 01:52:51)
> "acm_aud_clk0_sel" and "acm_aud_clk1_sel" are registered by this ACM
> driver, but they are the parent clocks for other clocks, in order to
> use assigned-clock-parents in device tree, they need to have the
> global name.
> 
> Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
> ---
>  drivers/clk/imx/clk-imx8-acm.c | 12 ++++++------
>  1 file changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/clk/imx/clk-imx8-acm.c b/drivers/clk/imx/clk-imx8-acm.c
> index 1bdb480cc96c..a1affcf6daff 100644
> --- a/drivers/clk/imx/clk-imx8-acm.c
> +++ b/drivers/clk/imx/clk-imx8-acm.c
> @@ -114,8 +114,8 @@ static const struct clk_parent_data imx8qm_mclk_out_sels[] = {
>  static const struct clk_parent_data imx8qm_mclk_sels[] = {
>         { .fw_name = "aud_pll_div_clk0_lpcg_clk" },
>         { .fw_name = "aud_pll_div_clk1_lpcg_clk" },
> -       { .fw_name = "acm_aud_clk0_sel" },
> -       { .fw_name = "acm_aud_clk1_sel" },
> +       { .fw_name = "acm_aud_clk0_sel", .name = "acm_aud_clk0_sel" },
> +       { .fw_name = "acm_aud_clk1_sel", .name = "acm_aud_clk1_sel" },

This doesn't make any sense. Why are we adding fallback names?  Is
"acm_aud_clk0_sel" not part of the DT binding for this clk controller?
Shengjiu Wang July 9, 2024, 3:20 a.m. UTC | #2
On Tue, Jul 9, 2024 at 6:45 AM Stephen Boyd <sboyd@kernel.org> wrote:
>
> Quoting Shengjiu Wang (2024-07-03 01:52:51)
> > "acm_aud_clk0_sel" and "acm_aud_clk1_sel" are registered by this ACM
> > driver, but they are the parent clocks for other clocks, in order to
> > use assigned-clock-parents in device tree, they need to have the
> > global name.
> >
> > Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
> > ---
> >  drivers/clk/imx/clk-imx8-acm.c | 12 ++++++------
> >  1 file changed, 6 insertions(+), 6 deletions(-)
> >
> > diff --git a/drivers/clk/imx/clk-imx8-acm.c b/drivers/clk/imx/clk-imx8-acm.c
> > index 1bdb480cc96c..a1affcf6daff 100644
> > --- a/drivers/clk/imx/clk-imx8-acm.c
> > +++ b/drivers/clk/imx/clk-imx8-acm.c
> > @@ -114,8 +114,8 @@ static const struct clk_parent_data imx8qm_mclk_out_sels[] = {
> >  static const struct clk_parent_data imx8qm_mclk_sels[] = {
> >         { .fw_name = "aud_pll_div_clk0_lpcg_clk" },
> >         { .fw_name = "aud_pll_div_clk1_lpcg_clk" },
> > -       { .fw_name = "acm_aud_clk0_sel" },
> > -       { .fw_name = "acm_aud_clk1_sel" },
> > +       { .fw_name = "acm_aud_clk0_sel", .name = "acm_aud_clk0_sel" },
> > +       { .fw_name = "acm_aud_clk1_sel", .name = "acm_aud_clk1_sel" },
>
> This doesn't make any sense. Why are we adding fallback names?  Is
> "acm_aud_clk0_sel" not part of the DT binding for this clk controller?

It is not part of DT binding for this clk controller.  it is registered by this
clk controller itself.  As it is a parent clock, so my understanding
is that we need to add a fallback name,  or change "fw_name" to "name",
please correct me if I am wrong.

Best regards
Shengjiu Wang
Stephen Boyd July 9, 2024, 8:08 p.m. UTC | #3
Quoting Shengjiu Wang (2024-07-08 20:20:56)
> On Tue, Jul 9, 2024 at 6:45 AM Stephen Boyd <sboyd@kernel.org> wrote:
> >
> > Quoting Shengjiu Wang (2024-07-03 01:52:51)
> > > "acm_aud_clk0_sel" and "acm_aud_clk1_sel" are registered by this ACM
> > > driver, but they are the parent clocks for other clocks, in order to
> > > use assigned-clock-parents in device tree, they need to have the
> > > global name.
> > >
> > > Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
> > > ---
> > >  drivers/clk/imx/clk-imx8-acm.c | 12 ++++++------
> > >  1 file changed, 6 insertions(+), 6 deletions(-)
> > >
> > > diff --git a/drivers/clk/imx/clk-imx8-acm.c b/drivers/clk/imx/clk-imx8-acm.c
> > > index 1bdb480cc96c..a1affcf6daff 100644
> > > --- a/drivers/clk/imx/clk-imx8-acm.c
> > > +++ b/drivers/clk/imx/clk-imx8-acm.c
> > > @@ -114,8 +114,8 @@ static const struct clk_parent_data imx8qm_mclk_out_sels[] = {
> > >  static const struct clk_parent_data imx8qm_mclk_sels[] = {
> > >         { .fw_name = "aud_pll_div_clk0_lpcg_clk" },
> > >         { .fw_name = "aud_pll_div_clk1_lpcg_clk" },
> > > -       { .fw_name = "acm_aud_clk0_sel" },
> > > -       { .fw_name = "acm_aud_clk1_sel" },
> > > +       { .fw_name = "acm_aud_clk0_sel", .name = "acm_aud_clk0_sel" },
> > > +       { .fw_name = "acm_aud_clk1_sel", .name = "acm_aud_clk1_sel" },
> >
> > This doesn't make any sense. Why are we adding fallback names?  Is
> > "acm_aud_clk0_sel" not part of the DT binding for this clk controller?
> 
> It is not part of DT binding for this clk controller.  it is registered by this
> clk controller itself.  As it is a parent clock, so my understanding
> is that we need to add a fallback name,  or change "fw_name" to "name",
> please correct me if I am wrong.

If it's registered by this clk controller itself then it should be a
clk_hw pointer and not use any string name.
Shengjiu Wang July 10, 2024, 6:48 a.m. UTC | #4
On Wed, Jul 10, 2024 at 4:08 AM Stephen Boyd <sboyd@kernel.org> wrote:
>
> Quoting Shengjiu Wang (2024-07-08 20:20:56)
> > On Tue, Jul 9, 2024 at 6:45 AM Stephen Boyd <sboyd@kernel.org> wrote:
> > >
> > > Quoting Shengjiu Wang (2024-07-03 01:52:51)
> > > > "acm_aud_clk0_sel" and "acm_aud_clk1_sel" are registered by this ACM
> > > > driver, but they are the parent clocks for other clocks, in order to
> > > > use assigned-clock-parents in device tree, they need to have the
> > > > global name.
> > > >
> > > > Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
> > > > ---
> > > >  drivers/clk/imx/clk-imx8-acm.c | 12 ++++++------
> > > >  1 file changed, 6 insertions(+), 6 deletions(-)
> > > >
> > > > diff --git a/drivers/clk/imx/clk-imx8-acm.c b/drivers/clk/imx/clk-imx8-acm.c
> > > > index 1bdb480cc96c..a1affcf6daff 100644
> > > > --- a/drivers/clk/imx/clk-imx8-acm.c
> > > > +++ b/drivers/clk/imx/clk-imx8-acm.c
> > > > @@ -114,8 +114,8 @@ static const struct clk_parent_data imx8qm_mclk_out_sels[] = {
> > > >  static const struct clk_parent_data imx8qm_mclk_sels[] = {
> > > >         { .fw_name = "aud_pll_div_clk0_lpcg_clk" },
> > > >         { .fw_name = "aud_pll_div_clk1_lpcg_clk" },
> > > > -       { .fw_name = "acm_aud_clk0_sel" },
> > > > -       { .fw_name = "acm_aud_clk1_sel" },
> > > > +       { .fw_name = "acm_aud_clk0_sel", .name = "acm_aud_clk0_sel" },
> > > > +       { .fw_name = "acm_aud_clk1_sel", .name = "acm_aud_clk1_sel" },
> > >
> > > This doesn't make any sense. Why are we adding fallback names?  Is
> > > "acm_aud_clk0_sel" not part of the DT binding for this clk controller?
> >
> > It is not part of DT binding for this clk controller.  it is registered by this
> > clk controller itself.  As it is a parent clock, so my understanding
> > is that we need to add a fallback name,  or change "fw_name" to "name",
> > please correct me if I am wrong.
>
> If it's registered by this clk controller itself then it should be a
> clk_hw pointer and not use any string name.

ok, will update it.

Best regards
Shengjiu Wang
diff mbox series

Patch

diff --git a/drivers/clk/imx/clk-imx8-acm.c b/drivers/clk/imx/clk-imx8-acm.c
index 1bdb480cc96c..a1affcf6daff 100644
--- a/drivers/clk/imx/clk-imx8-acm.c
+++ b/drivers/clk/imx/clk-imx8-acm.c
@@ -114,8 +114,8 @@  static const struct clk_parent_data imx8qm_mclk_out_sels[] = {
 static const struct clk_parent_data imx8qm_mclk_sels[] = {
 	{ .fw_name = "aud_pll_div_clk0_lpcg_clk" },
 	{ .fw_name = "aud_pll_div_clk1_lpcg_clk" },
-	{ .fw_name = "acm_aud_clk0_sel" },
-	{ .fw_name = "acm_aud_clk1_sel" },
+	{ .fw_name = "acm_aud_clk0_sel", .name = "acm_aud_clk0_sel" },
+	{ .fw_name = "acm_aud_clk1_sel", .name = "acm_aud_clk1_sel" },
 };
 
 static const struct clk_parent_data imx8qm_asrc_mux_clk_sels[] = {
@@ -179,8 +179,8 @@  static const struct clk_parent_data imx8qxp_mclk_out_sels[] = {
 static const struct clk_parent_data imx8qxp_mclk_sels[] = {
 	{ .fw_name = "aud_pll_div_clk0_lpcg_clk" },
 	{ .fw_name = "aud_pll_div_clk1_lpcg_clk" },
-	{ .fw_name = "acm_aud_clk0_sel" },
-	{ .fw_name = "acm_aud_clk1_sel" },
+	{ .fw_name = "acm_aud_clk0_sel", .name = "acm_aud_clk0_sel" },
+	{ .fw_name = "acm_aud_clk1_sel", .name = "acm_aud_clk1_sel" },
 };
 
 static struct clk_imx8_acm_sel imx8qxp_sels[] = {
@@ -231,8 +231,8 @@  static const struct clk_parent_data imx8dxl_mclk_out_sels[] = {
 static const struct clk_parent_data imx8dxl_mclk_sels[] = {
 	{ .fw_name = "aud_pll_div_clk0_lpcg_clk" },
 	{ .fw_name = "aud_pll_div_clk1_lpcg_clk" },
-	{ .fw_name = "acm_aud_clk0_sel" },
-	{ .fw_name = "acm_aud_clk1_sel" },
+	{ .fw_name = "acm_aud_clk0_sel", .name = "acm_aud_clk0_sel" },
+	{ .fw_name = "acm_aud_clk1_sel", .name = "acm_aud_clk1_sel" },
 };
 
 static struct clk_imx8_acm_sel imx8dxl_sels[] = {