diff options
Diffstat (limited to 'firmware')
-rw-r--r-- | firmware/drivers/ata.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/firmware/drivers/ata.c b/firmware/drivers/ata.c index 2116855233..39c305c3df 100644 --- a/firmware/drivers/ata.c +++ b/firmware/drivers/ata.c | |||
@@ -801,6 +801,11 @@ bool ata_disk_is_active(void) | |||
801 | 801 | ||
802 | void ata_sleepnow(void) | 802 | void ata_sleepnow(void) |
803 | { | 803 | { |
804 | /* Don't enter sleep if the device doesn't support | ||
805 | power management. */ | ||
806 | if (!(identify_info[82] & (1 << 3))) | ||
807 | return; | ||
808 | |||
804 | if (ata_state >= ATA_SPINUP) { | 809 | if (ata_state >= ATA_SPINUP) { |
805 | mutex_lock(&ata_mtx); | 810 | mutex_lock(&ata_mtx); |
806 | if (ata_state == ATA_ON) { | 811 | if (ata_state == ATA_ON) { |