40 lines
No EOL
1.2 KiB
Nix
40 lines
No EOL
1.2 KiB
Nix
{ lib, ... }: {
|
|
# https://knowledgebase.frame.work/optimizing-ubuntu-battery-life-Sye_48Lg3
|
|
|
|
# AMD Specific:
|
|
# https://community.frame.work/t/tracking-ppd-v-tlp-for-amd-ryzen-7040/39423/162
|
|
services.power-profiles-daemon.enable = lib.mkForce false;
|
|
services.tlp = {
|
|
enable = true;
|
|
settings = {
|
|
# Specific to the Framework, since I have it limited to 80% charge in the BIOS
|
|
# START_CHARGE_THRESH_BAT0 = 70;
|
|
# STOP_CHARGE_THRESH_BAT0 = 79;
|
|
|
|
CPU_BOOST_ON_BAT = 0;
|
|
CPU_HWP_DYN_BOOST_ON_BAT = 0;
|
|
SCHED_POWERSAVE_ON_BAT = 1;
|
|
NMI_WATCHDOG = 0;
|
|
RUNTIME_PM_ON_AC = 0;
|
|
RUNTIME_PM_ON_BAT = "auto";
|
|
PCIE_ASPM_ON_AC = "default";
|
|
PCIE_ASPM_ON_BAT = "powersupersave";
|
|
CPU_MIN_PERF_ON_AC = 0;
|
|
CPU_MAX_PERF_ON_AC = 100;
|
|
CPU_MIN_PERF_ON_BAT = 0;
|
|
CPU_MAX_PERF_ON_BAT = 30;
|
|
|
|
PLATFORM_PROFILE_ON_AC = "performance";
|
|
PLATFORM_PROFILE_ON_BAT = "low-power";
|
|
|
|
CPU_DRIVER_OPMODE_ON_AC = "active";
|
|
CPU_DRIVER_OPMODE_ON_BAT = "active";
|
|
|
|
# CPU_SCALING_GOVERNOR_ON_AC = "powersave";
|
|
CPU_SCALING_GOVERNOR_ON_BAT = "powersave";
|
|
|
|
CPU_ENERGY_PERF_POLICY_ON_AC = "balance_performance";
|
|
CPU_ENERGY_PERF_POLICY_ON_BAT = "power";
|
|
};
|
|
};
|
|
} |