diff options
author | Finn Thain <fthain@telegraphics.com.au> | 2007-05-01 16:32:58 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-05-04 20:59:07 -0400 |
commit | 217f6710c275118af1008bb1447d244be52d2dc3 (patch) | |
tree | afcc692e42ea227090384c6973ed2c97a8636040 /arch/m68k/mac/oss.c | |
parent | cd713ddc93bf2f612783aea8eff6d0df6107765e (diff) |
m68k: Mac IRQ cleanup
There are no slow IRQs on Macs since Roman Zippel's IRQ reorganisation that
went into 2.6.16 and removed mac_irq_list[] and the do_mac_irq_list()
dispatcher. (They were implemented in do_mac_irq_list() by lowering the IPL.)
Hence there's no more use for mutual exclusion in the Mac interrupt
dispatchers. Remove it.
Signed-off-by: Finn Thain <fthain@telegraphics.com.au>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/m68k/mac/oss.c')
-rw-r--r-- | arch/m68k/mac/oss.c | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/arch/m68k/mac/oss.c b/arch/m68k/mac/oss.c index 6399883ae742..d7be16917efd 100644 --- a/arch/m68k/mac/oss.c +++ b/arch/m68k/mac/oss.c | |||
@@ -112,10 +112,8 @@ irqreturn_t oss_irq(int irq, void *dev_id) | |||
112 | oss->irq_pending &= ~OSS_IP_SOUND; | 112 | oss->irq_pending &= ~OSS_IP_SOUND; |
113 | /* FIXME: call sound handler */ | 113 | /* FIXME: call sound handler */ |
114 | } else if (events & OSS_IP_SCSI) { | 114 | } else if (events & OSS_IP_SCSI) { |
115 | oss->irq_level[OSS_SCSI] = OSS_IRQLEV_DISABLED; | ||
116 | oss->irq_pending &= ~OSS_IP_SCSI; | 115 | oss->irq_pending &= ~OSS_IP_SCSI; |
117 | m68k_handle_int(IRQ_MAC_SCSI); | 116 | m68k_handle_int(IRQ_MAC_SCSI); |
118 | oss->irq_level[OSS_SCSI] = OSS_IRQLEV_SCSI; | ||
119 | } else { | 117 | } else { |
120 | /* FIXME: error check here? */ | 118 | /* FIXME: error check here? */ |
121 | } | 119 | } |
@@ -149,10 +147,8 @@ irqreturn_t oss_nubus_irq(int irq, void *dev_id) | |||
149 | --i; | 147 | --i; |
150 | irq_bit >>= 1; | 148 | irq_bit >>= 1; |
151 | if (events & irq_bit) { | 149 | if (events & irq_bit) { |
152 | oss->irq_level[i] = OSS_IRQLEV_DISABLED; | ||
153 | oss->irq_pending &= ~irq_bit; | 150 | oss->irq_pending &= ~irq_bit; |
154 | m68k_handle_int(NUBUS_SOURCE_BASE + i); | 151 | m68k_handle_int(NUBUS_SOURCE_BASE + i); |
155 | oss->irq_level[i] = OSS_IRQLEV_NUBUS; | ||
156 | } | 152 | } |
157 | } while(events & (irq_bit - 1)); | 153 | } while(events & (irq_bit - 1)); |
158 | return IRQ_HANDLED; | 154 | return IRQ_HANDLED; |