Author: chaoflow
Date: Thu Jan 12 07:54:09 2012
New Revision: 31490
URL: https://nixos.org/websvn/nix/?rev=31490&sc=1
Log:
powerManagement.enable sets link_power_management_policy to min_power
Added:
nixos/trunk/modules/tasks/scsi-link-power-management.nix
Modified:
nixos/trunk/modules/config/power-management.nix
nixos/trunk/modules/module-list.nix
Modified: nixos/trunk/modules/config/power-management.nix
==============================================================================
--- nixos/trunk/modules/config/power-management.nix Wed Jan 11 23:17:36
2012 (r31489)
+++ nixos/trunk/modules/config/power-management.nix Thu Jan 12 07:54:09
2012 (r31490)
@@ -92,7 +92,7 @@
];
powerManagement.cpuFreqGovernor = "ondemand";
-
+ powerManagement.scsiLinkPolicy = "min_power";
};
}
Modified: nixos/trunk/modules/module-list.nix
==============================================================================
--- nixos/trunk/modules/module-list.nix Wed Jan 11 23:17:36 2012 (r31489)
+++ nixos/trunk/modules/module-list.nix Thu Jan 12 07:54:09 2012 (r31490)
@@ -195,6 +195,7 @@
./tasks/kbd.nix
./tasks/lvm.nix
./tasks/network-interfaces.nix
+ ./tasks/scsi-link-power-management.nix
./tasks/swraid.nix
./tasks/tty-backgrounds.nix
./virtualisation/libvirtd.nix
Added: nixos/trunk/modules/tasks/scsi-link-power-management.nix
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ nixos/trunk/modules/tasks/scsi-link-power-management.nix Thu Jan 12
07:54:09 2012 (r31490)
@@ -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
+ '';
+ };
+
+ };
+
+}
_______________________________________________
nix-commits mailing list
[email protected]
http://lists.science.uu.nl/mailman/listinfo/nix-commits