linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] M68k IRQ API updates
@ 2003-07-26 14:51 Geert Uytterhoeven
  0 siblings, 0 replies; only message in thread
From: Geert Uytterhoeven @ 2003-07-26 14:51 UTC (permalink / raw)
  To: Linus Torvalds, Alan Cox; +Cc: Linux Kernel Development, Geert Uytterhoeven

M68k: A few missing updates to the new irq API:
  - Q40/Q60 keyboard
  - Q40/Q60 floppy
  - Sun-3x floppy

--- linux-2.6.x/drivers/input/serio/q40kbd.c	Sun Feb 16 12:16:24 2003
+++ linux-m68k-2.6.x/drivers/input/serio/q40kbd.c	Sun Jun  8 13:30:46 2003
@@ -66,12 +66,14 @@
 	.close	= q40kbd_close,
 };
 
-static void q40kbd_interrupt(int irq, void *dev_id, struct pt_regs *regs)
+static irqreturn_t q40kbd_interrupt(int irq, void *dev_id,
+				    struct pt_regs *regs)
 {
 	if (Q40_IRQ_KEYB_MASK & master_inb(INTERRUPT_REG))
 		serio_interrupt(&q40kbd_port, master_inb(KEYCODE_REG), 0, regs);
 
 	master_outb(-1, KEYBOARD_UNLOCK_REG);
+	return IRQ_HANDLED;
 }
 
 static int __init q40kbd_init(void)
--- linux-2.6.x/include/asm-m68k/floppy.h	Sun Jun  8 10:15:21 2003
+++ linux-m68k-2.6.x/include/asm-m68k/floppy.h	Sun Jun  8 13:28:44 2003
@@ -17,7 +17,8 @@
 
 #include <linux/vmalloc.h>
 
-asmlinkage void floppy_hardint(int irq, void *dev_id, struct pt_regs * regs);
+asmlinkage irqreturn_t floppy_hardint(int irq, void *dev_id,
+				      struct pt_regs *regs);
 
 /* constants... */
 
@@ -183,7 +184,8 @@
 
 /* this is the only truly Q40 specific function */
 
-asmlinkage void floppy_hardint(int irq, void *dev_id, struct pt_regs * regs)
+asmlinkage irqreturn_t floppy_hardint(int irq, void *dev_id,
+				      struct pt_regs *regs)
 {
 	register unsigned char st;
 
@@ -197,7 +199,7 @@
 #endif
 	if(!doing_pdma) {
 		floppy_interrupt(irq, dev_id, regs);
-		return;
+		return IRQ_HANDLED;
 	}
 
 #ifdef TRACE_FLPY_INT
@@ -232,7 +234,7 @@
 	calls++;
 #endif
 	if(st == 0x20)
-		return;
+		return IRQ_HANDLED;
 	if(!(st & 0x20)) {
 		virtual_dma_residue += virtual_dma_count;
 		virtual_dma_count=0;
@@ -245,12 +247,13 @@
 #endif
 		doing_pdma = 0;
 		floppy_interrupt(irq, dev_id, regs);
-		return;
+		return IRQ_HANDLED;
 	}
 #ifdef TRACE_FLPY_INT
 	if(!virtual_dma_count)
 		dma_wait++;
 #endif
+	return IRQ_HANDLED;
 }
 
 #define EXTRA_FLOPPY_PARAMS
--- linux-2.6.x/include/asm-m68k/sun3xflop.h	Sun Apr  7 10:56:27 2002
+++ linux-m68k-2.6.x/include/asm-m68k/sun3xflop.h	Sun Jun  8 13:27:25 2003
@@ -113,7 +113,8 @@
 }
 
 
-asmlinkage void sun3xflop_hardint(int irq, void *dev_id, struct pt_regs * regs)
+asmlinkage irqreturn_t sun3xflop_hardint(int irq, void *dev_id,
+					 struct pt_regs * regs)
 {
 	register unsigned char st;
 
@@ -127,7 +128,7 @@
 #endif
 	if(!doing_pdma) {
 		floppy_interrupt(irq, dev_id, regs);
-		return;
+		return IRQ_HANDLED;
 	}
 
 //	printk("doing pdma\n");// st %x\n", sun_fdc->status_82072);
@@ -151,7 +152,7 @@
 			if((st & 0x80) == 0) {
 				virtual_dma_count = lcount;
 				virtual_dma_addr = lptr;
-				return;
+				return IRQ_HANDLED;
 			}
 
 			if((st & 0x20) == 0)
@@ -176,7 +177,7 @@
 #endif
 //	printk("st=%02x\n", st);
 	if(st == 0x20)
-		return;
+		return IRQ_HANDLED;
 	if(!(st & 0x20)) {
 		virtual_dma_residue += virtual_dma_count;
 		virtual_dma_count=0;
@@ -191,7 +192,7 @@
 #endif
 
 		floppy_interrupt(irq, dev_id, regs);
-		return;
+		return IRQ_HANDLED;
 	}
 
 	
@@ -199,6 +200,7 @@
 	if(!virtual_dma_count)
 		dma_wait++;
 #endif
+	return IRQ_HANDLED;
 }
 
 static int sun3xflop_request_irq(void)

Gr{oetje,eeting}s,

						Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
							    -- Linus Torvalds

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2003-07-26 14:41 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-07-26 14:51 [PATCH] M68k IRQ API updates Geert Uytterhoeven

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).