[tip: irq/drivers] irqchip/imx-irqsteer: Use devm_irq_domain_create_linear()

From: tip-bot2 for Zhipeng Wang

Date: Mon Nov 09 2026 - 04:12:27 EST


The following commit has been merged into the irq/drivers branch of tip:

Commit-ID: 782293846e3b6a2b431057a2bc47263db6162333
Gitweb: https://git.kernel.org/tip/782293846e3b6a2b431057a2bc47263db6162333
Author: Zhipeng Wang <zhipeng.wang_1@xxxxxxx>
AuthorDate: Wed, 04 Nov 2026 16:37:58 +09:00
Committer: Thomas Gleixner <tglx@xxxxxxxxxx>
CommitterDate: Mon, 09 Nov 2026 10:01:08 +01:00

irqchip/imx-irqsteer: Use devm_irq_domain_create_linear()

Replace irq_domain_create_linear() with the new
devm_irq_domain_create_linear() helper, so the IRQ domain is released
automatically on unbind and remove() no longer has to call
irq_domain_remove(). No functional change.

Signed-off-by: Zhipeng Wang <zhipeng.wang_1@xxxxxxx>
Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxx>
Reviewed-by: Radu Rendec <radu@xxxxxxxxxx>
Link: https://patch.msgid.link/20261104073759.386777-11-Zhipeng.wang_1@xxxxxxxxxxx
---
drivers/irqchip/irq-imx-irqsteer.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/drivers/irqchip/irq-imx-irqsteer.c b/drivers/irqchip/irq-imx-irqsteer.c
index ac26c9a..e5a579c 100644
--- a/drivers/irqchip/irq-imx-irqsteer.c
+++ b/drivers/irqchip/irq-imx-irqsteer.c
@@ -248,8 +248,9 @@ static int imx_irqsteer_probe(struct platform_device *pdev)
if (ret)
return ret;

- data->domain = irq_domain_create_linear(dev_fwnode(&pdev->dev), data->reg_num * 32,
- &imx_irqsteer_domain_ops, data);
+ data->domain = devm_irq_domain_create_linear(&pdev->dev, dev_fwnode(&pdev->dev),
+ data->reg_num * 32,
+ &imx_irqsteer_domain_ops, data);
if (!data->domain) {
dev_err(&pdev->dev, "failed to create IRQ domain\n");
return -ENOMEM;
@@ -295,8 +296,6 @@ static void imx_irqsteer_remove(struct platform_device *pdev)
for (unsigned int hwirq = 0; hwirq < irqsteer_data->reg_num * 32; hwirq++)
irq_dispose_mapping(irq_find_mapping(irqsteer_data->domain, hwirq));

- irq_domain_remove(irqsteer_data->domain);
-
if (ret >= 0)
pm_runtime_put_noidle(&pdev->dev);
}