svn path=/nixos/trunk/; revision=31490wip/yesman
parent
036e585b42
commit
f169f60575
@ -0,0 +1,44 @@ |
||||
{ config, pkgs, ... }: |
||||
|
||||
with pkgs.lib; |
||||
|
||||
{ |
||||
###### interface |
||||
|
||||
options = { |
||||
|
||||
powerManagement.scsiLinkPolicy = mkOption { |
||||
default = ""; |
||||
example = "min_power"; |
||||
description = '' |
||||
Configure the scsi link power management policy. By default, |
||||
the kernel configures "max_performance". |
||||
''; |
||||
}; |
||||
|
||||
}; |
||||
|
||||
|
||||
###### implementation |
||||
|
||||
config = mkIf (config.powerManagement.scsiLinkPolicy != "") { |
||||
|
||||
environment.systemPackages = [ pkgs.cpufrequtils ]; |
||||
|
||||
jobs.cpufreq = |
||||
{ description = "Set SCSI link power management policy"; |
||||
|
||||
startOn = "started udev"; |
||||
|
||||
task = true; |
||||
|
||||
script = '' |
||||
for x in /sys/class/scsi_host/host*/link_power_management_policy; do |
||||
echo ${config.powerManagement.scsiLinkPolicy} > $x |
||||
done |
||||
''; |
||||
}; |
||||
|
||||
}; |
||||
|
||||
} |
Loading…
Reference in new issue