aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ata/libata-core.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/ata/libata-core.c')
-rw-r--r--drivers/ata/libata-core.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
index 2ad4dda6d4a7..9cf46bf8c8d2 100644
--- a/drivers/ata/libata-core.c
+++ b/drivers/ata/libata-core.c
@@ -3985,6 +3985,11 @@ static unsigned int ata_dev_init_params(struct ata_device *dev,
3985 tf.device |= (heads - 1) & 0x0f; /* max head = num. of heads - 1 */ 3985 tf.device |= (heads - 1) & 0x0f; /* max head = num. of heads - 1 */
3986 3986
3987 err_mask = ata_exec_internal(dev, &tf, NULL, DMA_NONE, NULL, 0); 3987 err_mask = ata_exec_internal(dev, &tf, NULL, DMA_NONE, NULL, 0);
3988 /* A clean abort indicates an original or just out of spec drive
3989 and we should continue as we issue the setup based on the
3990 drive reported working geometry */
3991 if (err_mask == AC_ERR_DEV && (tf.feature & ATA_ABORTED))
3992 err_mask = 0;
3988 3993
3989 DPRINTK("EXIT, err_mask=%x\n", err_mask); 3994 DPRINTK("EXIT, err_mask=%x\n", err_mask);
3990 return err_mask; 3995 return err_mask;