02_sil24_remove-irq-disable-on-spurious-intr.patch If interrupt occurs on a disabled port, the driver used to mask the port's interrupt, but we don't know if such action is necessary yet and that's not what other drives do. So, just do nothing and tell IRQ subsystem that it's not our interrupt.
Signed-off-by: Tejun Heo <[EMAIL PROTECTED]> sata_sil24.c | 15 +++++---------- 1 files changed, 5 insertions(+), 10 deletions(-) Index: work/drivers/scsi/sata_sil24.c =================================================================== --- work.orig/drivers/scsi/sata_sil24.c 2005-08-17 13:06:06.000000000 +0900 +++ work/drivers/scsi/sata_sil24.c 2005-08-17 13:06:07.000000000 +0900 @@ -535,17 +535,12 @@ static irqreturn_t sil24_interrupt(int i for (i = 0; i < host_set->n_ports; i++) if (status & (1 << i)) { struct ata_port *ap = host_set->ports[i]; - if (ap && !(ap->flags & ATA_FLAG_PORT_DISABLED)) + if (ap && !(ap->flags & ATA_FLAG_PORT_DISABLED)) { sil24_host_intr(host_set->ports[i]); - else { - u32 tmp; - printk(KERN_WARNING DRV_NAME - ": spurious interrupt from port %d\n", i); - tmp = readl(hpriv->host_base + HOST_CTRL); - tmp &= ~(1 << i); - writel(tmp, hpriv->host_base + HOST_CTRL); - } - handled++; + handled++; + } else + printk(KERN_ERR DRV_NAME + ": interrupt from disabled port %d\n", i); } spin_unlock(&host_set->lock); - To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html