diff options
Diffstat (limited to 'drivers/ata')
-rw-r--r-- | drivers/ata/libata-core.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c index e07142b4bb54..84f6f8575966 100644 --- a/drivers/ata/libata-core.c +++ b/drivers/ata/libata-core.c | |||
@@ -1784,6 +1784,9 @@ int ata_dev_configure(struct ata_device *dev) | |||
1784 | dev->max_sectors = ATA_MAX_SECTORS; | 1784 | dev->max_sectors = ATA_MAX_SECTORS; |
1785 | } | 1785 | } |
1786 | 1786 | ||
1787 | if (ata_device_blacklisted(dev) & ATA_HORKAGE_MAX_SEC_128) | ||
1788 | dev->max_sectors = min(ATA_MAX_SECTORS_128, dev->max_sectors); | ||
1789 | |||
1787 | if (ap->ops->dev_config) | 1790 | if (ap->ops->dev_config) |
1788 | ap->ops->dev_config(ap, dev); | 1791 | ap->ops->dev_config(ap, dev); |
1789 | 1792 | ||
@@ -3352,6 +3355,9 @@ static const struct ata_blacklist_entry ata_device_blacklist [] = { | |||
3352 | { "_NEC DV5800A", NULL, ATA_HORKAGE_NODMA }, | 3355 | { "_NEC DV5800A", NULL, ATA_HORKAGE_NODMA }, |
3353 | { "SAMSUNG CD-ROM SN-124","N001", ATA_HORKAGE_NODMA }, | 3356 | { "SAMSUNG CD-ROM SN-124","N001", ATA_HORKAGE_NODMA }, |
3354 | 3357 | ||
3358 | /* Weird ATAPI devices */ | ||
3359 | { "TORiSAN DVD-ROM DRD-N216", NULL, ATA_HORKAGE_MAX_SEC_128 }, | ||
3360 | |||
3355 | /* Devices we expect to fail diagnostics */ | 3361 | /* Devices we expect to fail diagnostics */ |
3356 | 3362 | ||
3357 | /* Devices where NCQ should be avoided */ | 3363 | /* Devices where NCQ should be avoided */ |