- Registriert
- 22 Juni 2007
- Beiträge
- 13.273
Hallo,
die Fertigstellung hat sich etwas hingezogen, aber nun ist es endlich soweit . Ich bitte Euch alle um Mithilfe beim Beta-Test!
Was ist neu?
Highlights sind:
Was und wie soll ich testen?
Es gibt zwei Testziele:
Wo finde ich Pakete?
Pakete für Arch Linux, Fedora, Debian/Ubuntu: siehe Downloadseite.
Beta-Pakete für nicht genannte Distris kann ich selbst leider nicht anbieten. Unterstützer, die entsprechende Pakete bereitstellen sind jedoch willkommen!
Wie melde ich ein Problem mit der Beta-Version?
Bevor Ihr etwas meldet, prüft bitte ob das Problem auch dann auftritt, wenn:
Welche Ausgaben soll ich zeigen?
Stets die komplette Ausgabe von
Die Ausgaben könnt Ihr gerne zu Beginn Eures Tests posten.
Hinweis: weitere Angaben zu Eurem System benötige ich nicht; alles was ich darüber wissen möchte zeigt tlp-stat.
Vielen Dank im voraus fürs Testen!
___________________________________________________________________________________________
natacpi: die neue, native Kernel API für die Ladeschwellen
Was bisher geschah
Von jeher funktionieren Ladeschwellen beim ThinkPad nur mit Hilfe externer Kernel-Module (nicht im offiziellen Kernel enthalten):
Die Neuerung
Anfang 2018 hat ein Kernel-Entwickler (nicht ich) ein Kernel-Framework vorgestellt, mit dem sich herstellerspezifische Akku-Features im Filesystem unterhalb von /sys/class/power_supply/BAT[01]/ einbinden lassen: "natacpi". Dazu hat er als Referenzimplementierung Ladeschwellen für ThinkPads (charge_start_threshold, charge_stop_threshold) in das Kernel-Modul thinkpad_acpi integriert. Die Änderung gibt es seit 4.17, ein Bug beim Ansprechen des zweiten Akkus wurde mit 4.19 gefixt.
Was noch nicht funktioniert, ist das gesteuerte Entladen (force_discharge). Die zugehörigen Patches wurden noch nicht in den Kernel aufgenommen (der Entwickler ist leider etwas frustriert von den Qualitätsansprüchen des Maintainers des betreffenden Kernel Subsystems).
Wichtig: natacpi funktioniert nur für neuere Modelle, 2. siehe oben.
Einzelheiten zu natacpi sind hier zusammengetragen.
Was bedeutet natacpi für TLP?
TLP muss nun automatisch aus drei verschiedenen Verfahren (natacpi, tpacpi-bat, tp-smapi) wählen und tut das je Feature. Am einfachsten ist es an einem Beispiel erklärt:
ThinkPad T450s mit Kernel 4.19
Hier kommt also natacpi für die Ladeschwellen und tpacpi-bat für das gesteuerte Entladen zum Einsatz. Der User bekommt auch angezeigt, dass er tp-smapi nicht benötigt.
Jetzt das Ganze mit Kernel 4.15:
Erwartungsgemäß unterstützt 4.15 kein natacpi, also werden Ladeschwellen und gesteuertes Entladen über tpacpi-bat abgewickelt.
Zuletzt mit Kernel 5.0rc7 und den zusätzlichen Patches für force_discharge:
Hier wäre das eigentliche Ziel nun erreicht: natacpi ersetzt tpacpi-bat vollständig.
Zum Vergleich noch das X200 mit Kernel 5.0rc7:
Hier verwendet TLP erwartungsgemäß nur tp-smapi.
Bei nicht unterstützten Modellen (wie dem X200) weist natacpi übrigens einen Bug auf, der zu vielen Meldungen im Kernel-Log führt – siehe hier.
Was muss ich konfigurieren für natacpi?
Zunächst einmal nichts – TLP nutzt natacpi automatisch, sobald der Kernel es anbietet (und das ThinkPad es unterstützt).
In der TLP-Konfiguration finden sich jedoch neue Schalter, mit denen man jedes Verfahren einzeln ein- und ausschalten kann:
die Fertigstellung hat sich etwas hingezogen, aber nun ist es endlich soweit . Ich bitte Euch alle um Mithilfe beim Beta-Test!
Was ist neu?
Highlights sind:
- ThinkPad Akku: Unterstützung der neuen, nativen Kernel API für die Ladeschwellen (natacpi). Näheres beschreibe ich weiter unten.
- Festplatten: Unterstützung von NVMe SSDs sowie USB Platten
- tlp bat/ac: manuelle Einstellungen bleiben erhalten (bis zum Neustart)
- tlp-rdw: neuer Befehl, um RDW temporär zu deaktivieren (bis zum Neustart)
Was und wie soll ich testen?
Es gibt zwei Testziele:
- Prüfung alter Funktionalität (Regressionstest): TLP installieren, dabei vorhandene Konfiguration beibehalten und einige Tage schauen ob weiterhin alles funktioniert
- Prüfung neuer Funktionalität: TLP installieren, neues Feature konfigurieren bzw. ausprobieren – geht natürlich nur mit der passenden Hardware
Wo finde ich Pakete?
Pakete für Arch Linux, Fedora, Debian/Ubuntu: siehe Downloadseite.
Beta-Pakete für nicht genannte Distris kann ich selbst leider nicht anbieten. Unterstützer, die entsprechende Pakete bereitstellen sind jedoch willkommen!
Wie melde ich ein Problem mit der Beta-Version?
Bevor Ihr etwas meldet, prüft bitte ob das Problem auch dann auftritt, wenn:
- die Vorversion 1.1 installiert ist; bzw.
- TLP deinstalliert ist
Welche Ausgaben soll ich zeigen?
Stets die komplette Ausgabe von
Code:
sudo tlp-stat
- Im Akkubetrieb
- Am Netzteil
Die Ausgaben könnt Ihr gerne zu Beginn Eures Tests posten.
Hinweis: weitere Angaben zu Eurem System benötige ich nicht; alles was ich darüber wissen möchte zeigt tlp-stat.
Vielen Dank im voraus fürs Testen!
___________________________________________________________________________________________
natacpi: die neue, native Kernel API für die Ladeschwellen
Was bisher geschah
Von jeher funktionieren Ladeschwellen beim ThinkPad nur mit Hilfe externer Kernel-Module (nicht im offiziellen Kernel enthalten):
- Ältere Modelle bis X201/T410: benötigen tp-smapi
- Neuere Modelle ab X220/T420: benötigen acpi_call und das Tool tpacpi-bat
Die Neuerung
Anfang 2018 hat ein Kernel-Entwickler (nicht ich) ein Kernel-Framework vorgestellt, mit dem sich herstellerspezifische Akku-Features im Filesystem unterhalb von /sys/class/power_supply/BAT[01]/ einbinden lassen: "natacpi". Dazu hat er als Referenzimplementierung Ladeschwellen für ThinkPads (charge_start_threshold, charge_stop_threshold) in das Kernel-Modul thinkpad_acpi integriert. Die Änderung gibt es seit 4.17, ein Bug beim Ansprechen des zweiten Akkus wurde mit 4.19 gefixt.
Was noch nicht funktioniert, ist das gesteuerte Entladen (force_discharge). Die zugehörigen Patches wurden noch nicht in den Kernel aufgenommen (der Entwickler ist leider etwas frustriert von den Qualitätsansprüchen des Maintainers des betreffenden Kernel Subsystems).
Wichtig: natacpi funktioniert nur für neuere Modelle, 2. siehe oben.
Einzelheiten zu natacpi sind hier zusammengetragen.
Was bedeutet natacpi für TLP?
TLP muss nun automatisch aus drei verschiedenen Verfahren (natacpi, tpacpi-bat, tp-smapi) wählen und tut das je Feature. Am einfachsten ist es an einem Beispiel erklärt:
ThinkPad T450s mit Kernel 4.19
Code:
--- TLP 1.1.905 --------------------------------------------
+++ Battery Features
[B]natacpi = active (data, thresholds)
tpacpi-bat = active (discharge)
tp-smapi = inactive (ThinkPad not supported)
[/B]
+++ ThinkPad Battery Status: BAT0 (Main / Internal)
/sys/class/power_supply/BAT0/manufacturer = SONY
/sys/class/power_supply/BAT0/model_name = 45N1111
/sys/class/power_supply/BAT0/cycle_count = (not supported)
/sys/class/power_supply/BAT0/energy_full_design = 23200 [mWh]
/sys/class/power_supply/BAT0/energy_full = 20260 [mWh]
/sys/class/power_supply/BAT0/energy_now = 18990 [mWh]
/sys/class/power_supply/BAT0/power_now = 0 [mW]
/sys/class/power_supply/BAT0/status = Unknown (threshold effective)
[B]/sys/class/power_supply/BAT0/charge_start_threshold = 67 [%]
/sys/class/power_supply/BAT0/charge_stop_threshold = 100 [%]
tpacpi-bat.BAT0.forceDischarge = 0[/B]
Jetzt das Ganze mit Kernel 4.15:
Code:
--- TLP 1.1.905 --------------------------------------------
+++ Battery Features
[B]natacpi = inactive (no kernel support)
tpacpi-bat = active (thresholds, discharge)
tp-smapi = inactive (ThinkPad not supported)[/B]
+++ ThinkPad Battery Status: BAT0 (Main / Internal)
/sys/class/power_supply/BAT0/manufacturer = SONY
/sys/class/power_supply/BAT0/model_name = 45N1111
/sys/class/power_supply/BAT0/cycle_count = (not supported)
/sys/class/power_supply/BAT0/energy_full_design = 23200 [mWh]
/sys/class/power_supply/BAT0/energy_full = 20260 [mWh]
/sys/class/power_supply/BAT0/energy_now = 18990 [mWh]
/sys/class/power_supply/BAT0/power_now = 0 [mW]
/sys/class/power_supply/BAT0/status = Unknown (threshold effective)
[B]tpacpi-bat.BAT0.startThreshold = 67 [%]
tpacpi-bat.BAT0.stopThreshold = 100 [%]
tpacpi-bat.BAT0.forceDischarge = 0[/B]
Zuletzt mit Kernel 5.0rc7 und den zusätzlichen Patches für force_discharge:
Code:
+++ Battery Features
[B]natacpi = active (data, thresholds, discharge)
tpacpi-bat = inactive (superseded by natacpi)
tp-smapi = inactive (ThinkPad not supported)[/B]
+++ ThinkPad Battery Status: BAT0 (Main / Internal)
/sys/class/power_supply/BAT0/manufacturer = SONY
/sys/class/power_supply/BAT0/model_name = 45N1111
/sys/class/power_supply/BAT0/cycle_count = (not supported)
/sys/class/power_supply/BAT0/energy_full_design = 23200 [mWh]
/sys/class/power_supply/BAT0/energy_full = 20260 [mWh]
/sys/class/power_supply/BAT0/energy_now = 18990 [mWh]
/sys/class/power_supply/BAT0/power_now = 0 [mW]
/sys/class/power_supply/BAT0/status = Unknown (threshold effective)
[B]/sys/class/power_supply/BAT0/charge_start_threshold = 67 [%]
/sys/class/power_supply/BAT0/charge_stop_threshold = 100 [%]
/sys/class/power_supply/BAT0/force_discharge = 0[/B]
Zum Vergleich noch das X200 mit Kernel 5.0rc7:
Code:
--- TLP 1.1.905 --------------------------------------------
+++ Battery Features
[B]natacpi = inactive (laptop not supported)
tpacpi-bat = inactive (ThinkPad not supported)
tp-smapi = active (data, thresholds, discharge)
[/B]
+++ ThinkPad Battery Status: BAT0 (Main / Internal)
/sys/devices/platform/smapi/BAT0/manufacturer = SANYO
/sys/devices/platform/smapi/BAT0/model = 42T4694
/sys/devices/platform/smapi/BAT0/manufacture_date = 2011-07-29
/sys/devices/platform/smapi/BAT0/first_use_date = 2011-10-20
/sys/devices/platform/smapi/BAT0/cycle_count = 209
/sys/devices/platform/smapi/BAT0/temperature = 26 [°C]
/sys/devices/platform/smapi/BAT0/design_capacity = 93240 [mWh]
/sys/devices/platform/smapi/BAT0/last_full_capacity = 50960 [mWh]
/sys/devices/platform/smapi/BAT0/remaining_capacity = 41190 [mWh]
/sys/devices/platform/smapi/BAT0/remaining_percent = 81 [%]
/sys/devices/platform/smapi/BAT0/remaining_running_time_now = 196 [min]
/sys/devices/platform/smapi/BAT0/remaining_charging_time = not_charging [min]
/sys/devices/platform/smapi/BAT0/power_now = -12326 [mW]
/sys/devices/platform/smapi/BAT0/power_avg = -17097 [mW]
/sys/devices/platform/smapi/BAT0/state = discharging
[B]/sys/devices/platform/smapi/BAT0/start_charge_thresh = 67 [%]
/sys/devices/platform/smapi/BAT0/stop_charge_thresh = 100 [%]
/sys/devices/platform/smapi/BAT0/force_discharge = 0[/B]
Bei nicht unterstützten Modellen (wie dem X200) weist natacpi übrigens einen Bug auf, der zu vielen Meldungen im Kernel-Log führt – siehe hier.
Was muss ich konfigurieren für natacpi?
Zunächst einmal nichts – TLP nutzt natacpi automatisch, sobald der Kernel es anbietet (und das ThinkPad es unterstützt).
In der TLP-Konfiguration finden sich jedoch neue Schalter, mit denen man jedes Verfahren einzeln ein- und ausschalten kann:
Code:
# Battery feature drivers: 0=disable, 1=enable
# Default: 1 (all)
NATACPI_ENABLE=1
TPACPI_ENABLE=1
TPSMAPI_ENABLE=1
Zuletzt bearbeitet: