From: Jens Axboe Date: Wed, 8 Jun 2005 11:02:25 +0000 (+0200) Subject: [PATCH] sata_sil: Fix FIFO PCI Bus Arbitration kernel oops X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=e1dd23a0012c3929737798fda9fede0e783f4ff3;p=mv-sheeva.git [PATCH] sata_sil: Fix FIFO PCI Bus Arbitration kernel oops Correct this. diff --git a/drivers/scsi/sata_sil.c b/drivers/scsi/sata_sil.c --- diff --git a/drivers/scsi/sata_sil.c b/drivers/scsi/sata_sil.c index 238580d244e..49ed557a4b6 100644 --- a/drivers/scsi/sata_sil.c +++ b/drivers/scsi/sata_sil.c @@ -432,7 +432,13 @@ static int sil_init_one (struct pci_dev *pdev, const struct pci_device_id *ent) writeb(cls, mmio_base + SIL_FIFO_R0); writeb(cls, mmio_base + SIL_FIFO_W0); writeb(cls, mmio_base + SIL_FIFO_R1); - writeb(cls, mmio_base + SIL_FIFO_W2); + writeb(cls, mmio_base + SIL_FIFO_W1); + if (ent->driver_data == sil_3114) { + writeb(cls, mmio_base + SIL_FIFO_R2); + writeb(cls, mmio_base + SIL_FIFO_W2); + writeb(cls, mmio_base + SIL_FIFO_R3); + writeb(cls, mmio_base + SIL_FIFO_W3); + } } else printk(KERN_WARNING DRV_NAME "(%s): cache line size not set. Driver may not function\n", pci_name(pdev));