aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ata/libata-core.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2011-05-20 17:31:27 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2011-05-20 17:31:27 -0400
commit557eed603159b4e007c57d97fad1333ecebd3c2e (patch)
treeae784d4578da59617f87e36728ed2cafb2be50d6 /drivers/ata/libata-core.c
parentbe84bfcc3ed8f824751ab79349779e50cc98aa01 (diff)
parent8a745f1f39b7a20047a362b67ce9151c07d14440 (diff)
Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev
* 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev: libata: Power off empty ports libata-pmp: add support for Thermaltake BlackX Duet esata drive dock ATA: Don't powerdown Compaq Triflex IDE device on suspend libata: Use Maximum Write Same Length to report discard size limit drivers/ata/acard-ahci.c: fix enum warning pata_at91: SMC settings calculation bugfixes, support for t6z and IORDY libata-sff: prevent irq descriptions for dummy ports pata_cm64x: fix boot crash on parisc
Diffstat (limited to 'drivers/ata/libata-core.c')
-rw-r--r--drivers/ata/libata-core.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
index 76c3c15cb1e6..736bee5dafeb 100644
--- a/drivers/ata/libata-core.c
+++ b/drivers/ata/libata-core.c
@@ -3619,8 +3619,14 @@ int sata_link_scr_lpm(struct ata_link *link, enum ata_lpm_policy policy,
3619 scontrol |= (0x2 << 8); 3619 scontrol |= (0x2 << 8);
3620 break; 3620 break;
3621 case ATA_LPM_MIN_POWER: 3621 case ATA_LPM_MIN_POWER:
3622 /* no restrictions on LPM transitions */ 3622 if (ata_link_nr_enabled(link) > 0)
3623 scontrol &= ~(0x3 << 8); 3623 /* no restrictions on LPM transitions */
3624 scontrol &= ~(0x3 << 8);
3625 else {
3626 /* empty port, power off */
3627 scontrol &= ~0xf;
3628 scontrol |= (0x1 << 2);
3629 }
3624 break; 3630 break;
3625 default: 3631 default:
3626 WARN_ON(1); 3632 WARN_ON(1);