-
Notifications
You must be signed in to change notification settings - Fork 129
/
changelog
1301 lines (1147 loc) · 52.8 KB
/
changelog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
+++ 1.8.0-alpha.0 --- <unreleased> +++
* Development version
* Features
Battery Care:
- Dell laptops with kernel 6.12 (or later): start and stop threshold (Issue #379)
Diagnostic:
- tlp-stat --psup: add readings
Processor:
- tlp-stat -p -v: show boost per core (amd-pstate needs kernel 6.11 or later)
* Bugfixes
Radio Devices:
- RDW: if LAN gets disconnected in suspend, ensure wifi activation
upon resume
+++ 1.7.0 --- 27.09.2024 +++
* No changes since 1.7.0-beta.2
+++ 1.7.0-beta.2 --- 20.09.2024 +++
* Beta release
* Features since 1.7.0-beta.1
Processor:
- tlp-stat -p: identify CPU model on ARM systems
* Bugfixes since 1.7.0-beta.1
Battery:
- Thinkpads:
- Fix premature abort of discharge/recalibrate for *20 models
(Issue #759)
- Fix ThinkPad X13s ARM power source detection (Issue #758)
- tlp-stat -b: do not recommend kernel 5.17 for coreboot,
as coreboot does not support discharge/recalibrate anyway.
USB:
- tlp-stat -u: filter out error messages
+++ 1.7.0-beta.1 --- 04.09.2024 +++
* Beta release
* Features
Battery Care:
- Apple Silicon Macbooks (M*) with MacOS 13.0 (or later) firmware and
Asahi Linux kernel 6.6 (or later): start and stop threshold
- MSI laptops supported by the msi_ec driver in kernel 6.3 (or later):
start and stop threshold (Issue #707)
- Lenovo laptops (non-ThinkPad series): tlp-stat -b: number 60% removed
because the threshold varies by model (Issue #717)
- LG Gram laptops: forward to lg-legacy for kernel <= 5.17 only
- ThinkPads:
- The obsolete tpacpi-bat driver along with the acpi_call dependency
were removed. Current Linux distributions ship with kernel 5.17 or
later, which enables battery care via the built-in thinkpad_acpi.
- tlp-stat -b improvements for coreboot:
- Fix charge readings (Issue #657)
- Indicate when recalibration is not possible
- tlp-stat -b: Highlight battery care status
- tlp setcharge, tlp-stat -b: display a recommendation to use the laptop
on battery power until the battery is discharged to the stop threshold
Disks:
- tlp-stat -d: replace disk serial number with asterisks (for privacy)
General:
- TLP_MSG_COLORS: highlight error, warning, notice and success messages
in color.
- Add option --version to all TLP commands
- Add tlp-stat output options:
-m|--mode: print current power mode
-q|--quiet: omit version header and show less information in the
processor category
- Add Fish shell command completion
- Improve busybox compatibility by using only portable options for flock
Graphics:
- AMDGPU_ABM_LEVEL_ON_AC/BAT: configure display panel power savings via
Adaptive Backlight Modulation (ABM) from AMD Vega or newer GPUs;
kernel 6.9 required
Processor:
- CPU_ENERGY_PERF_POLICY_ON_AC/BAT: drop backwards compatibility for
EPB with kernels < 5.2; x86_energy_perf_policy is no longer required
- CPU_HWP_DYN_BOOST_ON_AC/BAT: drop the AMD implementation; the
corresponding kernel patch was discarded during the 2022 review,
reincarnation seems unlikely
- tlp-stat -t:
- Show AMD CPU temperatures
- Indicate unavailable fan speed
Radio Devices:
- DEVICES_TO_ENABLE/DISABLE_ON_SHUTDOWN removed
USB:
- USB_AUTOSUSPEND_DISABLE_ON_SHUTDOWN removed
* Bugfixes
Battery:
- ThinkPads:
- Fix Edge 11 battery enumeration (Issue #714)
- Support ThinkPad W510
Disks:
- Ensure power saving for all USB disks when plugged in
- tlp diskid: filter duplicates
General:
- tlp-stat -s: rework manual mode detection (Issue #702)
- tlp-stat --psup/udev: fix udev rule check
Radio Devices:
- Avoid error popups from NetworkManager when switching wifi/wwan
USB:
- Prevent USB devices from being unrecognized or malfunctioning on battery;
adds xhci_hcd to RUNTIME_PM_DRIVER_DENYLIST defaults (Issues #436, #587)
+++ 1.6.1 --- 18.09.2023 +++
* Bugfixes
Battery:
- LG Gram laptops: ensure lg-legacy is used for kernel <= 5.17 (Issue #708)
General:
- tlp-stat -s: report manual mode despite restrictive umask (Issue #702)
+++ 1.6.0 --- 24.08.2023 +++
* Changes since 1.6.0-beta.1
Battery:
- System76: default start threshold set to 90% (due to EC firmware change)
Processor:
- CPU_DRIVER_OPMODE_ON_AC/BAT: check if operation mode is actually
supported by the current CPU driver
+++ 1.6.0-beta.1 --- 20.07.2023 +++
* Beta release
* Features
Battery:
- LG Gram laptops:
- Use standard sysfs attribute 'charge_control_end_threshold'
provided by kernel 5.18 and newer
- Restore threshold after hibernate
- System76 laptops with open source EC firmware:
start and stop threshold
- ThinkPads: model detection adapted for Libreboot (Issue #679)
- Toshiba/Dynabook laptops: stop threshold 80/100%
Configuration:
- Allow comments (#) after parameters (Issue #598)
- tlp-stat -c/--cdiff: append a notice to deprecated or removed
parameters
Disks:
- SATA_LINKPWR_ON_AC/BAT: remove fallbacks for outdated kernels
before 4.15 from defaults (still available via explicit configuration)
General:
- Allow coexistence with power-profiles-daemon: do not apply
PLATFORM_PROFILE_ON_AC/BAT, CPU_ENERGY_PERF_POLICY_ON_AC/BAT and
CPU_BOOST_ON_BAT/BAT when it is running
- MEM_SLEEP_ON_AC/BAT: change system suspend mode
- Add ZSH command completion
- tlp-stat -s:
- Silence warnings about unmasked systemd-rfkill.service/.socket
when DEVICES_TO_ENABLE/DISABLE_ON_STARTUP is actually unconfigured
- Show EC firmware version
- Show system suspend mode
- Show proper ThinkPad model string with Libreboot (Issue #679)
PCI(e) devices:
- RUNTIME_PM_ENABLE/DISABLE: apply even when RUNTIME_PM_ON_AC/BAT
is disabled (Issue #614)
Processor:
- CPU_DRIVER_OPMODE_ON_AC/BAT: set CPU scaling driver operation mode
(active, guided, passive); amd-pstate/intel_pstate driver required
- CPU_ENERGY_PERF_POLICY_ON_AC/BAT: support AMD Zen 2 or newer CPUs;
kernel 6.3 with amd-pstate driver in active mode required
- CPU_HWP_DYN_BOOST_ON_AC/BAT: *EXPERIMENTAL* support AMD Zen 2 or
newer CPUs; yet unreleased kernel 6.x and amd-pstate driver
in active mode required
- SCHED_POWERSAVE_ON_AC/BAT removed (unavailable since kernel 3.5)
- tlp-stat -p:
- Show amd-pstate operation mode, dynamic boost and performance
attributes
- Show min/max operating frequency the processor can run at
(cpuinfo_min/max_freq) and limit imposed by the BIOS (bios_limit)
- (-v) Show acpi_cppc performance and frequency attributes
Radio Devices:
- Support Thunderbolt docks to switch radio devices
- DEVICES_TO_ENABLE/DISABLE_ON_SHUTDOWN: *DEPRECATED* feature will be
removed in TLP 1.7
USB:
- USB_AUTOSUSPEND_DISABLE_ON_SHUTDOWN: *DEPRECATED* feature will be
removed in TLP 1.7
* Bugfixes
Configuration:
- Strip trailing blanks from unquoted parameter values
Operation:
- Deactivate AHCI_RUNTIME_PM and PCIE_ASPM before suspend to avoid
resume freezes (Issue #593, #606, #698)
Processor:
- Set governor although not listed in scaling_available_governors
+++ 1.5.0 --- 07.01.2022 +++
* Bugfixes
- tlp-stat: drop PM_RUNTIME=y kernel config recommendation
+++ 1.5.0-beta.1 --- 20.12.2021 +++
* Beta release
* Features
Battery:
- Sony laptops: stop threshold 50/80/100% aka "battery care limiter"
- ThinkPads:
- Use new sysfs attribute 'charge_behaviour' for recalibration
- Support T400 running coreboot via natacpi (Issue #601)
- tlp-stat -b: display "cycle_count = 0" with the note "or not supported"
Radio Devices:
- Add support for switching NFC devices
- Remove support for wireless-tools (iwconfig)
* Bugfixes
Battery:
- ASUS laptops: apply stop threshold reliably on boot and after hibernate
(Issue #589)
Disks:
- tlp-stat -d: display correct sysfs path for disk runtime pm:
/sys/block/<DISK>/device/power/control (Issue #606)
+++ 1.4.0 --- 24.09.2021 +++
* Features
Audio:
- SOUND_POWER_SAVE_ON_AC: change default to enabled (Issue #495)
Battery:
- "Battery Features" renamed to "Battery Care"
- Introduce plugins to support Battery Care for non-ThinkPads:
- ASUS laptops: stop threshold
- Huawei MateBooks: start and stop threshold
- LG Gram laptops: stop threshold at 80% aka "battery care limit"
- Lenovo laptops: stop threshold at 60% aka "battery conservation mode"
- Samsung laptops: stop threshold at 80% aka "battery life extender"
- ThinkPads
- Allow deactivation of the start threshold (START_CHARGE_THRESH_BATx=0)
- Discharge malfunction: hint to check battery and charger
- Use standard sysfs attributes for charge thresholds
(Issue #513)
- Flag ThinkPad L512 as "unsupported"
- Validate charge threshold configuration, don't fail silently
- tlp-stat -b
- Battery Care: show plugin, supported features, driver usage and
related kernel module(s)
- Map battery state "Unknown" to "Idle" for clarity
Configuration:
- tlp-stat --cdiff: show configuration differing from defaults
- PARAMETER+="add values": append values to a parameter already defined
as intrinsic default or in a *previously* read file (Issue #457)
- TLP_WARN_LEVEL: warn about invalid settings, configurable for background
tasks and command line
- Rename parameters (backwards compatible to legacy config files):
SATA_LINKPWR_BLACKLIST -> SATA_LINKPWR_DENYLIST
RUNTIME_PM_BLACKLIST -> RUNTIME_PM_DENYLIST
RUNTIME_PM_DRIVER_BLACKLIST -> RUNTIME_PM_DRIVER_DENYLIST
USB_BLACKLIST -> USB_DENYLIST
USB_BLACKLIST_BTUSB -> USB_EXCLUDE_BTUSB
USB_BLACKLIST_PHONE -> USB_EXCLUDE_PHONE
USB_BLACKLIST_PRINTER -> USB_EXCLUDE_PRINTER
USB_BLACKLIST_WWAN -> USB_EXCLUDE_WWAN
USB_WHITELIST -> USB_ALLOWLIST
Disks:
- AHCI_RUNTIME_PM_ON_AC/BAT:
- Works only on disks defined in DISK_DEVICES
- Works on NVMe (new), SATA/ATA and plugged in USB (new) disks
- Works on SATA ports
- No longer experimental i.e. now enabled by default; the previously
existing risk of system freezes (and data loss) with the multiqueue
scheduler is now eliminated:
- Kernel >= 4.19 itself locks unsafe disk runtime pm
- TLP generally locks it for kernel < 4.19
- DISK_APM_CLASS_DENYLIST: exclude disk classes from APM, i.e. you may
now activate it for USB and IEEE1394 drives (Issue #523)
- DISK_APM_LEVEL_ON_AC/BAT, DISK_SPINDOWN_TIMEOUT_ON_AC, DISK_IOSCHED:
now also work when plugging in USB disks; provided disk is contained in
DISK_DEVICES and 'usb' is removed from DISK_APM_CLASS_DENYLIST
- tlp-stat -d
- Explain why AHCI_RUNTIME_PM is locked for a disk
- Show disks attached to SATA links/ports
- Show a disk's host (for SATA_LINKPWR_DENYLIST)
- Show ALPM state in the sysfs directory of the AHCI host
- Show IDs for all disks configured in DISK_DEVICES
- Distinguish SATA from ATA(IDE) disks
- Show NVMe disk temperature
General:
- power-profiles-daemon: issue error messages about conflicting service
- tlp-stat -s: determine OS release without the lsb_release utility
Graphics:
- Add support for amdgpu (Issue #498)
- Improve powerdown of unused GPUs with drivers amdgpu, nouveau,
nvidia and without driver (Issues #488, #495, #498)
- tlp-stat -g:
- List all GPUs with at least the driver info
- Show hybrid graphics switch state (switcheroo)
- Intel GPU:
- Show hardware min/max frequency instead of
list of available frequencies (kernel change)
- Show more informative RC6, FBC and PSR status where available
(Issue #203)
Operation Mode AC/BAT:
- Speed up system shutdown/suspend by not applying AC settings anymore
- TLP_PS_IGNORE: add USB; allow to ignore multiple power supply classes
- tlp-stat -s: speed up power source detection
- tlp-stat --psup/udev: check if udev rules for power source changes and
connecting USB devices are active
PCI(e) devices:
- RUNTIME_PM_ENABLE/DISABLE: permanently enable/disable runtime PM for
PCI(e) devices based on address (independent of the power source)
- RUNTIME_PM_DENYLIST: remove amdgpu, nvidia, pcieport from defaults
- tlp-stat -e -v: show device runtime_status
Platform:
- PLATFORM_PROFILE_ON_AC/BAT: select platform profile to control system
operating characteristics around power/performance levels, thermal
and fan speed
- tlp-stat -p: show state of ThinkPad lapmode
Processor:
- CPU_HWP_DYN_BOOST_ON_AC/BAT: Intel CPU HWP dynamic boost (Issue #468)
- Remove backwards compatibility of CPU_ENERGY_PERF_POLICY_ON_AC/BAT with
ENERGY_PERF_POLICY_ON_AC/BAT to prevent performance issues caused by the
value 'power' in legacy configurations
- PHC_CONTROLS removed (obsolete)
- tlp-stat -p:
- cpu1..cpuN omitted for clarity, use -v to show all
- Sort more than 10 CPU cores in proper numerical order
- Show intel_pstate operation mode ("status")
- Omit "EPB: unsupported" for AMD or non-intel_pstate CPUs
USB:
- USB_EXCLUDE_AUDIO: exclude audio devices from autosuspend (Issue #556)
- tlp-stat -u -v: show device runtime_status
* Bugfixes
Battery Care:
- tlp discharge/recalibrate:
- Terminate properly when AC/charger is removed
- Check support on ThinkPads because of Coreboot (Issue #547)
- [Try to] mitigate false threshold readouts caused by a firmware issue
on ThinkPad A/E/L/S/X series (Issue #369)
Disks:
- Issue #474: confine AHCI_RUNTIME_PM_ON_AC/BAT to SATA disks
Graphics:
- Issue #488: Idle temperature 20 °C higher on battery (Nvidia GPU)
- Issue #495: SOUND_POWER_SAVE_ON_AC=0 prevents powerdown of Nvidia GPU
- Issue #522: Intel GPU settings fail -> validate configuration
Operation Mode AC/BAT:
- Issue #573: power mode not updating when switching from AC to battery
Processor:
- Issue #570: no_turbo=1 decreases scaling_max_freq on ThinkPad X1 Gen9
* 1.4.0 Bugfixes since beta.2
Battery:
- tlp start: catch missing threshold method
Configuration:
- Ignore trailing blanks on non-quoted parameter values
- tlp-stat --cdiff: do not show user config lines matching the default
Disks:
- Confine plugin event handling to USB
+++ 1.4.0-beta.2 --- 09.09.2021 +++
* Beta release
* Bugfixes
Battery:
- Huawei: use legacy interface 'charge_control_thresholds' for reliability
- LG: fix battery and battery_care_limit detection (Issue #568)
- ThinkPad: fix enforcement via NATACPI_ENABLE, TPAPCI_ENABLE
Operation Mode AC/BAT:
- Issue #573: power mode not updating when switching from AC to battery
Platform:
- tlp-stat -p: show state of ThinkPad lapmode
Processor:
- Issue #570: no_turbo=1 decreases scaling_max_freq on ThinkPad X1 Gen9
- tlp-stat -p: omit "EPB: unsupported" for AMD or non-intel_pstate CPUs
+++ 1.4.0-beta.1 --- 29.07.2021 +++
* Beta release
* Features
Audio:
- SOUND_POWER_SAVE_ON_AC: change default to enabled (Issue #495)
Battery:
- "Battery Features" renamed to "Battery Care"
- Introduce plugins to support Battery Care for non-ThinkPads:
- ASUS laptops: stop threshold
- Huawei MateBooks: start and stop threshold
- LG Gram laptops: stop threshold at 80% aka "battery care limit"
- Lenovo laptops: stop threshold at 60% aka "battery conservation mode"
- Samsung laptops: stop threshold at 80% aka "battery life extender"
- ThinkPads
- Allow deactivation of the start threshold (START_CHARGE_THRESH_BATx=0)
- Discharge malfunction: hint to check battery and charger
- Use standard sysfs attributes for charge thresholds
(Issue #513)
- Flag ThinkPad L512 as "unsupported"
- Validate charge threshold configuration, don't fail silently
- tlp-stat -b
- Battery Care: show plugin, supported features, driver usage and
related kernel module(s)
- Map battery state "Unknown" to "Idle" for clarity
Configuration:
- tlp-stat --cdiff: show configuration differing from defaults
- PARAMETER+="add values": append values to a parameter already defined
as intrinsic default or in a *previously* read file (Issue #457)
- TLP_WARN_LEVEL: warn about invalid settings, configurable for background
tasks and command line
- Rename parameters (backwards compatible to legacy config files):
SATA_LINKPWR_BLACKLIST -> SATA_LINKPWR_DENYLIST
RUNTIME_PM_BLACKLIST -> RUNTIME_PM_DENYLIST
RUNTIME_PM_DRIVER_BLACKLIST -> RUNTIME_PM_DRIVER_DENYLIST
USB_BLACKLIST -> USB_DENYLIST
USB_BLACKLIST_BTUSB -> USB_EXCLUDE_BTUSB
USB_BLACKLIST_PHONE -> USB_EXCLUDE_PHONE
USB_BLACKLIST_PRINTER -> USB_EXCLUDE_PRINTER
USB_BLACKLIST_WWAN -> USB_EXCLUDE_WWAN
USB_WHITELIST -> USB_ALLOWLIST
Disks:
- AHCI_RUNTIME_PM_ON_AC/BAT:
- Works only on disks defined in DISK_DEVICES
- Works on NVMe (new), SATA/ATA and plugged in USB (new) disks
- Works on SATA ports
- No longer experimental i.e. now enabled by default; the previously
existing risk of system freezes (and data loss) with the multiqueue
scheduler is now eliminated:
- Kernel >= 4.19 itself locks unsafe disk runtime pm
- TLP generally locks it for kernel < 4.19
- DISK_APM_CLASS_DENYLIST: exclude disk classes from APM, i.e. you may
now activate it for USB and IEEE1394 drives (Issue #523)
- DISK_APM_LEVEL_ON_AC/BAT, DISK_SPINDOWN_TIMEOUT_ON_AC, DISK_IOSCHED:
now also work when plugging in USB disks; provided disk is contained in
DISK_DEVICES and 'usb' is removed from DISK_APM_CLASS_DENYLIST
- tlp-stat -d
- Explain why AHCI_RUNTIME_PM is locked for a disk
- Show disks attached to SATA links/ports
- Show a disk's host (for SATA_LINKPWR_DENYLIST)
- Show ALPM state in the sysfs directory of the AHCI host
- Show IDs for all disks configured in DISK_DEVICES
- Distinguish SATA from ATA(IDE) disks
- Show NVMe disk temperature
General:
- power-profiles-daemon: issue error messages about conflicting service
- tlp-stat -s: determine OS release without the lsb_release utility
Graphics:
- Add support for amdgpu (Issue #498)
- Improve powerdown of unused GPUs with drivers amdgpu, nouveau,
nvidia and without driver (Issues #488, #495, #498)
- tlp-stat -g:
- List all GPUs with at least the driver info
- Show hybrid graphics switch state (switcheroo)
- Intel GPU:
- Show hardware min/max frequency instead of
list of available frequencies (kernel change)
- Show more informative RC6, FBC and PSR status where available
(Issue #203)
Operation Mode AC/BAT:
- Speed up system shutdown/suspend by not applying AC settings anymore
- TLP_PS_IGNORE: add USB; allow to ignore multiple power supply classes
- tlp-stat -s: speed up power source detection
- tlp-stat --psup/udev: check if udev rules for power source changes and
connecting USB devices are active
PCI(e) devices:
- RUNTIME_PM_ENABLE/DISABLE: permanently enable/disable runtime PM for
PCI(e) devices based on address (independent of the power source)
- RUNTIME_PM_DENYLIST: remove amdgpu, nvidia, pcieport from defaults
- tlp-stat -e -v: show device runtime_status
Platform:
- PLATFORM_PROFILE_ON_AC/BAT: select platform profile to control system
operating characteristics around power/performance levels, thermal
and fan speed
Processor:
- CPU_HWP_DYN_BOOST_ON_AC/BAT: Intel CPU HWP dynamic boost (Issue #468)
- Remove backwards compatibility of CPU_ENERGY_PERF_POLICY_ON_AC/BAT with
ENERGY_PERF_POLICY_ON_AC/BAT to prevent performance issues caused by the
value 'power' in legacy configurations
- PHC_CONTROLS removed (obsolete)
- tlp-stat -p:
- cpu1..cpuN omitted for clarity, use -v to show all
- Sort more than 10 CPU cores in proper numerical order
- Show intel_pstate operation mode ("status")
USB:
- USB_EXCLUDE_AUDIO: exclude audio devices from autosuspend (Issue #556)
- tlp-stat -u -v: show device runtime_status
* Bugfixes
Battery Care:
- tlp discharge/recalibrate:
- Terminate properly when AC/charger is removed
- Check support on ThinkPads because of Coreboot (Issue #547)
- [Try to] mitigate false threshold readouts caused by a firmware issue
on ThinkPad A/E/L/S/X series (Issue #369)
Disks:
- Issue #474: confine AHCI_RUNTIME_PM_ON_AC/BAT to SATA disks
Graphics:
- Issue #488: Idle temperature 20 °C higher on battery (Nvidia GPU)
- Issue #495: SOUND_POWER_SAVE_ON_AC=0 prevents powerdown of Nvidia GPU
- Issue #522: Intel GPU settings fail -> validate configuration
+++ 1.3.1 --- 06.02.2020 +++
* Bugfixes
Processor:
- Issue #460: default CPU_ENERGY_PERF_POLICY_ON_BAT=power too aggressive
+++ 1.3.0 --- 31.01.2020 +++
* Features
New configuration scheme:
- /etc/default/tlp is replaced by /etc/tlp.conf
- 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
In case of identical parameters, the last occurence has precedence
- Parse config files instead of sourcing --> no more shell expansion
Battery Features, tlp-stat -b:
- Charge thresholds: better checks for command line and configuration;
clearer error messages
- tlp discharge: error message "check your hardware" when battery wasn't
completely discharged (Issue #438)
- Distinguish between "no kernel support" for natacpi (< 4.17) and
"laptop not supported" (>= 4.17)
- Supplement battery status "Unknown" with "threshold may prevent
charging" when thresholds are available only
General:
- systemd: replace tlp-sleep.service with /lib/systemd/system-sleep/tlp
Operation Mode AC/BAT:
- TLP_PS_IGNORE: power supply class to ignore when determining operation
mode; workaround for laptops reporting incorrect AC or battery status
(Issue #446)
PCI(e) devices:
- PCIE_ASPM_ON_AC/BAT: add method 'powersupersave' (Issue #425)
Processor:
- CPU_ENERGY_PERF_POLICY_ON_AC/BAT: backward compatible merge of
settings for Intel energy vs. performance policies
EPB (ENERGY_PERF_POLICY_ON_AC/BAT) and HWP.EPP (CPU_HWP_ON_AC/BAT);
when HWP.EPP is available, EPB is not set; validate parameters;
eliminate external tool x86_energy_perf_policy for kernel >= 5.2
tlp-stat:
- Configuration: show file where the parameter comes from
- System Info:
- Show SELinux status
- Show RDW as 'disabled' when TLP is disabled as a whole
- Indicate persistent mode
- Intel CPU: don't show EPB values when HWP.EPP is active (see above)
- PCIe ASPM: show available policies
- Undervolting: remove "PHC kernel not available" message
* Bugfixes
Battery Features:
- Issue #415: ThinkPad X240 discharge BAT1 malfunction when BAT0 is not
installed
Disks:
- Fix NVMe detection on Linux 4.15
tlp-stat:
- Issue #430: ignore hid device batteries
+++ 1.2.2 --- 04.05.2019 +++
* Bugfixes
Battery Features, tlp-stat -b:
- Show data for batteries named other than BAT0/BAT1 (non-ThinkPads)
- Issue #395: ThinkPad X1C6 discharge malfunction
- Separate checks for charge thresholds and recalibration
- Intelligible recommendation for tp-smapi on ThinkPad X220/T420 et al.
- Explain "Battery Features: Charge Thresholds and Recalibrate"
Disks:
- Fix type determination
Operation Mode AC/BAT:
- MacBookPro 5.3: workaround for false AC offline status
Processor, tlp-stat -p:
- Fix read of /sys/devices/system/cpu/cpufreq/boost
- x86_energy_perf_policy: detect unsupported CPUs in newer versions
Radio Devices:
- Issue #404: make RESTORE_DEVICE_STATE_ON_STARTUP=1 persistent again
+++ 1.2.1 --- 18.03.2019 +++
* Bugfix
- Issue #391: unknown command "chargeonce"
+++ 1.2 --- 11.03.2019 +++
* Features
Disks:
- Support for NVMe devices
- Support for removable drives e.g. USB / IEE1394 devices
- Improve support for multi queue I/O schedulers (blk-mq)
General:
- tlp bat/ac: keep manual power settings until tlp start (Issue #349)
- Remove all pm-utils scripts (Issue #363)
- tlp/tlp-stat: Temporarily overwrite configuration for one program
invocation only: -- PARAM=value ...
- Document intrinsic defaults in config file (Issue #353)
- Code verified with ShellCheck
Graphics:
- INTEL_GPU_MIN_FREQ_ON_AC/BAT, INTEL_GPU_MAX_FREQ_ON_AC/BAT,
INTEL_GPU_BOOST_FREQ_ON_AC/BAT: Intel GPU frequency limits
Radio Devices:
- tlp-rdw: new command to disable RDW actions temporarily (until reboot)
- Support ThinkPad Pro Dock CS18 (17ef:306f)
- USB_BLACKLIST_WWAN: disable by default
- Retire compatibility with Network Manager 0.9.8 (Ubuntu 14.04 EOL)
PCI(e) devices:
- RUNTIME_PM_BLACKLIST: add mei_me, pcieport
ThinkPad Battery:
- New native kernel API for battery features "natacpi" (Issue #321);
requires kernel 4.17; enabled by default
- NATACPI_ENABLE, TPACPI_ENABLE, TPSMAPI_ENABLE: make all battery feature
drivers switchable
- tlp discharge/recalibrate: exclude multiple simultaneous invocations
- Support ThinkPad 25, *80 (Coffee Lake) and all newer models
tlp-stat:
- Check systemd-rfkill.socket masked status
- Disks: show all configured devices (consider default)
- Intel GPU: show frequency limits and available frequencies
- Rename "Suggestions" section to "Recommendations"
- Remove invocation via 'tlp stat'
USB:
- Exclude scanners managed by libsane from autosuspend
- Remove long deprecated level/autosuspend attributes
* Bugfixes
- Issue #193: do not try to start NetworkManager (systemd)
- Issue #319: get_disk_dev logic is not compatible with NVMe devices
- Issue #320: AC mode not detected with USB charger
- Issue #331: Process '/usr/bin/tlp auto' failed with exit code 4
- Issue #332: zsh parse error in tlp diskid
- Issue #343, #362, #375: circumvent broken AC/charger detection
- Issue #344: keep ASPM default to enable deeper C-states on AC
- Issue #356: fix writing sequence for start/stop charge thresholds
- Issue #368: recognize Think*p*ad P50
- tlp-stat: filter HWP lines from x86_energy_perf_policy output
+++ 1.1 --- 24.01.2018 +++
* Features
Disks:
- SATA_LINKPWR_ON_AC/BAT: try multiple values to support new recommended
ALPM policy "med_power_with_dipm" in kernel 4.15
Processor:
- Issue #297: ENERGY_PERF_POLICY_ON_AC/BAT: support changed values
performance, balance-performance, default, balance-power, power
ThinkPad Battery:
- Support ThinkPad 13 1st & 2nd Gen, E130; new tpacpi-bat version
- tlp-stat --psup: show ASLbase for tpacpi-bat (in device/path)
- tlp discharge: show state of battery and force_discharge
USB:
- USB_BLACKLIST_PRINTER: exclude printers from autosuspend
* Bugfixes
- Issue #271: intercept link_power_management_policy write error
- Issue #283: fix AC power detection for MacBook Pro 2017
- Issue #298: move runtime data from /var/run/tlp to /run/tlp
- Issue #301: DEVICES_TO_DISABLE_ON_BAT_NOT_IN_USE="bluetooth"
not working as expected
- Issue #313: don't detect wireless input devices' batteries as power supply
+++ 1.0 --- 25.05.2017 +++
* Features
General:
- TLP_PERSISTENT_DEFAULT: use TLP_DEFAULT_MODE regardless of the actual
power source
Device Bays:
- BAY_POWEROFF_ON_AC: power off optical drive not only on bat (Issue #243)
Graphics:
- RUNTIME_PM_DRIVER_BLACKLIST: when unconfigured default to
"amdgpu nouveau nvidia radeon"; driver default control=auto allows
PRIME/Bumblebee to turn the dGPU off and prevents accidential power-on
during boot as well
- Exclude Nvidia dGPU from runtime power management even when no driver
is associated (improve compatibility with Bumblebee)
PCI(e) devices
- RUNTIME_PM_ALL removed (default to RUNTIME_PM_ALL=1 internally)
Processor:
- CPU_HWP_ON_AC/BAT: HWP energy performance hints; needs kernel 4.10 and
Intel Skylake CPU or newer, intel_pstate only
ThinkPad Battery:
- RESTORE_THRESHOLDS_ON_BAT: restore charge thresholds on battery
- Detect ThinkPad *70 models (Kaby Lake)
- Detect ThinkPad 13 (1st and 2nd Gen) as unsupported (Issue #227)
- Change texts "ThinkPad (extended) battery functions" to
"ThinkPad battery features"
- tlp-stat:
- Show "Charge total %" when more than one battery is present
- Show battery temperature (tp-smapi only)
- Show "unsupported" instead of "not installed" for tp-smapi incapable
hardware
USB:
- USB_BLACKLIST_BTUSB: exclude bluetooth devices from autosuspend
(Issue #239)
- USB_BLACKLIST_PHONE: exclude phone devices from autosuspend
(Issue #188)
tlp-stat:
- -g|--graphics: show graphics card data only
- i915: explain enable_psr modes
- --psup: show power supply diagnostic
- SMART attribute G-Sense_Error_Rate (191)
- -v: additional battery voltages
- Workqueue power efficient status
* Bugfixes
- Issue #237: init start: apply powersave regardless of previous state
- Issue #256: tlp-stat: intercept non-existing or invalid charge values
- tlp-stat: show Intel graphics parameters for Ubuntu's i915_bpo module
+++ 0.9 --- 18.08.2016 +++
* Features
General:
- Block concurrent invocation of tlp
Disks:
- AHCI runtime power management for host controllers and attached disks
- SATA_LINKPWR_BLACKLIST: exclude SATA host devices from power management
Radio Devices:
- Finally remove deprecated DEVICES_TO_ENABLE_ON_RADIOSW code
(works with Ubuntu 12.04/Kernel 3.2 only)
- Change WIFI_PWR_ON_AC/BAT default config values to off/on for better
usability (1/5 is still supported for backwards compatibility)
Radio Device Wizard (tlp-rdw):
- Add another ThinkPad OneLink Pro Dock USB LAN (17ef:304)
(ThinkPad) Battery:
- tlp-stat:
- Distinguish incompatible hardware from load errors (Issue #160)
- Display battery charge and capacity values in %
- More selective suggestions for tp-smapi/acpi-call kernel modules
tlp-stat:
- Intel graphics: include i915 parameters enable_dc, enable_psr, modeset
- --pev: monitor power supply udev events (Issue #172)
- Processor:
- Display available scaling governors
- intel_pstate: display turbo_pct, num_pstates
- Storage Devices:
- Recognize blk-mq I/O scheduler
- SMART attributes Power_Cycle_Count, Unused_Rsvd_Blk_Cnt_Tot,
NAND_Writes_1GiB
- Suggestions: add *60 models for tp-smapi/acpi-call
- System Info: display boot mode UEFI / BIOS
- TLP Status:
- Display time and mode of tlp's last invocation
- Issue warning when systemd-rfkill[@].service is not masked
- Wireless: display type in interface list
* Bugfixes
- Issue #163: handle kernel with built-in acpi_call module properly
- Issue #170: battery discharge does not terminate on ThinkPad E-series
- Issue #172: TLP does not notice power source change
- Issue #175: do not touch wifi on shutdown when unconfigured
- Issue #176: optimize rdw locking heuristics
- tlp-stat: fix ata error count (filter "DevExch" caused by bay inserts)
- tp-smapi: do not load on unsupported ThinkPads
- Fix bash completion
+++ 0.8 --- 05.08.2015 +++
* Features
General:
- TLP_DEFAULT_MODE: change default operation mode to AC when no power supply
can be detected (concerns some desktop and embedded hardware only)
Radio Devices:
- Resume: restore bluetooth state (derball2008)
Radio Device Wizard (tlp-rdw):
- Support ThinkPad OneLink Dock Basic/Pro for dock/undock events
- Detect systemd "predictable network interface names" for WWAN
ThinkPad Battery:
- tpacpi-bat: new upstream version 2.2: get ASL path from
/sys/class/power_supply/*/device/path; avoids unnecessary
"AE_NOT_FOUND" kernel messages
- tlp-stat:
- Show "No batteries detected."
- Explain battery status "Unknown" as "threshold effective"
- Show battery cell group voltages (verbose mode, tp-smapi only)
- Show acpi-call suggestion for ThinkPad *40, *50, X1 models
USB:
- Remove USB_DRIVER_BLACKLIST (because of issues #147, #149, see below)
tlp-stat:
- Show warnings for ata errors by default
* Bugfixes
- Issue #123: tlp-stat: detect kernel config with PM_RUNTIME=N
- Issue #124: tlp recalibrate: fix exitcode check
- Issue #133: USB autosuspend: write power/control if actually changing only
- Ignore missing files in /proc/sys/fs/xfs (Gijs Hillenius)
- Issues #147, #149: fix udev event processing for AC/BAT switching
and USB hotplugging (required for udevd v221 and higher)
+++ 0.7 --- 29.01.2015 +++
* Features
Processor:
- Limit max/min P-state to control power dissipation of the CPU
(intel_pstate only)
- Set performance versus energy savings policy (x86_energy_perf_policy)
USB:
- USB_DRIVER_BLACKLIST: exclude devices assigned to the listed drivers
from USB autosuspend; default: usbhid
- USB_BLACKLIST_WWAN: match internal driver list instead of USB vendor ids
- USB_WHITELIST: include devices into USB autosuspend even if
already excluded by the driver or WWAN blacklists
Radio devices:
- DEVICES_TO_ENABLE_ON_AC/DISABLE_ON_BAT/DISABLE_ON_BAT_NOT_IN_USE:
enable/disable radio devices upon change of power source
(excluding connected devices)
ThinkPad Battery:
- Issue #105: provide proper return codes for all battery functions
- Issue #106: setcharge allowed on battery power
- Do not activate new thresholds with force_discharge anymore (tp-smapi)
- tpacpi-bat: support for ThinkPad E325 charge thresholds
Misc:
- RUNTIME_PM_DRIVER_BLACKLIST: exclude PCI(e) devices assigned to drivers;
default: radeon, nouveau (solves issue #94)
- Support Dell Latitude docks
tlp-stat:
- New options -d|--disk, -e|--pcie, -p|--processor,
-s|--system, -u|--usb
- Show driver and connection state for all enabled radio devices
- Show driver name in Runtime PM PCI(e) device list
- Show type and state of docks and device bays
- Show type of init system
- Check if TLP's systemd services are enabled (zenox)
* Bugfixes
Udev:
- Run change of power source in a detached subshell to avoid blocking udev
- Fix dock/undock event processing for ThinkPad Adv Mini Dock and Ultrabase
- Make USB device event processing more robust
- Run in a detached subshell to avoid blocking udev
- Wait 2s for subdevices to populate for proper black/whitelist detection
Misc:
- Support for NM 0.9.10 (Debian Jessie)
- Issue #109: tlp-stat: report "unknown" power source when no AC detected
- Issue #98: do not change autosuspend_delay_ms, keep kernel default
settings (garyp)
- Exclude pseudo usb disks (Raphaël Halimi)
* Misc
- Add AUTHORS file
+++ 0.6 --- 06.10.2014 +++
* Features
- Set systemd service type to simple, allows tlp service
to start asynchronously in the background (Timofey)
- Remove DISABLE_TPACPIBAT from configuration
- Remove DEVICES_TO_ENABLE_ON_RADIOSW from configuration because
it's deprecated: works with Ubuntu 12.04/Kernel 3.2 only
- Enable RUNTIME_PM_ALL by default
- Do not touch kernel settings if param is empty or commented:
DISK_IDLE_SECS_ON, MAX_LOST_WORK_SECS_ON,
SCHED_POWERSAVE_ON, NMI_WATCHDOG,
SATA_LINKPWR_ON, PCIE_ASPM_ON,
RADEON_DPM_STATE_ON, RADEON_POWER_PROFILE_ON,
WIFI_PWR_ON, SOUND_POWER_SAVE_ON, RUNTIME_PM_ON.
- DISK_APM_LEVEL_ON, DISK_SPINDOWN_TIMEOUT_ON, DISK_IOSCHED:
use _ or keep to skip the setting for a particular disk
- tlp-stat
- Consider changed sysfs paths for i915 enable_rc6/fbc
as of kernel 3.15 (M@C)
- Consider changed sysfs paths for hwmon coretemp/sensors
as of kernel 3.15/3.16
- Report speed of all fans, not just the first one
- Show warning for kernel sata errors (possibly) caused by
SATA_LINKPWR_ON_BAT/AC=min/medium power
- Retrieve trace output from systemd journal if present
- Do not disable TLP when laptop-mode-tools is detected,
just output a warning about possible conflicts
* Bugfixes
- Issue #74: Makefile: remove tlp-nop in uninstall-tlp target
(beatinho, peterkenji94)
- Issue #86: tlp-stat: don't suggest tp-smapi on non-ThinkPad
hardware with thinkpad_acpi loaded (sayantandas)
- tlp-stat: do not show /proc/acpi/ibm/fan on Lenovo non-ThinkPad
models (Qasim)
+++ 0.5 --- 24.03.2014 +++
* Features
- tpacpi-bat: auto detection of all ThinkPad models (v2.1)
- tlp-stat: include newer models in tpacpi-bat suggestions
- tlp-rdw: support newer docks
- Handle special case where BAT1 = main battery
(Thinkpad Edge/L/S series)
- Issue #61: sound power save depending on power source ac/bat
- Issue #62: don't touch devices in RUNTIME_PM_BLACKLIST or excluded
by RUNTIME_PM_ALL=0
* Bugfixes
- run-on-ac/bat: check if command exists
- Issue #59: do not write sata link power when not configured
- Fix RESTORE_DEVICE_STATE_ON_STARTUP (fabio)
- Restore bay power state upon resume only when on bat power
and the setting is active (xudabit)
- Use nmcli before rfkill to change radio state; re-enable wifi
on shutdown when not explicitly configured (Ubuntu 14.04)
* Packaging
- Create symlinks instead of hardlinks for bluetooth/wifi/wwan,
run-on-ac/bat
- Makefile: new params TLP_*
- tlp.init: remove requirement $all
+++ 0.4.1 --- 02.01.2014 +++
* Bugfix version (_not_ for Ubuntu/Debian)
* Features
- tpacpi-bat: support ThinkPad E431
* Bugfixes
- Bug #43: tlp-rdw not working with NM 0.9.9/Fedora 20 (wofritz)
- Bug #44: run-on-ac|bat: remove dependency on pm-utils/on_ac_power
+++ 0.4 --- 17.09.2013 +++
* Features
- New radeon dynamic power management (dpm); needs Kernel >= 3.11
(Pali Rohár)
- RUNTIME_PM_BLACKLIST: exclude listed pci(e) device addresses
from Runtime PM (wofritz)
- USB_BLACKLIST_WWAN: exclude wwan devices from usb autosuspend;
works for ids 05c6:* 0bdb:* 1199:* only
- Apply ac settings for faster shutdown
+++ 0.3.11 --- 10.09.2013 +++
*** Testing version (for Arch Linux) ***
* Bugfixes
- Issue #42:
- Remove dependency to on_ac_power (part of pm-utils in
Arch Linux)
- Fix udev rule to detect power source change ac - bat
* Packaging
- Pull request #40: systemd: start tlp.service after
local-fs.target instead of graphical.target (cprussin)
+++ 0.3.10 --- 17.08.2013 +++
*** Testing version (for Arch Linux) ***
* Architecture
- Issue #36: detect change of power source via udev instead of being
called by pm-powersave
- Handle suspend/resume w/o pm-utils in systemd environments:
- Encapsulate suspend/resume tasks as a tlp subcommand
- Add tlp-sleep.service to call tlp suspend/resume
- Remove 48tlp-rdw.lock because it doesn't work as expected
* Features
- Issue #31: detect and use intel_pstate driver to control
turbo mode (ValdikSS)
- Disable wol for all ethernet devices i.e. non-eth0 (blafoo)
- tpacpi-bat:
- merge upstream support for ThinkPad T430u, Edge E335/E530
* Bugfixes
- Issue #28: do not touch dirty_(background_)ratio anymore,
i.e. revert setting to kernel defaults
* Packaging
- debian/control: remove ${shlibs:Depends}
+++ 0.3.9 --- 02.05.2013 +++
* Features
- tpacpi-bat:
- merge upstream w/ support for ThinkPad (Edge) S430
- add support for ThinkPad L530
- tlp-stat:
- Subtract offset 128 from threshold values on ThinkPad Edge S430
- Show /sys/class/power_supply/BATx/cycle_count = 0 as "(unsupported)"
* Bugfixes
- Issue #14: tlp recalibrate fails when /bin/sh -> bash (slyon)
- Bug #42: X121e battery functions not working (Jlp)
- Set more reasonable values for dirty_ratio/dirty_background_ratio
- Reverse order of writing the thresholds upon system start
to stop - start, to achieve a consistent tlp-stat output between
tlp init/start and tlp setcharge on quirky Edge and L series.
- tlp-stat:
- Fix threshold output trailing empty line
+++ 0.3.8.1-3 --- 07.04.2013 +++
* Packaging
- Fix #41: postinst/postrm fails without acpid (Petit Carlin)
- recommends: acpid
- postinst/rm: ignore missing acpid
+++ 0.3.8.1 --- 29.03.2013 ***
* Packaging
- Remove obsolete desktop autostart hook
- New format for debian/copyright
- Add dummy case construct to tlp.init to make lintian happy
- Rename tlp-init.service to tlp.service