libata: Don't disable dipm with SET FEATURES
LPM seems to get hung up while disabling DIPM, and after thinking about this a bit, I don't think we really need to manually disable it anyway. Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
This commit is contained in:
parent
b55d1b1814
commit
f5456b63ec
1 changed files with 10 additions and 8 deletions
|
@ -676,10 +676,11 @@ static int ata_dev_set_dipm(struct ata_device *dev, enum link_pm policy)
|
|||
if (rc)
|
||||
return rc;
|
||||
|
||||
/* disable DIPM */
|
||||
if (ata_dev_enabled(dev) && (dev->flags & ATA_DFLAG_DIPM))
|
||||
err_mask = ata_dev_set_feature(dev,
|
||||
SETFEATURES_SATA_DISABLE, SATA_DIPM);
|
||||
/*
|
||||
* we don't have to disable DIPM since IPM flags
|
||||
* disallow transitions to SLUMBER, which effectively
|
||||
* disable DIPM if it does not support PARTIAL
|
||||
*/
|
||||
break;
|
||||
case NOT_AVAILABLE:
|
||||
case MAX_PERFORMANCE:
|
||||
|
@ -689,10 +690,11 @@ static int ata_dev_set_dipm(struct ata_device *dev, enum link_pm policy)
|
|||
if (rc)
|
||||
return rc;
|
||||
|
||||
/* disable DIPM */
|
||||
if (ata_dev_enabled(dev) && (dev->flags & ATA_DFLAG_DIPM))
|
||||
err_mask = ata_dev_set_feature(dev,
|
||||
SETFEATURES_SATA_DISABLE, SATA_DIPM);
|
||||
/*
|
||||
* we don't have to disable DIPM since IPM flags
|
||||
* disallow all transitions which effectively
|
||||
* disable DIPM anyway.
|
||||
*/
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue