avr32: At32ap: Convert intc irq_chip to new functions
Also replace the open coded handler call with the proper wrapper. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Cc: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com> LKML-Reference: <20110206163009.096308633@linutronix.de>
This commit is contained in:
Родитель
7776e233ef
Коммит
3972f6917d
|
@ -34,12 +34,12 @@ extern struct platform_device at32_intc0_device;
|
|||
* TODO: We may be able to implement mask/unmask by setting IxM flags
|
||||
* in the status register.
|
||||
*/
|
||||
static void intc_mask_irq(unsigned int irq)
|
||||
static void intc_mask_irq(struct irq_data *d)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
static void intc_unmask_irq(unsigned int irq)
|
||||
static void intc_unmask_irq(struct irq_data *d)
|
||||
{
|
||||
|
||||
}
|
||||
|
@ -47,8 +47,8 @@ static void intc_unmask_irq(unsigned int irq)
|
|||
static struct intc intc0 = {
|
||||
.chip = {
|
||||
.name = "intc",
|
||||
.mask = intc_mask_irq,
|
||||
.unmask = intc_unmask_irq,
|
||||
.irq_mask = intc_mask_irq,
|
||||
.irq_unmask = intc_unmask_irq,
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -57,7 +57,6 @@ static struct intc intc0 = {
|
|||
*/
|
||||
asmlinkage void do_IRQ(int level, struct pt_regs *regs)
|
||||
{
|
||||
struct irq_desc *desc;
|
||||
struct pt_regs *old_regs;
|
||||
unsigned int irq;
|
||||
unsigned long status_reg;
|
||||
|
@ -69,8 +68,7 @@ asmlinkage void do_IRQ(int level, struct pt_regs *regs)
|
|||
irq_enter();
|
||||
|
||||
irq = intc_readl(&intc0, INTCAUSE0 - 4 * level);
|
||||
desc = irq_desc + irq;
|
||||
desc->handle_irq(irq, desc);
|
||||
generic_handle_irq(irq);
|
||||
|
||||
/*
|
||||
* Clear all interrupt level masks so that we may handle
|
||||
|
|
Загрузка…
Ссылка в новой задаче