From e1dd23a0012c3929737798fda9fede0e783f4ff3 Mon Sep 17 00:00:00 2001 From: Jens Axboe Date: Wed, 8 Jun 2005 13:02:25 +0200 Subject: [PATCH] [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 --- drivers/scsi/sata_sil.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/scsi/sata_sil.c b/drivers/scsi/sata_sil.c index 238580d244..49ed557a4b 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)); -- 2.39.5