[PATCH] irq-flags: CRIS: Use the new IRQF_ constants
Use the new IRQF_ constants and remove the SA_INTERRUPT define Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Cc: Ingo Molnar <mingo@elte.hu> Cc: "David S. Miller" <davem@davemloft.net> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Mikael Starvik <starvik@axis.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
af0f4d3609
commit
aa7135ff33
|
@ -937,11 +937,11 @@ gpio_init(void)
|
||||||
* in some tests.
|
* in some tests.
|
||||||
*/
|
*/
|
||||||
if (request_irq(TIMER0_IRQ_NBR, gpio_poll_timer_interrupt,
|
if (request_irq(TIMER0_IRQ_NBR, gpio_poll_timer_interrupt,
|
||||||
SA_SHIRQ | SA_INTERRUPT,"gpio poll", NULL)) {
|
IRQF_SHARED | IRQF_DISABLED,"gpio poll", NULL)) {
|
||||||
printk(KERN_CRIT "err: timer0 irq for gpio\n");
|
printk(KERN_CRIT "err: timer0 irq for gpio\n");
|
||||||
}
|
}
|
||||||
if (request_irq(PA_IRQ_NBR, gpio_pa_interrupt,
|
if (request_irq(PA_IRQ_NBR, gpio_pa_interrupt,
|
||||||
SA_SHIRQ | SA_INTERRUPT,"gpio PA", NULL)) {
|
IRQF_SHARED | IRQF_DISABLED,"gpio PA", NULL)) {
|
||||||
printk(KERN_CRIT "err: PA irq for gpio\n");
|
printk(KERN_CRIT "err: PA irq for gpio\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -251,11 +251,11 @@ timer_interrupt(int irq, void *dev_id, struct pt_regs *regs)
|
||||||
return IRQ_HANDLED;
|
return IRQ_HANDLED;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* timer is SA_SHIRQ so drivers can add stuff to the timer irq chain
|
/* timer is IRQF_SHARED so drivers can add stuff to the timer irq chain
|
||||||
* it needs to be SA_INTERRUPT to make the jiffies update work properly
|
* it needs to be IRQF_DISABLED to make the jiffies update work properly
|
||||||
*/
|
*/
|
||||||
|
|
||||||
static struct irqaction irq2 = { timer_interrupt, SA_SHIRQ | SA_INTERRUPT,
|
static struct irqaction irq2 = { timer_interrupt, IRQF_SHARED | IRQF_DISABLED,
|
||||||
CPU_MASK_NONE, "timer", NULL, NULL};
|
CPU_MASK_NONE, "timer", NULL, NULL};
|
||||||
|
|
||||||
void __init
|
void __init
|
||||||
|
|
|
@ -744,11 +744,11 @@ gpio_init(void)
|
||||||
* in some tests.
|
* in some tests.
|
||||||
*/
|
*/
|
||||||
if (request_irq(TIMER_INTR_VECT, gpio_poll_timer_interrupt,
|
if (request_irq(TIMER_INTR_VECT, gpio_poll_timer_interrupt,
|
||||||
SA_SHIRQ | SA_INTERRUPT,"gpio poll", &alarmlist)) {
|
IRQF_SHARED | IRQF_DISABLED,"gpio poll", &alarmlist)) {
|
||||||
printk("err: timer0 irq for gpio\n");
|
printk("err: timer0 irq for gpio\n");
|
||||||
}
|
}
|
||||||
if (request_irq(GEN_IO_INTR_VECT, gpio_pa_interrupt,
|
if (request_irq(GEN_IO_INTR_VECT, gpio_pa_interrupt,
|
||||||
SA_SHIRQ | SA_INTERRUPT,"gpio PA", &alarmlist)) {
|
IRQF_SHARED | IRQF_DISABLED,"gpio PA", &alarmlist)) {
|
||||||
printk("err: PA irq for gpio\n");
|
printk("err: PA irq for gpio\n");
|
||||||
}
|
}
|
||||||
/* enable the gio and timer irq in global config */
|
/* enable the gio and timer irq in global config */
|
||||||
|
|
|
@ -119,7 +119,7 @@ static void crisv32_arbiter_init(void)
|
||||||
crisv32_arbiter_config(EXT_REGION);
|
crisv32_arbiter_config(EXT_REGION);
|
||||||
crisv32_arbiter_config(INT_REGION);
|
crisv32_arbiter_config(INT_REGION);
|
||||||
|
|
||||||
if (request_irq(MEMARB_INTR_VECT, crisv32_arbiter_irq, SA_INTERRUPT,
|
if (request_irq(MEMARB_INTR_VECT, crisv32_arbiter_irq, IRQF_DISABLED,
|
||||||
"arbiter", NULL))
|
"arbiter", NULL))
|
||||||
printk(KERN_ERR "Couldn't allocate arbiter IRQ\n");
|
printk(KERN_ERR "Couldn't allocate arbiter IRQ\n");
|
||||||
|
|
||||||
|
|
|
@ -981,7 +981,7 @@ void fast_timer_init(void)
|
||||||
proc_register_dynamic(&proc_root, &fasttimer_proc_entry);
|
proc_register_dynamic(&proc_root, &fasttimer_proc_entry);
|
||||||
#endif
|
#endif
|
||||||
#endif /* PROC_FS */
|
#endif /* PROC_FS */
|
||||||
if(request_irq(TIMER_INTR_VECT, timer_trig_interrupt, SA_INTERRUPT,
|
if(request_irq(TIMER_INTR_VECT, timer_trig_interrupt, IRQF_DISABLED,
|
||||||
"fast timer int", NULL))
|
"fast timer int", NULL))
|
||||||
{
|
{
|
||||||
printk("err: timer1 irq\n");
|
printk("err: timer1 irq\n");
|
||||||
|
|
|
@ -268,7 +268,7 @@ void
|
||||||
crisv32_do_IRQ(int irq, int block, struct pt_regs* regs)
|
crisv32_do_IRQ(int irq, int block, struct pt_regs* regs)
|
||||||
{
|
{
|
||||||
/* Interrupts that may not be moved to another CPU and
|
/* Interrupts that may not be moved to another CPU and
|
||||||
* are SA_INTERRUPT may skip blocking. This is currently
|
* are IRQF_DISABLED may skip blocking. This is currently
|
||||||
* only valid for the timer IRQ and the IPI and is used
|
* only valid for the timer IRQ and the IPI and is used
|
||||||
* for the timer interrupt to avoid watchdog starvation.
|
* for the timer interrupt to avoid watchdog starvation.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -62,7 +62,7 @@ static unsigned long irq_regs[NR_CPUS] =
|
||||||
|
|
||||||
static irqreturn_t crisv32_ipi_interrupt(int irq, void *dev_id, struct pt_regs *regs);
|
static irqreturn_t crisv32_ipi_interrupt(int irq, void *dev_id, struct pt_regs *regs);
|
||||||
static int send_ipi(int vector, int wait, cpumask_t cpu_mask);
|
static int send_ipi(int vector, int wait, cpumask_t cpu_mask);
|
||||||
static struct irqaction irq_ipi = { crisv32_ipi_interrupt, SA_INTERRUPT,
|
static struct irqaction irq_ipi = { crisv32_ipi_interrupt, IRQF_DISABLED,
|
||||||
CPU_MASK_NONE, "ipi", NULL, NULL};
|
CPU_MASK_NONE, "ipi", NULL, NULL};
|
||||||
|
|
||||||
extern void cris_mmu_init(void);
|
extern void cris_mmu_init(void);
|
||||||
|
|
|
@ -241,12 +241,16 @@ timer_interrupt(int irq, void *dev_id, struct pt_regs *regs)
|
||||||
return IRQ_HANDLED;
|
return IRQ_HANDLED;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* timer is SA_SHIRQ so drivers can add stuff to the timer irq chain
|
/* timer is IRQF_SHARED so drivers can add stuff to the timer irq chain
|
||||||
* it needs to be SA_INTERRUPT to make the jiffies update work properly
|
* it needs to be IRQF_DISABLED to make the jiffies update work properly
|
||||||
*/
|
*/
|
||||||
|
|
||||||
static struct irqaction irq_timer = { timer_interrupt, SA_SHIRQ | SA_INTERRUPT,
|
static struct irqaction irq_timer = {
|
||||||
CPU_MASK_NONE, "timer", NULL, NULL};
|
.mask = timer_interrupt,
|
||||||
|
.flags = IRQF_SHARED | IRQF_DISABLED,
|
||||||
|
.mask = CPU_MASK_NONE,
|
||||||
|
.name = "timer"
|
||||||
|
};
|
||||||
|
|
||||||
void __init
|
void __init
|
||||||
cris_timer_init(void)
|
cris_timer_init(void)
|
||||||
|
|
|
@ -85,7 +85,7 @@ skip:
|
||||||
/* called by the assembler IRQ entry functions defined in irq.h
|
/* called by the assembler IRQ entry functions defined in irq.h
|
||||||
* to dispatch the interrupts to registred handlers
|
* to dispatch the interrupts to registred handlers
|
||||||
* interrupts are disabled upon entry - depending on if the
|
* interrupts are disabled upon entry - depending on if the
|
||||||
* interrupt was registred with SA_INTERRUPT or not, interrupts
|
* interrupt was registred with IRQF_DISABLED or not, interrupts
|
||||||
* are re-enabled or not.
|
* are re-enabled or not.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
|
@ -141,7 +141,7 @@ __asm__ ( \
|
||||||
* it here, we would not get the multiple_irq at all.
|
* it here, we would not get the multiple_irq at all.
|
||||||
*
|
*
|
||||||
* The non-blocking here is based on the knowledge that the timer interrupt is
|
* The non-blocking here is based on the knowledge that the timer interrupt is
|
||||||
* registred as a fast interrupt (SA_INTERRUPT) so that we _know_ there will not
|
* registred as a fast interrupt (IRQF_DISABLED) so that we _know_ there will not
|
||||||
* be an sti() before the timer irq handler is run to acknowledge the interrupt.
|
* be an sti() before the timer irq handler is run to acknowledge the interrupt.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
|
@ -98,7 +98,7 @@ __asm__ ( \
|
||||||
* if we had BLOCK'edit here, we would not get the multiple_irq at all.
|
* if we had BLOCK'edit here, we would not get the multiple_irq at all.
|
||||||
*
|
*
|
||||||
* The non-blocking here is based on the knowledge that the timer interrupt is
|
* The non-blocking here is based on the knowledge that the timer interrupt is
|
||||||
* registred as a fast interrupt (SA_INTERRUPT) so that we _know_ there will not
|
* registred as a fast interrupt (IRQF_DISABLED) so that we _know_ there will not
|
||||||
* be an sti() before the timer irq handler is run to acknowledge the interrupt.
|
* be an sti() before the timer irq handler is run to acknowledge the interrupt.
|
||||||
*/
|
*/
|
||||||
#define BUILD_TIMER_IRQ(nr, mask) \
|
#define BUILD_TIMER_IRQ(nr, mask) \
|
||||||
|
|
|
@ -74,7 +74,6 @@ typedef unsigned long sigset_t;
|
||||||
* SA_FLAGS values:
|
* SA_FLAGS values:
|
||||||
*
|
*
|
||||||
* SA_ONSTACK indicates that a registered stack_t will be used.
|
* SA_ONSTACK indicates that a registered stack_t will be used.
|
||||||
* SA_INTERRUPT is a no-op, but left due to historical reasons. Use the
|
|
||||||
* SA_RESTART flag to get restarting signals (which were the default long ago)
|
* SA_RESTART flag to get restarting signals (which were the default long ago)
|
||||||
* SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
|
* SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
|
||||||
* SA_RESETHAND clears the handler when the signal is delivered.
|
* SA_RESETHAND clears the handler when the signal is delivered.
|
||||||
|
@ -95,7 +94,6 @@ typedef unsigned long sigset_t;
|
||||||
|
|
||||||
#define SA_NOMASK SA_NODEFER
|
#define SA_NOMASK SA_NODEFER
|
||||||
#define SA_ONESHOT SA_RESETHAND
|
#define SA_ONESHOT SA_RESETHAND
|
||||||
#define SA_INTERRUPT 0x20000000 /* dummy -- ignored */
|
|
||||||
|
|
||||||
#define SA_RESTORER 0x04000000
|
#define SA_RESTORER 0x04000000
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue