]> err.no Git - linux-2.6/commit
[libata] sata_mv: clean up DMA boundary issues, turn on 64-bit DMA
authorJeff Garzik <jeff@garzik.org>
Mon, 26 Feb 2007 06:26:06 +0000 (01:26 -0500)
committerJeff Garzik <jeff@garzik.org>
Sat, 28 Apr 2007 18:15:55 +0000 (14:15 -0400)
commitd88184fb2348a50f7c34f5d49a901c875b2e0114
tree83993038a7525f6b61aea8f76ea38ddb96325a2f
parent43727fbc753c63f9d2764c56467303698cc52c14
[libata] sata_mv: clean up DMA boundary issues, turn on 64-bit DMA

The chips covered by sata_mv have a 32-bit DMA boundary they must not
cross, not a 64K boundary.  We are merely limited to a 64K maximum
segment size.  Therefore, the DMA scatter/gather table fill code can be
greatly simplified, and we need not cut in half the S/G table size as
reported to the SCSI layer.

Also, the driver forget to turn on 64-bit DMA at the PCI layer.  All
other data structures (both hardware and software) have been prepped for
64-bit PCI DMA.  It was simply never turned on.  <fingers crossed> let's
see if it still works...

Signed-off-by: Jeff Garzik <jeff@garzik.org>
drivers/ata/sata_mv.c