Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

net: Switch to irq_domain_create_*()

irq_domain_add_*() interfaces are going away as being obsolete now.
Switch to the preferred irq_domain_create_*() ones. Those differ in the
node parameter: They take more generic struct fwnode_handle instead of
struct device_node. Therefore, of_fwnode_handle() is added around the
original 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-28-jirislaby@kernel.org



authored by

Jiri Slaby (SUSE) and committed by
Thomas Gleixner
e0c27a82 d8566886

+22 -22
+3 -2
drivers/net/dsa/microchip/ksz_common.c
··· 2697 2697 kirq->dev = dev; 2698 2698 kirq->masked = ~0; 2699 2699 2700 - kirq->domain = irq_domain_add_simple(dev->dev->of_node, kirq->nirqs, 0, 2701 - &ksz_irq_domain_ops, kirq); 2700 + kirq->domain = irq_domain_create_simple(of_fwnode_handle(dev->dev->of_node), 2701 + kirq->nirqs, 0, 2702 + &ksz_irq_domain_ops, kirq); 2702 2703 if (!kirq->domain) 2703 2704 return -ENOMEM; 2704 2705
+2 -2
drivers/net/dsa/microchip/ksz_ptp.c
··· 1136 1136 1137 1137 init_completion(&port->tstamp_msg_comp); 1138 1138 1139 - ptpirq->domain = irq_domain_add_linear(dev->dev->of_node, ptpirq->nirqs, 1140 - &ksz_ptp_irq_domain_ops, ptpirq); 1139 + ptpirq->domain = irq_domain_create_linear(of_fwnode_handle(dev->dev->of_node), 1140 + ptpirq->nirqs, &ksz_ptp_irq_domain_ops, ptpirq); 1141 1141 if (!ptpirq->domain) 1142 1142 return -ENOMEM; 1143 1143
+1 -1
drivers/net/dsa/mv88e6xxx/chip.c
··· 297 297 u16 reg, mask; 298 298 299 299 chip->g1_irq.nirqs = chip->info->g1_irqs; 300 - chip->g1_irq.domain = irq_domain_add_simple( 300 + chip->g1_irq.domain = irq_domain_create_simple( 301 301 NULL, chip->g1_irq.nirqs, 0, 302 302 &mv88e6xxx_g1_irq_domain_ops, chip); 303 303 if (!chip->g1_irq.domain)
+4 -2
drivers/net/dsa/mv88e6xxx/global2.c
··· 1154 1154 if (err) 1155 1155 return err; 1156 1156 1157 - chip->g2_irq.domain = irq_domain_add_simple( 1158 - chip->dev->of_node, 16, 0, &mv88e6xxx_g2_irq_domain_ops, chip); 1157 + chip->g2_irq.domain = irq_domain_create_simple(of_fwnode_handle(chip->dev->of_node), 1158 + 16, 0, 1159 + &mv88e6xxx_g2_irq_domain_ops, 1160 + chip); 1159 1161 if (!chip->g2_irq.domain) 1160 1162 return -ENOMEM; 1161 1163
+2 -2
drivers/net/dsa/qca/ar9331.c
··· 821 821 return ret; 822 822 } 823 823 824 - priv->irqdomain = irq_domain_add_linear(np, 1, &ar9331_sw_irqdomain_ops, 825 - priv); 824 + priv->irqdomain = irq_domain_create_linear(of_fwnode_handle(np), 1, 825 + &ar9331_sw_irqdomain_ops, priv); 826 826 if (!priv->irqdomain) { 827 827 dev_err(dev, "failed to create IRQ domain\n"); 828 828 return -EINVAL;
+2 -2
drivers/net/dsa/realtek/rtl8365mb.c
··· 1719 1719 goto out_put_node; 1720 1720 } 1721 1721 1722 - priv->irqdomain = irq_domain_add_linear(intc, priv->num_ports, 1723 - &rtl8365mb_irqdomain_ops, priv); 1722 + priv->irqdomain = irq_domain_create_linear(of_fwnode_handle(intc), priv->num_ports, 1723 + &rtl8365mb_irqdomain_ops, priv); 1724 1724 if (!priv->irqdomain) { 1725 1725 dev_err(priv->dev, "failed to add irq domain\n"); 1726 1726 ret = -ENOMEM;
+2 -4
drivers/net/dsa/realtek/rtl8366rb.c
··· 550 550 dev_err(priv->dev, "unable to request irq: %d\n", ret); 551 551 goto out_put_node; 552 552 } 553 - priv->irqdomain = irq_domain_add_linear(intc, 554 - RTL8366RB_NUM_INTERRUPT, 555 - &rtl8366rb_irqdomain_ops, 556 - priv); 553 + priv->irqdomain = irq_domain_create_linear(of_fwnode_handle(intc), RTL8366RB_NUM_INTERRUPT, 554 + &rtl8366rb_irqdomain_ops, priv); 557 555 if (!priv->irqdomain) { 558 556 dev_err(priv->dev, "failed to create IRQ domain\n"); 559 557 ret = -EINVAL;
+2 -2
drivers/net/ethernet/wangxun/txgbe/txgbe_irq.c
··· 184 184 goto skip_sp_irq; 185 185 186 186 txgbe->misc.nirqs = 1; 187 - txgbe->misc.domain = irq_domain_add_simple(NULL, txgbe->misc.nirqs, 0, 188 - &txgbe_misc_irq_domain_ops, txgbe); 187 + txgbe->misc.domain = irq_domain_create_simple(NULL, txgbe->misc.nirqs, 0, 188 + &txgbe_misc_irq_domain_ops, txgbe); 189 189 if (!txgbe->misc.domain) 190 190 return -ENOMEM; 191 191
+4 -5
drivers/net/usb/lan78xx.c
··· 2456 2456 2457 2457 static int lan78xx_setup_irq_domain(struct lan78xx_net *dev) 2458 2458 { 2459 - struct device_node *of_node; 2460 2459 struct irq_domain *irqdomain; 2461 2460 unsigned int irqmap = 0; 2462 2461 u32 buf; 2463 2462 int ret = 0; 2464 - 2465 - of_node = dev->udev->dev.parent->of_node; 2466 2463 2467 2464 mutex_init(&dev->domain_data.irq_lock); 2468 2465 ··· 2472 2475 dev->domain_data.irqchip = &lan78xx_irqchip; 2473 2476 dev->domain_data.irq_handler = handle_simple_irq; 2474 2477 2475 - irqdomain = irq_domain_add_simple(of_node, MAX_INT_EP, 0, 2476 - &chip_domain_ops, &dev->domain_data); 2478 + irqdomain = irq_domain_create_simple(of_fwnode_handle(dev->udev->dev.parent->of_node), 2479 + MAX_INT_EP, 0, 2480 + &chip_domain_ops, 2481 + &dev->domain_data); 2477 2482 if (irqdomain) { 2478 2483 /* create mapping for PHY interrupt */ 2479 2484 irqmap = irq_create_mapping(irqdomain, INT_EP_PHY);