Resent-Date: Fri, 1 Oct 1999 10:00:59 +0200 (MET DST)
Date: Fri, 1 Oct 1999 10:00:04 +0200 (MET DST)
From: Roman Zippel <zippel@fh-brandenburg.de>
To: Lars Hecking <lhecking@nmrc.ucc.ie>
cc: linux-m68k@phil.uni-sb.de
Subject: Re: 2.3.16
In-Reply-To: <19990930110111.A15651@tehran.nmrc.ucc.ie>
Resent-From: linux-m68k@phil.uni-sb.de

Hi,

On Thu, 30 Sep 1999, Lars Hecking wrote:

> fd: cannot get irq for dma
> 
>  instead of the usual
> 
> FD: probing units
> found fd0

The patch below should fix it.

>  I applied Roman's interrupt patch, but no change. On the contrary, I now
>  get
> 
> amikeyb: keyboard lost sync
> 
>  when changing VC's, although the keyboard seems to work just fine.

That means that the keyboard interrupt is turned off too long, this can
happen since this interrupt handler is installed as a slow interrupt.
This message can also be seen with the original interrupt stuff, when you
play with the sysrq keys and have lots of kernel output, my patch
triggers this only faster. I'll see what I can do.

bye, Roman

--- linux-2.3.16/drivers/block/amiflop.c	1999/09/03 19:45:18	1.1.1.3.12.1
+++ linux-2.3.16/drivers/block/amiflop.c	1999/09/30 22:14:58
@@ -1821,13 +1821,13 @@
 		return -ENOMEM;
 	}
 
-	if (!request_irq(IRQ_AMIGA_DSKBLK, fd_block_done, 0, "floppy_dma", NULL)) {
+	if (request_irq(IRQ_AMIGA_DSKBLK, fd_block_done, 0, "floppy_dma", NULL)) {
 		printk("fd: cannot get irq for dma\n");
 		amiga_chip_free(raw_buf);
 		unregister_blkdev(MAJOR_NR,"fd");
 		return -EBUSY;
 	}
-	if (!request_irq(IRQ_AMIGA_CIAA_TB, ms_isr, 0, "floppy_timer", NULL)) {
+	if (request_irq(IRQ_AMIGA_CIAA_TB, ms_isr, 0, "floppy_timer", NULL)) {
 		printk("fd: cannot get irq for timer\n");
 		free_irq(IRQ_AMIGA_DSKBLK, NULL);
 		amiga_chip_free(raw_buf);

