public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/10] remoteproc: few dev_err_probe() and other cleanups/improvements
@ 2024-10-11 13:09 Krzysztof Kozlowski
  2024-10-11 13:09 ` [PATCH 01/10] remoteproc: da8xx: Handle deferred probe Krzysztof Kozlowski
                   ` (10 more replies)
  0 siblings, 11 replies; 18+ messages in thread
From: Krzysztof Kozlowski @ 2024-10-11 13:09 UTC (permalink / raw)
  To: Bjorn Andersson, Mathieu Poirier
  Cc: linux-remoteproc, linux-kernel, linux-arm-msm,
	Krzysztof Kozlowski

Simplify drivers in few places around probe function.

Best regards,
Krzysztof

---
Krzysztof Kozlowski (10):
      remoteproc: da8xx: Handle deferred probe
      remoteproc: da8xx: Simplify with dev_err_probe()
      remoteproc: ti_k3_r5: Simplify with dev_err_probe()
      remoteproc: ti_k3_r5: Simplify with scoped for each OF child loop
      remoteproc: qcom_q6v5_adsp: Simplify with dev_err_probe()
      remoteproc: qcom_q6v5_mss: Simplify with dev_err_probe()
      remoteproc: qcom_q6v5_mss: Drop redundant error printks in probe
      remoteproc: qcom_q6v5_pas: Simplify with dev_err_probe()
      remoteproc: qcom_q6v5_wcss: Simplify with dev_err_probe()
      remoteproc: qcom_wcnss_iris: Simplify with dev_err_probe()

 drivers/remoteproc/da8xx_remoteproc.c    | 29 +++-------
 drivers/remoteproc/qcom_q6v5_adsp.c      | 17 +++---
 drivers/remoteproc/qcom_q6v5_mss.c       | 48 +++++------------
 drivers/remoteproc/qcom_q6v5_pas.c       | 22 +++-----
 drivers/remoteproc/qcom_q6v5_wcss.c      | 92 +++++++++++---------------------
 drivers/remoteproc/qcom_wcnss_iris.c     |  5 +-
 drivers/remoteproc/ti_k3_r5_remoteproc.c | 74 +++++++++----------------
 7 files changed, 92 insertions(+), 195 deletions(-)
---
base-commit: 0cca97bf23640ff68a6e8a74e9b6659fdc27f48c
change-id: 20241011-remote-proc-dev-err-probe-c986de9e93de

Best regards,
-- 
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [PATCH 01/10] remoteproc: da8xx: Handle deferred probe
  2024-10-11 13:09 [PATCH 00/10] remoteproc: few dev_err_probe() and other cleanups/improvements Krzysztof Kozlowski
@ 2024-10-11 13:09 ` Krzysztof Kozlowski
  2024-10-11 13:09 ` [PATCH 02/10] remoteproc: da8xx: Simplify with dev_err_probe() Krzysztof Kozlowski
                   ` (9 subsequent siblings)
  10 siblings, 0 replies; 18+ messages in thread
From: Krzysztof Kozlowski @ 2024-10-11 13:09 UTC (permalink / raw)
  To: Bjorn Andersson, Mathieu Poirier
  Cc: linux-remoteproc, linux-kernel, linux-arm-msm,
	Krzysztof Kozlowski

Don't pollute dmesg on deferred probe by using dev_err_probe().

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 drivers/remoteproc/da8xx_remoteproc.c | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/drivers/remoteproc/da8xx_remoteproc.c b/drivers/remoteproc/da8xx_remoteproc.c
index 8770d0cf1255f8b618283965e1cf913018fe173d..f8121682ae9a2aeee560d7f012bc68d2cd53b5f7 100644
--- a/drivers/remoteproc/da8xx_remoteproc.c
+++ b/drivers/remoteproc/da8xx_remoteproc.c
@@ -265,11 +265,8 @@ static int da8xx_rproc_probe(struct platform_device *pdev)
 		return PTR_ERR(chipsig);
 
 	dsp_clk = devm_clk_get(dev, NULL);
-	if (IS_ERR(dsp_clk)) {
-		dev_err(dev, "clk_get error: %ld\n", PTR_ERR(dsp_clk));
-
-		return PTR_ERR(dsp_clk);
-	}
+	if (IS_ERR(dsp_clk))
+		return dev_err_probe(dev, PTR_ERR(dsp_clk), "clk_get error\n");
 
 	dsp_reset = devm_reset_control_get_exclusive(dev, NULL);
 	if (IS_ERR(dsp_reset)) {

-- 
2.43.0


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH 02/10] remoteproc: da8xx: Simplify with dev_err_probe()
  2024-10-11 13:09 [PATCH 00/10] remoteproc: few dev_err_probe() and other cleanups/improvements Krzysztof Kozlowski
  2024-10-11 13:09 ` [PATCH 01/10] remoteproc: da8xx: Handle deferred probe Krzysztof Kozlowski
@ 2024-10-11 13:09 ` Krzysztof Kozlowski
  2024-10-11 13:09 ` [PATCH 03/10] remoteproc: ti_k3_r5: " Krzysztof Kozlowski
                   ` (8 subsequent siblings)
  10 siblings, 0 replies; 18+ messages in thread
From: Krzysztof Kozlowski @ 2024-10-11 13:09 UTC (permalink / raw)
  To: Bjorn Andersson, Mathieu Poirier
  Cc: linux-remoteproc, linux-kernel, linux-arm-msm,
	Krzysztof Kozlowski

Use dev_err_probe() to make error and defer code handling simpler.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 drivers/remoteproc/da8xx_remoteproc.c | 22 ++++++----------------
 1 file changed, 6 insertions(+), 16 deletions(-)

diff --git a/drivers/remoteproc/da8xx_remoteproc.c b/drivers/remoteproc/da8xx_remoteproc.c
index f8121682ae9a2aeee560d7f012bc68d2cd53b5f7..7daaab8124e857e50201f16ab445115ea96c8abc 100644
--- a/drivers/remoteproc/da8xx_remoteproc.c
+++ b/drivers/remoteproc/da8xx_remoteproc.c
@@ -251,10 +251,8 @@ static int da8xx_rproc_probe(struct platform_device *pdev)
 		return irq;
 
 	irq_data = irq_get_irq_data(irq);
-	if (!irq_data) {
-		dev_err(dev, "irq_get_irq_data(%d): NULL\n", irq);
-		return -EINVAL;
-	}
+	if (!irq_data)
+		return dev_err_probe(dev, -EINVAL, "irq_get_irq_data(%d): NULL\n", irq);
 
 	bootreg = devm_platform_ioremap_resource_byname(pdev, "host1cfg");
 	if (IS_ERR(bootreg))
@@ -269,21 +267,13 @@ static int da8xx_rproc_probe(struct platform_device *pdev)
 		return dev_err_probe(dev, PTR_ERR(dsp_clk), "clk_get error\n");
 
 	dsp_reset = devm_reset_control_get_exclusive(dev, NULL);
-	if (IS_ERR(dsp_reset)) {
-		if (PTR_ERR(dsp_reset) != -EPROBE_DEFER)
-			dev_err(dev, "unable to get reset control: %ld\n",
-				PTR_ERR(dsp_reset));
-
-		return PTR_ERR(dsp_reset);
-	}
+	if (IS_ERR(dsp_reset))
+		return dev_err_probe(dev, PTR_ERR(dsp_reset), "unable to get reset control\n");
 
 	if (dev->of_node) {
 		ret = of_reserved_mem_device_init(dev);
-		if (ret) {
-			dev_err(dev, "device does not have specific CMA pool: %d\n",
-				ret);
-			return ret;
-		}
+		if (ret)
+			return dev_err_probe(dev, ret, "device does not have specific CMA pool\n");
 	}
 
 	rproc = rproc_alloc(dev, "dsp", &da8xx_rproc_ops, da8xx_fw_name,

-- 
2.43.0


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH 03/10] remoteproc: ti_k3_r5: Simplify with dev_err_probe()
  2024-10-11 13:09 [PATCH 00/10] remoteproc: few dev_err_probe() and other cleanups/improvements Krzysztof Kozlowski
  2024-10-11 13:09 ` [PATCH 01/10] remoteproc: da8xx: Handle deferred probe Krzysztof Kozlowski
  2024-10-11 13:09 ` [PATCH 02/10] remoteproc: da8xx: Simplify with dev_err_probe() Krzysztof Kozlowski
@ 2024-10-11 13:09 ` Krzysztof Kozlowski
  2024-10-11 13:09 ` [PATCH 04/10] remoteproc: ti_k3_r5: Simplify with scoped for each OF child loop Krzysztof Kozlowski
                   ` (7 subsequent siblings)
  10 siblings, 0 replies; 18+ messages in thread
From: Krzysztof Kozlowski @ 2024-10-11 13:09 UTC (permalink / raw)
  To: Bjorn Andersson, Mathieu Poirier
  Cc: linux-remoteproc, linux-kernel, linux-arm-msm,
	Krzysztof Kozlowski

Use dev_err_probe() to make error and defer code handling simpler.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 drivers/remoteproc/ti_k3_r5_remoteproc.c | 69 +++++++++++---------------------
 1 file changed, 24 insertions(+), 45 deletions(-)

diff --git a/drivers/remoteproc/ti_k3_r5_remoteproc.c b/drivers/remoteproc/ti_k3_r5_remoteproc.c
index d0ebdd5cfa70e1dac782f5e131a0f19c9ac096d9..5a2e0464e1b81e3d4571a466643f08a53ebefc0d 100644
--- a/drivers/remoteproc/ti_k3_r5_remoteproc.c
+++ b/drivers/remoteproc/ti_k3_r5_remoteproc.c
@@ -1557,11 +1557,7 @@ static int k3_r5_core_of_init(struct platform_device *pdev)
 
 	core->ti_sci = devm_ti_sci_get_by_phandle(dev, "ti,sci");
 	if (IS_ERR(core->ti_sci)) {
-		ret = PTR_ERR(core->ti_sci);
-		if (ret != -EPROBE_DEFER) {
-			dev_err(dev, "failed to get ti-sci handle, ret = %d\n",
-				ret);
-		}
+		ret = dev_err_probe(dev, PTR_ERR(core->ti_sci), "failed to get ti-sci handle\n");
 		core->ti_sci = NULL;
 		goto err;
 	}
@@ -1577,18 +1573,14 @@ static int k3_r5_core_of_init(struct platform_device *pdev)
 		ret = PTR_ERR_OR_ZERO(core->reset);
 		if (!ret)
 			ret = -ENODEV;
-		if (ret != -EPROBE_DEFER) {
-			dev_err(dev, "failed to get reset handle, ret = %d\n",
-				ret);
-		}
+		dev_err_probe(dev, ret, "failed to get reset handle\n");
 		goto err;
 	}
 
 	core->tsp = ti_sci_proc_of_get_tsp(dev, core->ti_sci);
 	if (IS_ERR(core->tsp)) {
-		ret = PTR_ERR(core->tsp);
-		dev_err(dev, "failed to construct ti-sci proc control, ret = %d\n",
-			ret);
+		ret = dev_err_probe(dev, PTR_ERR(core->tsp),
+				    "failed to construct ti-sci proc control\n");
 		goto err;
 	}
 
@@ -1717,11 +1709,8 @@ static int k3_r5_probe(struct platform_device *pdev)
 	init_waitqueue_head(&cluster->core_transition);
 
 	ret = of_property_read_u32(np, "ti,cluster-mode", &cluster->mode);
-	if (ret < 0 && ret != -EINVAL) {
-		dev_err(dev, "invalid format for ti,cluster-mode, ret = %d\n",
-			ret);
-		return ret;
-	}
+	if (ret < 0 && ret != -EINVAL)
+		return dev_err_probe(dev, ret, "invalid format for ti,cluster-mode\n");
 
 	if (ret == -EINVAL) {
 		/*
@@ -1740,49 +1729,39 @@ static int k3_r5_probe(struct platform_device *pdev)
 	}
 
 	if  ((cluster->mode == CLUSTER_MODE_SINGLECPU && !data->single_cpu_mode) ||
-	     (cluster->mode == CLUSTER_MODE_SINGLECORE && !data->is_single_core)) {
-		dev_err(dev, "Cluster mode = %d is not supported on this SoC\n", cluster->mode);
-		return -EINVAL;
-	}
+	     (cluster->mode == CLUSTER_MODE_SINGLECORE && !data->is_single_core))
+		return dev_err_probe(dev, -EINVAL,
+				     "Cluster mode = %d is not supported on this SoC\n",
+				     cluster->mode);
 
 	num_cores = of_get_available_child_count(np);
-	if (num_cores != 2 && !data->is_single_core) {
-		dev_err(dev, "MCU cluster requires both R5F cores to be enabled but num_cores is set to = %d\n",
-			num_cores);
-		return -ENODEV;
-	}
+	if (num_cores != 2 && !data->is_single_core)
+		return dev_err_probe(dev, -ENODEV,
+				     "MCU cluster requires both R5F cores to be enabled but num_cores is set to = %d\n",
+				     num_cores);
 
-	if (num_cores != 1 && data->is_single_core) {
-		dev_err(dev, "SoC supports only single core R5 but num_cores is set to %d\n",
-			num_cores);
-		return -ENODEV;
-	}
+	if (num_cores != 1 && data->is_single_core)
+		return dev_err_probe(dev, -ENODEV,
+				     "SoC supports only single core R5 but num_cores is set to %d\n",
+				     num_cores);
 
 	platform_set_drvdata(pdev, cluster);
 
 	ret = devm_of_platform_populate(dev);
-	if (ret) {
-		dev_err(dev, "devm_of_platform_populate failed, ret = %d\n",
-			ret);
-		return ret;
-	}
+	if (ret)
+		return dev_err_probe(dev, ret, "devm_of_platform_populate failed\n");
 
 	ret = k3_r5_cluster_of_init(pdev);
-	if (ret) {
-		dev_err(dev, "k3_r5_cluster_of_init failed, ret = %d\n", ret);
-		return ret;
-	}
+	if (ret)
+		return dev_err_probe(dev, ret, "k3_r5_cluster_of_init failed\n");
 
 	ret = devm_add_action_or_reset(dev, k3_r5_cluster_of_exit, pdev);
 	if (ret)
 		return ret;
 
 	ret = k3_r5_cluster_rproc_init(pdev);
-	if (ret) {
-		dev_err(dev, "k3_r5_cluster_rproc_init failed, ret = %d\n",
-			ret);
-		return ret;
-	}
+	if (ret)
+		return dev_err_probe(dev, ret, "k3_r5_cluster_rproc_init failed\n");
 
 	ret = devm_add_action_or_reset(dev, k3_r5_cluster_rproc_exit, pdev);
 	if (ret)

-- 
2.43.0


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH 04/10] remoteproc: ti_k3_r5: Simplify with scoped for each OF child loop
  2024-10-11 13:09 [PATCH 00/10] remoteproc: few dev_err_probe() and other cleanups/improvements Krzysztof Kozlowski
                   ` (2 preceding siblings ...)
  2024-10-11 13:09 ` [PATCH 03/10] remoteproc: ti_k3_r5: " Krzysztof Kozlowski
@ 2024-10-11 13:09 ` Krzysztof Kozlowski
  2024-10-11 13:09 ` [PATCH 05/10] remoteproc: qcom_q6v5_adsp: Simplify with dev_err_probe() Krzysztof Kozlowski
                   ` (6 subsequent siblings)
  10 siblings, 0 replies; 18+ messages in thread
From: Krzysztof Kozlowski @ 2024-10-11 13:09 UTC (permalink / raw)
  To: Bjorn Andersson, Mathieu Poirier
  Cc: linux-remoteproc, linux-kernel, linux-arm-msm,
	Krzysztof Kozlowski

Use scoped for_each_available_child_of_node_scoped() when iterating over
device nodes to make code a bit simpler.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 drivers/remoteproc/ti_k3_r5_remoteproc.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/drivers/remoteproc/ti_k3_r5_remoteproc.c b/drivers/remoteproc/ti_k3_r5_remoteproc.c
index 5a2e0464e1b81e3d4571a466643f08a53ebefc0d..2f996a962f55755347e599551f8b7785b986d0dd 100644
--- a/drivers/remoteproc/ti_k3_r5_remoteproc.c
+++ b/drivers/remoteproc/ti_k3_r5_remoteproc.c
@@ -1650,16 +1650,14 @@ static int k3_r5_cluster_of_init(struct platform_device *pdev)
 	struct device *dev = &pdev->dev;
 	struct device_node *np = dev_of_node(dev);
 	struct platform_device *cpdev;
-	struct device_node *child;
 	struct k3_r5_core *core;
 	int ret;
 
-	for_each_available_child_of_node(np, child) {
+	for_each_available_child_of_node_scoped(np, child) {
 		cpdev = of_find_device_by_node(child);
 		if (!cpdev) {
 			ret = -ENODEV;
 			dev_err(dev, "could not get R5 core platform device\n");
-			of_node_put(child);
 			goto fail;
 		}
 
@@ -1668,7 +1666,6 @@ static int k3_r5_cluster_of_init(struct platform_device *pdev)
 			dev_err(dev, "k3_r5_core_of_init failed, ret = %d\n",
 				ret);
 			put_device(&cpdev->dev);
-			of_node_put(child);
 			goto fail;
 		}
 

-- 
2.43.0


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH 05/10] remoteproc: qcom_q6v5_adsp: Simplify with dev_err_probe()
  2024-10-11 13:09 [PATCH 00/10] remoteproc: few dev_err_probe() and other cleanups/improvements Krzysztof Kozlowski
                   ` (3 preceding siblings ...)
  2024-10-11 13:09 ` [PATCH 04/10] remoteproc: ti_k3_r5: Simplify with scoped for each OF child loop Krzysztof Kozlowski
@ 2024-10-11 13:09 ` Krzysztof Kozlowski
  2024-10-11 13:31   ` Dmitry Baryshkov
  2024-10-11 13:09 ` [PATCH 06/10] remoteproc: qcom_q6v5_mss: " Krzysztof Kozlowski
                   ` (5 subsequent siblings)
  10 siblings, 1 reply; 18+ messages in thread
From: Krzysztof Kozlowski @ 2024-10-11 13:09 UTC (permalink / raw)
  To: Bjorn Andersson, Mathieu Poirier
  Cc: linux-remoteproc, linux-kernel, linux-arm-msm,
	Krzysztof Kozlowski

Use dev_err_probe() to make error and defer code handling simpler.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 drivers/remoteproc/qcom_q6v5_adsp.c | 17 ++++++-----------
 1 file changed, 6 insertions(+), 11 deletions(-)

diff --git a/drivers/remoteproc/qcom_q6v5_adsp.c b/drivers/remoteproc/qcom_q6v5_adsp.c
index 572dcb0f055b764f36d0da7c851dcc707bb5ff6e..79dfec517d38980e05ef0196138e6f312c84511d 100644
--- a/drivers/remoteproc/qcom_q6v5_adsp.c
+++ b/drivers/remoteproc/qcom_q6v5_adsp.c
@@ -534,15 +534,11 @@ static const struct rproc_ops adsp_ops = {
 static int adsp_init_clock(struct qcom_adsp *adsp, const char **clk_ids)
 {
 	int num_clks = 0;
-	int i, ret;
+	int i;
 
 	adsp->xo = devm_clk_get(adsp->dev, "xo");
-	if (IS_ERR(adsp->xo)) {
-		ret = PTR_ERR(adsp->xo);
-		if (ret != -EPROBE_DEFER)
-			dev_err(adsp->dev, "failed to get xo clock");
-		return ret;
-	}
+	if (IS_ERR(adsp->xo))
+		return dev_err_probe(adsp->dev, PTR_ERR(adsp->xo), "failed to get xo clock");
 
 	for (i = 0; clk_ids[i]; i++)
 		num_clks++;
@@ -708,10 +704,9 @@ static int adsp_probe(struct platform_device *pdev)
 		return ret;
 
 	ret = qcom_rproc_pds_attach(adsp, desc->pd_names, desc->num_pds);
-	if (ret < 0) {
-		dev_err(&pdev->dev, "Failed to attach proxy power domains\n");
-		return ret;
-	}
+	if (ret < 0)
+		return dev_err_probe(&pdev->dev, ret,
+				     "Failed to attach proxy power domains\n");
 
 	ret = adsp_init_reset(adsp);
 	if (ret)

-- 
2.43.0


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH 06/10] remoteproc: qcom_q6v5_mss: Simplify with dev_err_probe()
  2024-10-11 13:09 [PATCH 00/10] remoteproc: few dev_err_probe() and other cleanups/improvements Krzysztof Kozlowski
                   ` (4 preceding siblings ...)
  2024-10-11 13:09 ` [PATCH 05/10] remoteproc: qcom_q6v5_adsp: Simplify with dev_err_probe() Krzysztof Kozlowski
@ 2024-10-11 13:09 ` Krzysztof Kozlowski
  2024-10-11 13:35   ` Dmitry Baryshkov
  2024-10-11 13:09 ` [PATCH 07/10] remoteproc: qcom_q6v5_mss: Drop redundant error printks in probe Krzysztof Kozlowski
                   ` (4 subsequent siblings)
  10 siblings, 1 reply; 18+ messages in thread
From: Krzysztof Kozlowski @ 2024-10-11 13:09 UTC (permalink / raw)
  To: Bjorn Andersson, Mathieu Poirier
  Cc: linux-remoteproc, linux-kernel, linux-arm-msm,
	Krzysztof Kozlowski

Use dev_err_probe() to make error and defer code handling simpler.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 drivers/remoteproc/qcom_q6v5_mss.c | 24 ++++++++----------------
 1 file changed, 8 insertions(+), 16 deletions(-)

diff --git a/drivers/remoteproc/qcom_q6v5_mss.c b/drivers/remoteproc/qcom_q6v5_mss.c
index 2a42215ce8e07b25cb45e708aa62f9ebe83bb88c..92212892a53ea4843da62642c39413c33b4c962a 100644
--- a/drivers/remoteproc/qcom_q6v5_mss.c
+++ b/drivers/remoteproc/qcom_q6v5_mss.c
@@ -261,7 +261,6 @@ enum {
 static int q6v5_regulator_init(struct device *dev, struct reg_info *regs,
 			       const struct qcom_mss_reg_res *reg_res)
 {
-	int rc;
 	int i;
 
 	if (!reg_res)
@@ -269,13 +268,10 @@ static int q6v5_regulator_init(struct device *dev, struct reg_info *regs,
 
 	for (i = 0; reg_res[i].supply; i++) {
 		regs[i].reg = devm_regulator_get(dev, reg_res[i].supply);
-		if (IS_ERR(regs[i].reg)) {
-			rc = PTR_ERR(regs[i].reg);
-			if (rc != -EPROBE_DEFER)
-				dev_err(dev, "Failed to get %s\n regulator",
-					reg_res[i].supply);
-			return rc;
-		}
+		if (IS_ERR(regs[i].reg))
+			return dev_err_probe(dev, PTR_ERR(regs[i].reg),
+					     "Failed to get %s\n regulator",
+					     reg_res[i].supply);
 
 		regs[i].uV = reg_res[i].uV;
 		regs[i].uA = reg_res[i].uA;
@@ -1813,14 +1809,10 @@ static int q6v5_init_clocks(struct device *dev, struct clk **clks,
 
 	for (i = 0; clk_names[i]; i++) {
 		clks[i] = devm_clk_get(dev, clk_names[i]);
-		if (IS_ERR(clks[i])) {
-			int rc = PTR_ERR(clks[i]);
-
-			if (rc != -EPROBE_DEFER)
-				dev_err(dev, "Failed to get %s clock\n",
-					clk_names[i]);
-			return rc;
-		}
+		if (IS_ERR(clks[i]))
+			return dev_err_probe(dev, PTR_ERR(clks[i]),
+					     "Failed to get %s clock\n",
+					     clk_names[i]);
 	}
 
 	return i;

-- 
2.43.0


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH 07/10] remoteproc: qcom_q6v5_mss: Drop redundant error printks in probe
  2024-10-11 13:09 [PATCH 00/10] remoteproc: few dev_err_probe() and other cleanups/improvements Krzysztof Kozlowski
                   ` (5 preceding siblings ...)
  2024-10-11 13:09 ` [PATCH 06/10] remoteproc: qcom_q6v5_mss: " Krzysztof Kozlowski
@ 2024-10-11 13:09 ` Krzysztof Kozlowski
  2024-10-11 13:35   ` Dmitry Baryshkov
  2024-10-11 13:09 ` [PATCH 08/10] remoteproc: qcom_q6v5_pas: Simplify with dev_err_probe() Krzysztof Kozlowski
                   ` (3 subsequent siblings)
  10 siblings, 1 reply; 18+ messages in thread
From: Krzysztof Kozlowski @ 2024-10-11 13:09 UTC (permalink / raw)
  To: Bjorn Andersson, Mathieu Poirier
  Cc: linux-remoteproc, linux-kernel, linux-arm-msm,
	Krzysztof Kozlowski

Do not print errors of getting clocks and regulators in probe twice:
once in q6v5_init_clocks() or q6v5_regulator_init() and then again in the
probe function.  This also avoids dmesg flood on deferred probe.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 drivers/remoteproc/qcom_q6v5_mss.c | 24 ++++++------------------
 1 file changed, 6 insertions(+), 18 deletions(-)

diff --git a/drivers/remoteproc/qcom_q6v5_mss.c b/drivers/remoteproc/qcom_q6v5_mss.c
index 92212892a53ea4843da62642c39413c33b4c962a..68b8172b023ee62be764ba69e07f3743ce6124e3 100644
--- a/drivers/remoteproc/qcom_q6v5_mss.c
+++ b/drivers/remoteproc/qcom_q6v5_mss.c
@@ -2020,42 +2020,32 @@ static int q6v5_probe(struct platform_device *pdev)
 
 	ret = q6v5_init_clocks(&pdev->dev, qproc->proxy_clks,
 			       desc->proxy_clk_names);
-	if (ret < 0) {
-		dev_err(&pdev->dev, "Failed to get proxy clocks.\n");
+	if (ret < 0)
 		return ret;
-	}
 	qproc->proxy_clk_count = ret;
 
 	ret = q6v5_init_clocks(&pdev->dev, qproc->reset_clks,
 			       desc->reset_clk_names);
-	if (ret < 0) {
-		dev_err(&pdev->dev, "Failed to get reset clocks.\n");
+	if (ret < 0)
 		return ret;
-	}
 	qproc->reset_clk_count = ret;
 
 	ret = q6v5_init_clocks(&pdev->dev, qproc->active_clks,
 			       desc->active_clk_names);
-	if (ret < 0) {
-		dev_err(&pdev->dev, "Failed to get active clocks.\n");
+	if (ret < 0)
 		return ret;
-	}
 	qproc->active_clk_count = ret;
 
 	ret = q6v5_regulator_init(&pdev->dev, qproc->proxy_regs,
 				  desc->proxy_supply);
-	if (ret < 0) {
-		dev_err(&pdev->dev, "Failed to get proxy regulators.\n");
+	if (ret < 0)
 		return ret;
-	}
 	qproc->proxy_reg_count = ret;
 
 	ret = q6v5_regulator_init(&pdev->dev,  qproc->active_regs,
 				  desc->active_supply);
-	if (ret < 0) {
-		dev_err(&pdev->dev, "Failed to get active regulators.\n");
+	if (ret < 0)
 		return ret;
-	}
 	qproc->active_reg_count = ret;
 
 	ret = q6v5_pds_attach(&pdev->dev, qproc->proxy_pds,
@@ -2065,10 +2055,8 @@ static int q6v5_probe(struct platform_device *pdev)
 		ret = q6v5_regulator_init(&pdev->dev,
 					  qproc->fallback_proxy_regs,
 					  desc->fallback_proxy_supply);
-		if (ret < 0) {
-			dev_err(&pdev->dev, "Failed to get fallback proxy regulators.\n");
+		if (ret < 0)
 			return ret;
-		}
 		qproc->fallback_proxy_reg_count = ret;
 	} else if (ret < 0) {
 		dev_err(&pdev->dev, "Failed to init power domains\n");

-- 
2.43.0


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH 08/10] remoteproc: qcom_q6v5_pas: Simplify with dev_err_probe()
  2024-10-11 13:09 [PATCH 00/10] remoteproc: few dev_err_probe() and other cleanups/improvements Krzysztof Kozlowski
                   ` (6 preceding siblings ...)
  2024-10-11 13:09 ` [PATCH 07/10] remoteproc: qcom_q6v5_mss: Drop redundant error printks in probe Krzysztof Kozlowski
@ 2024-10-11 13:09 ` Krzysztof Kozlowski
  2024-10-11 13:35   ` Dmitry Baryshkov
  2024-10-11 13:09 ` [PATCH 09/10] remoteproc: qcom_q6v5_wcss: " Krzysztof Kozlowski
                   ` (2 subsequent siblings)
  10 siblings, 1 reply; 18+ messages in thread
From: Krzysztof Kozlowski @ 2024-10-11 13:09 UTC (permalink / raw)
  To: Bjorn Andersson, Mathieu Poirier
  Cc: linux-remoteproc, linux-kernel, linux-arm-msm,
	Krzysztof Kozlowski

Use dev_err_probe() to make error and defer code handling simpler.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 drivers/remoteproc/qcom_q6v5_pas.c | 22 +++++++---------------
 1 file changed, 7 insertions(+), 15 deletions(-)

diff --git a/drivers/remoteproc/qcom_q6v5_pas.c b/drivers/remoteproc/qcom_q6v5_pas.c
index ef82835e98a4efd4bc603cff604d531a51fe9f9c..806b3baa297ea1053dde3343fd86cffbc05b8461 100644
--- a/drivers/remoteproc/qcom_q6v5_pas.c
+++ b/drivers/remoteproc/qcom_q6v5_pas.c
@@ -453,24 +453,16 @@ static const struct rproc_ops adsp_minidump_ops = {
 
 static int adsp_init_clock(struct qcom_adsp *adsp)
 {
-	int ret;
-
 	adsp->xo = devm_clk_get(adsp->dev, "xo");
-	if (IS_ERR(adsp->xo)) {
-		ret = PTR_ERR(adsp->xo);
-		if (ret != -EPROBE_DEFER)
-			dev_err(adsp->dev, "failed to get xo clock");
-		return ret;
-	}
+	if (IS_ERR(adsp->xo))
+		return dev_err_probe(adsp->dev, PTR_ERR(adsp->xo),
+				     "failed to get xo clock");
+
 
 	adsp->aggre2_clk = devm_clk_get_optional(adsp->dev, "aggre2");
-	if (IS_ERR(adsp->aggre2_clk)) {
-		ret = PTR_ERR(adsp->aggre2_clk);
-		if (ret != -EPROBE_DEFER)
-			dev_err(adsp->dev,
-				"failed to get aggre2 clock");
-		return ret;
-	}
+	if (IS_ERR(adsp->aggre2_clk))
+		return dev_err_probe(adsp->dev, PTR_ERR(adsp->aggre2_clk),
+				     "failed to get aggre2 clock");
 
 	return 0;
 }

-- 
2.43.0


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH 09/10] remoteproc: qcom_q6v5_wcss: Simplify with dev_err_probe()
  2024-10-11 13:09 [PATCH 00/10] remoteproc: few dev_err_probe() and other cleanups/improvements Krzysztof Kozlowski
                   ` (7 preceding siblings ...)
  2024-10-11 13:09 ` [PATCH 08/10] remoteproc: qcom_q6v5_pas: Simplify with dev_err_probe() Krzysztof Kozlowski
@ 2024-10-11 13:09 ` Krzysztof Kozlowski
  2024-10-11 13:36   ` Dmitry Baryshkov
  2024-10-11 13:09 ` [PATCH 10/10] remoteproc: qcom_wcnss_iris: " Krzysztof Kozlowski
  2024-10-15 17:45 ` [PATCH 00/10] remoteproc: few dev_err_probe() and other cleanups/improvements Mathieu Poirier
  10 siblings, 1 reply; 18+ messages in thread
From: Krzysztof Kozlowski @ 2024-10-11 13:09 UTC (permalink / raw)
  To: Bjorn Andersson, Mathieu Poirier
  Cc: linux-remoteproc, linux-kernel, linux-arm-msm,
	Krzysztof Kozlowski

Use dev_err_probe() to make error and defer code handling simpler.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 drivers/remoteproc/qcom_q6v5_wcss.c | 92 ++++++++++++-------------------------
 1 file changed, 30 insertions(+), 62 deletions(-)

diff --git a/drivers/remoteproc/qcom_q6v5_wcss.c b/drivers/remoteproc/qcom_q6v5_wcss.c
index e913dabae99245da60404461240ebeaebded67eb..8161575d821c4533646223a1d967172e1cdee9c1 100644
--- a/drivers/remoteproc/qcom_q6v5_wcss.c
+++ b/drivers/remoteproc/qcom_q6v5_wcss.c
@@ -902,90 +902,58 @@ static int q6v5_alloc_memory_region(struct q6v5_wcss *wcss)
 
 static int q6v5_wcss_init_clock(struct q6v5_wcss *wcss)
 {
-	int ret;
-
 	wcss->xo = devm_clk_get(wcss->dev, "xo");
-	if (IS_ERR(wcss->xo)) {
-		ret = PTR_ERR(wcss->xo);
-		if (ret != -EPROBE_DEFER)
-			dev_err(wcss->dev, "failed to get xo clock");
-		return ret;
-	}
+	if (IS_ERR(wcss->xo))
+		return dev_err_probe(wcss->dev, PTR_ERR(wcss->xo),
+				     "failed to get xo clock");
 
 	wcss->gcc_abhs_cbcr = devm_clk_get(wcss->dev, "gcc_abhs_cbcr");
-	if (IS_ERR(wcss->gcc_abhs_cbcr)) {
-		ret = PTR_ERR(wcss->gcc_abhs_cbcr);
-		if (ret != -EPROBE_DEFER)
-			dev_err(wcss->dev, "failed to get gcc abhs clock");
-		return ret;
-	}
+	if (IS_ERR(wcss->gcc_abhs_cbcr))
+		return dev_err_probe(wcss->dev, PTR_ERR(wcss->gcc_abhs_cbcr),
+				     "failed to get gcc abhs clock");
 
 	wcss->gcc_axim_cbcr = devm_clk_get(wcss->dev, "gcc_axim_cbcr");
-	if (IS_ERR(wcss->gcc_axim_cbcr)) {
-		ret = PTR_ERR(wcss->gcc_axim_cbcr);
-		if (ret != -EPROBE_DEFER)
-			dev_err(wcss->dev, "failed to get gcc axim clock\n");
-		return ret;
-	}
+	if (IS_ERR(wcss->gcc_axim_cbcr))
+		return dev_err_probe(wcss->dev, PTR_ERR(wcss->gcc_axim_cbcr),
+				     "failed to get gcc axim clock\n");
 
 	wcss->ahbfabric_cbcr_clk = devm_clk_get(wcss->dev,
 						"lcc_ahbfabric_cbc");
-	if (IS_ERR(wcss->ahbfabric_cbcr_clk)) {
-		ret = PTR_ERR(wcss->ahbfabric_cbcr_clk);
-		if (ret != -EPROBE_DEFER)
-			dev_err(wcss->dev, "failed to get ahbfabric clock\n");
-		return ret;
-	}
+	if (IS_ERR(wcss->ahbfabric_cbcr_clk))
+		return dev_err_probe(wcss->dev, PTR_ERR(wcss->ahbfabric_cbcr_clk),
+				     "failed to get ahbfabric clock\n");
 
 	wcss->lcc_csr_cbcr = devm_clk_get(wcss->dev, "tcsr_lcc_cbc");
-	if (IS_ERR(wcss->lcc_csr_cbcr)) {
-		ret = PTR_ERR(wcss->lcc_csr_cbcr);
-		if (ret != -EPROBE_DEFER)
-			dev_err(wcss->dev, "failed to get csr cbcr clk\n");
-		return ret;
-	}
+	if (IS_ERR(wcss->lcc_csr_cbcr))
+		return dev_err_probe(wcss->dev, PTR_ERR(wcss->lcc_csr_cbcr),
+				     "failed to get csr cbcr clk\n");
 
 	wcss->ahbs_cbcr = devm_clk_get(wcss->dev,
 				       "lcc_abhs_cbc");
-	if (IS_ERR(wcss->ahbs_cbcr)) {
-		ret = PTR_ERR(wcss->ahbs_cbcr);
-		if (ret != -EPROBE_DEFER)
-			dev_err(wcss->dev, "failed to get ahbs_cbcr clk\n");
-		return ret;
-	}
+	if (IS_ERR(wcss->ahbs_cbcr))
+		return dev_err_probe(wcss->dev, PTR_ERR(wcss->ahbs_cbcr),
+				     "failed to get ahbs_cbcr clk\n");
 
 	wcss->tcm_slave_cbcr = devm_clk_get(wcss->dev,
 					    "lcc_tcm_slave_cbc");
-	if (IS_ERR(wcss->tcm_slave_cbcr)) {
-		ret = PTR_ERR(wcss->tcm_slave_cbcr);
-		if (ret != -EPROBE_DEFER)
-			dev_err(wcss->dev, "failed to get tcm cbcr clk\n");
-		return ret;
-	}
+	if (IS_ERR(wcss->tcm_slave_cbcr))
+		return dev_err_probe(wcss->dev, PTR_ERR(wcss->tcm_slave_cbcr),
+				     "failed to get tcm cbcr clk\n");
 
 	wcss->qdsp6ss_abhm_cbcr = devm_clk_get(wcss->dev, "lcc_abhm_cbc");
-	if (IS_ERR(wcss->qdsp6ss_abhm_cbcr)) {
-		ret = PTR_ERR(wcss->qdsp6ss_abhm_cbcr);
-		if (ret != -EPROBE_DEFER)
-			dev_err(wcss->dev, "failed to get abhm cbcr clk\n");
-		return ret;
-	}
+	if (IS_ERR(wcss->qdsp6ss_abhm_cbcr))
+		return dev_err_probe(wcss->dev, PTR_ERR(wcss->qdsp6ss_abhm_cbcr),
+				     "failed to get abhm cbcr clk\n");
 
 	wcss->qdsp6ss_axim_cbcr = devm_clk_get(wcss->dev, "lcc_axim_cbc");
-	if (IS_ERR(wcss->qdsp6ss_axim_cbcr)) {
-		ret = PTR_ERR(wcss->qdsp6ss_axim_cbcr);
-		if (ret != -EPROBE_DEFER)
-			dev_err(wcss->dev, "failed to get axim cbcr clk\n");
-		return ret;
-	}
+	if (IS_ERR(wcss->qdsp6ss_axim_cbcr))
+		return dev_err_probe(wcss->dev, PTR_ERR(wcss->qdsp6ss_axim_cbcr),
+				     "failed to get axim cbcr clk\n");
 
 	wcss->lcc_bcr_sleep = devm_clk_get(wcss->dev, "lcc_bcr_sleep");
-	if (IS_ERR(wcss->lcc_bcr_sleep)) {
-		ret = PTR_ERR(wcss->lcc_bcr_sleep);
-		if (ret != -EPROBE_DEFER)
-			dev_err(wcss->dev, "failed to get bcr cbcr clk\n");
-		return ret;
-	}
+	if (IS_ERR(wcss->lcc_bcr_sleep))
+		return dev_err_probe(wcss->dev, PTR_ERR(wcss->lcc_bcr_sleep),
+				     "failed to get bcr cbcr clk\n");
 
 	return 0;
 }

-- 
2.43.0


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH 10/10] remoteproc: qcom_wcnss_iris: Simplify with dev_err_probe()
  2024-10-11 13:09 [PATCH 00/10] remoteproc: few dev_err_probe() and other cleanups/improvements Krzysztof Kozlowski
                   ` (8 preceding siblings ...)
  2024-10-11 13:09 ` [PATCH 09/10] remoteproc: qcom_q6v5_wcss: " Krzysztof Kozlowski
@ 2024-10-11 13:09 ` Krzysztof Kozlowski
  2024-10-11 13:36   ` Dmitry Baryshkov
  2024-10-15 17:45 ` [PATCH 00/10] remoteproc: few dev_err_probe() and other cleanups/improvements Mathieu Poirier
  10 siblings, 1 reply; 18+ messages in thread
From: Krzysztof Kozlowski @ 2024-10-11 13:09 UTC (permalink / raw)
  To: Bjorn Andersson, Mathieu Poirier
  Cc: linux-remoteproc, linux-kernel, linux-arm-msm,
	Krzysztof Kozlowski

Use dev_err_probe() to make error and defer code handling simpler.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 drivers/remoteproc/qcom_wcnss_iris.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/drivers/remoteproc/qcom_wcnss_iris.c b/drivers/remoteproc/qcom_wcnss_iris.c
index dd36fd077911afec942f553a55128258c10ba946..b989718776bdb5843bd48b2d724bf1c483725bf3 100644
--- a/drivers/remoteproc/qcom_wcnss_iris.c
+++ b/drivers/remoteproc/qcom_wcnss_iris.c
@@ -155,9 +155,8 @@ struct qcom_iris *qcom_iris_probe(struct device *parent, bool *use_48mhz_xo)
 
 	iris->xo_clk = devm_clk_get(&iris->dev, "xo");
 	if (IS_ERR(iris->xo_clk)) {
-		ret = PTR_ERR(iris->xo_clk);
-		if (ret != -EPROBE_DEFER)
-			dev_err(&iris->dev, "failed to acquire xo clk\n");
+		ret = dev_err_probe(&iris->dev, PTR_ERR(iris->xo_clk),
+				    "failed to acquire xo clk\n");
 		goto err_device_del;
 	}
 

-- 
2.43.0


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* Re: [PATCH 05/10] remoteproc: qcom_q6v5_adsp: Simplify with dev_err_probe()
  2024-10-11 13:09 ` [PATCH 05/10] remoteproc: qcom_q6v5_adsp: Simplify with dev_err_probe() Krzysztof Kozlowski
@ 2024-10-11 13:31   ` Dmitry Baryshkov
  0 siblings, 0 replies; 18+ messages in thread
From: Dmitry Baryshkov @ 2024-10-11 13:31 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Bjorn Andersson, Mathieu Poirier, linux-remoteproc, linux-kernel,
	linux-arm-msm

On Fri, Oct 11, 2024 at 03:09:13PM +0200, Krzysztof Kozlowski wrote:
> Use dev_err_probe() to make error and defer code handling simpler.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> ---
>  drivers/remoteproc/qcom_q6v5_adsp.c | 17 ++++++-----------
>  1 file changed, 6 insertions(+), 11 deletions(-)
> 

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>

-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH 06/10] remoteproc: qcom_q6v5_mss: Simplify with dev_err_probe()
  2024-10-11 13:09 ` [PATCH 06/10] remoteproc: qcom_q6v5_mss: " Krzysztof Kozlowski
@ 2024-10-11 13:35   ` Dmitry Baryshkov
  0 siblings, 0 replies; 18+ messages in thread
From: Dmitry Baryshkov @ 2024-10-11 13:35 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Bjorn Andersson, Mathieu Poirier, linux-remoteproc, linux-kernel,
	linux-arm-msm

On Fri, Oct 11, 2024 at 03:09:14PM +0200, Krzysztof Kozlowski wrote:
> Use dev_err_probe() to make error and defer code handling simpler.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> ---
>  drivers/remoteproc/qcom_q6v5_mss.c | 24 ++++++++----------------
>  1 file changed, 8 insertions(+), 16 deletions(-)
> 

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>

-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH 07/10] remoteproc: qcom_q6v5_mss: Drop redundant error printks in probe
  2024-10-11 13:09 ` [PATCH 07/10] remoteproc: qcom_q6v5_mss: Drop redundant error printks in probe Krzysztof Kozlowski
@ 2024-10-11 13:35   ` Dmitry Baryshkov
  0 siblings, 0 replies; 18+ messages in thread
From: Dmitry Baryshkov @ 2024-10-11 13:35 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Bjorn Andersson, Mathieu Poirier, linux-remoteproc, linux-kernel,
	linux-arm-msm

On Fri, Oct 11, 2024 at 03:09:15PM +0200, Krzysztof Kozlowski wrote:
> Do not print errors of getting clocks and regulators in probe twice:
> once in q6v5_init_clocks() or q6v5_regulator_init() and then again in the
> probe function.  This also avoids dmesg flood on deferred probe.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> ---
>  drivers/remoteproc/qcom_q6v5_mss.c | 24 ++++++------------------
>  1 file changed, 6 insertions(+), 18 deletions(-)
> 

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH 08/10] remoteproc: qcom_q6v5_pas: Simplify with dev_err_probe()
  2024-10-11 13:09 ` [PATCH 08/10] remoteproc: qcom_q6v5_pas: Simplify with dev_err_probe() Krzysztof Kozlowski
@ 2024-10-11 13:35   ` Dmitry Baryshkov
  0 siblings, 0 replies; 18+ messages in thread
From: Dmitry Baryshkov @ 2024-10-11 13:35 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Bjorn Andersson, Mathieu Poirier, linux-remoteproc, linux-kernel,
	linux-arm-msm

On Fri, Oct 11, 2024 at 03:09:16PM +0200, Krzysztof Kozlowski wrote:
> Use dev_err_probe() to make error and defer code handling simpler.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> ---
>  drivers/remoteproc/qcom_q6v5_pas.c | 22 +++++++---------------
>  1 file changed, 7 insertions(+), 15 deletions(-)
> 

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>

-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH 09/10] remoteproc: qcom_q6v5_wcss: Simplify with dev_err_probe()
  2024-10-11 13:09 ` [PATCH 09/10] remoteproc: qcom_q6v5_wcss: " Krzysztof Kozlowski
@ 2024-10-11 13:36   ` Dmitry Baryshkov
  0 siblings, 0 replies; 18+ messages in thread
From: Dmitry Baryshkov @ 2024-10-11 13:36 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Bjorn Andersson, Mathieu Poirier, linux-remoteproc, linux-kernel,
	linux-arm-msm

On Fri, Oct 11, 2024 at 03:09:17PM +0200, Krzysztof Kozlowski wrote:
> Use dev_err_probe() to make error and defer code handling simpler.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> ---
>  drivers/remoteproc/qcom_q6v5_wcss.c | 92 ++++++++++++-------------------------
>  1 file changed, 30 insertions(+), 62 deletions(-)
> 

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>

-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH 10/10] remoteproc: qcom_wcnss_iris: Simplify with dev_err_probe()
  2024-10-11 13:09 ` [PATCH 10/10] remoteproc: qcom_wcnss_iris: " Krzysztof Kozlowski
@ 2024-10-11 13:36   ` Dmitry Baryshkov
  0 siblings, 0 replies; 18+ messages in thread
From: Dmitry Baryshkov @ 2024-10-11 13:36 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Bjorn Andersson, Mathieu Poirier, linux-remoteproc, linux-kernel,
	linux-arm-msm

On Fri, Oct 11, 2024 at 03:09:18PM +0200, Krzysztof Kozlowski wrote:
> Use dev_err_probe() to make error and defer code handling simpler.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> ---
>  drivers/remoteproc/qcom_wcnss_iris.c | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)
> 

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>

-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH 00/10] remoteproc: few dev_err_probe() and other cleanups/improvements
  2024-10-11 13:09 [PATCH 00/10] remoteproc: few dev_err_probe() and other cleanups/improvements Krzysztof Kozlowski
                   ` (9 preceding siblings ...)
  2024-10-11 13:09 ` [PATCH 10/10] remoteproc: qcom_wcnss_iris: " Krzysztof Kozlowski
@ 2024-10-15 17:45 ` Mathieu Poirier
  10 siblings, 0 replies; 18+ messages in thread
From: Mathieu Poirier @ 2024-10-15 17:45 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Bjorn Andersson, linux-remoteproc, linux-kernel, linux-arm-msm

On Fri, Oct 11, 2024 at 03:09:08PM +0200, Krzysztof Kozlowski wrote:
> Simplify drivers in few places around probe function.
> 
> Best regards,
> Krzysztof
> 
> ---
> Krzysztof Kozlowski (10):
>       remoteproc: da8xx: Handle deferred probe
>       remoteproc: da8xx: Simplify with dev_err_probe()
>       remoteproc: ti_k3_r5: Simplify with dev_err_probe()
>       remoteproc: ti_k3_r5: Simplify with scoped for each OF child loop

I have applied patches 1 to 4.  I will let Bjorn do the QC ones.

Thanks,
Mathieu

>       remoteproc: qcom_q6v5_adsp: Simplify with dev_err_probe()
>       remoteproc: qcom_q6v5_mss: Simplify with dev_err_probe()
>       remoteproc: qcom_q6v5_mss: Drop redundant error printks in probe
>       remoteproc: qcom_q6v5_pas: Simplify with dev_err_probe()
>       remoteproc: qcom_q6v5_wcss: Simplify with dev_err_probe()
>       remoteproc: qcom_wcnss_iris: Simplify with dev_err_probe()
> 
>  drivers/remoteproc/da8xx_remoteproc.c    | 29 +++-------
>  drivers/remoteproc/qcom_q6v5_adsp.c      | 17 +++---
>  drivers/remoteproc/qcom_q6v5_mss.c       | 48 +++++------------
>  drivers/remoteproc/qcom_q6v5_pas.c       | 22 +++-----
>  drivers/remoteproc/qcom_q6v5_wcss.c      | 92 +++++++++++---------------------
>  drivers/remoteproc/qcom_wcnss_iris.c     |  5 +-
>  drivers/remoteproc/ti_k3_r5_remoteproc.c | 74 +++++++++----------------
>  7 files changed, 92 insertions(+), 195 deletions(-)
> ---
> base-commit: 0cca97bf23640ff68a6e8a74e9b6659fdc27f48c
> change-id: 20241011-remote-proc-dev-err-probe-c986de9e93de
> 
> Best regards,
> -- 
> Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 

^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2024-10-15 17:45 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-10-11 13:09 [PATCH 00/10] remoteproc: few dev_err_probe() and other cleanups/improvements Krzysztof Kozlowski
2024-10-11 13:09 ` [PATCH 01/10] remoteproc: da8xx: Handle deferred probe Krzysztof Kozlowski
2024-10-11 13:09 ` [PATCH 02/10] remoteproc: da8xx: Simplify with dev_err_probe() Krzysztof Kozlowski
2024-10-11 13:09 ` [PATCH 03/10] remoteproc: ti_k3_r5: " Krzysztof Kozlowski
2024-10-11 13:09 ` [PATCH 04/10] remoteproc: ti_k3_r5: Simplify with scoped for each OF child loop Krzysztof Kozlowski
2024-10-11 13:09 ` [PATCH 05/10] remoteproc: qcom_q6v5_adsp: Simplify with dev_err_probe() Krzysztof Kozlowski
2024-10-11 13:31   ` Dmitry Baryshkov
2024-10-11 13:09 ` [PATCH 06/10] remoteproc: qcom_q6v5_mss: " Krzysztof Kozlowski
2024-10-11 13:35   ` Dmitry Baryshkov
2024-10-11 13:09 ` [PATCH 07/10] remoteproc: qcom_q6v5_mss: Drop redundant error printks in probe Krzysztof Kozlowski
2024-10-11 13:35   ` Dmitry Baryshkov
2024-10-11 13:09 ` [PATCH 08/10] remoteproc: qcom_q6v5_pas: Simplify with dev_err_probe() Krzysztof Kozlowski
2024-10-11 13:35   ` Dmitry Baryshkov
2024-10-11 13:09 ` [PATCH 09/10] remoteproc: qcom_q6v5_wcss: " Krzysztof Kozlowski
2024-10-11 13:36   ` Dmitry Baryshkov
2024-10-11 13:09 ` [PATCH 10/10] remoteproc: qcom_wcnss_iris: " Krzysztof Kozlowski
2024-10-11 13:36   ` Dmitry Baryshkov
2024-10-15 17:45 ` [PATCH 00/10] remoteproc: few dev_err_probe() and other cleanups/improvements Mathieu Poirier

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox