aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTejun Heo <htejun@gmail.com>2007-06-26 13:49:38 -0400
committerJeff Garzik <jeff@garzik.org>2007-06-27 02:50:08 -0400
commit40a1d531f6c894b298e784fd2090d87633e4989a (patch)
tree2113cae781e8162de10ff1bd17733d423cef0e32
parentb9a4197e266a40d5d1d16c9fb2a852cf10743afe (diff)
libata: kill ATA_HORKAGE_DMA_RW_ONLY
ATA_HORKAGE_DMA_RW_ONLY for TORiSAN is verified to be subset of using DMA for ATAPI commands which aren't aligned to 16 bytes. As libata now doesn't use DMA for unaligned ATAPI commands, the horkage is redundant. Kill it. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
-rw-r--r--drivers/ata/libata-core.c7
-rw-r--r--include/linux/libata.h1
2 files changed, 1 insertions, 7 deletions
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
index 094b51891dbf..bfc59a104728 100644
--- a/drivers/ata/libata-core.c
+++ b/drivers/ata/libata-core.c
@@ -2046,10 +2046,6 @@ int ata_dev_configure(struct ata_device *dev)
2046 dev->max_sectors = min_t(unsigned int, ATA_MAX_SECTORS_128, 2046 dev->max_sectors = min_t(unsigned int, ATA_MAX_SECTORS_128,
2047 dev->max_sectors); 2047 dev->max_sectors);
2048 2048
2049 /* limit ATAPI DMA to R/W commands only */
2050 if (ata_device_blacklisted(dev) & ATA_HORKAGE_DMA_RW_ONLY)
2051 dev->horkage |= ATA_HORKAGE_DMA_RW_ONLY;
2052
2053 if (ap->ops->dev_config) 2049 if (ap->ops->dev_config)
2054 ap->ops->dev_config(dev); 2050 ap->ops->dev_config(dev);
2055 2051
@@ -3780,8 +3776,7 @@ static const struct ata_blacklist_entry ata_device_blacklist [] = {
3780 { "IOMEGA ZIP 250 ATAPI", NULL, ATA_HORKAGE_NODMA }, /* temporary fix */ 3776 { "IOMEGA ZIP 250 ATAPI", NULL, ATA_HORKAGE_NODMA }, /* temporary fix */
3781 3777
3782 /* Weird ATAPI devices */ 3778 /* Weird ATAPI devices */
3783 { "TORiSAN DVD-ROM DRD-N216", NULL, ATA_HORKAGE_MAX_SEC_128 | 3779 { "TORiSAN DVD-ROM DRD-N216", NULL, ATA_HORKAGE_MAX_SEC_128 },
3784 ATA_HORKAGE_DMA_RW_ONLY },
3785 3780
3786 /* Devices we expect to fail diagnostics */ 3781 /* Devices we expect to fail diagnostics */
3787 3782
diff --git a/include/linux/libata.h b/include/linux/libata.h
index a3380f808630..620da7be07b7 100644
--- a/include/linux/libata.h
+++ b/include/linux/libata.h
@@ -298,7 +298,6 @@ enum {
298 ATA_HORKAGE_NODMA = (1 << 1), /* DMA problems */ 298 ATA_HORKAGE_NODMA = (1 << 1), /* DMA problems */
299 ATA_HORKAGE_NONCQ = (1 << 2), /* Don't use NCQ */ 299 ATA_HORKAGE_NONCQ = (1 << 2), /* Don't use NCQ */
300 ATA_HORKAGE_MAX_SEC_128 = (1 << 3), /* Limit max sects to 128 */ 300 ATA_HORKAGE_MAX_SEC_128 = (1 << 3), /* Limit max sects to 128 */
301 ATA_HORKAGE_DMA_RW_ONLY = (1 << 4), /* ATAPI DMA for RW only */
302}; 301};
303 302
304enum hsm_task_states { 303enum hsm_task_states {