diff options
Diffstat (limited to 'arch/sparc/kernel/irq.c')
-rw-r--r-- | arch/sparc/kernel/irq.c | 27 |
1 files changed, 24 insertions, 3 deletions
diff --git a/arch/sparc/kernel/irq.c b/arch/sparc/kernel/irq.c index f257a67bcf93..75b2240ad0f9 100644 --- a/arch/sparc/kernel/irq.c +++ b/arch/sparc/kernel/irq.c | |||
@@ -47,6 +47,8 @@ | |||
47 | #include <asm/cacheflush.h> | 47 | #include <asm/cacheflush.h> |
48 | #include <asm/irq_regs.h> | 48 | #include <asm/irq_regs.h> |
49 | 49 | ||
50 | #include "irq.h" | ||
51 | |||
50 | #ifdef CONFIG_SMP | 52 | #ifdef CONFIG_SMP |
51 | #define SMP_NOP2 "nop; nop;\n\t" | 53 | #define SMP_NOP2 "nop; nop;\n\t" |
52 | #define SMP_NOP3 "nop; nop; nop;\n\t" | 54 | #define SMP_NOP3 "nop; nop; nop;\n\t" |
@@ -268,7 +270,7 @@ void free_irq(unsigned int irq, void *dev_id) | |||
268 | kfree(action); | 270 | kfree(action); |
269 | 271 | ||
270 | if (!sparc_irq[cpu_irq].action) | 272 | if (!sparc_irq[cpu_irq].action) |
271 | disable_irq(irq); | 273 | __disable_irq(irq); |
272 | 274 | ||
273 | out_unlock: | 275 | out_unlock: |
274 | spin_unlock_irqrestore(&irq_action_lock, flags); | 276 | spin_unlock_irqrestore(&irq_action_lock, flags); |
@@ -464,7 +466,7 @@ int request_fast_irq(unsigned int irq, | |||
464 | 466 | ||
465 | sparc_irq[cpu_irq].action = action; | 467 | sparc_irq[cpu_irq].action = action; |
466 | 468 | ||
467 | enable_irq(irq); | 469 | __enable_irq(irq); |
468 | 470 | ||
469 | ret = 0; | 471 | ret = 0; |
470 | out_unlock: | 472 | out_unlock: |
@@ -544,7 +546,7 @@ int request_irq(unsigned int irq, | |||
544 | 546 | ||
545 | *actionp = action; | 547 | *actionp = action; |
546 | 548 | ||
547 | enable_irq(irq); | 549 | __enable_irq(irq); |
548 | 550 | ||
549 | ret = 0; | 551 | ret = 0; |
550 | out_unlock: | 552 | out_unlock: |
@@ -555,6 +557,25 @@ out: | |||
555 | 557 | ||
556 | EXPORT_SYMBOL(request_irq); | 558 | EXPORT_SYMBOL(request_irq); |
557 | 559 | ||
560 | void disable_irq_nosync(unsigned int irq) | ||
561 | { | ||
562 | return __disable_irq(irq); | ||
563 | } | ||
564 | EXPORT_SYMBOL(disable_irq_nosync); | ||
565 | |||
566 | void disable_irq(unsigned int irq) | ||
567 | { | ||
568 | return __disable_irq(irq); | ||
569 | } | ||
570 | EXPORT_SYMBOL(disable_irq); | ||
571 | |||
572 | void enable_irq(unsigned int irq) | ||
573 | { | ||
574 | return __enable_irq(irq); | ||
575 | } | ||
576 | |||
577 | EXPORT_SYMBOL(enable_irq); | ||
578 | |||
558 | /* We really don't need these at all on the Sparc. We only have | 579 | /* We really don't need these at all on the Sparc. We only have |
559 | * stubs here because they are exported to modules. | 580 | * stubs here because they are exported to modules. |
560 | */ | 581 | */ |