Add the temporary fix for the cpu-throttling issue
See https://wiki.archlinux.org/index.php/Lenovo_ThinkPad_X1_Carbon_(Gen_6)#Power_management.2FThrottling_issues
This commit is contained in:
parent
5dd535392d
commit
654262071f
|
@ -1,3 +1,4 @@
|
|||
{ config, pkgs, ... }:
|
||||
{
|
||||
imports = [
|
||||
../.
|
||||
|
@ -17,4 +18,41 @@
|
|||
START_CHARGE_THRESH_BAT0=75
|
||||
STOP_CHARGE_THRESH_BAT0=80
|
||||
'';
|
||||
|
||||
# Temporary fix for cpu throttling issues visible in the kernel log
|
||||
# (journalctl -k) by setting the same temperature limits used by
|
||||
# Window$
|
||||
# See https://wiki.archlinux.org/index.php/Lenovo_ThinkPad_X1_Carbon_(Gen_6)#Power_management.2FThrottling_issues
|
||||
systemd.services.cpu-throttling = {
|
||||
enable = true;
|
||||
description = "Sets the offset to 3 °C, so the new trip point is 97 °C";
|
||||
documentation = [
|
||||
"https://wiki.archlinux.org/index.php/Lenovo_ThinkPad_X1_Carbon_(Gen_6)#Power_management.2FThrottling_issues"
|
||||
];
|
||||
path = [ pkgs.msr-tools ];
|
||||
script = "wrmsr -a 0x1a2 0x3000000";
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
};
|
||||
wantedBy = [
|
||||
"timers.target"
|
||||
];
|
||||
};
|
||||
|
||||
systemd.timers.cpu-throttling = {
|
||||
enable = true;
|
||||
description = "Set cpu heating limit to 97 °C";
|
||||
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";
|
||||
};
|
||||
wantedBy = [
|
||||
"timers.target"
|
||||
];
|
||||
};
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue