aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi
diff options
context:
space:
mode:
authorJeff Garzik <jgarzik@pretzel.yyz.us>2005-06-18 13:21:24 -0400
committerJeff Garzik <jgarzik@pobox.com>2005-06-18 13:21:24 -0400
commitf9d1fe9630b94007902987c39d19f04dc6256eac (patch)
tree1fbe757adc72469ddbc3c1e4132392164b2e0271 /drivers/scsi
parent54258a8a2e81b11e486068f1cfab9fe4746b8420 (diff)
parent9ee1c939d1cb936b1f98e8d81aeffab57bae46ab (diff)
Merge /spare/repo/linux-2.6/
Diffstat (limited to 'drivers/scsi')
-rw-r--r--drivers/scsi/Kconfig2
-rw-r--r--drivers/scsi/libata-core.c4
-rw-r--r--drivers/scsi/sata_sil.c8
3 files changed, 9 insertions, 5 deletions
diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig
index 1811cb24031..27fec8a5eb5 100644
--- a/drivers/scsi/Kconfig
+++ b/drivers/scsi/Kconfig
@@ -1752,7 +1752,7 @@ config SCSI_NCR53C7xx_FAST
1752 1752
1753config SUN3_SCSI 1753config SUN3_SCSI
1754 tristate "Sun3 NCR5380 SCSI" 1754 tristate "Sun3 NCR5380 SCSI"
1755 depends on SUN3 && SCSI 1755 depends on SUN3 && SCSI && BROKEN
1756 help 1756 help
1757 This option will enable support for the OBIO (onboard io) NCR5380 1757 This option will enable support for the OBIO (onboard io) NCR5380
1758 SCSI controller found in the Sun 3/50 and 3/60, as well as for 1758 SCSI controller found in the Sun 3/50 and 3/60, as well as for
diff --git a/drivers/scsi/libata-core.c b/drivers/scsi/libata-core.c
index 84c4770e5bb..36b401fee1f 100644
--- a/drivers/scsi/libata-core.c
+++ b/drivers/scsi/libata-core.c
@@ -2607,7 +2607,6 @@ static void __atapi_pio_bytes(struct ata_queued_cmd *qc, unsigned int bytes)
2607next_sg: 2607next_sg:
2608 sg = &qc->sg[qc->cursg]; 2608 sg = &qc->sg[qc->cursg];
2609 2609
2610next_page:
2611 page = sg->page; 2610 page = sg->page;
2612 offset = sg->offset + qc->cursg_ofs; 2611 offset = sg->offset + qc->cursg_ofs;
2613 2612
@@ -2615,6 +2614,7 @@ next_page:
2615 page = nth_page(page, (offset >> PAGE_SHIFT)); 2614 page = nth_page(page, (offset >> PAGE_SHIFT));
2616 offset %= PAGE_SIZE; 2615 offset %= PAGE_SIZE;
2617 2616
2617 /* don't overrun current sg */
2618 count = min(sg->length - qc->cursg_ofs, bytes); 2618 count = min(sg->length - qc->cursg_ofs, bytes);
2619 2619
2620 /* don't cross page boundaries */ 2620 /* don't cross page boundaries */
@@ -2639,8 +2639,6 @@ next_page:
2639 kunmap(page); 2639 kunmap(page);
2640 2640
2641 if (bytes) { 2641 if (bytes) {
2642 if (qc->cursg_ofs < sg->length)
2643 goto next_page;
2644 goto next_sg; 2642 goto next_sg;
2645 } 2643 }
2646} 2644}
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)
432 writeb(cls, mmio_base + SIL_FIFO_R0); 432 writeb(cls, mmio_base + SIL_FIFO_R0);
433 writeb(cls, mmio_base + SIL_FIFO_W0); 433 writeb(cls, mmio_base + SIL_FIFO_W0);
434 writeb(cls, mmio_base + SIL_FIFO_R1); 434 writeb(cls, mmio_base + SIL_FIFO_R1);
435 writeb(cls, mmio_base + SIL_FIFO_W2); 435 writeb(cls, mmio_base + SIL_FIFO_W1);
436 if (ent->driver_data == sil_3114) {
437 writeb(cls, mmio_base + SIL_FIFO_R2);
438 writeb(cls, mmio_base + SIL_FIFO_W2);
439 writeb(cls, mmio_base + SIL_FIFO_R3);
440 writeb(cls, mmio_base + SIL_FIFO_W3);
441 }
436 } else 442 } else
437 printk(KERN_WARNING DRV_NAME "(%s): cache line size not set. Driver may not function\n", 443 printk(KERN_WARNING DRV_NAME "(%s): cache line size not set. Driver may not function\n",
438 pci_name(pdev)); 444 pci_name(pdev));