diff options
Diffstat (limited to 'drivers/ata')
-rw-r--r-- | drivers/ata/libata-core.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c index 4dc6befa5760..24b3bd63621f 100644 --- a/drivers/ata/libata-core.c +++ b/drivers/ata/libata-core.c | |||
@@ -2304,6 +2304,10 @@ int ata_dev_configure(struct ata_device *dev) | |||
2304 | dev->max_sectors = ATA_MAX_SECTORS; | 2304 | dev->max_sectors = ATA_MAX_SECTORS; |
2305 | } | 2305 | } |
2306 | 2306 | ||
2307 | if ((dev->class == ATA_DEV_ATAPI) && | ||
2308 | (atapi_command_packet_set(id) == TYPE_TAPE)) | ||
2309 | dev->max_sectors = ATA_MAX_SECTORS_TAPE; | ||
2310 | |||
2307 | if (dev->horkage & ATA_HORKAGE_MAX_SEC_128) | 2311 | if (dev->horkage & ATA_HORKAGE_MAX_SEC_128) |
2308 | dev->max_sectors = min_t(unsigned int, ATA_MAX_SECTORS_128, | 2312 | dev->max_sectors = min_t(unsigned int, ATA_MAX_SECTORS_128, |
2309 | dev->max_sectors); | 2313 | dev->max_sectors); |