diff options
-rw-r--r-- | arch/arm/mach-sa1100/neponset.c | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/arch/arm/mach-sa1100/neponset.c b/arch/arm/mach-sa1100/neponset.c index abbe859b265d..6a14d3760ccd 100644 --- a/arch/arm/mach-sa1100/neponset.c +++ b/arch/arm/mach-sa1100/neponset.c | |||
@@ -138,6 +138,20 @@ static struct sa1100_port_fns neponset_port_fns __devinitdata = { | |||
138 | .get_mctrl = neponset_get_mctrl, | 138 | .get_mctrl = neponset_get_mctrl, |
139 | }; | 139 | }; |
140 | 140 | ||
141 | /* | ||
142 | * Yes, we really do not have any kind of masking or unmasking | ||
143 | */ | ||
144 | static void nochip_noop(struct irq_data *irq) | ||
145 | { | ||
146 | } | ||
147 | |||
148 | static struct irq_chip nochip = { | ||
149 | .name = "neponset", | ||
150 | .irq_ack = nochip_noop, | ||
151 | .irq_mask = nochip_noop, | ||
152 | .irq_unmask = nochip_noop, | ||
153 | }; | ||
154 | |||
141 | static int __devinit neponset_probe(struct platform_device *dev) | 155 | static int __devinit neponset_probe(struct platform_device *dev) |
142 | { | 156 | { |
143 | sa1100_register_uart_fns(&neponset_port_fns); | 157 | sa1100_register_uart_fns(&neponset_port_fns); |
@@ -161,10 +175,13 @@ static int __devinit neponset_probe(struct platform_device *dev) | |||
161 | * Setup other Neponset IRQs. SA1111 will be done by the | 175 | * Setup other Neponset IRQs. SA1111 will be done by the |
162 | * generic SA1111 code. | 176 | * generic SA1111 code. |
163 | */ | 177 | */ |
164 | irq_set_handler(IRQ_NEPONSET_SMC9196, handle_simple_irq); | 178 | irq_set_chip_and_handler(IRQ_NEPONSET_SMC9196, &nochip, |
179 | handle_simple_irq); | ||
165 | set_irq_flags(IRQ_NEPONSET_SMC9196, IRQF_VALID | IRQF_PROBE); | 180 | set_irq_flags(IRQ_NEPONSET_SMC9196, IRQF_VALID | IRQF_PROBE); |
166 | irq_set_handler(IRQ_NEPONSET_USAR, handle_simple_irq); | 181 | irq_set_chip_and_handler(IRQ_NEPONSET_USAR, &nochip, |
182 | handle_simple_irq); | ||
167 | set_irq_flags(IRQ_NEPONSET_USAR, IRQF_VALID | IRQF_PROBE); | 183 | set_irq_flags(IRQ_NEPONSET_USAR, IRQF_VALID | IRQF_PROBE); |
184 | irq_set_chip(IRQ_NEPONSET_SA1111, &nochip); | ||
168 | 185 | ||
169 | /* | 186 | /* |
170 | * Disable GPIO 0/1 drivers so the buttons work on the module. | 187 | * Disable GPIO 0/1 drivers so the buttons work on the module. |