Skip to content

Commit 1fd224e

Browse files
pcercueiKAGA-KOKO
authored andcommitted
irqchip/ingenic: Get rid of the legacy IRQ domain
Get rid of the legacy IRQ domain and hardcoded IRQ base, since all the Ingenic drivers and platform code have been updated to use devicetree. This also fixes the kernel being flooded with messages like: irq: interrupt-controller@10001000 didn't like hwirq-0x0 to VIRQ8 mapping (rc=-19) Fixes: 8bc7464 ("irqchip: ingenic: Alloc generic chips from IRQ domain"). Signed-off-by: Paul Cercueil <[email protected]> Signed-off-by: Thomas Gleixner <[email protected]> Tested-by: H. Nikolaus Schaller <[email protected]> Tested-by: 周琰杰 (Zhou Yanjie) <[email protected]> Acked-by: Marc Zyngier <[email protected]> Link: https://lore.kernel.org/r/[email protected]
1 parent b3a987b commit 1fd224e

File tree

1 file changed

+2
-4
lines changed

1 file changed

+2
-4
lines changed

drivers/irqchip/irq-ingenic.c

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
#include <linux/delay.h>
1818

1919
#include <asm/io.h>
20-
#include <asm/mach-jz4740/irq.h>
2120

2221
struct ingenic_intc_data {
2322
void __iomem *base;
@@ -50,7 +49,7 @@ static irqreturn_t intc_cascade(int irq, void *data)
5049
while (pending) {
5150
int bit = __fls(pending);
5251

53-
irq = irq_find_mapping(domain, bit + (i * 32));
52+
irq = irq_linear_revmap(domain, bit + (i * 32));
5453
generic_handle_irq(irq);
5554
pending &= ~BIT(bit);
5655
}
@@ -97,8 +96,7 @@ static int __init ingenic_intc_of_init(struct device_node *node,
9796
goto out_unmap_irq;
9897
}
9998

100-
domain = irq_domain_add_legacy(node, num_chips * 32,
101-
JZ4740_IRQ_BASE, 0,
99+
domain = irq_domain_add_linear(node, num_chips * 32,
102100
&irq_generic_chip_ops, NULL);
103101
if (!domain) {
104102
err = -ENOMEM;

0 commit comments

Comments
 (0)