You've already forked linux-apfs
mirror of
https://github.com/linux-apfs/linux-apfs.git
synced 2026-05-01 15:00:59 -07:00
[MIPS] use generic_handle_irq, handle_level_irq, handle_percpu_irq
Further incorporation of generic irq framework. Replacing __do_IRQ() by proper flow handler would make the irq handling path a bit simpler and faster. * use generic_handle_irq() instead of __do_IRQ(). * use handle_level_irq for obvious level-type irq chips. * use handle_percpu_irq for irqs marked as IRQ_PER_CPU. * setup .eoi routine for irq chips possibly used with handle_percpu_irq. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
This commit is contained in:
committed by
Ralf Baechle
parent
1603b5aca4
commit
1417836e81
@@ -62,6 +62,7 @@ static struct irq_chip mips_cpu_irq_controller = {
|
||||
.mask = mask_mips_irq,
|
||||
.mask_ack = mask_mips_irq,
|
||||
.unmask = unmask_mips_irq,
|
||||
.eoi = unmask_mips_irq,
|
||||
.end = mips_cpu_irq_end,
|
||||
};
|
||||
|
||||
@@ -104,6 +105,7 @@ static struct irq_chip mips_mt_cpu_irq_controller = {
|
||||
.mask = mask_mips_mt_irq,
|
||||
.mask_ack = mips_mt_cpu_irq_ack,
|
||||
.unmask = unmask_mips_mt_irq,
|
||||
.eoi = unmask_mips_mt_irq,
|
||||
.end = mips_mt_cpu_irq_end,
|
||||
};
|
||||
|
||||
@@ -124,7 +126,8 @@ void __init mips_cpu_irq_init(int irq_base)
|
||||
set_irq_chip(i, &mips_mt_cpu_irq_controller);
|
||||
|
||||
for (i = irq_base + 2; i < irq_base + 8; i++)
|
||||
set_irq_chip(i, &mips_cpu_irq_controller);
|
||||
set_irq_chip_and_handler(i, &mips_cpu_irq_controller,
|
||||
handle_level_irq);
|
||||
|
||||
mips_cpu_irq_base = irq_base;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user