libata: kill ATA_HORKAGE_DMA_RW_ONLY
authorTejun Heo <htejun@gmail.com>
Tue, 26 Jun 2007 17:49:38 +0000 (02:49 +0900)
committerJeff Garzik <jeff@garzik.org>
Wed, 27 Jun 2007 06:50:08 +0000 (02:50 -0400)
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>
drivers/ata/libata-core.c
include/linux/libata.h

index 094b51891dbfef9245fddc353166768d7270405b..bfc59a10472826ec1d07555943cb6f7531af0aa1 100644 (file)
@@ -2046,10 +2046,6 @@ int ata_dev_configure(struct ata_device *dev)
                dev->max_sectors = min_t(unsigned int, ATA_MAX_SECTORS_128,
                                         dev->max_sectors);
 
-       /* limit ATAPI DMA to R/W commands only */
-       if (ata_device_blacklisted(dev) & ATA_HORKAGE_DMA_RW_ONLY)
-               dev->horkage |= ATA_HORKAGE_DMA_RW_ONLY;
-
        if (ap->ops->dev_config)
                ap->ops->dev_config(dev);
 
@@ -3780,8 +3776,7 @@ static const struct ata_blacklist_entry ata_device_blacklist [] = {
        { "IOMEGA  ZIP 250       ATAPI", NULL,  ATA_HORKAGE_NODMA }, /* temporary fix */
 
        /* Weird ATAPI devices */
-       { "TORiSAN DVD-ROM DRD-N216", NULL,     ATA_HORKAGE_MAX_SEC_128 |
-                                               ATA_HORKAGE_DMA_RW_ONLY },
+       { "TORiSAN DVD-ROM DRD-N216", NULL,     ATA_HORKAGE_MAX_SEC_128 },
 
        /* Devices we expect to fail diagnostics */
 
index a3380f8086300703dcbe96fdc589c4033e2a547a..620da7be07b7ec2ee420a3768fd4bebe9d5815ef 100644 (file)
@@ -298,7 +298,6 @@ enum {
        ATA_HORKAGE_NODMA       = (1 << 1),     /* DMA problems */
        ATA_HORKAGE_NONCQ       = (1 << 2),     /* Don't use NCQ */
        ATA_HORKAGE_MAX_SEC_128 = (1 << 3),     /* Limit max sects to 128 */
-       ATA_HORKAGE_DMA_RW_ONLY = (1 << 4),     /* ATAPI DMA for RW only */
 };
 
 enum hsm_task_states {