diff options
Diffstat (limited to 'drivers/ata/libata-eh.c')
-rw-r--r-- | drivers/ata/libata-eh.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/drivers/ata/libata-eh.c b/drivers/ata/libata-eh.c index c15572d22a3b..aafe82bf5e2e 100644 --- a/drivers/ata/libata-eh.c +++ b/drivers/ata/libata-eh.c | |||
@@ -1176,6 +1176,27 @@ void ata_eh_qc_retry(struct ata_queued_cmd *qc) | |||
1176 | } | 1176 | } |
1177 | 1177 | ||
1178 | /** | 1178 | /** |
1179 | * ata_dev_disable - disable ATA device | ||
1180 | * @dev: ATA device to disable | ||
1181 | * | ||
1182 | * Disable @dev. | ||
1183 | * | ||
1184 | * Locking: | ||
1185 | * EH context. | ||
1186 | */ | ||
1187 | void ata_dev_disable(struct ata_device *dev) | ||
1188 | { | ||
1189 | if (!ata_dev_enabled(dev)) | ||
1190 | return; | ||
1191 | |||
1192 | if (ata_msg_drv(dev->link->ap)) | ||
1193 | ata_dev_printk(dev, KERN_WARNING, "disabled\n"); | ||
1194 | ata_acpi_on_disable(dev); | ||
1195 | ata_down_xfermask_limit(dev, ATA_DNXFER_FORCE_PIO0 | ATA_DNXFER_QUIET); | ||
1196 | dev->class++; | ||
1197 | } | ||
1198 | |||
1199 | /** | ||
1179 | * ata_eh_detach_dev - detach ATA device | 1200 | * ata_eh_detach_dev - detach ATA device |
1180 | * @dev: ATA device to detach | 1201 | * @dev: ATA device to detach |
1181 | * | 1202 | * |