[PATCH 2.6.22.1] libata: Adjust libata to ignore errors after spinup

From: Ryan Power
Date: Sun Jul 15 2007 - 23:34:57 EST


From: Ryan Power <rpower@xxxxxxxxxxxx>

Adjust libata to ignore errors after spinup

This patch is to ignore errors from the spinup attempt if the drive is
in the "standby id" state.

Signed-off-by: Ryan Power <rpower@xxxxxxxxxxxx>

---

Index: drivers.new/ata/libata-core.c
--- drivers/ata/libata-core.c 2007-07-10 12:56:30.000000000 -0600
+++ drivers.new/ata/libata-core.c 2007-07-15 01:58:49.000000000 -0600
@@ -1750,7 +1750,7 @@ int ata_dev_read_id(struct ata_device *d
tf.protocol = ATA_PROT_NODATA;
tf.flags |= ATA_TFLAG_ISADDR | ATA_TFLAG_DEVICE;
err_mask = ata_exec_internal(dev, &tf, NULL, DMA_NONE, NULL, 0);
- if (err_mask) {
+ if (err_mask && id[2] != 0x738c) {
rc = -EIO;
reason = "SPINUP failed";
goto err_out;


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/