Message ID | 20250212182034.366167-6-fabrizio.castro.jz@renesas.com (mailing list archive) |
---|---|
State | Accepted |
Delegated to: | Geert Uytterhoeven |
Headers | show |
Series | Improvements for the RZ/G2L IRQC driver | expand |
On Wed, Feb 12, 2025 at 6:33 PM Fabrizio Castro <fabrizio.castro.jz@renesas.com> wrote: > > Make use of dev_err_probe() to simplify rzg2l_irqc_common_init(). > > Signed-off-by: Fabrizio Castro <fabrizio.castro.jz@renesas.com> > --- > drivers/irqchip/irq-renesas-rzg2l.c | 34 ++++++++++------------------- > 1 file changed, 12 insertions(+), 22 deletions(-) > Reviewed-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> Cheers, Prabhakar > diff --git a/drivers/irqchip/irq-renesas-rzg2l.c b/drivers/irqchip/irq-renesas-rzg2l.c > index 0f325ceb0f53..0e79deccda6d 100644 > --- a/drivers/irqchip/irq-renesas-rzg2l.c > +++ b/drivers/irqchip/irq-renesas-rzg2l.c > @@ -541,10 +541,8 @@ static int rzg2l_irqc_common_init(struct device_node *node, struct device_node * > return -ENODEV; > > parent_domain = irq_find_host(parent); > - if (!parent_domain) { > - dev_err(dev, "cannot find parent domain\n"); > - return -ENODEV; > - } > + if (!parent_domain) > + return dev_err_probe(dev, -ENODEV, "cannot find parent domain\n"); > > rzg2l_irqc_data = devm_kzalloc(dev, sizeof(*rzg2l_irqc_data), GFP_KERNEL); > if (!rzg2l_irqc_data) > @@ -557,28 +555,21 @@ static int rzg2l_irqc_common_init(struct device_node *node, struct device_node * > return PTR_ERR(rzg2l_irqc_data->base); > > ret = rzg2l_irqc_parse_interrupts(rzg2l_irqc_data, node); > - if (ret) { > - dev_err(dev, "cannot parse interrupts: %d\n", ret); > - return ret; > - } > + if (ret) > + return dev_err_probe(dev, ret, "cannot parse interrupts: %d\n", ret); > > resetn = devm_reset_control_get_exclusive_deasserted(dev, NULL); > - if (IS_ERR(resetn)) { > - dev_err(dev, "failed to acquire deasserted reset: %d\n", ret); > - return PTR_ERR(resetn); > - } > + if (IS_ERR(resetn)) > + return dev_err_probe(dev, PTR_ERR(resetn), > + "failed to acquire deasserted reset: %d\n", ret); > > ret = devm_pm_runtime_enable(dev); > - if (ret < 0) { > - dev_err(dev, "devm_pm_runtime_enable failed: %d\n", ret); > - return ret; > - } > + if (ret < 0) > + return dev_err_probe(dev, ret, "devm_pm_runtime_enable failed: %d\n", ret); > > ret = pm_runtime_resume_and_get(dev); > - if (ret < 0) { > - dev_err(dev, "pm_runtime_resume_and_get failed: %d\n", ret); > - return ret; > - } > + if (ret < 0) > + return dev_err_probe(dev, ret, "pm_runtime_resume_and_get failed: %d\n", ret); > > raw_spin_lock_init(&rzg2l_irqc_data->lock); > > @@ -587,8 +578,7 @@ static int rzg2l_irqc_common_init(struct device_node *node, struct device_node * > rzg2l_irqc_data); > if (!irq_domain) { > pm_runtime_put(dev); > - dev_err(dev, "failed to add irq domain\n"); > - return -ENOMEM; > + return dev_err_probe(dev, -ENOMEM, "failed to add irq domain\n"); > } > > register_syscore_ops(&rzg2l_irqc_syscore_ops); > -- > 2.34.1 > >
diff --git a/drivers/irqchip/irq-renesas-rzg2l.c b/drivers/irqchip/irq-renesas-rzg2l.c index 0f325ceb0f53..0e79deccda6d 100644 --- a/drivers/irqchip/irq-renesas-rzg2l.c +++ b/drivers/irqchip/irq-renesas-rzg2l.c @@ -541,10 +541,8 @@ static int rzg2l_irqc_common_init(struct device_node *node, struct device_node * return -ENODEV; parent_domain = irq_find_host(parent); - if (!parent_domain) { - dev_err(dev, "cannot find parent domain\n"); - return -ENODEV; - } + if (!parent_domain) + return dev_err_probe(dev, -ENODEV, "cannot find parent domain\n"); rzg2l_irqc_data = devm_kzalloc(dev, sizeof(*rzg2l_irqc_data), GFP_KERNEL); if (!rzg2l_irqc_data) @@ -557,28 +555,21 @@ static int rzg2l_irqc_common_init(struct device_node *node, struct device_node * return PTR_ERR(rzg2l_irqc_data->base); ret = rzg2l_irqc_parse_interrupts(rzg2l_irqc_data, node); - if (ret) { - dev_err(dev, "cannot parse interrupts: %d\n", ret); - return ret; - } + if (ret) + return dev_err_probe(dev, ret, "cannot parse interrupts: %d\n", ret); resetn = devm_reset_control_get_exclusive_deasserted(dev, NULL); - if (IS_ERR(resetn)) { - dev_err(dev, "failed to acquire deasserted reset: %d\n", ret); - return PTR_ERR(resetn); - } + if (IS_ERR(resetn)) + return dev_err_probe(dev, PTR_ERR(resetn), + "failed to acquire deasserted reset: %d\n", ret); ret = devm_pm_runtime_enable(dev); - if (ret < 0) { - dev_err(dev, "devm_pm_runtime_enable failed: %d\n", ret); - return ret; - } + if (ret < 0) + return dev_err_probe(dev, ret, "devm_pm_runtime_enable failed: %d\n", ret); ret = pm_runtime_resume_and_get(dev); - if (ret < 0) { - dev_err(dev, "pm_runtime_resume_and_get failed: %d\n", ret); - return ret; - } + if (ret < 0) + return dev_err_probe(dev, ret, "pm_runtime_resume_and_get failed: %d\n", ret); raw_spin_lock_init(&rzg2l_irqc_data->lock); @@ -587,8 +578,7 @@ static int rzg2l_irqc_common_init(struct device_node *node, struct device_node * rzg2l_irqc_data); if (!irq_domain) { pm_runtime_put(dev); - dev_err(dev, "failed to add irq domain\n"); - return -ENOMEM; + return dev_err_probe(dev, -ENOMEM, "failed to add irq domain\n"); } register_syscore_ops(&rzg2l_irqc_syscore_ops);
Make use of dev_err_probe() to simplify rzg2l_irqc_common_init(). Signed-off-by: Fabrizio Castro <fabrizio.castro.jz@renesas.com> --- drivers/irqchip/irq-renesas-rzg2l.c | 34 ++++++++++------------------- 1 file changed, 12 insertions(+), 22 deletions(-)