diff options
Diffstat (limited to 'drivers/ata')
-rw-r--r-- | drivers/ata/ahci.c | 4 | ||||
-rw-r--r-- | drivers/ata/libata-sff.c | 6 |
2 files changed, 2 insertions, 8 deletions
diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c index 8cace9aa9c03..97f83fb2ee2e 100644 --- a/drivers/ata/ahci.c +++ b/drivers/ata/ahci.c | |||
@@ -1267,9 +1267,7 @@ static int ahci_check_ready(struct ata_link *link) | |||
1267 | void __iomem *port_mmio = ahci_port_base(link->ap); | 1267 | void __iomem *port_mmio = ahci_port_base(link->ap); |
1268 | u8 status = readl(port_mmio + PORT_TFDATA) & 0xFF; | 1268 | u8 status = readl(port_mmio + PORT_TFDATA) & 0xFF; |
1269 | 1269 | ||
1270 | if (!(status & ATA_BUSY)) | 1270 | return ata_check_ready(status); |
1271 | return 1; | ||
1272 | return 0; | ||
1273 | } | 1271 | } |
1274 | 1272 | ||
1275 | static int ahci_softreset(struct ata_link *link, unsigned int *class, | 1273 | static int ahci_softreset(struct ata_link *link, unsigned int *class, |
diff --git a/drivers/ata/libata-sff.c b/drivers/ata/libata-sff.c index 2ec65a8fda79..3c2d2289f85e 100644 --- a/drivers/ata/libata-sff.c +++ b/drivers/ata/libata-sff.c | |||
@@ -314,11 +314,7 @@ static int ata_sff_check_ready(struct ata_link *link) | |||
314 | { | 314 | { |
315 | u8 status = link->ap->ops->sff_check_status(link->ap); | 315 | u8 status = link->ap->ops->sff_check_status(link->ap); |
316 | 316 | ||
317 | if (!(status & ATA_BUSY)) | 317 | return ata_check_ready(status); |
318 | return 1; | ||
319 | if (status == 0xff) | ||
320 | return -ENODEV; | ||
321 | return 0; | ||
322 | } | 318 | } |
323 | 319 | ||
324 | /** | 320 | /** |