Skip to content

Commit

Permalink
[AVR32] extint: Set initial irq type to low level
Browse files Browse the repository at this point in the history
David Brownell pointed out a mismatch in the avr32 extint code:

> I noticed a small glitch that's not fixed by this patch:  the
> initial type is falling edge, but IRQ_TYPE_NONE is mapped to
> IRQ_TYPE_LEVEL_LOW.  Potentially surprising.

Fix it by setting the initial type (and handler) to low level,
matching the meaning of IRQ_TYPE_NONE.

Signed-off-by: Haavard Skinnemoen <[email protected]>
  • Loading branch information
Haavard Skinnemoen committed Jan 25, 2008
1 parent e4f586f commit d6c49a7
Showing 1 changed file with 3 additions and 3 deletions.
6 changes: 3 additions & 3 deletions arch/avr32/mach-at32ap/extint.c
Original file line number Diff line number Diff line change
Expand Up @@ -226,15 +226,15 @@ static int __init eic_probe(struct platform_device *pdev)
pattern = eic_readl(eic, MODE);
nr_irqs = fls(pattern);

/* Trigger on falling edge unless overridden by driver */
eic_writel(eic, MODE, 0UL);
/* Trigger on low level unless overridden by driver */
eic_writel(eic, EDGE, 0UL);
eic_writel(eic, LEVEL, 0UL);

eic->chip = &eic_chip;

for (i = 0; i < nr_irqs; i++) {
set_irq_chip_and_handler(eic->first_irq + i, &eic_chip,
handle_edge_irq);
handle_level_irq);
set_irq_chip_data(eic->first_irq + i, eic);
}

Expand Down

0 comments on commit d6c49a7

Please sign in to comment.