Skip to content

Commit

Permalink
m68knommu: stop using __do_IRQ
Browse files Browse the repository at this point in the history
The use of __do_IRQ is deprecated, so lets stop using it.
Generally the interrupts on the supported processors here are
level triggered, so this is strait forward to switch over to
using the standard handle_level_irq flow handler. (Although
some ColdFire parts support edge triggered GPIO line  interrupts
we have no support for them yet).

Signed-off-by: Greg Ungerer <gerg@uclinux.org>
  • Loading branch information
Greg Ungerer committed Oct 21, 2010
1 parent eb497e7 commit 04570b4
Show file tree
Hide file tree
Showing 7 changed files with 26 additions and 27 deletions.
4 changes: 4 additions & 0 deletions arch/m68knommu/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,10 @@ config GENERIC_HARDIRQS
bool
default y

config GENERIC_HARDIRQS_NO__DO_IRQ
bool
default y

config GENERIC_CALIBRATE_DELAY
bool
default y
Expand Down
8 changes: 3 additions & 5 deletions arch/m68knommu/platform/5272/intc.c
Original file line number Diff line number Diff line change
Expand Up @@ -128,11 +128,9 @@ void __init init_IRQ(void)
writel(0x88888888, MCF_MBAR + MCFSIM_ICR4);

for (irq = 0; (irq < NR_IRQS); irq++) {
irq_desc[irq].status = IRQ_DISABLED;
irq_desc[irq].action = NULL;
irq_desc[irq].depth = 1;
irq_desc[irq].chip = &intc_irq_chip;
intc_irq_set_type(irq, 0);
set_irq_chip(irq, &intc_irq_chip);
set_irq_type(irq, IRQ_TYPE_LEVEL_HIGH);
set_irq_handler(irq, handle_level_irq);
}
}

6 changes: 2 additions & 4 deletions arch/m68knommu/platform/68328/ints.c
Original file line number Diff line number Diff line change
Expand Up @@ -179,10 +179,8 @@ void __init init_IRQ(void)
IMR = ~0;

for (i = 0; (i < NR_IRQS); i++) {
irq_desc[i].status = IRQ_DISABLED;
irq_desc[i].action = NULL;
irq_desc[i].depth = 1;
irq_desc[i].chip = &intc_irq_chip;
set_irq_chip(irq, &intc_irq_chip);
set_irq_handler(irq, handle_level_irq);
}
}

6 changes: 2 additions & 4 deletions arch/m68knommu/platform/68360/ints.c
Original file line number Diff line number Diff line change
Expand Up @@ -132,10 +132,8 @@ void init_IRQ(void)
pquicc->intr_cimr = 0x00000000;

for (i = 0; (i < NR_IRQS); i++) {
irq_desc[i].status = IRQ_DISABLED;
irq_desc[i].action = NULL;
irq_desc[i].depth = 1;
irq_desc[i].chip = &intc_irq_chip;
set_irq_chip(irq, &intc_irq_chip);
set_irq_handler(irq, handle_level_irq);
}
}

13 changes: 9 additions & 4 deletions arch/m68knommu/platform/coldfire/intc-2.c
Original file line number Diff line number Diff line change
Expand Up @@ -93,10 +93,16 @@ static void intc_irq_unmask(unsigned int irq)
}
}

static int intc_irq_set_type(unsigned int irq, unsigned int type)
{
return 0;
}

static struct irq_chip intc_irq_chip = {
.name = "CF-INTC",
.mask = intc_irq_mask,
.unmask = intc_irq_unmask,
.set_type = intc_irq_set_type,
};

void __init init_IRQ(void)
Expand All @@ -112,10 +118,9 @@ void __init init_IRQ(void)
#endif

for (irq = 0; (irq < NR_IRQS); irq++) {
irq_desc[irq].status = IRQ_DISABLED;
irq_desc[irq].action = NULL;
irq_desc[irq].depth = 1;
irq_desc[irq].chip = &intc_irq_chip;
set_irq_chip(irq, &intc_irq_chip);
set_irq_type(irq, IRQ_TYPE_LEVEL_HIGH);
set_irq_handler(irq, handle_level_irq);
}
}

8 changes: 3 additions & 5 deletions arch/m68knommu/platform/coldfire/intc-simr.c
Original file line number Diff line number Diff line change
Expand Up @@ -70,11 +70,9 @@ void __init init_IRQ(void)
__raw_writeb(0xff, MCFINTC1_SIMR);

for (irq = 0; (irq < NR_IRQS); irq++) {
irq_desc[irq].status = IRQ_DISABLED;
irq_desc[irq].action = NULL;
irq_desc[irq].depth = 1;
irq_desc[irq].chip = &intc_irq_chip;
intc_irq_set_type(irq, 0);
set_irq_chip(irq, &intc_irq_chip);
set_irq_type(irq, IRQ_TYPE_LEVEL_HIGH);
set_irq_handler(irq, handle_level_irq);
}
}

8 changes: 3 additions & 5 deletions arch/m68knommu/platform/coldfire/intc.c
Original file line number Diff line number Diff line change
Expand Up @@ -143,11 +143,9 @@ void __init init_IRQ(void)
mcf_maskimr(0xffffffff);

for (irq = 0; (irq < NR_IRQS); irq++) {
irq_desc[irq].status = IRQ_DISABLED;
irq_desc[irq].action = NULL;
irq_desc[irq].depth = 1;
irq_desc[irq].chip = &intc_irq_chip;
intc_irq_set_type(irq, 0);
set_irq_chip(irq, &intc_irq_chip);
set_irq_type(irq, IRQ_TYPE_LEVEL_HIGH);
set_irq_handler(irq, handle_level_irq);
}
}

0 comments on commit 04570b4

Please sign in to comment.