hc
2024-02-20 102a0743326a03cd1a1202ceda21e175b7d3575c
kernel/drivers/irqchip/irq-jcore-aic.c
....@@ -68,6 +68,7 @@
6868 unsigned min_irq = JCORE_AIC2_MIN_HWIRQ;
6969 unsigned dom_sz = JCORE_AIC_MAX_HWIRQ+1;
7070 struct irq_domain *domain;
71
+ int ret;
7172
7273 pr_info("Initializing J-Core AIC\n");
7374
....@@ -100,11 +101,17 @@
100101 jcore_aic.irq_unmask = noop;
101102 jcore_aic.name = "AIC";
102103
103
- domain = irq_domain_add_linear(node, dom_sz, &jcore_aic_irqdomain_ops,
104
+ ret = irq_alloc_descs(-1, min_irq, dom_sz - min_irq,
105
+ of_node_to_nid(node));
106
+
107
+ if (ret < 0)
108
+ return ret;
109
+
110
+ domain = irq_domain_add_legacy(node, dom_sz - min_irq, min_irq, min_irq,
111
+ &jcore_aic_irqdomain_ops,
104112 &jcore_aic);
105113 if (!domain)
106114 return -ENOMEM;
107
- irq_create_strict_mappings(domain, min_irq, min_irq, dom_sz - min_irq);
108115
109116 return 0;
110117 }