clk: Use of_property_present() for testing DT property presence

Message ID 20230310144701.1541504-1-robh@kernel.org
State New
Headers
Series clk: Use of_property_present() for testing DT property presence |

Commit Message

Rob Herring March 10, 2023, 2:47 p.m. UTC
  It is preferred to use typed property access functions (i.e.
of_property_read_<type> functions) rather than low-level
of_get_property/of_find_property functions for reading properties. As
part of this, convert of_get_property/of_find_property calls to the
recently added of_property_present() helper when we just want to test
for presence of a property and nothing more.

Signed-off-by: Rob Herring <robh@kernel.org>
---
 drivers/clk/clk.c         | 4 ++--
 drivers/clk/sprd/common.c | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)
  

Comments

Chunyan Zhang March 13, 2023, 2:26 a.m. UTC | #1
On Fri, 10 Mar 2023 at 22:47, Rob Herring <robh@kernel.org> wrote:
>
> It is preferred to use typed property access functions (i.e.
> of_property_read_<type> functions) rather than low-level
> of_get_property/of_find_property functions for reading properties. As
> part of this, convert of_get_property/of_find_property calls to the
> recently added of_property_present() helper when we just want to test
> for presence of a property and nothing more.
>
> Signed-off-by: Rob Herring <robh@kernel.org>
> ---
>  drivers/clk/clk.c         | 4 ++--
>  drivers/clk/sprd/common.c | 2 +-

For sprd clk:
Acked-by: Chunyan Zhang <zhang.lyra@gmail.com>

Thanks,
Chunyan

>  2 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c
> index ae07685c7588..f7528d7f8256 100644
> --- a/drivers/clk/clk.c
> +++ b/drivers/clk/clk.c
> @@ -4880,8 +4880,8 @@ static struct device_node *get_clk_provider_node(struct device *dev)
>         np = dev->of_node;
>         parent_np = dev->parent ? dev->parent->of_node : NULL;
>
> -       if (!of_find_property(np, "#clock-cells", NULL))
> -               if (of_find_property(parent_np, "#clock-cells", NULL))
> +       if (!of_property_present(np, "#clock-cells"))
> +               if (of_property_present(parent_np, "#clock-cells"))
>                         np = parent_np;
>
>         return np;
> diff --git a/drivers/clk/sprd/common.c b/drivers/clk/sprd/common.c
> index ce81e4087a8f..1a3795a61f81 100644
> --- a/drivers/clk/sprd/common.c
> +++ b/drivers/clk/sprd/common.c
> @@ -44,7 +44,7 @@ int sprd_clk_regmap_init(struct platform_device *pdev,
>         struct device_node *node = dev->of_node, *np;
>         struct regmap *regmap;
>
> -       if (of_find_property(node, "sprd,syscon", NULL)) {
> +       if (of_property_present(node, "sprd,syscon")) {
>                 regmap = syscon_regmap_lookup_by_phandle(node, "sprd,syscon");
>                 if (IS_ERR(regmap)) {
>                         pr_err("%s: failed to get syscon regmap\n", __func__);
> --
> 2.39.2
>
  
Stephen Boyd March 15, 2023, 12:39 a.m. UTC | #2
Quoting Rob Herring (2023-03-10 06:47:01)
> It is preferred to use typed property access functions (i.e.
> of_property_read_<type> functions) rather than low-level
> of_get_property/of_find_property functions for reading properties. As
> part of this, convert of_get_property/of_find_property calls to the
> recently added of_property_present() helper when we just want to test
> for presence of a property and nothing more.
> 
> Signed-off-by: Rob Herring <robh@kernel.org>
> ---

Applied to clk-next
  

Patch

diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c
index ae07685c7588..f7528d7f8256 100644
--- a/drivers/clk/clk.c
+++ b/drivers/clk/clk.c
@@ -4880,8 +4880,8 @@  static struct device_node *get_clk_provider_node(struct device *dev)
 	np = dev->of_node;
 	parent_np = dev->parent ? dev->parent->of_node : NULL;
 
-	if (!of_find_property(np, "#clock-cells", NULL))
-		if (of_find_property(parent_np, "#clock-cells", NULL))
+	if (!of_property_present(np, "#clock-cells"))
+		if (of_property_present(parent_np, "#clock-cells"))
 			np = parent_np;
 
 	return np;
diff --git a/drivers/clk/sprd/common.c b/drivers/clk/sprd/common.c
index ce81e4087a8f..1a3795a61f81 100644
--- a/drivers/clk/sprd/common.c
+++ b/drivers/clk/sprd/common.c
@@ -44,7 +44,7 @@  int sprd_clk_regmap_init(struct platform_device *pdev,
 	struct device_node *node = dev->of_node, *np;
 	struct regmap *regmap;
 
-	if (of_find_property(node, "sprd,syscon", NULL)) {
+	if (of_property_present(node, "sprd,syscon")) {
 		regmap = syscon_regmap_lookup_by_phandle(node, "sprd,syscon");
 		if (IS_ERR(regmap)) {
 			pr_err("%s: failed to get syscon regmap\n", __func__);