diff mbox series

[1/2] clk: Allow clk_get_by_name() with NULL name

Message ID 20221128055359.35762-1-samuel@sholland.org
State Changes Requested
Delegated to: Sean Anderson
Headers show
Series [1/2] clk: Allow clk_get_by_name() with NULL name | expand

Commit Message

Samuel Holland Nov. 28, 2022, 5:53 a.m. UTC
This allows devm_clock_get(dev, NULL) to work and get the first clock,
which is common in code ported from Linux.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---

 drivers/clk/clk-uclass.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

Comments

Sean Anderson Jan. 4, 2023, 5:23 p.m. UTC | #1
On 11/28/22 00:53, Samuel Holland wrote:
> This allows devm_clock_get(dev, NULL) to work and get the first clock,

nit: devm_clk_get

> which is common in code ported from Linux.
> 
> Signed-off-by: Samuel Holland <samuel@sholland.org>
> ---
> 
>   drivers/clk/clk-uclass.c | 5 +++--
>   1 file changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/clk/clk-uclass.c b/drivers/clk/clk-uclass.c
> index 2f9635524cf..bfacafb2eef 100644
> --- a/drivers/clk/clk-uclass.c
> +++ b/drivers/clk/clk-uclass.c
> @@ -399,13 +399,14 @@ int clk_get_by_name(struct udevice *dev, const char *name, struct clk *clk)
>   
>   int clk_get_by_name_nodev(ofnode node, const char *name, struct clk *clk)
>   {
> -	int index;
> +	int index = 0;
>   
>   	debug("%s(node=%p, name=%s, clk=%p)\n", __func__,
>   		ofnode_get_name(node), name, clk);
>   	clk->dev = NULL;
>   
> -	index = ofnode_stringlist_search(node, "clock-names", name);
> +	if (name)
> +		index = ofnode_stringlist_search(node, "clock-names", name);
>   	if (index < 0) {
>   		debug("fdt_stringlist_search() failed: %d\n", index);
>   		return index;

Reviewed-by: Sean Anderson <seanga2@gmail.com>
Simon Glass Jan. 4, 2023, 8:01 p.m. UTC | #2
Hi Samuel,

On Sun, 27 Nov 2022 at 22:54, Samuel Holland <samuel@sholland.org> wrote:
>
> This allows devm_clock_get(dev, NULL) to work and get the first clock,
> which is common in code ported from Linux.
>
> Signed-off-by: Samuel Holland <samuel@sholland.org>
> ---
>
>  drivers/clk/clk-uclass.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/clk/clk-uclass.c b/drivers/clk/clk-uclass.c
> index 2f9635524cf..bfacafb2eef 100644
> --- a/drivers/clk/clk-uclass.c
> +++ b/drivers/clk/clk-uclass.c
> @@ -399,13 +399,14 @@ int clk_get_by_name(struct udevice *dev, const char *name, struct clk *clk)
>
>  int clk_get_by_name_nodev(ofnode node, const char *name, struct clk *clk)
>  {
> -       int index;
> +       int index = 0;
>
>         debug("%s(node=%p, name=%s, clk=%p)\n", __func__,
>                 ofnode_get_name(node), name, clk);
>         clk->dev = NULL;
>
> -       index = ofnode_stringlist_search(node, "clock-names", name);
> +       if (name)
> +               index = ofnode_stringlist_search(node, "clock-names", name);
>         if (index < 0) {
>                 debug("fdt_stringlist_search() failed: %d\n", index);
>                 return index;
> --
> 2.37.4
>

Same comments as for the reset patch.

Regards,
Simon
diff mbox series

Patch

diff --git a/drivers/clk/clk-uclass.c b/drivers/clk/clk-uclass.c
index 2f9635524cf..bfacafb2eef 100644
--- a/drivers/clk/clk-uclass.c
+++ b/drivers/clk/clk-uclass.c
@@ -399,13 +399,14 @@  int clk_get_by_name(struct udevice *dev, const char *name, struct clk *clk)
 
 int clk_get_by_name_nodev(ofnode node, const char *name, struct clk *clk)
 {
-	int index;
+	int index = 0;
 
 	debug("%s(node=%p, name=%s, clk=%p)\n", __func__,
 		ofnode_get_name(node), name, clk);
 	clk->dev = NULL;
 
-	index = ofnode_stringlist_search(node, "clock-names", name);
+	if (name)
+		index = ofnode_stringlist_search(node, "clock-names", name);
 	if (index < 0) {
 		debug("fdt_stringlist_search() failed: %d\n", index);
 		return index;