From 68abc122d4b527bc27c99883157bb0744703e9f9 Mon Sep 17 00:00:00 2001 From: grayTerminal-sh Date: Fri, 5 Jun 2026 14:12:42 +0200 Subject: [PATCH] tlp.conf --- README.md | 125 ++++ docs/disks-layout.txt | 12 + docs/fdisk.txt | 30 + docs/packages.md | 25 + docs/parted.txt | 31 + docs/reinstall.md | 12 + .../systemd-enabled-system.txt | 0 .../systemd-enabled-user.txt | 0 rootfs/etc/tlp.conf | 640 ++++++++++++++++++ 9 files changed, 875 insertions(+) create mode 100644 docs/disks-layout.txt create mode 100644 docs/fdisk.txt create mode 100644 docs/packages.md create mode 100644 docs/parted.txt create mode 100644 docs/reinstall.md rename systemd/enabled-system.txt => docs/systemd-enabled-system.txt (100%) rename systemd/enabled-user.txt => docs/systemd-enabled-user.txt (100%) create mode 100644 rootfs/etc/tlp.conf diff --git a/README.md b/README.md index e69de29..3a6b010 100644 --- a/README.md +++ b/README.md @@ -0,0 +1,125 @@ +# Arch System + +Sauvegarde de la configuration système de mon poste Arch Linux. + +Ce dépôt contient uniquement la partie système. Les dotfiles utilisateur sont stockés dans un dépôt séparé. + +## Contenu + +### Paquets + +* `pkglist/pacman.txt` +* `pkglist/aur.txt` + +Liste des paquets officiels et AUR installés. + +### Services systemd + +* `systemd/enabled-system.txt` +* `systemd/enabled-user.txt` + +Inventaire des services activés. + +### Configuration système + +* `rootfs/etc/pacman.conf` +* `rootfs/etc/makepkg.conf` +* `rootfs/etc/mkinitcpio.conf` +* `rootfs/etc/fstab` +* `rootfs/etc/nftables.conf` +* `rootfs/etc/tlp.conf` + +### Snapper + +* `rootfs/etc/snapper/configs/root` + +Configuration des snapshots Btrfs. + +### Limine + +* `rootfs/boot/limine.conf` + +Configuration du chargeur de démarrage. + +### Systemd + +* `rootfs/etc/systemd/system/battery-threshold.service` + +Service personnalisé limitant la charge de la batterie à 80 %. + +### Documentation + +* `docs/lsblk.txt` +* `docs/findmnt.txt` +* `docs/btrfs-subvolumes.txt` + +### TLP + +* `rootfs/etc/tlp.conf` + +Gestion de l’énergie : +- profil batterie ASUS : `quiet` +- seuil de charge par défaut : 60 % +- réglages CPU via `amd-pstate-epp` + +Documentation de la structure des disques, montages et sous-volumes Btrfs. + +## Sauvegarde + +Mettre à jour le dépôt : + +```bash +./scripts/backup.sh +``` + +## Réinstallation + +### 1. Installation de base + +Installer Arch Linux. + +### 2. Restaurer le dépôt + +```bash +git clone +cd arch-system +``` + +### 3. Restaurer les fichiers système + +Copie manuelle ou via un futur script de déploiement. + +### 4. Réinstaller les paquets + +```bash +sudo pacman -S --needed - < pkglist/pacman.txt +``` + +Puis les paquets AUR. + +### 5. Réactiver les services + +Utiliser : + +```bash +systemd/enabled-system.txt +``` + +comme référence. + +## Notes + +### Secure Boot + +Le système utilise sbctl. + +Les clés Secure Boot ne sont pas stockées dans ce dépôt. + +### Btrfs + +Le système utilise Btrfs avec Snapper pour la gestion des snapshots. + +### Boot + +Le système utilise Limine comme chargeur de démarrage. + diff --git a/docs/disks-layout.txt b/docs/disks-layout.txt new file mode 100644 index 0000000..dde0fb0 --- /dev/null +++ b/docs/disks-layout.txt @@ -0,0 +1,12 @@ +NAME SIZE FSTYPE PARTUUID UUID MOUNTPOINTS +sda 14,9G iso9660 2023-11-01-06-55-57-00 +├─sda1 792M iso9660 fd38acc6-01 2023-11-01-06-55-57-00 +└─sda2 15M vfat fd38acc6-02 6BD4-6502 +zram0 4G swap 8e9d5e09-3af3-489e-a1d4-0b5da69cddc7 [SWAP] +nvme0n1 476,9G +├─nvme0n1p1 1G vfat 6a729979-0103-4dbd-a639-bb64b6185580 74CA-B4A5 /boot +└─nvme0n1p2 475,9G btrfs 85b1221d-8402-4e4a-a8f3-94377eded84a fd788a35-b3ee-48a4-9d7c-4f9bcdc46614 /home + /var/log + /var/cache/pacman/pkg + /.snapshots + / diff --git a/docs/fdisk.txt b/docs/fdisk.txt new file mode 100644 index 0000000..b4ee412 --- /dev/null +++ b/docs/fdisk.txt @@ -0,0 +1,30 @@ +Disque /dev/nvme0n1 : 476,94 GiB, 512110190592 octets, 1000215216 secteurs +Modèle de disque : SAMSUNG MZVL8512HELU-00BTW +Unités : secteur de 1 × 512 = 512 octets +Taille de secteur (logique / physique) : 512 octets / 512 octets +taille d'E/S (minimale / optimale) : 512 octets / 512 octets +Type d'étiquette de disque : gpt +Identifiant de disque : FD5401A9-A5FA-49B7-BFE4-4E4CA8DE5310 + +Périphérique Début Fin Secteurs Taille Type +/dev/nvme0n1p1 2048 2099199 2097152 1G Système EFI +/dev/nvme0n1p2 2099200 1000212479 998113280 475,9G Racine Linux (x86-64) + + +Disque /dev/sda : 14,91 GiB, 16005464064 octets, 31260672 secteurs +Modèle de disque : Card Reader +Unités : secteur de 1 × 512 = 512 octets +Taille de secteur (logique / physique) : 512 octets / 512 octets +taille d'E/S (minimale / optimale) : 512 octets / 512 octets +Type d'étiquette de disque : dos +Identifiant de disque : 0xfd38acc6 + +Périphérique Amorçage Début Fin Secteurs Taille Id Type +/dev/sda1 * 64 1622015 1621952 792M 0 Vide +/dev/sda2 1622016 1652735 30720 15M ef EFI (FAT-12/16/32) + + +Disque /dev/zram0 : 4 GiB, 4294967296 octets, 1048576 secteurs +Unités : secteur de 1 × 4096 = 4096 octets +Taille de secteur (logique / physique) : 4096 octets / 4096 octets +taille d'E/S (minimale / optimale) : 4096 octets / 4096 octets diff --git a/docs/packages.md b/docs/packages.md new file mode 100644 index 0000000..59119f2 --- /dev/null +++ b/docs/packages.md @@ -0,0 +1,25 @@ +# Composants principaux + +## Boot +- limine +- sbctl + +## Snapshot +- snapper + +## Réseau +- NetworkManager +- nftables + +## Virtualisation +- libvirt +- qemu + +## Conteneurs +- docker + +## Partage réseau +- samba + +## Bureau +- MangoWM diff --git a/docs/parted.txt b/docs/parted.txt new file mode 100644 index 0000000..3721109 --- /dev/null +++ b/docs/parted.txt @@ -0,0 +1,31 @@ +Modèle : Multiple Card Reader (scsi) +Disque /dev/sda : 16,0GB +Taille des secteurs (logiques/physiques) : 512B/512B +Table de partitions : msdos +Drapeaux de disque : + +Numéro Début Fin Taille Type Système de fichiers Drapeaux + 2 830MB 846MB 15,7MB primary fat16 esp + + +Modèle : SAMSUNG MZVL8512HELU-00BTW (nvme) +Disque /dev/nvme0n1 : 512GB +Taille des secteurs (logiques/physiques) : 512B/512B +Table de partitions : gpt +Drapeaux de disque : + +Numéro Début Fin Taille Système de fichiers Nom Drapeaux + 1 1049kB 1075MB 1074MB fat32 démarrage, esp + 2 1075MB 512GB 511GB btrfs + + +Modèle : Inconnu (unknown) +Disque /dev/zram0 : 4295MB +Taille des secteurs (logiques/physiques) : 4096B/4096B +Table de partitions : loop +Drapeaux de disque : + +Numéro Début Fin Taille Système de fichiers Drapeaux + 1 0,00B 4295MB 4295MB linux-swap(v1) + + diff --git a/docs/reinstall.md b/docs/reinstall.md new file mode 100644 index 0000000..89a2122 --- /dev/null +++ b/docs/reinstall.md @@ -0,0 +1,12 @@ +# Réinstallation + +1. Installer Arch +2. Installer git +3. Cloner arch-system +4. Restaurer les fichiers rootfs +5. Installer les paquets +6. Installer les dotfiles +7. Vérifier Limine +8. Vérifier Snapper +9. Vérifier Secure Boot +10. Vérifier nftables diff --git a/systemd/enabled-system.txt b/docs/systemd-enabled-system.txt similarity index 100% rename from systemd/enabled-system.txt rename to docs/systemd-enabled-system.txt diff --git a/systemd/enabled-user.txt b/docs/systemd-enabled-user.txt similarity index 100% rename from systemd/enabled-user.txt rename to docs/systemd-enabled-user.txt diff --git a/rootfs/etc/tlp.conf b/rootfs/etc/tlp.conf new file mode 100644 index 0000000..6847cf0 --- /dev/null +++ b/rootfs/etc/tlp.conf @@ -0,0 +1,640 @@ +# ---------------------------------------------------------------------------- +# /etc/tlp.conf - TLP user configuration (version 1.10.0) +# See full explanation: https://linrunner.de/tlp/settings +# +# Copyright (c) 2026 Thomas Koch and others. +# SPDX-License-Identifier: GPL-2.0-or-later +# +# Settings are read in the following order: +# +# 1. Intrinsic defaults +# 2. /etc/tlp.d/*.conf - Drop-in customization snippets +# 3. /etc/tlp.conf - User configuration (this file) +# +# TLP profiles: a part of TLP's parameters is divided into two or three +# groups: +# - performance: parameters ending in _AC are used when AC power is +# connected or when the command 'tlp performance' is run. +# - balanced: parameters ending in _BAT are used when operating +# on battery power or when the command 'tlp balanced' is run. +# - power-saver: parameters ending in _SAV are used when the command +# 'tlp power-saver' is run. If there is no _SAV parameter available +# for a feature, the _BAT parameter will be used instead. +# - Any remaining parameters not divided apply to all TLP profiles. +# +# Please note: +# - If parameters are specified more than once, the last occurrence takes +# precedence. This also means that any parameters defined here will take +# precedence over any drop-ins. +# - You can however, append values to a parameter already defined as default +# or in a previously read file: use PARAMETER+="add values". +# - Important: in its native state, all of the parameters in this file are +# commented out with a leading '#', so the defaults (if any) apply. +# Remove the leading '#' if you want to enable a feature without a default +# or if you want to set a value other than the default. +# - Parameters must always be specified for all TLP profiles, i.e. in the +# AC, BAT and SAV category (where applicable). If you omit one of them, +# the missing profile will receive its value from another profile, since +# a change will only occur if different values are defined. +# - To completely disable a feature, use PARAMETER="". +# Legend for defaults: +# - Default *: effective value when the parameter is missing or the line has +# a leading '#'. +# - Default : feature disabled, use kernel or hardware defaults. +# +# ---------------------------------------------------------------------------- +# tlp - Parameters for power saving + +# Set to 0 to disable, 1 to enable TLP. +# Default: 1 + +# TLP_ENABLE=1 + +# Set to 1 to disable (almost) all defaults of TLP. +# This means that TLP only applies settings that have been explicitly activated +# i.e. parameters without leading '#'. +# Notes: +# - Helpful if one wants to use only selected features of TLP +# - After activation, use tlp-stat -c to display your effective configuration +# - TLP's operation relies on the defaults of TLP_ENABLE, TLP_WARN_LEVEL, +# TLP_AUTO_SWITCH, and TLP_PROFILE_AC/BAT, which are *not* disabled +# +#TLP_DISABLE_DEFAULTS=1 + +# Control how warnings about invalid settings are issued: +# 0=disabled +# 1=background tasks (boot, resume, change of power source) report to syslog +# 2=shell commands report to the terminal (stderr) +# 3=combination of 1 and 2 +# Default: 3 + +#TLP_WARN_LEVEL=3 + +# Colorize error, warning, notice and success messages. Colors are specified +# with ANSI codes: +# 1=bold black, 90=grey, 91=red, 92=green, 93=yellow, 94=blue, 95=magenta, +# 96=cyan, 97=white. +# Other colors are possible, refer to: +# https://en.wikipedia.org/wiki/ANSI_escape_code#3-bit_and_4-bit +# Colors must be specified in the order +# " ". +# By default, errors are shown in red, warnings in yellow, notices in bold +# and success in green. +# Default: "91 93 1 92" + +#TLP_MSG_COLORS="91 93 1 92" + +# Control automatic switching of the TLP profile when connecting or removing +# the charger, when booting the system or when executing 'tlp start': +# 0=disabled - never switch, use TLP_PROFILE_DEFAULT if configured +# 1=auto - always switch, select TLP_PROFILE_AC on AC and TLP_PROFILE_BAT +# on battery power. +# 2=smart - like auto, but skips the switch if you have manually changed the +# profile away from the previous power source's default profile +# (as defined by TLP_PROFILE_AC/BAT). +# Note: the same applies if the charger was connected/removed during suspend. +# Default: 2 + +#TLP_AUTO_SWITCH=2 + +# TLP profiles to use when automatic switching is enabled +# (TLP_AUTO_SWITCH=1 or 2): +# PRF=performance, BAL=balanced, SAV=power-saver. +# Default: PRF (AC power), BAL (battery power) + +TLP_PROFILE_AC=PRF +TLP_PROFILE_BAT=BAL + +# TLP profile to use when automatic switching is disabled +# (TLP_AUTO_SWITCH=0) or no power supply is detected: +# PRF=performance, BAL=balanced, SAV=power-saver. +# Note: legacy values AC and BAT continue to work. They are mapped to +# PRF and BAL, respectively. +# Default: + +#TLP_PROFILE_DEFAULT=BAL + +# Power supply classes to ignore when determining TLP profile: +# AC, USB, BAT. +# Separate multiple classes with spaces. +# Note: try on laptops where operation mode AC/BAT is incorrectly detected. +# Default: + +#TLP_PS_IGNORE="BAT" + +# Seconds laptop mode has to wait after the disk goes idle before doing a +# sync. Non-zero value enables, zero disables laptop mode. +# Default: 0 (AC), 2 (BAT) + +#DISK_IDLE_SECS_ON_AC=0 +#DISK_IDLE_SECS_ON_BAT=2 + +# Dirty page values (timeouts in secs). +# Default: 15 (AC), 60 (BAT) + +#MAX_LOST_WORK_SECS_ON_AC=15 +#MAX_LOST_WORK_SECS_ON_BAT=60 + +# Select a CPU scaling driver operation mode. +# Intel CPU with intel_pstate driver: +# active, passive. +# AMD Zen 2 or newer CPU with amd-pstate driver as of kernel 6.3/6.4(*): +# active, passive, guided(*). +# Default: +#CPU_DRIVER_OPMODE_ON_AC=active +#CPU_DRIVER_OPMODE_ON_BAT=active +#CPU_DRIVER_OPMODE_ON_SAV=active + +# Select a CPU frequency scaling governor. +# Intel CPU with intel_pstate driver or +# AMD CPU with amd-pstate driver in active mode ('amd-pstate-epp'): +# performance, powersave(*). +# Intel CPU with intel_pstate driver in passive mode ('intel_cpufreq') or +# AMD CPU with amd-pstate driver in passive or guided mode ('amd-pstate') or +# Intel, AMD and other CPU brands with acpi-cpufreq driver: +# conservative, ondemand(*), userspace, powersave, performance, schedutil(*) +# Use tlp-stat -p to show the active driver and available governors. +# Important: +# Governors marked (*) above are power efficient for *almost all* workloads +# and therefore kernel and most distributions have chosen them as defaults. +# You should have done your research about advantages/disadvantages *before* +# changing the governor. +# Default: + +#CPU_SCALING_GOVERNOR_ON_AC=performance +#CPU_SCALING_GOVERNOR_ON_BAT=powersave +#CPU_SCALING_GOVERNOR_ON_SAV=powersave + +# Set the min/max frequency available for the scaling governor. +# Possible values depend on your CPU. For available frequencies see +# the output of tlp-stat -p. +# Notes: +# - Min/max frequencies must always be specified for both AC *and* BAT +# - Not recommended for use with the intel_pstate driver, use +# CPU_MIN/MAX_PERF_ON_AC/BAT below instead +# Default: + +#CPU_SCALING_MIN_FREQ_ON_AC=0 +#CPU_SCALING_MAX_FREQ_ON_AC=0 +#CPU_SCALING_MIN_FREQ_ON_BAT=0 +#CPU_SCALING_MAX_FREQ_ON_BAT=0 +#CPU_SCALING_MIN_FREQ_ON_SAV=0 +#CPU_SCALING_MAX_FREQ_ON_SAV=0 + +# Set CPU energy/performance policies EPP and EPB: +# performance, balance_performance, default, balance_power, power. +# Values are given in order of increasing power saving. +# Requires: +# * Intel CPU +# EPP: Intel Core i 6th gen. or newer CPU with intel_pstate driver +# EPB: Intel Core i 2nd gen. or newer CPU with intel_pstate driver +# EPP and EPB are mutually exclusive: when EPP is available, Intel CPUs +# will not honor EPB. Only the matching feature will be applied by TLP. +# * AMD Zen 2 or newer CPU +# EPP: amd-pstate driver in active mode ('amd-pstate-epp') as of kernel 6.3 +# Default: balance_performance (AC), balance_power (BAT), power (SAV) + +CPU_ENERGY_PERF_POLICY_ON_AC=balance_performance +CPU_ENERGY_PERF_POLICY_ON_BAT=balance_power +CPU_ENERGY_PERF_POLICY_ON_SAV=power + +# Set Intel CPU P-state performance: 0..100 (%). +# Limit the max/min P-state to control the power dissipation of the CPU. +# Values are stated as a percentage of the available performance. +# Requires Intel Core i 2nd gen. or newer CPU with intel_pstate driver. +# Default: + +#CPU_MIN_PERF_ON_AC=0 +#CPU_MAX_PERF_ON_AC=100 +#CPU_MIN_PERF_ON_BAT=0 +#CPU_MAX_PERF_ON_BAT=80 +#CPU_MIN_PERF_ON_SAV=0 +#CPU_MAX_PERF_ON_SAV=60 + +# Set the CPU "turbo boost" (Intel) or "core performance boost" (AMD) feature: +# 0=disable, 1=allow. +# Allows to raise the maximum frequency/P-state of some cores if the +# CPU chip is not fully utilized and below it's intended thermal budget. +# Note: a value of 1 does *not* activate boosting, it just allows it. +# Default: + +CPU_BOOST_ON_AC=1 +CPU_BOOST_ON_BAT=0 +CPU_BOOST_ON_SAV=0 + +# Set CPU dynamic boost feature: +# 0=disable, 1=enable. +# Improve performance by increasing minimum P-state limit dynamically +# whenever a task previously waiting on I/O is selected to run. +# Requires Intel Core i 6th gen. or newer CPU with intel_pstate driver +# in active mode. +# Note: AMD CPUs currently have no tunable for this. +# Default: + +#CPU_HWP_DYN_BOOST_ON_AC=1 +#CPU_HWP_DYN_BOOST_ON_BAT=1 +#CPU_HWP_DYN_BOOST_ON_SAV=0 + +# Kernel NMI Watchdog: +# 0=disable (default, saves power), 1=enable (for kernel debugging only). +# Default: 0 + +#NMI_WATCHDOG=0 + +# Select platform profile: +# performance, balanced, low-power. +# Controls system operating characteristics around power/performance levels, +# thermal and fan speed. Values are given in order of increasing power saving. +# Note: check the output of tlp-stat -p to determine availability on your +# hardware and additional profiles such as: balanced-performance, quiet, cool. +# Default: performance (AC), balanced (BAT), low-power (SAV) + +#PLATFORM_PROFILE_ON_AC=performance +PLATFORM_PROFILE_ON_BAT=quiet +#PLATFORM_PROFILE_ON_SAV=low-power + +# System suspend mode: +# s2idle: Idle standby - a pure software, light-weight, system sleep state, +# deep: Suspend to RAM - the whole system is put into a low-power state, +# except for memory, usually resulting in higher savings than s2idle. +# CAUTION: changing suspend mode may lead to system instability and even +# data loss. As for the availability of different modes on your system, +# check the output of tlp-stat -s. If unsure, stick with the system default +# by not enabling this. +# Default: + +#MEM_SLEEP_ON_AC=s2idle +#MEM_SLEEP_ON_BAT=deep + +# Define disk devices on which the following DISK/AHCI_RUNTIME parameters act. +# Separate multiple devices with spaces. +# Devices can be specified by disk ID also (lookup with: tlp diskid). +# Default: "nvme0n1 sda" + +#DISK_DEVICES="nvme0n1 sda" + +# Disk advanced power management level: 1..254, 255 (max saving, min, off). +# Levels 1..127 may spin down the disk; 255 allowable on most drives. +# Separate values for multiple disks with spaces. Use the special value 'keep' +# to keep the hardware default for the particular disk. +# Default: 254 (AC), 128 (BAT) + +#DISK_APM_LEVEL_ON_AC="254 254" +#DISK_APM_LEVEL_ON_BAT="128 128" + +# Exclude disk classes from advanced power management (APM): +# sata, ata, usb, ieee1394. +# Separate multiple classes with spaces. +# CAUTION: USB and IEEE1394 disks may fail to mount or data may get corrupted +# with APM enabled. Be careful and make sure you have backups of all affected +# media before removing 'usb' or 'ieee1394' from the denylist! +# Default: "usb ieee1394" + +#DISK_APM_CLASS_DENYLIST="usb ieee1394" + +# Hard disk spin down timeout: +# 0: spin down disabled +# 1..240: timeouts from 5s to 20min (in units of 5s) +# 241..251: timeouts from 30min to 5.5 hours (in units of 30min) +# See 'man hdparm' for details. +# Separate values for multiple disks with spaces. Use the special value 'keep' +# to keep the hardware default for the particular disk. +# Default: + +#DISK_SPINDOWN_TIMEOUT_ON_AC="0 0" +#DISK_SPINDOWN_TIMEOUT_ON_BAT="0 0" + +# Select I/O scheduler for the disk devices. +# Multi queue (blk-mq) schedulers: +# mq-deadline(*), none, kyber, bfq +# Single queue schedulers: +# deadline(*), cfq, bfq, noop +# (*) recommended. +# Separate values for multiple disks with spaces. Use the special value 'keep' +# to keep the kernel default scheduler for the particular disk. +# Notes: +# - Multi queue (blk-mq) may need kernel boot option 'scsi_mod.use_blk_mq=1' +# and 'modprobe mq-deadline-iosched|kyber|bfq' on kernels < 5.0 +# - Single queue schedulers are legacy now and were removed together with +# the old block layer in kernel 5.0 +# Default: keep + +#DISK_IOSCHED="mq-deadline mq-deadline" + +# AHCI link power management (ALPM) for SATA disks: +# min_power, med_power_with_dipm(*), medium_power, max_performance. +# (*) recommended. +# Multiple values separated with spaces are tried sequentially until success. +# Default: med_power_with_dipm (AC & BAT) + +#SATA_LINKPWR_ON_AC="med_power_with_dipm" +#SATA_LINKPWR_ON_BAT="med_power_with_dipm" + +# Exclude SATA links from AHCI link power management (ALPM). +# SATA links are specified by their host. Refer to the output of +# tlp-stat -d to determine the host; the format is "hostX". +# Separate multiple hosts with spaces. +# Default: + +#SATA_LINKPWR_DENYLIST="host1" + +# Runtime Power Management for NVMe, SATA, ATA and USB disks +# as well as SATA ports: +# on=disable, auto=enable. +# Note: SATA controllers are PCIe bus devices and handled by RUNTIME_PM +# further down. + +# Default: on (AC), auto (BAT) + +#AHCI_RUNTIME_PM_ON_AC=on +#AHCI_RUNTIME_PM_ON_BAT=auto + +# Seconds of inactivity before disk is suspended. +# Note: effective only when AHCI_RUNTIME_PM_ON_AC/BAT is activated. +# Default: 15 + +#AHCI_RUNTIME_PM_TIMEOUT=15 + +# Power off optical drive in UltraBay/MediaBay: 0=disable, 1=enable. +# Drive can be powered on again by releasing (and reinserting) the eject lever +# or by pressing the disc eject button on newer models. +# Note: an UltraBay/MediaBay hard disk is never powered off. +# Default: 0 + +#BAY_POWEROFF_ON_AC=0 +#BAY_POWEROFF_ON_BAT=0 + +# Optical drive device to power off +# Default: sr0 + +#BAY_DEVICE="sr0" + +# Intel GPU power management. +# Select power profile for the Intel Xe GPU: base, power_saving. +# Note: requires xe driver. +# Default: base (AC), power_saving (BAT), power_saving (SAV) + +# INTEL_GPU_POWER_PROFILE_ON_AC=base +# INTEL_GPU_POWER_PROFILE_ON_BAT=base +# INTEL_GPU_POWER_PROFILE_ON_SAV=power_saving + +# Set the min/max/turbo frequency for the Intel GPU. +# Parameters actually used depend on the driver: +# - i915 driver supports min, max and turbo(boost) frequency. +# - xe driver supports min and max frequency only. +# Default: + +#INTEL_GPU_MIN_FREQ_ON_AC=0 +#INTEL_GPU_MIN_FREQ_ON_BAT=0 +#INTEL_GPU_MIN_FREQ_ON_SAV=0 +#INTEL_GPU_MAX_FREQ_ON_AC=0 +#INTEL_GPU_MAX_FREQ_ON_BAT=0 +#INTEL_GPU_MAX_FREQ_ON_SAV=0 +#INTEL_GPU_BOOST_FREQ_ON_AC=0 +#INTEL_GPU_BOOST_FREQ_ON_BAT=0 +#INTEL_GPU_BOOST_FREQ_ON_SAV=0 + +# AMD GPU power management. +# Performance level (DPM): high, auto, low; auto is recommended. +# Note: requires amdgpu or radeon driver. +# Default: auto (AC), auto (BAT), low (SAV) + +#RADEON_DPM_PERF_LEVEL_ON_AC=auto +#RADEON_DPM_PERF_LEVEL_ON_BAT=auto +#RADEON_DPM_PERF_LEVEL_ON_SAV=low + +# Display panel adaptive backlight modulation (ABM) level: 0(off), 1..4. +# Values 1..4 control the maximum brightness reduction allowed by the ABM +# algorithm, where 1 represents the least and 4 the most power saving. +# Notes: +# - Requires AMD Vega or newer GPU with amdgpu driver as of kernel 6.9 +# - Savings are made at the expense of color balance +# Default: 0 (AC), 1 (BAT), 3 (SAV) + +#AMDGPU_ABM_LEVEL_ON_AC=0 +#AMDGPU_ABM_LEVEL_ON_BAT=1 +#AMDGPU_ABM_LEVEL_ON_SAV=3 + +# Wi-Fi power saving mode: on=enable, off=disable. +# Default: off (AC), on (BAT) + +WIFI_PWR_ON_AC=off +WIFI_PWR_ON_BAT=on + +# Disable Wake-on-LAN: Y/N. +# Default: Y + +#WOL_DISABLE=Y + +# Enable audio power saving for Intel HDA, AC97 devices (timeout in secs). +# A value of 0 disables, >= 1 enables power saving. +# Note: 1 is recommended for Linux desktop environments with PulseAudio, +# systems without PulseAudio may require 10. +# Default: 1 + +#SOUND_POWER_SAVE_ON_AC=1 +#SOUND_POWER_SAVE_ON_BAT=1 + +# Disable controller too (HDA only): Y/N. +# Note: effective only when SOUND_POWER_SAVE_ON_AC/BAT is activated. +# Default: Y + +#SOUND_POWER_SAVE_CONTROLLER=Y + +# PCIe Active State Power Management (ASPM): +# default(*), performance, powersave, powersupersave. +# (*) keeps BIOS ASPM defaults (recommended) +# Default: default + +#PCIE_ASPM_ON_AC=default +#PCIE_ASPM_ON_BAT=default +#PCIE_ASPM_ON_SAV=default + +# Autosuspend PCIe devices (Runtime Power Management): +# on=disable, auto=enable. +# Default: on (AC), auto (BAT) + +#RUNTIME_PM_ON_AC=on +#RUNTIME_PM_ON_BAT=auto + +# Exclude listed PCIe device adresses from autosuspend. +# Note: this preserves the kernel driver default, to force a certain state +# use RUNTIME_PM_ENABLE/DISABLE instead. +# Separate multiple addresses with spaces. +# Use lspci to get the adresses (1st column). +# Default: + +#RUNTIME_PM_DENYLIST="11:22.3 44:55.6" + +# Exclude PCIe devices assigned to the listed drivers from autosuspend. +# Note: this preserves the kernel driver default, to force a certain state +# use RUNTIME_PM_ENABLE/DISABLE instead. +# Separate multiple drivers with spaces, use "" to disable completely. +# Default: "amdgpu mei_me nouveau nvidia xhci_hcd" + +#RUNTIME_PM_DRIVER_DENYLIST="amdgpu mei_me nouveau nvidia xhci_hcd" + +# Permanently enable/disable autosuspend for listed PCIe device addresses +# (independent of the power source). This has priority over all preceding +# autosuspend settings. Separate multiple addresses with spaces. +# Use lspci to get the adresses (1st column). +# Default: + +#RUNTIME_PM_ENABLE="11:22.3" +#RUNTIME_PM_DISABLE="44:55.6" + +# Autosuspend USB devices: +# 0=disable, 1=enable. +# Default: 1 + +#USB_AUTOSUSPEND=1 + +# Exclude listed devices from USB autosuspend (separate with spaces). +# Use lsusb to get the ids. +# Note: input devices (usbhid) and libsane-supported scanners are excluded +# automatically. +# Default: + +#USB_DENYLIST="1111:2222 3333:4444" + +# Exclude audio devices from USB autosuspend: +# 0=do not exclude, 1=exclude. +# Default: 1 + +#USB_EXCLUDE_AUDIO=1 + +# Exclude bluetooth devices from USB autosuspend: +# 0=do not exclude, 1=exclude. +# Default: 0 + +#USB_EXCLUDE_BTUSB=0 + +# Exclude phone devices from USB autosuspend: +# 0=do not exclude, 1=exclude (enable charging). +# Default: 0 + +#USB_EXCLUDE_PHONE=0 + +# Exclude printers from USB autosuspend: +# 0=do not exclude, 1=exclude. +# Default: 1 + +#USB_EXCLUDE_PRINTER=1 + +# Exclude WWAN devices from USB autosuspend: +# 0=do not exclude, 1=exclude. +# Default: 0 + +#USB_EXCLUDE_WWAN=0 + +# Allow USB autosuspend for listed devices even if already denylisted or +# excluded above (separate with spaces). Use lsusb to get the ids. +# Default: 0 + +#USB_ALLOWLIST="1111:2222 3333:4444" + +# Radio devices to disable on startup: bluetooth, nfc, wifi, wwan. +# Separate multiple devices with spaces. +# Default: + +#DEVICES_TO_DISABLE_ON_STARTUP="bluetooth nfc wifi wwan" + +# Radio devices to enable on startup: bluetooth, nfc, wifi, wwan. +# Separate multiple devices with spaces. +# Default: + +#DEVICES_TO_ENABLE_ON_STARTUP="wifi" + +# Radio devices to enable when switching to the performance profile: +# bluetooth, nfc, wifi, wwan. +# Default: + +#DEVICES_TO_ENABLE_ON_AC="bluetooth nfc wifi wwan" + +# Radio devices to disable when switching to the balanced or power-saver +# profile: +# bluetooth, nfc, wifi, wwan. +# Default: + +#DEVICES_TO_DISABLE_ON_BAT="bluetooth nfc wifi wwan" + +# Radio devices to disable when not in use (not connected) and switching +# to the balanced or power-saver profile: +# bluetooth, nfc, wifi, wwan. +# Default: + +#DEVICES_TO_DISABLE_ON_BAT_NOT_IN_USE="bluetooth nfc wifi wwan" + +# Battery Care -- Charge thresholds +# Charging will start once the charger is connected and the battery level +# is below the start threshold. Charging stops when the battery level +# reaches or exceeds the stop threshold. +# Required hardware: Lenovo ThinkPads and other laptop brands are driven +# via specific plugins: +# - Use the tlp-stat -b command to see if a plugin for your hardware is +# active and to look up vendor-specific threshold values. Some +# laptops support only 1 (on)/0 (off) instead of a percentage level. +# - If your hardware supports a start *and* a stop threshold, you must +# specify both, otherwise TLP will refuse to apply the single threshold. +# - If your hardware supports only a stop threshold, set the start +# value to 0. +# - The names of the batteries shown by tlp-stat -b don't have to match +# the _BAT0 or _BAT1 parameter qualifiers. Please refer to [2] +# to see which qualifier applies to which battery. +# For further explanation and all vendor specific details refer to +# [1] https://linrunner.de/tlp/settings/battery.html +# [2] https://linrunner.de/tlp/settings/bc-vendors.html + +# BAT0: Main battery +# Default: + +# Charging starts once the battery level is below this threshold. +#START_CHARGE_THRESH_BAT0=75 +# Charging stops when the battery level reaches or exceeds this threshold. +#STOP_CHARGE_THRESH_BAT0=80 + +# BAT1: Secondary battery (primary on some laptops) +# Default: + +# Charging starts once the battery level is below this threshold. +START_CHARGE_THRESH_BAT1=0 +# Charging stops when the battery level reaches or exceeds this threshold. +STOP_CHARGE_THRESH_BAT1=60 + +# Restore charge thresholds when AC is unplugged: 0=disable, 1=enable. +# Default: 1 + +#RESTORE_THRESHOLDS_ON_BAT=0 + +# ---------------------------------------------------------------------------- +# tlp-rdw - Radio Device Wizard +# Note: requires installation of the optional package tlp-rdw. + +# Possible devices: bluetooth, wifi, wwan. +# Separate multiple radio devices with spaces. +# Default: (for all parameters below) + +# Radio devices to disable on connect. + +#DEVICES_TO_DISABLE_ON_LAN_CONNECT="wifi wwan" +#DEVICES_TO_DISABLE_ON_WIFI_CONNECT="wwan" +#DEVICES_TO_DISABLE_ON_WWAN_CONNECT="wifi" + +# Radio devices to enable on disconnect. + +#DEVICES_TO_ENABLE_ON_LAN_DISCONNECT="wifi wwan" +#DEVICES_TO_ENABLE_ON_WIFI_DISCONNECT="" +#DEVICES_TO_ENABLE_ON_WWAN_DISCONNECT="" + +# Radio devices to enable/disable when docked. +# Note: not all docks can be recognized, especially USB-C docks. If a LAN +# cable is connected to the dock, use DEVICES_TO_DISABLE_ON_LAN_CONNECT +# and DEVICES_TO_ENABLE_ON_LAN_DISCONNECT instead. + +#DEVICES_TO_ENABLE_ON_DOCK="" +#DEVICES_TO_DISABLE_ON_DOCK="" + +# Radio devices to enable/disable when undocked. + +#DEVICES_TO_ENABLE_ON_UNDOCK="wifi" +#DEVICES_TO_DISABLE_ON_UNDOCK=""