Linux Projektvorstellung: TLP – Linux Stromsparen

Linux Betriebssystem

linrunner

Ubuntuversteher
Themenstarter
Registriert
22 Juni 2007
Beiträge
13.291
Nachdem im Forum öfters nachgefragt wird, wie man Linux die Feinheiten des Stromsparens beibringt, habe ich mich vor einiger Zeit entschlossen, meine Skriptsammlung in eine allgemein benutzbare Form zu bringen. Das Ergebnis möchte ich Euch an dieser Stelle vorstellen.

Dokumentation ist auf der offiziellen Website https://linrunner.de/tlp/ zu finden (die Infos in unserem Wiki werden von mir nicht mehr gepflegt und sind veraltet).

Fragen und Probleme einfach hier im Thread posten.

Für die erste Analyse benötige ich bitte stets den kompletten Output von

Code:
sudo tlp-stat
Anmerkung: ich fordere oft in der weiteren Analyse Teilausgaben an - das sollt ihr jedoch nicht selbstständig tun! Immer zuerst die vollständige Ausgabe.

Bitte auch die FAQ beachten!

Rückmeldungen der Art "alles funktioniert" sind natürlich auch gern gesehen ... :cool:
 
Zuletzt bearbeitet:
Charge = 58.2 [%]
Capacity = 166.0 [%]
Iwas stimmt mit der Kapazität nicht, vielleicht wäre es nicht ganz verkehrt deinen Akku einmal zu rekalbrieren und dann TLP neu zu konfigurieren.
Beitrag automatisch zusammengeführt:

hb@TP-X380-1:~$ sudo tlp setcharge
[sudo] password for hb:
Setting temporary charge thresholds for BAT0:
start = 65
stop = 70
Dieser Befehl setzt die Ladeschwellen nur vorübergehend auf 65/70, steht ja auch da.

Welche Werte willst du denn dauerhaft haben?
 
Ich hätte gerne fest 65/70. Habe nochmal die SSD mit Windows 11 installiert. Mit dem Lenovo Vantage Tool klappt das. Dann lädt er auch nur bis 70 % und beginnt bei 65 %. Dort wird die Kapazität korrekt erkannt. Nur unter Kubuntu klappt das nicht.

Habe auch die alte Batterie nochmal eingebaut und damit die SSD mit Kubuntu gebootet. Gleiche Ausgabewerte von
/sys/class/power_supply/BAT0/charge_control_start_threshold = 198 [%]
/sys/class/power_supply/BAT0/charge_control_end_threshold = 198 [%]

Dann wieder zurück: Neue Batterie ist wieder drin. Ebenso die SSD mit Kubuntu.

Frage: Woher kommen die Werte von /sys/class/power_supply/BAT0/charge_control_... ? Werden die irgenwo aus der Hardware ausgelesen oder sind die in einer anderen Datei hinterlegt?
Oder umgekehrt gefragt: Was kann die Werte beeinflussen? Gibt es da Parameter?
 
In der Datei /etc/tlp. conf wurde TLP_ENABLE=1 gesetzt (ohne Raute natürlich) und
START_CHARGE_THRESH_BAT0=80
STOP_CHARGE_THRESH_BAT0=90

Das passt nicht zu:
hb@TP-X380-1:~$ sudo tlp setcharge
[sudo] password for hb:
Setting temporary charge thresholds for BAT0:
start = 65
stop = 70
Die Schwellen-Werte die tlp setcharge verwendet, wenn keine weiteren Parameter angegeben sind, stehen auch so in deiner Konfigurationsdatei. Es beschleunigt die Analyse, wenn Du einfach die komplette Ausgabe von tlp-stat zeigst. Dort steht dann auch deine tatsächliche Konfiguration. Der 1. Post dieses Threads ist wirklich ernst gemeint :cool: .

+++ ThinkPad Battery Status: BAT0 (Main / Internal)
/sys/class/power_supply/BAT0/manufacturer = SMP
/sys/class/power_supply/BAT0/model_name = 01AV433
/sys/class/power_supply/BAT0/cycle_count = 2
/sys/class/power_supply/BAT0/energy_full_design = 30760 [mWh]
/sys/class/power_supply/BAT0/energy_full = 51070 [mWh]
/sys/class/power_supply/BAT0/energy_now = 29710 [mWh]
Sieht so aus, als ob dein Akku spinnt. Nennkapazität (energy_full_design = 30760 [mWh]) dürfte kaum zutreffen, dein Modell hat laut meiner Recherche 51 Wh. Die letzte erreichte Kapazität (energy_full = 51070 [mWh]) passt hingegen.

/sys/class/power_supply/BAT0/charge_control_start_threshold = 198 [%]
/sys/class/power_supply/BAT0/charge_control_end_threshold = 198 [%]
Solche Werte spinnerten Werte hab ich noch nie gesehen.

Bevor Du denn Akku austauschst, solltest Du folgendes versuchen:

1. ThinkPad ganz herunterfahren, dann Emergency Reset Hole auf der Unterseite betätigen mit einer Büroklammer

Hilft das nicht, dann würde ich noch:

2. Bottom Cover abbauen und das Kabel des Akkus kurze Zeit abstecken
Beitrag automatisch zusammengeführt:

ps. meine Antwort hab ich verfasst ohne deinen letzten Post zu kennen. Mach auf jeden Fall mal den Emergency Reset. Vielleicht spinnt nicht der Akku sondern der Embedded Controller (EC), der die Werte per ACPI an den Kernel liefert. Alles was tlp-stat zum Akku anzeigt, kommt auf diesem Weg.
 
Hallo desertstorm, hallo linrunner,

zu allererst: Sorry für das nicht-Anhängen des kompletten tlp-stat-Textes. Hier gleich mal korrigiert.

@ linrunner: Habe Emergency-Resets durchgeführt. Jeweils mit und ohne Batterien (CR2023 und Hauptakku) Siehe Bild, dass ich diese abgeklemmt hatte. Thema hat sich leider nicht verändert. Danke für die Tipps. Ich denke aber, dass ich mit dem Zustand, wie er jetzt ist, leben werden muss. Und da die Ladewerte auf 65/70 stehen, ist das OK für mich.
Zur Info: Habe hier noch ein ThinkPad 260 und 370. Beide funktionieren übrigens mit neuer Batterie und Deinem tool einwandfrei.

Euch alles Gute und nochmals VIELEN DANK für die Unterstützung!
 

Anhänge

Hallo

ich habe hier ein X13 Gen1 mit i7 10510 auf dem neu Linux Mint Cinnamon 21.1 mit Linux Kernel 5.15.0-67-generic installiert wurde. Leider funktioniert TLP hier nicht.

Ich bin der Meinung, das ich es wie üblich installiert habe, aber ich bekomme dei TLP start diese Fehlermeldung:

Code:
Error: tlp.service is not enabled, power saving will not apply on boot.
>>> Invoke 'systemctl enable tlp.service' to correct this!


Ich habe versucht es mit google zu lösen, aber mit den Hinweisen die ich englischen Foren gefunden habe komme ich leider nicht weiter.
 
@diwo Wozu googlen? :unsure: In der Meldung steht doch, welcher Befehl einzugeben ist. Ein sudo könntest Du noch ergänzen:
Bash:
sudo systemctl enable tlp.service
 
Oh Mist ... mein englisch ist eher schlecht.
Ich glaube ich hatte das eingegeben, aber vermutlich ohne sudo, da ich mir nicht sicher war das das wirklich ein Befehl zum eingeben in die Konsole ist.

Sorry und vielen Dank
 
Moin,

an einem T500 beiße ich mir gerade die Zähne aus.
Das kann doch nicht sein:

Code:
mint@mint:~$ sudo tlp-stat -b
--- TLP 1.3.1 --------------------------------------------

+++ Battery Features: Charge Thresholds and Recalibrate
natacpi    = inactive (ThinkPad not supported)
tpacpi-bat = inactive (ThinkPad not supported)
tp-smapi   = inactive (kernel module 'tp_smapi' load error)

+++ Battery Status: BAT0
/sys/class/power_supply/BAT0/manufacturer                   = SONY
/sys/class/power_supply/BAT0/model_name                     = 42T4777
/sys/class/power_supply/BAT0/cycle_count                    = (not supported)
/sys/class/power_supply/BAT0/energy_full_design             =  56160 [mWh]
/sys/class/power_supply/BAT0/energy_full                    =  47010 [mWh]
/sys/class/power_supply/BAT0/energy_now                     =  46540 [mWh]
/sys/class/power_supply/BAT0/power_now                      =      0 [mW]
/sys/class/power_supply/BAT0/status                         = Charging

Charge                                                      =   99.0 [%]
Capacity                                                    =   83.7 [%]

Installiert tlp, tlp-stat, tp-smapi-dkms

Code:
~$ sudo modprobe -v tp_smapi
insmod /lib/modules/5.4.0-26-generic/extra/thinkpad_ec.ko
modprobe: ERROR: could not insert 'tp_smapi': No such device or address
Code:
Error: battery charge thresholds not available.

Das T500 ist doch wirklich alt genug für die Ladeschwellen. Was mache ich falsch?!
 
--- TLP 1.3.1 --------------------------------------------
Steinalte TLP Version. Bitte auf 1.5 updaten, dort sind die Diagnoseausgaben teilweise verbessert.
insmod /lib/modules/5.4.0-26-generic/extra/thinkpad_ec.ko
Genauso steinalte Kernelversion. Zudem zeigt das -26, dass sie schon ewig keine Security Updates mehr gesehen hat.
modprobe: ERROR: could not insert 'tp_smapi': No such device or address
Könnte ein Problem beim DKMS Build sein; oder mit der Version des tp-smapi-dkms; oder hast Du eventuell vergessen zu erwähnen, dass kein originales BIOS am Start ist?
Was mache ich falsch?!
Lass mich überlegen: den ersten Post nicht befolgt und statt der geforderten vollständigen tlp-stat Ausgabe einen Ausschnitt deiner Wahl gepostet.
Somit den Support erschwert, weil keine Infos zum System, zur Distri, zum BIOS usw. usf. - Zeitverzug durch notwendige Nachfragen meinerseits.

Im Sinne der Datensparsamkeit, des Klimaschutzes und weil heute Freitag ist, würde ich mich mit der Ausgabe von

Code:
sudo tlp-stat --cdiff -s -b

zufrieden geben. Außerdem bitte:

Code:
dkms status
dpkg -l | grep dkms
 
Zuletzt bearbeitet:
Ich hatte ursprünglich durchaus ein aktuelles System mint 21 laufen mit tlp1.5, das sich gleich verhielt. Daher war ich extra (!) probeweise auf ein älteres Livesystem gegangen, da ich in der Vergangenheit nie Probleme mit tlp hatte.

Frisch installiert und top aktuell jetzt: Debian 11 STABLE, alles im Standard.
Das T500 ist frisch gebraucht gekauft, ich verschweige also nichts absichtlich. :-(

Bios:
Code:
id:   
firmware
description:     BIOS
vendor:     LENOVO
physical id:     
0
version:     6FET56WW (2.02 )
date:     01/09/2009
size:     128KiB
capacity:     8MiB
capabilities:     pci pcmcia pnp upgrade shadowing escd cdboot bootselect socketedrom edd acpi usb biosbootspecification

Code:
# tlp-stat --cdiff -s -b
Usage: tlp-stat [ -b | --battery   | -c | --config    |
                  -d | --disk      | -e | --pcie      |
                  -g | --graphics  | -p | --processor |
                  -r | --rfkill    | -s | --system    |
                  -t | --temp      | -u | --usb       |
                  -w | --warn      | -v | --verbose   |
                  -P | --pev       |    | --psup      |
                  -T | --trace ]

daher einmal komplett, trotz Klimabilanz:
Code:
tlp-stat
--- TLP 1.3.1 --------------------------------------------

+++ Configured Settings:
defaults.conf L0004: TLP_ENABLE="1"
defaults.conf L0005: TLP_PERSISTENT_DEFAULT="0"
defaults.conf L0006: DISK_IDLE_SECS_ON_AC="0"
defaults.conf L0007: DISK_IDLE_SECS_ON_BAT="2"
defaults.conf L0008: MAX_LOST_WORK_SECS_ON_AC="15"
defaults.conf L0009: MAX_LOST_WORK_SECS_ON_BAT="60"
defaults.conf L0010: CPU_ENERGY_PERF_POLICY_ON_AC="balance_performance"
defaults.conf L0011: CPU_ENERGY_PERF_POLICY_ON_BAT="balance_power"
defaults.conf L0012: SCHED_POWERSAVE_ON_AC="0"
defaults.conf L0013: SCHED_POWERSAVE_ON_BAT="1"
defaults.conf L0014: NMI_WATCHDOG="0"
defaults.conf L0015: DISK_DEVICES="nvme0n1 sda"
defaults.conf L0016: DISK_APM_LEVEL_ON_AC="254 254"
defaults.conf L0017: DISK_APM_LEVEL_ON_BAT="128 128"
defaults.conf L0018: DISK_IOSCHED="keep keep"
defaults.conf L0019: SATA_LINKPWR_ON_AC="med_power_with_dipm max_performance"
defaults.conf L0020: SATA_LINKPWR_ON_BAT="med_power_with_dipm min_power"
defaults.conf L0021: AHCI_RUNTIME_PM_TIMEOUT="15"
defaults.conf L0022: PCIE_ASPM_ON_AC="default"
defaults.conf L0023: PCIE_ASPM_ON_BAT="default"
defaults.conf L0024: RADEON_POWER_PROFILE_ON_AC="default"
defaults.conf L0025: RADEON_POWER_PROFILE_ON_BAT="default"
defaults.conf L0026: RADEON_DPM_PERF_LEVEL_ON_AC="auto"
defaults.conf L0027: RADEON_DPM_PERF_LEVEL_ON_BAT="auto"
defaults.conf L0028: WIFI_PWR_ON_AC="off"
defaults.conf L0029: WIFI_PWR_ON_BAT="on"
defaults.conf L0030: WOL_DISABLE="Y"
defaults.conf L0031: SOUND_POWER_SAVE_ON_AC="0"
defaults.conf L0032: SOUND_POWER_SAVE_ON_BAT="1"
defaults.conf L0033: SOUND_POWER_SAVE_CONTROLLER="Y"
defaults.conf L0034: BAY_POWEROFF_ON_AC="0"
defaults.conf L0035: BAY_POWEROFF_ON_BAT="0"
defaults.conf L0036: BAY_DEVICE="sr0"
defaults.conf L0037: RUNTIME_PM_ON_AC="on"
defaults.conf L0038: RUNTIME_PM_ON_BAT="auto"
defaults.conf L0039: RUNTIME_PM_DRIVER_BLACKLIST="amdgpu mei_me nouveau nvidia pcieport radeon"
defaults.conf L0040: USB_AUTOSUSPEND="1"
defaults.conf L0041: USB_BLACKLIST_BTUSB="0"
defaults.conf L0042: USB_BLACKLIST_PHONE="0"
defaults.conf L0043: USB_BLACKLIST_PRINTER="1"
defaults.conf L0044: USB_BLACKLIST_WWAN="0"
defaults.conf L0045: USB_AUTOSUSPEND_DISABLE_ON_SHUTDOWN="0"
defaults.conf L0046: RESTORE_DEVICE_STATE_ON_STARTUP="0"
defaults.conf L0047: RESTORE_THRESHOLDS_ON_BAT="0"
defaults.conf L0048: NATACPI_ENABLE="1"
defaults.conf L0049: TPACPI_ENABLE="1"
defaults.conf L0050: TPSMAPI_ENABLE="1"

+++ System Info
System         = LENOVO ThinkPad T500 2089WBK
BIOS           = 6FET56WW (2.02 )
Release        = Debian GNU/Linux 11 (bullseye)
Kernel         = 5.10.0-21-amd64 #1 SMP Debian 5.10.162-1 (2023-01-21) x86_64
/proc/cmdline  = BOOT_IMAGE=/vmlinuz-5.10.0-21-amd64 root=UUID=1c3f00dc-2ebd-4385-8eb6-5756cc64fca8 ro quiet
Init system    = systemd v247 (247.3-7+deb11u1)
Boot mode      = BIOS (CSM, Legacy)

+++ TLP Status
State          = enabled
RDW state      = enabled
Last run       = 11:04:22,    876 sec(s) ago
Mode           = AC
Power source   = AC

+++ Processor
CPU model      = Intel(R) Core(TM)2 Duo CPU     P8400  @ 2.26GHz

/sys/devices/system/cpu/cpu0/cpufreq/scaling_driver    = acpi-cpufreq
/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor  = schedutil
/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors = performance schedutil
/sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq  =   800000 [kHz]
/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq  =  2267000 [kHz]
/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies = 2267000 2266000 1600000 800000 [kHz]

/sys/devices/system/cpu/cpu1/cpufreq/scaling_driver    = acpi-cpufreq
/sys/devices/system/cpu/cpu1/cpufreq/scaling_governor  = schedutil
/sys/devices/system/cpu/cpu1/cpufreq/scaling_available_governors = performance schedutil
/sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq  =   800000 [kHz]
/sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq  =  2267000 [kHz]
/sys/devices/system/cpu/cpu1/cpufreq/scaling_available_frequencies = 2267000 2266000 1600000 800000 [kHz]

/sys/devices/system/cpu/cpufreq/boost                  = (not available)

Intel EPB: unsupported CPU.

/sys/module/workqueue/parameters/power_efficient       = N
/proc/sys/kernel/nmi_watchdog                          = 0

+++ Temperatures
/proc/acpi/ibm/thermal = 48 37 34 -128 29 -128 27 -128 [°C]
/proc/acpi/ibm/fan     =  2002 [/min]

+++ File System
/proc/sys/vm/laptop_mode               =     0
/proc/sys/vm/dirty_writeback_centisecs =  1500
/proc/sys/vm/dirty_expire_centisecs    =  1500
/proc/sys/vm/dirty_ratio               =    20
/proc/sys/vm/dirty_background_ratio    =    10

+++ Storage Devices
Devices = nvme0n1 sda

/dev/nvme0n1: not present.

/dev/sda:
  Type      = ATA
  Model     = Samsung SSD 840 PRO Series             
  Firmware  = DXM05B0Q
  APM Level = none/disabled
  Status    = active/idle
  TRIM      = supported
  Scheduler = [mq-deadline] none (multi queue)

  Runtime PM: control = on, autosuspend_delay_ms =   -1

+++ AHCI Link Power Management (ALPM)
/sys/class/scsi_host/host1/link_power_management_policy  = med_power_with_dipm
/sys/class/scsi_host/host3/link_power_management_policy  = med_power_with_dipm
/sys/class/scsi_host/host4/link_power_management_policy  = med_power_with_dipm
/sys/class/scsi_host/host5/link_power_management_policy  = med_power_with_dipm

+++ AHCI Host Controller Runtime Power Management
/sys/bus/pci/devices/0000:00:03.2/ata1/power/control = on
/sys/bus/pci/devices/0000:00:03.2/ata2/power/control = on
/sys/bus/pci/devices/0000:00:1f.2/ata3/power/control = on
/sys/bus/pci/devices/0000:00:1f.2/ata4/power/control = on
/sys/bus/pci/devices/0000:00:1f.2/ata5/power/control = on
/sys/bus/pci/devices/0000:00:1f.2/ata6/power/control = on

+++ Docks and Device Bays
/sys/devices/platform/dock.0: battery_bay   = no battery
/sys/devices/platform/dock.1: ata_bay       = drive present
/sys/devices/platform/dock.2: dock_station  = undocked

+++ Intel Graphics
/sys/module/i915/parameters/enable_dc        = -1 (use per-chip default)
/sys/module/i915/parameters/enable_fbc       = -1 (use per-chip default)
/sys/module/i915/parameters/enable_psr       = -1 (use per-chip default)
/sys/module/i915/parameters/modeset          = -1 (use per-chip default)

+++ Wireless
bluetooth = none (no device)
wifi      = on
wwan      = on

wlp3s0(iwlwifi)               : wifi, connected, power management = off
wwx028037ec0200(cdc_ether)    : wwan, not connected

+++ Audio
/sys/module/snd_hda_intel/parameters/power_save            = 0
/sys/module/snd_hda_intel/parameters/power_save_controller = N

+++ PCIe Active State Power Management
/sys/module/pcie_aspm/parameters/policy = [default] performance powersave powersupersave (using BIOS preferences)

+++ Runtime Power Management
Device blacklist = (not configured)
Driver blacklist = amdgpu mei_me nouveau nvidia pcieport radeon

/sys/bus/pci/devices/0000:00:00.0/power/control = on   (0x060000, Host bridge, no driver)
/sys/bus/pci/devices/0000:00:02.0/power/control = on   (0x030000, VGA compatible controller, i915)
/sys/bus/pci/devices/0000:00:02.1/power/control = on   (0x038000, Display controller, no driver)
/sys/bus/pci/devices/0000:00:03.0/power/control = on   (0x078000, Communication controller, mei_me)
/sys/bus/pci/devices/0000:00:03.2/power/control = on   (0x010185, IDE interface, ata_generic)
/sys/bus/pci/devices/0000:00:03.3/power/control = on   (0x070002, Serial controller, serial)
/sys/bus/pci/devices/0000:00:19.0/power/control = on   (0x020000, Ethernet controller, e1000e)
/sys/bus/pci/devices/0000:00:1a.0/power/control = on   (0x0c0300, USB controller, uhci_hcd)
/sys/bus/pci/devices/0000:00:1a.1/power/control = on   (0x0c0300, USB controller, uhci_hcd)
/sys/bus/pci/devices/0000:00:1a.2/power/control = on   (0x0c0300, USB controller, uhci_hcd)
/sys/bus/pci/devices/0000:00:1a.7/power/control = on   (0x0c0320, USB controller, ehci-pci)
/sys/bus/pci/devices/0000:00:1b.0/power/control = on   (0x040300, Audio device, snd_hda_intel)
/sys/bus/pci/devices/0000:00:1c.0/power/control = on   (0x060400, PCI bridge, pcieport)
/sys/bus/pci/devices/0000:00:1c.1/power/control = on   (0x060400, PCI bridge, pcieport)
/sys/bus/pci/devices/0000:00:1c.3/power/control = on   (0x060400, PCI bridge, pcieport)
/sys/bus/pci/devices/0000:00:1c.4/power/control = on   (0x060400, PCI bridge, pcieport)
/sys/bus/pci/devices/0000:00:1d.0/power/control = on   (0x0c0300, USB controller, uhci_hcd)
/sys/bus/pci/devices/0000:00:1d.1/power/control = on   (0x0c0300, USB controller, uhci_hcd)
/sys/bus/pci/devices/0000:00:1d.2/power/control = on   (0x0c0300, USB controller, uhci_hcd)
/sys/bus/pci/devices/0000:00:1d.7/power/control = on   (0x0c0320, USB controller, ehci-pci)
/sys/bus/pci/devices/0000:00:1e.0/power/control = on   (0x060401, PCI bridge, no driver)
/sys/bus/pci/devices/0000:00:1f.0/power/control = on   (0x060100, ISA bridge, lpc_ich)
/sys/bus/pci/devices/0000:00:1f.2/power/control = on   (0x010601, SATA controller, ahci)
/sys/bus/pci/devices/0000:00:1f.3/power/control = on   (0x0c0500, SMBus, i801_smbus)
/sys/bus/pci/devices/0000:03:00.0/power/control = on   (0x028000, Network controller, iwlwifi)
/sys/bus/pci/devices/0000:15:00.0/power/control = on   (0x060700, CardBus bridge, yenta_cardbus)
/sys/bus/pci/devices/0000:15:00.1/power/control = on   (0x0c0010, FireWire (IEEE 1394), firewire_ohci)
/sys/bus/pci/devices/0000:15:00.2/power/control = on   (0x080500, SD Host controller, sdhci-pci)
/sys/bus/pci/devices/0000:15:00.4/power/control = on   (0x088000, System peripheral, r592)
/sys/bus/pci/devices/0000:15:00.5/power/control = on   (0x088000, System peripheral, r852)

+++ USB
Autosuspend         = enabled
Device whitelist    = (not configured)
Device blacklist    = (not configured)
Bluetooth blacklist = disabled
Phone blacklist     = disabled
WWAN blacklist      = disabled

Bus 008 Device 002 ID 0bdb:1900 control = auto, autosuspend_delay_ms = 2000 -- Ericsson Business Mobile Networks BV F3507g Mobile Broadband Module (cdc_acm, cdc_wdm, cdc_ether)
Bus 008 Device 001 ID 1d6b:0002 control = auto, autosuspend_delay_ms =    0 -- Linux Foundation 2.0 root hub (hub)
Bus 007 Device 001 ID 1d6b:0001 control = auto, autosuspend_delay_ms =    0 -- Linux Foundation 1.1 root hub (hub)
Bus 005 Device 001 ID 1d6b:0001 control = auto, autosuspend_delay_ms =    0 -- Linux Foundation 1.1 root hub (hub)
Bus 004 Device 001 ID 1d6b:0001 control = auto, autosuspend_delay_ms =    0 -- Linux Foundation 1.1 root hub (hub)
Bus 006 Device 001 ID 1d6b:0002 control = auto, autosuspend_delay_ms =    0 -- Linux Foundation 2.0 root hub (hub)
Bus 003 Device 001 ID 1d6b:0001 control = auto, autosuspend_delay_ms =    0 -- Linux Foundation 1.1 root hub (hub)
Bus 002 Device 001 ID 1d6b:0001 control = auto, autosuspend_delay_ms =    0 -- Linux Foundation 1.1 root hub (hub)
Bus 001 Device 001 ID 1d6b:0001 control = auto, autosuspend_delay_ms =    0 -- Linux Foundation 1.1 root hub (hub)

+++ Battery Features: Charge Thresholds and Recalibrate
natacpi    = inactive (ThinkPad not supported)
tpacpi-bat = inactive (ThinkPad not supported)
tp-smapi   = inactive (kernel module 'tp_smapi' load error)

+++ Battery Status: BAT0
/sys/class/power_supply/BAT0/manufacturer                   = SONY
/sys/class/power_supply/BAT0/model_name                     = 42T4777
/sys/class/power_supply/BAT0/cycle_count                    = (not supported)
/sys/class/power_supply/BAT0/energy_full_design             =  56160 [mWh]
/sys/class/power_supply/BAT0/energy_full                    =  47010 [mWh]
/sys/class/power_supply/BAT0/energy_now                     =  47010 [mWh]
/sys/class/power_supply/BAT0/power_now                      =      0 [mW]
/sys/class/power_supply/BAT0/status                         = Full

Charge                                                      =  100.0 [%]
Capacity                                                    =   83.7 [%]

+++ Recommendations
* Install smartmontools for disk drive health info

Und:
Code:
# dkms status
dpkg -l | grep dkms
acpi-call, 1.1.0, 5.10.0-21-amd64, x86_64: installed
tp_smapi, 0.43, 5.10.0-21-amd64, x86_64: installed
ii  acpi-call-dkms                        1.1.0-6                          all          Kernel module that enables you to call ACPI methods
ii  dkms                                  2.8.4-3                          all          Dynamic Kernel Module Support Framework
ii  tp-smapi-dkms                         0.43-1                           all          ThinkPad hardware/firmware access modules source - dkms version

Dankeschön!
 
Tja, wenn das tp_smapi Modul partout nicht laden will, dann klemmt wohl irgendwas an der Hardware oder der EC Firmware. Das BIOS ist ja ebenfalls antik. Ich würde das mal als erstes updaten https://support.lenovo.com/us/en/downloads/migr-70354 und auf Defaultwerte zurücksetzen. Ausserdem könnte man noch den EC zurücksetzen: Netzteil ab, Akku raus, Power mind. 30s gedrückt halten ...

Ist jedenfalls kein TLP-Problem.
 
JUBEL!

EC zurücksetzen änderte nichts. Daher die verlinkte BIOS- CD stilecht auf CD gebrannt und das Ur- Bios aktualisiert. Die Defaults geladen. Ein Vorbesitzer hatte zumindest die Virtualisierungstechnologie ausgeschaltet. Wer weiß, was noch passiert war.

Und nun:
Code:
# /usr/sbin/tlp setcharge 60 80 BAT0
Setting temporary charge thresholds for BAT0:
  start =  60
  stop  =  80

Danke!
 
Habe ich gemacht. Ob TLP 1.5 für die Core Duo und Core Duo besser ist, weiß ich nicht:
Code:
# tlp start
Error in configuration at CPU_SCALING_GOVERNOR_ON_AC="ondemand": governor not available. Skipped.
TLP started in AC mode (auto).

Mit der Standard CPU-Skalierung "shedutil" laufen die alten CPUs dauerhaft auf hohen Taktungen. Ich bin daher zurück zu TLP 1.3 gewechselt.
 
Mit der Standard CPU-Skalierung "shedutil" laufen die alten CPUs dauerhaft auf hohen Taktungen. Ich bin daher zurück zu TLP 1.3 gewechselt.
Du kannst keinen ondemand Governor setzen, wenn dein Kernel keinen anbietet:
/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors = performance schedutil
Der Unterschied zwischen 1.3.1 und 1.5 ist lediglich, dass 1.5 darauf aufmerksam macht und 1.3.1 nicht. Die Einstellung wird bei beiden ignoriert. Vergleiche mal die beiden tlp-stat Ausgaben.
 
Ich beobachte die Ausgabe der bordeigenen Frequenzüberwachung. Das müsste lt. ps -x dieser hier sein:

Code:
/usr/lib/x86_64-linux-gnu/xfce4/panel/wrapper-2.0 /usr/lib/x86_64-linux-gnu/xfce4/panel/plugins/libnotification-plugin.so 10 14680078 notification-plugin Benachrichtigungserweiterung Benachrichtigungserweiterung für die Xfce-Leiste

Dieses Infotool meldet umgehend die in tlp.conf eingestellten Parameter, ob schedutil im Standard, oder conservative und powersave. Da auch sich das Verhalten der Taktung umgehend ändert, was auch an den Temperaturen schön zu spüren ist, kann zumindest Dein tlp 1.3 den Kernel Kernel 5.10.0 offenbar doch gut ansprechen. Damit bin ja schon glücklich, denn das ist einer der beiden Gründe, warum tlp bei mir immer mit das erste ist, was auf den alten Notebooks installiert wird. Bei T480 dagegen ändert sich beim gleichen Kernel nichts, hier taktet die CPU immer nur auf Anforderung hoch und reagiert nicht auf diesbezügliche Änderungen in tlp.conf.
 
Hola,


mein T490s läuft unter Debian Bullseye mit dem 5.1er Kernel und TLP rund, der Backportkernel (6.1) verwandelt die Kiste in eine Heizplatte ...

Wo setze ich denn da an?

Code:
root@t490:~# tlp-stat -s -b -d --cdiff
--- TLP 1.5.0 --------------------------------------------

+++ Configured Settings (only differences to defaults):
/etc/tlp.d/00-mb-.conf L0019: DISK_DEVICES="nvme0n1 sda sdb"
/etc/tlp.d/00-mb-.conf L0014: AHCI_RUNTIME_PM_ON_BAT="on"
/etc/tlp.d/00-mb-.conf L0001: SOUND_POWER_SAVE_ON_AC="0"
/etc/tlp.d/00-mb-.conf L0002: SOUND_POWER_SAVE_ON_BAT="0"
/etc/tlp.d/00-mb-.conf L0003: SOUND_POWER_SAVE_CONTROLLER="N"
/etc/tlp.d/00-mb-.conf L0004: RESTORE_THRESHOLDS_ON_BAT="1"
/etc/tlp.d/00-mb-.conf L0005: TPSMAPI_ENABLE="0"
/etc/tlp.d/00-mb-.conf L0006: CPU_HWP_DYN_BOOST_ON_AC="0"
/etc/tlp.d/00-mb-.conf L0007: CPU_HWP_DYN_BOOST_ON_BAT="1"
/etc/tlp.d/00-mb-.conf L0008: DEVICES_TO_DISABLE_ON_STARTUP="bluetooth"
/etc/tlp.d/00-mb-.conf L0009: START_CHARGE_THRESH_BAT0="45"
/etc/tlp.d/00-mb-.conf L0010: STOP_CHARGE_THRESH_BAT0="100"
/etc/tlp.d/00-mb-.conf L0011: START_CHARGE_THRESH_BAT1="45"
/etc/tlp.d/00-mb-.conf L0012: STOP_CHARGE_THRESH_BAT1="100"
/etc/tlp.d/00-mb-.conf L0013: TLP_PS_IGNORE="USB BAT"
/etc/tlp.d/00-mb-.conf L0015: DEVICES_TO_DISABLE_ON_LAN_CONNECT="wifi wwan"
/etc/tlp.d/00-mb-.conf L0016: DEVICES_TO_ENABLE_ON_LAN_DISCONNECT="wifi"
/etc/tlp.d/00-mb-.conf L0017: DEVICES_TO_DISABLE_ON_DOCK="wifi wwan"
/etc/tlp.d/00-mb-.conf L0018: DEVICES_TO_ENABLE_ON_UNDOCK="wifi"

+++ System Info
System         = LENOVO ThinkPad T490s 20NXCTO1WW
BIOS           = N2JETA1W (1.79 )
OS Release     = Debian GNU/Linux 11 (bullseye)
Kernel         = 5.10.0-21-amd64 #1 SMP Debian 5.10.162-1 (2023-01-21) x86_64
/proc/cmdline  = BOOT_IMAGE=/vmlinuz-5.10.0-21-amd64 root=/dev/mapper/t490--vg-root ro quiet
Init system    = systemd v247 (247.3-7+deb11u2)
Boot mode      = UEFI

+++ TLP Status
State          = enabled
RDW state      = enabled
Last run       = 11:58:14 AM, 118048 sec(s) ago
Mode           = AC
Power source   = AC

+++ Disks
Devices = nvme0n1 sda sdb

/dev/nvme0n1:
  Type       = NVMe
  Disk ID    = nvme-WDC_PC_SN730_SDBQNTY-512G-1001_193987801401
  Model      = WDC PC SN730 SDBQNTY-512G-1001      
  Firmware   = 11170101
  Temp       = 39 °C
  Scheduler  = [none] mq-deadline (multi queue)

  Runtime PM:
    /sys/block/nvme0n1/device/power/control = on, autosuspend_delay_ms = (not available)

  SMART info:
    Critical Warning:                   0x00
    Temperature:                        39 Celsius
    Available Spare:                    100%
    Available Spare Threshold:          10%
    Percentage Used:                    17%
    Data Units Written:                 95,154,971 [48.7 TB]
    Power Cycles:                       1,926
    Power On Hours:                     6,495
    Unsafe Shutdowns:                   378
    Media and Data Integrity Errors:    0

/dev/sda: not present.

/dev/sdb: not present.

+++ Battery Care
Plugin: thinkpad
Supported features: charge thresholds, recalibration
Driver usage:
* natacpi (thinkpad_acpi) = active (charge thresholds)
* tpacpi-bat (acpi_call)  = active (recalibration)
Parameter value ranges:
* START_CHARGE_THRESH_BAT0/1:  0(off)..96(default)..99
* STOP_CHARGE_THRESH_BAT0/1:   1..100(default)

+++ ThinkPad Battery Status: BAT0 (Main / Internal)
/sys/class/power_supply/BAT0/manufacturer                   = SMP
/sys/class/power_supply/BAT0/model_name                     = 02DL014
/sys/class/power_supply/BAT0/cycle_count                    =     54
/sys/class/power_supply/BAT0/energy_full_design             =  57020 [mWh]
/sys/class/power_supply/BAT0/energy_full                    =  53740 [mWh]
/sys/class/power_supply/BAT0/energy_now                     =  28180 [mWh]
/sys/class/power_supply/BAT0/power_now                      =      0 [mW]
/sys/class/power_supply/BAT0/status                         = Not charging

/sys/class/power_supply/BAT0/charge_control_start_threshold =     45 [%]
/sys/class/power_supply/BAT0/charge_control_end_threshold   =    100 [%]
tpacpi-bat.BAT0.forceDischarge                              =      0

Charge                                                      =   52.4 [%]
Capacity                                                    =   94.2 [%]

root@t490:~#

Code:
root@t490:~# apt policy thermald
thermald:
  Installed: 2.4.2-1
  Candidate: 2.4.2-1
  Version table:
 *** 2.4.2-1 500
        500 https://deb.debian.org/debian bullseye/main amd64 Packages
        100 /var/lib/dpkg/status

- thermald habe ich noch drauf.
- https://linrunner.de/tlp/settings/processor.html
 
Zuletzt bearbeitet:
Dieses Infotool meldet umgehend die in tlp.conf eingestellten Parameter, ob schedutil im Standard, oder conservative und powersave.
Das würde bedeuten, dass dein Kernel in scaling_available_governors unvollständige Angaben zu seinen Fähigkeiten macht. Interessant. Ich werde mal das X200 herauskramen.

Falls sich das bestätigt, müsste ich für 1.6 die Schreibstrategie anpassen. Statt scaling_available_governors zu glauben, erstmal jeglichen governor-String schreiben und dann prüfen obs geklappt hat.

EDITH sagt, das ist ja mal dreist:

1. Vorher:

/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor = schedutil
/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors = performance schedutil

2. Nach dem Schreiben von ondemand nach scaling_governor
/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor = ondemand
/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors = ondemand performance schedutil

Übrigens mit einem Kernel 6.0.0-6-amd64 von irgendwo aus dem Bookworm Entwicklungszyklus.

EDITH2: ich baue morgen mal eine geänderte Version für dich zum Testen.

@mcb: quatschst Du jetzt absichtlich dazwischen, um mich von der anderen Fehleranalyse abzuhalten? Warum zeigst Du Ausgaben für den problemlosen Kernel? Warum läßt Du ausgerechnet die Daten zur CPU weg? :rolleyes:
 
Zuletzt bearbeitet:
Ups ... hier die CPU:

Code:
root@t490:~# tlp-stat -p
--- TLP 1.5.0 --------------------------------------------

+++ Processor
CPU model      = Intel(R) Core(TM) i5-8265U CPU @ 1.60GHz

/sys/devices/system/cpu/cpu0/cpufreq/scaling_driver    = intel_pstate
/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor  = powersave
/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors = performance powersave
/sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq  =   400000 [kHz]
/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq  =  3900000 [kHz]
/sys/devices/system/cpu/cpu0/cpufreq/energy_performance_preference = balance_performance [HWP.EPP]
/sys/devices/system/cpu/cpu0/cpufreq/energy_performance_available_preferences = default performance balance_performance balance_power power

/sys/devices/system/cpu/cpu1..cpu7: omitted for clarity, use -v to show all

/sys/devices/system/cpu/intel_pstate/status            = active
/sys/devices/system/cpu/intel_pstate/min_perf_pct      =  10 [%]
/sys/devices/system/cpu/intel_pstate/max_perf_pct      = 100 [%]
/sys/devices/system/cpu/intel_pstate/no_turbo          =   0
/sys/devices/system/cpu/intel_pstate/hwp_dynamic_boost =   0
/sys/devices/system/cpu/intel_pstate/turbo_pct         =  65 [%]
/sys/devices/system/cpu/intel_pstate/num_pstates       =  36

/sys/module/workqueue/parameters/power_efficient       = N
/proc/sys/kernel/nmi_watchdog                          = 0

+++ Platform Profile
/sys/firmware/acpi/platform_profile                    = (not available)
/sys/firmware/acpi/platform_profile_choices            = (not available)
/sys/devices/platform/thinkpad_acpi/dytc_lapmode       = 0

Code:
root@t490:~# tlp-stat -p -s
--- TLP 1.5.0 --------------------------------------------

+++ System Info
System         = LENOVO ThinkPad T490s 20NXCTO1WW
BIOS           = N2JETA1W (1.79 )
OS Release     = Debian GNU/Linux 11 (bullseye)
Kernel         = 6.1.0-0.deb11.5-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.12-1~bpo11+1 (2023-03-05) x86_64
/proc/cmdline  = BOOT_IMAGE=/vmlinuz-6.1.0-0.deb11.5-amd64 root=/dev/mapper/t490--vg-root ro quiet
Init system    = systemd v247 (247.3-7+deb11u2)
Boot mode      = UEFI

+++ TLP Status
State          = enabled
RDW state      = enabled
Last run       = 11:25:28 AM,     94 sec(s) ago
Mode           = AC
Power source   = AC

+++ Processor
CPU model      = Intel(R) Core(TM) i5-8265U CPU @ 1.60GHz

/sys/devices/system/cpu/cpu0/cpufreq/scaling_driver    = intel_pstate
/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor  = powersave
/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors = performance powersave
/sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq  =   400000 [kHz]
/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq  =  3900000 [kHz]
/sys/devices/system/cpu/cpu0/cpufreq/energy_performance_preference = balance_performance [HWP.EPP]
/sys/devices/system/cpu/cpu0/cpufreq/energy_performance_available_preferences = default performance balance_performance balance_power power

/sys/devices/system/cpu/cpu1..cpu7: omitted for clarity, use -v to show all

/sys/devices/system/cpu/intel_pstate/status            = active
/sys/devices/system/cpu/intel_pstate/min_perf_pct      =  10 [%]
/sys/devices/system/cpu/intel_pstate/max_perf_pct      = 100 [%]
/sys/devices/system/cpu/intel_pstate/no_turbo          =   0
/sys/devices/system/cpu/intel_pstate/hwp_dynamic_boost =   0
/sys/devices/system/cpu/intel_pstate/turbo_pct         =  65 [%]
/sys/devices/system/cpu/intel_pstate/num_pstates       =  36

/sys/module/workqueue/parameters/power_efficient       = N
/proc/sys/kernel/nmi_watchdog                          = 0

+++ Platform Profile
/sys/firmware/acpi/platform_profile                    = balanced
/sys/firmware/acpi/platform_profile_choices            = low-power balanced performance
/sys/devices/platform/thinkpad_acpi/dytc_lapmode       = 0

Aber macht erstmal den anderen Kram, das hat noch Zeit bis Bookworm.
 
Zuletzt bearbeitet:
  • ok1.de
  • ok2.de
  • thinkstore24.de
  • Preiswerte-IT - Gebrauchte Lenovo Notebooks kaufen

Werbung

Zurück
Oben