arch/riscv/kernel/cacheinfo.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-)
The use of of_property_read_bool() for non-boolean properties is
deprecated and since
commit c141ecc3cecd ("of: Warn when of_property_read_bool() is used on non-boolean properties")
a warning is displayed when used incorrectly. Fix it by switching to
of_property_present() as recommended in the same commit.
Signed-off-by: Emil Renner Berthing <emil.renner.berthing@canonical.com>
---
arch/riscv/kernel/cacheinfo.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/arch/riscv/kernel/cacheinfo.c b/arch/riscv/kernel/cacheinfo.c
index 2d40736fc37c..26b085dbdd07 100644
--- a/arch/riscv/kernel/cacheinfo.c
+++ b/arch/riscv/kernel/cacheinfo.c
@@ -108,11 +108,11 @@ int populate_cache_leaves(unsigned int cpu)
if (!np)
return -ENOENT;
- if (of_property_read_bool(np, "cache-size"))
+ if (of_property_present(np, "cache-size"))
ci_leaf_init(this_leaf++, CACHE_TYPE_UNIFIED, level);
- if (of_property_read_bool(np, "i-cache-size"))
+ if (of_property_present(np, "i-cache-size"))
ci_leaf_init(this_leaf++, CACHE_TYPE_INST, level);
- if (of_property_read_bool(np, "d-cache-size"))
+ if (of_property_present(np, "d-cache-size"))
ci_leaf_init(this_leaf++, CACHE_TYPE_DATA, level);
prev = np;
@@ -125,11 +125,11 @@ int populate_cache_leaves(unsigned int cpu)
break;
if (level <= levels)
break;
- if (of_property_read_bool(np, "cache-size"))
+ if (of_property_present(np, "cache-size"))
ci_leaf_init(this_leaf++, CACHE_TYPE_UNIFIED, level);
- if (of_property_read_bool(np, "i-cache-size"))
+ if (of_property_present(np, "i-cache-size"))
ci_leaf_init(this_leaf++, CACHE_TYPE_INST, level);
- if (of_property_read_bool(np, "d-cache-size"))
+ if (of_property_present(np, "d-cache-size"))
ci_leaf_init(this_leaf++, CACHE_TYPE_DATA, level);
levels = level;
}
--
2.43.0
Hi Emil,
On 05/02/2025 15:39, Emil Renner Berthing wrote:
> The use of of_property_read_bool() for non-boolean properties is
> deprecated and since
>
> commit c141ecc3cecd ("of: Warn when of_property_read_bool() is used on non-boolean properties")
>
> a warning is displayed when used incorrectly. Fix it by switching to
> of_property_present() as recommended in the same commit.
>
> Signed-off-by: Emil Renner Berthing <emil.renner.berthing@canonical.com>
> ---
> arch/riscv/kernel/cacheinfo.c | 12 ++++++------
> 1 file changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/arch/riscv/kernel/cacheinfo.c b/arch/riscv/kernel/cacheinfo.c
> index 2d40736fc37c..26b085dbdd07 100644
> --- a/arch/riscv/kernel/cacheinfo.c
> +++ b/arch/riscv/kernel/cacheinfo.c
> @@ -108,11 +108,11 @@ int populate_cache_leaves(unsigned int cpu)
> if (!np)
> return -ENOENT;
>
> - if (of_property_read_bool(np, "cache-size"))
> + if (of_property_present(np, "cache-size"))
> ci_leaf_init(this_leaf++, CACHE_TYPE_UNIFIED, level);
> - if (of_property_read_bool(np, "i-cache-size"))
> + if (of_property_present(np, "i-cache-size"))
> ci_leaf_init(this_leaf++, CACHE_TYPE_INST, level);
> - if (of_property_read_bool(np, "d-cache-size"))
> + if (of_property_present(np, "d-cache-size"))
> ci_leaf_init(this_leaf++, CACHE_TYPE_DATA, level);
>
> prev = np;
> @@ -125,11 +125,11 @@ int populate_cache_leaves(unsigned int cpu)
> break;
> if (level <= levels)
> break;
> - if (of_property_read_bool(np, "cache-size"))
> + if (of_property_present(np, "cache-size"))
> ci_leaf_init(this_leaf++, CACHE_TYPE_UNIFIED, level);
> - if (of_property_read_bool(np, "i-cache-size"))
> + if (of_property_present(np, "i-cache-size"))
> ci_leaf_init(this_leaf++, CACHE_TYPE_INST, level);
> - if (of_property_read_bool(np, "d-cache-size"))
> + if (of_property_present(np, "d-cache-size"))
> ci_leaf_init(this_leaf++, CACHE_TYPE_DATA, level);
> levels = level;
> }
The same patch has been on the ML since last november:
https://lore.kernel.org/linux-riscv/20241104190314.270095-1-robh@kernel.org/
And was already re-sent once end of december...
Thanks anyway,
Alex
Alexandre Ghiti wrote:
> Hi Emil,
>
> On 05/02/2025 15:39, Emil Renner Berthing wrote:
> > The use of of_property_read_bool() for non-boolean properties is
> > deprecated and since
> >
> > commit c141ecc3cecd ("of: Warn when of_property_read_bool() is used on non-boolean properties")
> >
> > a warning is displayed when used incorrectly. Fix it by switching to
> > of_property_present() as recommended in the same commit.
> >
> > Signed-off-by: Emil Renner Berthing <emil.renner.berthing@canonical.com>
> > ---
> > arch/riscv/kernel/cacheinfo.c | 12 ++++++------
> > 1 file changed, 6 insertions(+), 6 deletions(-)
> >
> > diff --git a/arch/riscv/kernel/cacheinfo.c b/arch/riscv/kernel/cacheinfo.c
> > index 2d40736fc37c..26b085dbdd07 100644
> > --- a/arch/riscv/kernel/cacheinfo.c
> > +++ b/arch/riscv/kernel/cacheinfo.c
> > @@ -108,11 +108,11 @@ int populate_cache_leaves(unsigned int cpu)
> > if (!np)
> > return -ENOENT;
> >
> > - if (of_property_read_bool(np, "cache-size"))
> > + if (of_property_present(np, "cache-size"))
> > ci_leaf_init(this_leaf++, CACHE_TYPE_UNIFIED, level);
> > - if (of_property_read_bool(np, "i-cache-size"))
> > + if (of_property_present(np, "i-cache-size"))
> > ci_leaf_init(this_leaf++, CACHE_TYPE_INST, level);
> > - if (of_property_read_bool(np, "d-cache-size"))
> > + if (of_property_present(np, "d-cache-size"))
> > ci_leaf_init(this_leaf++, CACHE_TYPE_DATA, level);
> >
> > prev = np;
> > @@ -125,11 +125,11 @@ int populate_cache_leaves(unsigned int cpu)
> > break;
> > if (level <= levels)
> > break;
> > - if (of_property_read_bool(np, "cache-size"))
> > + if (of_property_present(np, "cache-size"))
> > ci_leaf_init(this_leaf++, CACHE_TYPE_UNIFIED, level);
> > - if (of_property_read_bool(np, "i-cache-size"))
> > + if (of_property_present(np, "i-cache-size"))
> > ci_leaf_init(this_leaf++, CACHE_TYPE_INST, level);
> > - if (of_property_read_bool(np, "d-cache-size"))
> > + if (of_property_present(np, "d-cache-size"))
> > ci_leaf_init(this_leaf++, CACHE_TYPE_DATA, level);
> > levels = level;
> > }
>
>
> The same patch has been on the ML since last november:
>
> https://lore.kernel.org/linux-riscv/20241104190314.270095-1-robh@kernel.org/
>
> And was already re-sent once end of december...
Yeah I saw that later, but it would still be great to have this applied in 6.14
so we don't get all those warnings at boot.
/Emil
On 2/5/25 8:39 AM, Emil Renner Berthing wrote:
> The use of of_property_read_bool() for non-boolean properties is
> deprecated and since
>
> commit c141ecc3cecd ("of: Warn when of_property_read_bool() is used on non-boolean properties")
>
> a warning is displayed when used incorrectly. Fix it by switching to
> of_property_present() as recommended in the same commit.
>
> Signed-off-by: Emil Renner Berthing <emil.renner.berthing@canonical.com>
> ---
> arch/riscv/kernel/cacheinfo.c | 12 ++++++------
> 1 file changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/arch/riscv/kernel/cacheinfo.c b/arch/riscv/kernel/cacheinfo.c
> index 2d40736fc37c..26b085dbdd07 100644
> --- a/arch/riscv/kernel/cacheinfo.c
> +++ b/arch/riscv/kernel/cacheinfo.c
> @@ -108,11 +108,11 @@ int populate_cache_leaves(unsigned int cpu)
> if (!np)
> return -ENOENT;
>
> - if (of_property_read_bool(np, "cache-size"))
> + if (of_property_present(np, "cache-size"))
> ci_leaf_init(this_leaf++, CACHE_TYPE_UNIFIED, level);
> - if (of_property_read_bool(np, "i-cache-size"))
> + if (of_property_present(np, "i-cache-size"))
> ci_leaf_init(this_leaf++, CACHE_TYPE_INST, level);
> - if (of_property_read_bool(np, "d-cache-size"))
> + if (of_property_present(np, "d-cache-size"))
> ci_leaf_init(this_leaf++, CACHE_TYPE_DATA, level);
>
> prev = np;
> @@ -125,11 +125,11 @@ int populate_cache_leaves(unsigned int cpu)
> break;
> if (level <= levels)
> break;
> - if (of_property_read_bool(np, "cache-size"))
> + if (of_property_present(np, "cache-size"))
> ci_leaf_init(this_leaf++, CACHE_TYPE_UNIFIED, level);
> - if (of_property_read_bool(np, "i-cache-size"))
> + if (of_property_present(np, "i-cache-size"))
> ci_leaf_init(this_leaf++, CACHE_TYPE_INST, level);
> - if (of_property_read_bool(np, "d-cache-size"))
> + if (of_property_present(np, "d-cache-size"))
> ci_leaf_init(this_leaf++, CACHE_TYPE_DATA, level);
> levels = level;
> }
This looks sane to me:
Reviewed-by: Jeremy Linton <jeremy.linton@arm.com>
On 2/5/25 06:39, Emil Renner Berthing wrote:
> The use of of_property_read_bool() for non-boolean properties is
> deprecated and since
>
> commit c141ecc3cecd ("of: Warn when of_property_read_bool() is used on non-boolean properties")
>
> a warning is displayed when used incorrectly. Fix it by switching to
> of_property_present() as recommended in the same commit.
>
> Signed-off-by: Emil Renner Berthing <emil.renner.berthing@canonical.com>
> ---
> arch/riscv/kernel/cacheinfo.c | 12 ++++++------
> 1 file changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/arch/riscv/kernel/cacheinfo.c b/arch/riscv/kernel/cacheinfo.c
> index 2d40736fc37c..26b085dbdd07 100644
> --- a/arch/riscv/kernel/cacheinfo.c
> +++ b/arch/riscv/kernel/cacheinfo.c
> @@ -108,11 +108,11 @@ int populate_cache_leaves(unsigned int cpu)
> if (!np)
> return -ENOENT;
>
> - if (of_property_read_bool(np, "cache-size"))
> + if (of_property_present(np, "cache-size"))
> ci_leaf_init(this_leaf++, CACHE_TYPE_UNIFIED, level);
> - if (of_property_read_bool(np, "i-cache-size"))
> + if (of_property_present(np, "i-cache-size"))
> ci_leaf_init(this_leaf++, CACHE_TYPE_INST, level);
> - if (of_property_read_bool(np, "d-cache-size"))
> + if (of_property_present(np, "d-cache-size"))
> ci_leaf_init(this_leaf++, CACHE_TYPE_DATA, level);
>
> prev = np;
> @@ -125,11 +125,11 @@ int populate_cache_leaves(unsigned int cpu)
> break;
> if (level <= levels)
> break;
> - if (of_property_read_bool(np, "cache-size"))
> + if (of_property_present(np, "cache-size"))
> ci_leaf_init(this_leaf++, CACHE_TYPE_UNIFIED, level);
> - if (of_property_read_bool(np, "i-cache-size"))
> + if (of_property_present(np, "i-cache-size"))
> ci_leaf_init(this_leaf++, CACHE_TYPE_INST, level);
> - if (of_property_read_bool(np, "d-cache-size"))
> + if (of_property_present(np, "d-cache-size"))
> ci_leaf_init(this_leaf++, CACHE_TYPE_DATA, level);
> levels = level;
> }
Works good on VisionFive 2 and Unmatched.
Tested-by: Ron Economos <re@w6rz.net>
© 2016 - 2025 Red Hat, Inc.