Re: [PATCH] thermal: Use of_property_present() for testing DT property presence

From: Rafael J. Wysocki
Date: Mon Mar 27 2023 - 13:14:03 EST


On Fri, Mar 10, 2023 at 3:48 PM Rob Herring <robh@xxxxxxxxxx> 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@xxxxxxxxxx>

Daniel, are you going to apply this, or should I take it directly?

> ---
> drivers/thermal/cpufreq_cooling.c | 2 +-
> drivers/thermal/imx8mm_thermal.c | 2 +-
> drivers/thermal/imx_thermal.c | 4 ++--
> drivers/thermal/ti-soc-thermal/ti-thermal-common.c | 2 +-
> 4 files changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/thermal/cpufreq_cooling.c b/drivers/thermal/cpufreq_cooling.c
> index 9f8b438fcf8f..4608555b7ec3 100644
> --- a/drivers/thermal/cpufreq_cooling.c
> +++ b/drivers/thermal/cpufreq_cooling.c
> @@ -633,7 +633,7 @@ of_cpufreq_cooling_register(struct cpufreq_policy *policy)
> return NULL;
> }
>
> - if (of_find_property(np, "#cooling-cells", NULL)) {
> + if (of_property_present(np, "#cooling-cells")) {
> struct em_perf_domain *em = em_cpu_get(policy->cpu);
>
> cdev = __cpufreq_cooling_register(np, policy, em);
> diff --git a/drivers/thermal/imx8mm_thermal.c b/drivers/thermal/imx8mm_thermal.c
> index 72b5d6f319c1..334ce8e9830b 100644
> --- a/drivers/thermal/imx8mm_thermal.c
> +++ b/drivers/thermal/imx8mm_thermal.c
> @@ -282,7 +282,7 @@ static int imx8mm_tmu_probe_set_calib(struct platform_device *pdev,
> * strongly recommended to update such old DTs to get correct
> * temperature compensation values for each SoC.
> */
> - if (!of_find_property(pdev->dev.of_node, "nvmem-cells", NULL)) {
> + if (!of_property_present(pdev->dev.of_node, "nvmem-cells")) {
> dev_warn(dev,
> "No OCOTP nvmem reference found, SoC-specific calibration not loaded. Please update your DT.\n");
> return 0;
> diff --git a/drivers/thermal/imx_thermal.c b/drivers/thermal/imx_thermal.c
> index fb0d5cab70af..77d6567a3f47 100644
> --- a/drivers/thermal/imx_thermal.c
> +++ b/drivers/thermal/imx_thermal.c
> @@ -594,7 +594,7 @@ static int imx_thermal_register_legacy_cooling(struct imx_thermal_data *data)
>
> np = of_get_cpu_node(data->policy->cpu, NULL);
>
> - if (!np || !of_find_property(np, "#cooling-cells", NULL)) {
> + if (!np || !of_property_present(np, "#cooling-cells")) {
> data->cdev = cpufreq_cooling_register(data->policy);
> if (IS_ERR(data->cdev)) {
> ret = PTR_ERR(data->cdev);
> @@ -671,7 +671,7 @@ static int imx_thermal_probe(struct platform_device *pdev)
>
> platform_set_drvdata(pdev, data);
>
> - if (of_find_property(pdev->dev.of_node, "nvmem-cells", NULL)) {
> + if (of_property_present(pdev->dev.of_node, "nvmem-cells")) {
> ret = imx_init_from_nvmem_cells(pdev);
> if (ret)
> return dev_err_probe(&pdev->dev, ret,
> diff --git a/drivers/thermal/ti-soc-thermal/ti-thermal-common.c b/drivers/thermal/ti-soc-thermal/ti-thermal-common.c
> index 8a9055bd376e..dace6591220e 100644
> --- a/drivers/thermal/ti-soc-thermal/ti-thermal-common.c
> +++ b/drivers/thermal/ti-soc-thermal/ti-thermal-common.c
> @@ -223,7 +223,7 @@ int ti_thermal_register_cpu_cooling(struct ti_bandgap *bgp, int id)
> * using DT, then it must be aware that the cooling device
> * loading has to happen via cpufreq driver.
> */
> - if (of_find_property(np, "#thermal-sensor-cells", NULL))
> + if (of_property_present(np, "#thermal-sensor-cells"))
> return 0;
>
> data = ti_bandgap_get_sensor_data(bgp, id);
> --
> 2.39.2
>