2022-12-19 09:09:08 +00:00
|
|
|
{
|
|
|
|
config,
|
|
|
|
pkgs,
|
|
|
|
...
|
|
|
|
}: {
|
2019-07-18 22:17:36 +01:00
|
|
|
systemd.services.cpu-throttling = {
|
|
|
|
enable = true;
|
|
|
|
description = "CPU Throttling Fix";
|
|
|
|
documentation = [
|
|
|
|
"https://wiki.archlinux.org/index.php/Lenovo_ThinkPad_X1_Carbon_(Gen_6)#Power_management.2FThrottling_issues"
|
|
|
|
];
|
2022-12-19 09:09:08 +00:00
|
|
|
path = [pkgs.msr-tools];
|
2019-07-18 22:17:36 +01:00
|
|
|
script = "wrmsr -a 0x1a2 0x3000000";
|
2022-12-19 09:09:08 +00:00
|
|
|
serviceConfig = {Type = "oneshot";};
|
|
|
|
wantedBy = ["timers.target"];
|
2019-07-18 22:17:36 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
systemd.timers.cpu-throttling = {
|
|
|
|
enable = true;
|
|
|
|
description = "CPU Throttling Fix";
|
|
|
|
documentation = [
|
|
|
|
"https://wiki.archlinux.org/index.php/Lenovo_ThinkPad_X1_Carbon_(Gen_6)#Power_management.2FThrottling_issues"
|
|
|
|
];
|
|
|
|
timerConfig = {
|
|
|
|
OnActiveSec = 60;
|
|
|
|
OnUnitActiveSec = 60;
|
|
|
|
Unit = "cpu-throttling.service";
|
|
|
|
};
|
2022-12-19 09:09:08 +00:00
|
|
|
wantedBy = ["timers.target"];
|
2019-07-18 22:17:36 +01:00
|
|
|
};
|
|
|
|
}
|