]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
ARC: Switch to irq_domain_create_linear()
authorJiri Slaby (SUSE) <jirislaby@kernel.org>
Wed, 19 Mar 2025 09:29:06 +0000 (10:29 +0100)
committerThomas Gleixner <tglx@linutronix.de>
Fri, 16 May 2025 19:06:08 +0000 (21:06 +0200)
irq_domain_add_linear() is going away as being obsolete now. Switch to
the preferred irq_domain_create_linear(). That differs in the first
parameter: It takes more generic struct fwnode_handle instead of struct
device_node. Therefore, of_fwnode_handle() is added around the
parameter.

Note some of the users can likely use dev->fwnode directly instead of
indirect of_fwnode_handle(dev->of_node). But dev->fwnode is not
guaranteed to be set for all, so this has to be investigated on case to
case basis (by people who can actually test with the HW).

[ tglx: Fix up subject prefix ]

Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://lore.kernel.org/all/20250319092951.37667-14-jirislaby@kernel.org
arch/arc/kernel/intc-arcv2.c
arch/arc/kernel/intc-compact.c
arch/arc/kernel/mcip.c

index fea29d9d18d61a40cb69c4e533285c4e2cd1e9e3..809edc59af25db666fb17a741ae9d9124cb47a12 100644 (file)
@@ -170,7 +170,7 @@ init_onchip_IRQ(struct device_node *intc, struct device_node *parent)
        if (parent)
                panic("DeviceTree incore intc not a root irq controller\n");
 
-       root_domain = irq_domain_add_linear(intc, nr_cpu_irqs, &arcv2_irq_ops, NULL);
+       root_domain = irq_domain_create_linear(of_fwnode_handle(intc), nr_cpu_irqs, &arcv2_irq_ops, NULL);
        if (!root_domain)
                panic("root irq domain not avail\n");
 
index 1d2ff1c6a61b8fec5d4adcc94a55ccf0542a241d..1b159e9e0234bd76161347534f98cfbfbada60eb 100644 (file)
@@ -112,8 +112,9 @@ init_onchip_IRQ(struct device_node *intc, struct device_node *parent)
        if (parent)
                panic("DeviceTree incore intc not a root irq controller\n");
 
-       root_domain = irq_domain_add_linear(intc, NR_CPU_IRQS,
-                                           &arc_intc_domain_ops, NULL);
+       root_domain = irq_domain_create_linear(of_fwnode_handle(intc),
+                                              NR_CPU_IRQS,
+                                              &arc_intc_domain_ops, NULL);
        if (!root_domain)
                panic("root irq domain not avail\n");
 
index cdd370ec9280aecc02cf9f5505bbd0fc409e518c..02b28a9324f427b7e1176e449211bf8d6d2054ab 100644 (file)
@@ -391,7 +391,8 @@ idu_of_init(struct device_node *intc, struct device_node *parent)
 
        pr_info("MCIP: IDU supports %u common irqs\n", nr_irqs);
 
-       domain = irq_domain_add_linear(intc, nr_irqs, &idu_irq_ops, NULL);
+       domain = irq_domain_create_linear(of_fwnode_handle(intc), nr_irqs,
+                                         &idu_irq_ops, NULL);
 
        /* Parent interrupts (core-intc) are already mapped */