diff options
Diffstat (limited to 'arch/m68k/amiga/cia.c')
-rw-r--r-- | arch/m68k/amiga/cia.c | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/arch/m68k/amiga/cia.c b/arch/m68k/amiga/cia.c index ecd0f7ca6f0e..637ef53112b6 100644 --- a/arch/m68k/amiga/cia.c +++ b/arch/m68k/amiga/cia.c | |||
@@ -121,11 +121,10 @@ static void cia_disable_irq(unsigned int irq) | |||
121 | cia_able_irq(&ciaa_base, 1 << (irq - IRQ_AMIGA_CIAA)); | 121 | cia_able_irq(&ciaa_base, 1 << (irq - IRQ_AMIGA_CIAA)); |
122 | } | 122 | } |
123 | 123 | ||
124 | static struct irq_controller cia_irq_controller = { | 124 | static struct irq_chip cia_irq_chip = { |
125 | .name = "cia", | 125 | .name = "cia", |
126 | .lock = __SPIN_LOCK_UNLOCKED(cia_irq_controller.lock), | 126 | .irq_enable = cia_enable_irq, |
127 | .enable = cia_enable_irq, | 127 | .irq_disable = cia_disable_irq, |
128 | .disable = cia_disable_irq, | ||
129 | }; | 128 | }; |
130 | 129 | ||
131 | /* | 130 | /* |
@@ -158,23 +157,22 @@ static void auto_disable_irq(unsigned int irq) | |||
158 | } | 157 | } |
159 | } | 158 | } |
160 | 159 | ||
161 | static struct irq_controller auto_irq_controller = { | 160 | static struct irq_chip auto_irq_chip = { |
162 | .name = "auto", | 161 | .name = "auto", |
163 | .lock = __SPIN_LOCK_UNLOCKED(auto_irq_controller.lock), | 162 | .irq_enable = auto_enable_irq, |
164 | .enable = auto_enable_irq, | 163 | .irq_disable = auto_disable_irq, |
165 | .disable = auto_disable_irq, | ||
166 | }; | 164 | }; |
167 | 165 | ||
168 | void __init cia_init_IRQ(struct ciabase *base) | 166 | void __init cia_init_IRQ(struct ciabase *base) |
169 | { | 167 | { |
170 | m68k_setup_irq_controller(&cia_irq_controller, base->cia_irq, CIA_IRQS); | 168 | m68k_setup_irq_chip(&cia_irq_chip, base->cia_irq, CIA_IRQS); |
171 | 169 | ||
172 | /* clear any pending interrupt and turn off all interrupts */ | 170 | /* clear any pending interrupt and turn off all interrupts */ |
173 | cia_set_irq(base, CIA_ICR_ALL); | 171 | cia_set_irq(base, CIA_ICR_ALL); |
174 | cia_able_irq(base, CIA_ICR_ALL); | 172 | cia_able_irq(base, CIA_ICR_ALL); |
175 | 173 | ||
176 | /* override auto int and install CIA handler */ | 174 | /* override auto int and install CIA handler */ |
177 | m68k_setup_irq_controller(&auto_irq_controller, base->handler_irq, 1); | 175 | m68k_setup_irq_chip(&auto_irq_chip, base->handler_irq, 1); |
178 | m68k_irq_startup(base->handler_irq); | 176 | m68k_irq_startup(base->handler_irq); |
179 | if (request_irq(base->handler_irq, cia_handler, IRQF_SHARED, | 177 | if (request_irq(base->handler_irq, cia_handler, IRQF_SHARED, |
180 | base->name, base)) | 178 | base->name, base)) |