remoteproc: Use of_property_present()
authorRob Herring (Arm) <robh@kernel.org>
Wed, 31 Jul 2024 19:12:45 +0000 (13:12 -0600)
committerMathieu Poirier <mathieu.poirier@linaro.org>
Tue, 13 Aug 2024 15:23:11 +0000 (09:23 -0600)
Use of_property_present() to test for property presence rather than
of_(find|get)_property(). This is part of a larger effort to remove
callers of of_find_property() and similar functions. of_find_property()
leaks the DT struct property and data pointers which is a problem for
dynamically allocated nodes which may be freed.

Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
Link: https://lore.kernel.org/r/20240731191312.1710417-7-robh@kernel.org
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
drivers/remoteproc/imx_dsp_rproc.c
drivers/remoteproc/imx_rproc.c
drivers/remoteproc/xlnx_r5_remoteproc.c

index 087506e..376187a 100644 (file)
@@ -509,7 +509,7 @@ static int imx_dsp_rproc_mbox_alloc(struct imx_dsp_rproc *priv)
        struct mbox_client *cl;
        int ret;
 
-       if (!of_get_property(dev->of_node, "mbox-names", NULL))
+       if (!of_property_present(dev->of_node, "mbox-names"))
                return 0;
 
        cl = &priv->cl;
index 552fcce..9744b00 100644 (file)
@@ -812,7 +812,7 @@ static int imx_rproc_xtr_mbox_init(struct rproc *rproc)
        if (priv->tx_ch && priv->rx_ch)
                return 0;
 
-       if (!of_get_property(dev->of_node, "mbox-names", NULL))
+       if (!of_property_present(dev->of_node, "mbox-names"))
                return 0;
 
        cl = &priv->cl;
index 596f3ff..2cea97c 100644 (file)
@@ -1059,7 +1059,7 @@ static int zynqmp_r5_core_init(struct zynqmp_r5_cluster *cluster,
        r5_core = cluster->r5_cores[0];
 
        /* Maintain backward compatibility for zynqmp by using hardcode TCM address. */
-       if (of_find_property(r5_core->np, "reg", NULL))
+       if (of_property_present(r5_core->np, "reg"))
                ret = zynqmp_r5_get_tcm_node_from_dt(cluster);
        else if (device_is_compatible(dev, "xlnx,zynqmp-r5fss"))
                ret = zynqmp_r5_get_tcm_node(cluster);
@@ -1086,7 +1086,7 @@ static int zynqmp_r5_core_init(struct zynqmp_r5_cluster *cluster,
                        return ret;
                }
 
-               if (of_find_property(dev_of_node(dev), "xlnx,tcm-mode", NULL) ||
+               if (of_property_present(dev_of_node(dev), "xlnx,tcm-mode") ||
                    device_is_compatible(dev, "xlnx,zynqmp-r5fss")) {
                        ret = zynqmp_pm_set_tcm_config(r5_core->pm_domain_id,
                                                       tcm_mode);
@@ -1147,7 +1147,7 @@ static int zynqmp_r5_cluster_init(struct zynqmp_r5_cluster *cluster)
                return -EINVAL;
        }
 
-       if (of_find_property(dev_node, "xlnx,tcm-mode", NULL)) {
+       if (of_property_present(dev_node, "xlnx,tcm-mode")) {
                ret = of_property_read_u32(dev_node, "xlnx,tcm-mode", (u32 *)&tcm_mode);
                if (ret)
                        return ret;