devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 2/2] clk: versatile: clk-icst: Ensure clock names are unique
  2021-11-09 16:46 [PATCH 0/2] Fix Arm Ltd board node name collisions Rob Herring
@ 2021-11-09 16:46 ` Rob Herring
  2021-11-09 22:21   ` Linus Walleij
  2021-11-11  0:41   ` Stephen Boyd
  0 siblings, 2 replies; 4+ messages in thread
From: Rob Herring @ 2021-11-09 16:46 UTC (permalink / raw)
  To: Linus Walleij, Stephen Boyd, Sudeep Holla
  Cc: devicetree, linux-arm-kernel, Guenter Roeck, Lorenzo Pieralisi,
	linux-clk, linux-kernel, stable

Commit 2d3de197a818 ("ARM: dts: arm: Update ICST clock nodes 'reg' and
node names") moved to using generic node names. That results in trying
to register multiple clocks with the same name. Fix this by including
the unit-address in the clock name.

Fixes: 2d3de197a818 ("ARM: dts: arm: Update ICST clock nodes 'reg' and node names")
Cc: stable@vger.kernel.org
Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: Stephen Boyd <sboyd@kernel.org>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-clk@vger.kernel.org
Signed-off-by: Rob Herring <robh@kernel.org>
---
This should be applied to stable to minimize DT ABI breakage.
---
 drivers/clk/versatile/clk-icst.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/clk/versatile/clk-icst.c b/drivers/clk/versatile/clk-icst.c
index 77fd0ecaf155..d52f976dc875 100644
--- a/drivers/clk/versatile/clk-icst.c
+++ b/drivers/clk/versatile/clk-icst.c
@@ -484,7 +484,7 @@ static void __init of_syscon_icst_setup(struct device_node *np)
 	struct device_node *parent;
 	struct regmap *map;
 	struct clk_icst_desc icst_desc;
-	const char *name = np->name;
+	const char *name;
 	const char *parent_name;
 	struct clk *regclk;
 	enum icst_control_type ctype;
@@ -533,15 +533,17 @@ static void __init of_syscon_icst_setup(struct device_node *np)
 		icst_desc.params = &icst525_apcp_cm_params;
 		ctype = ICST_INTEGRATOR_CP_CM_MEM;
 	} else {
-		pr_err("unknown ICST clock %s\n", name);
+		pr_err("unknown ICST clock %pOF\n", np);
 		return;
 	}
 
 	/* Parent clock name is not the same as node parent */
 	parent_name = of_clk_get_parent_name(np, 0);
+	name = kasprintf(GFP_KERNEL, "%pOFP", np);
 
 	regclk = icst_clk_setup(NULL, &icst_desc, name, parent_name, map, ctype);
 	if (IS_ERR(regclk)) {
+		kfree(name);
 		pr_err("error setting up syscon ICST clock %s\n", name);
 		return;
 	}
-- 
2.32.0


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH 2/2] clk: versatile: clk-icst: Ensure clock names are unique
@ 2021-11-09 19:43 Guenter Roeck
  0 siblings, 0 replies; 4+ messages in thread
From: Guenter Roeck @ 2021-11-09 19:43 UTC (permalink / raw)
  To: Rob Herring
  Cc: Linus Walleij, Stephen Boyd, Sudeep Holla, devicetree,
	linux-arm-kernel, Lorenzo Pieralisi, linux-clk, linux-kernel,
	stable

On Tue, Nov 09, 2021 at 10:46:50AM -0600, Rob Herring wrote:
> Commit 2d3de197a818 ("ARM: dts: arm: Update ICST clock nodes 'reg' and
> node names") moved to using generic node names. That results in trying
> to register multiple clocks with the same name. Fix this by including
> the unit-address in the clock name.
> 
> Fixes: 2d3de197a818 ("ARM: dts: arm: Update ICST clock nodes 'reg' and node names")
> Cc: stable@vger.kernel.org
> Cc: Linus Walleij <linus.walleij@linaro.org>
> Cc: Stephen Boyd <sboyd@kernel.org>
> Cc: linux-arm-kernel@lists.infradead.org
> Cc: linux-clk@vger.kernel.org
> Signed-off-by: Rob Herring <robh@kernel.org>

Tested-by: Guenter Roeck <linux@roeck-us.net>

> ---
> This should be applied to stable to minimize DT ABI breakage.
> ---
>  drivers/clk/versatile/clk-icst.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/clk/versatile/clk-icst.c b/drivers/clk/versatile/clk-icst.c
> index 77fd0ecaf155..d52f976dc875 100644
> --- a/drivers/clk/versatile/clk-icst.c
> +++ b/drivers/clk/versatile/clk-icst.c
> @@ -484,7 +484,7 @@ static void __init of_syscon_icst_setup(struct device_node *np)
>  	struct device_node *parent;
>  	struct regmap *map;
>  	struct clk_icst_desc icst_desc;
> -	const char *name = np->name;
> +	const char *name;
>  	const char *parent_name;
>  	struct clk *regclk;
>  	enum icst_control_type ctype;
> @@ -533,15 +533,17 @@ static void __init of_syscon_icst_setup(struct device_node *np)
>  		icst_desc.params = &icst525_apcp_cm_params;
>  		ctype = ICST_INTEGRATOR_CP_CM_MEM;
>  	} else {
> -		pr_err("unknown ICST clock %s\n", name);
> +		pr_err("unknown ICST clock %pOF\n", np);
>  		return;
>  	}
>  
>  	/* Parent clock name is not the same as node parent */
>  	parent_name = of_clk_get_parent_name(np, 0);
> +	name = kasprintf(GFP_KERNEL, "%pOFP", np);
>  
>  	regclk = icst_clk_setup(NULL, &icst_desc, name, parent_name, map, ctype);
>  	if (IS_ERR(regclk)) {
> +		kfree(name);
>  		pr_err("error setting up syscon ICST clock %s\n", name);
>  		return;
>  	}
> -- 
> 2.32.0
> 

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH 2/2] clk: versatile: clk-icst: Ensure clock names are unique
  2021-11-09 16:46 ` [PATCH 2/2] clk: versatile: clk-icst: Ensure clock names are unique Rob Herring
@ 2021-11-09 22:21   ` Linus Walleij
  2021-11-11  0:41   ` Stephen Boyd
  1 sibling, 0 replies; 4+ messages in thread
From: Linus Walleij @ 2021-11-09 22:21 UTC (permalink / raw)
  To: Rob Herring
  Cc: Stephen Boyd, Sudeep Holla, devicetree, linux-arm-kernel,
	Guenter Roeck, Lorenzo Pieralisi, linux-clk, linux-kernel, stable

On Tue, Nov 9, 2021 at 5:46 PM Rob Herring <robh@kernel.org> wrote:

> Commit 2d3de197a818 ("ARM: dts: arm: Update ICST clock nodes 'reg' and
> node names") moved to using generic node names. That results in trying
> to register multiple clocks with the same name. Fix this by including
> the unit-address in the clock name.
>
> Fixes: 2d3de197a818 ("ARM: dts: arm: Update ICST clock nodes 'reg' and node names")
> Cc: stable@vger.kernel.org
> Cc: Linus Walleij <linus.walleij@linaro.org>
> Cc: Stephen Boyd <sboyd@kernel.org>
> Cc: linux-arm-kernel@lists.infradead.org
> Cc: linux-clk@vger.kernel.org
> Signed-off-by: Rob Herring <robh@kernel.org>

Reviewed-by: Linus Walleij <linus.walleij@linaro.org>

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH 2/2] clk: versatile: clk-icst: Ensure clock names are unique
  2021-11-09 16:46 ` [PATCH 2/2] clk: versatile: clk-icst: Ensure clock names are unique Rob Herring
  2021-11-09 22:21   ` Linus Walleij
@ 2021-11-11  0:41   ` Stephen Boyd
  1 sibling, 0 replies; 4+ messages in thread
From: Stephen Boyd @ 2021-11-11  0:41 UTC (permalink / raw)
  To: Linus Walleij, Rob Herring, Sudeep Holla
  Cc: devicetree, linux-arm-kernel, Guenter Roeck, Lorenzo Pieralisi,
	linux-clk, linux-kernel, stable

Quoting Rob Herring (2021-11-09 08:46:50)
> Commit 2d3de197a818 ("ARM: dts: arm: Update ICST clock nodes 'reg' and
> node names") moved to using generic node names. That results in trying
> to register multiple clocks with the same name. Fix this by including
> the unit-address in the clock name.
> 
> Fixes: 2d3de197a818 ("ARM: dts: arm: Update ICST clock nodes 'reg' and node names")
> Cc: stable@vger.kernel.org
> Cc: Linus Walleij <linus.walleij@linaro.org>
> Cc: Stephen Boyd <sboyd@kernel.org>
> Cc: linux-arm-kernel@lists.infradead.org
> Cc: linux-clk@vger.kernel.org
> Signed-off-by: Rob Herring <robh@kernel.org>
> ---

Reviewed-by: Stephen Boyd <sboyd@kernel.org>

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2021-11-11  0:41 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-11-09 19:43 [PATCH 2/2] clk: versatile: clk-icst: Ensure clock names are unique Guenter Roeck
  -- strict thread matches above, loose matches on Subject: below --
2021-11-09 16:46 [PATCH 0/2] Fix Arm Ltd board node name collisions Rob Herring
2021-11-09 16:46 ` [PATCH 2/2] clk: versatile: clk-icst: Ensure clock names are unique Rob Herring
2021-11-09 22:21   ` Linus Walleij
2021-11-11  0:41   ` Stephen Boyd

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).