[SCSI] sym53c8xx: Work around 53c896 erratum

Prevent DMA transfers from crossing the 16MB limit for early 53c896 chips.

Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
This commit is contained in:
Kai Makisara 2007-10-05 15:54:58 -04:00 committed by James Bottomley
parent 20d2d3afa8
commit 34996acc55

View File

@ -1531,6 +1531,10 @@ static struct Scsi_Host * __devinit sym_attach(struct scsi_host_template *tpnt,
BUG_ON(sym2_transport_template == NULL);
instance->transportt = sym2_transport_template;
/* 53c896 rev 1 errata: DMA may not cross 16MB boundary */
if (pdev->device == PCI_DEVICE_ID_NCR_53C896 && np->revision_id < 2)
instance->dma_boundary = 0xFFFFFF;
spin_unlock_irqrestore(instance->host_lock, flags);
return instance;