aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-sa1100/neponset.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-sa1100/neponset.c')
-rw-r--r--arch/arm/mach-sa1100/neponset.c21
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 */
144static void nochip_noop(struct irq_data *irq)
145{
146}
147
148static struct irq_chip nochip = {
149 .name = "neponset",
150 .irq_ack = nochip_noop,
151 .irq_mask = nochip_noop,
152 .irq_unmask = nochip_noop,
153};
154
141static int __devinit neponset_probe(struct platform_device *dev) 155static 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.