freebsd-dev/sys/dev/ata
Alexander Motin 4c10f2e605 Add experimental support for SATA interface power management.
Feature is controlled by hint.ata.X.pm_level tunable:
 0 - PM disabled, old behaviour, default.
 1 - device is allowed to initiate PM state change, host is passive.
 2 - host initiates PARTIAL state transition every time port is idle.
 3 - host initiates SLUMBER state transition every time port is idle.

PARTIAL state has up to 100us (50us for me) wakeup latency, but for my
ICH8M saves 0.5W of power per drive. SLUMBER state has up to 10ms (3.5ms
for me) wakeup latency, but saves 0.8W of power.

Modes 2 and 3 are implemented only for AHCI driver now.

Interface power management is incompatible with device presence detection
(host receives no signal from drive, so unable to monitor it), so later is
disabled when PM is used.
2009-04-29 21:17:18 +00:00
..
chipsets Add experimental support for SATA interface power management. 2009-04-29 21:17:18 +00:00
ata_if.m
ata-all.c Revert my ata_identify()/ata_reinit() related changes: r189166, r189091 2009-02-28 22:07:15 +00:00
ata-all.h Add experimental support for SATA interface power management. 2009-04-29 21:17:18 +00:00
ata-card.c Check the Disk FUNCE recorded in the CIS to see if we should probe for 2009-03-12 06:30:59 +00:00
ata-cbus.c Add type specific suspend/resume ata channel functions. Add checks to avoid 2009-03-09 20:48:57 +00:00
ata-disk.c Revert my ata_identify()/ata_reinit() related changes: r189166, r189091 2009-02-28 22:07:15 +00:00
ata-disk.h
ata-dma.c Quite mechanical ch_detach implementations for all atapci subdrivers. 2009-02-19 00:32:55 +00:00
ata-isa.c Add type specific suspend/resume ata channel functions. Add checks to avoid 2009-03-09 20:48:57 +00:00
ata-lowlevel.c
ata-pci.c Add experimental support for SATA interface power management. 2009-04-29 21:17:18 +00:00
ata-pci.h - Always force AHCI mode on a ATI/AMD SB600/700/800 SATA controller. These 2009-04-27 17:29:51 +00:00
ata-queue.c Improve clarity: if (a && (b ? b : c)) -> if (a && (b || c)) 2009-04-07 19:44:06 +00:00
ata-raid-ddf.h Add basic support for DDF, often found on Adaptec HostRAID controllers. 2009-02-20 06:10:12 +00:00
ata-raid.c Revert my ata_identify()/ata_reinit() related changes: r189166, r189091 2009-02-28 22:07:15 +00:00
ata-raid.h Add basic support for DDF, often found on Adaptec HostRAID controllers. 2009-02-20 06:10:12 +00:00
ata-sata.c Add experimental support for SATA interface power management. 2009-04-29 21:17:18 +00:00
ata-usb.c Rename the ushub device class back to uhub as it was in the old usb stack, 2009-03-02 05:37:05 +00:00
atapi-cam.c Revert my ata_identify()/ata_reinit() related changes: r189166, r189091 2009-02-28 22:07:15 +00:00
atapi-cd.c Revert my ata_identify()/ata_reinit() related changes: r189166, r189091 2009-02-28 22:07:15 +00:00
atapi-cd.h
atapi-fd.c Revert my ata_identify()/ata_reinit() related changes: r189166, r189091 2009-02-28 22:07:15 +00:00
atapi-fd.h
atapi-tape.c Remove unneeded device index from unit number. 2009-04-26 09:21:37 +00:00
atapi-tape.h