Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
251 commits
Select commit Hold shift + click to select a range
7785954
tools/power/turbostat: Enable TCC Offset on more models
zhang-rui Mar 24, 2023
8193e1c
tools/power/turbostat: Support alternative graphics sysfs knobs
zhang-rui Aug 21, 2022
7f5e38a
tools/power/turbostat: Replace raw value cpu model with Macro
zhang-rui Mar 24, 2023
d89d78a
tools/power/turbostat: Remove redundant duplicates
zhang-rui Mar 24, 2023
60559a7
tools/power/turbostat: Remove pseudo check for two models
zhang-rui Mar 27, 2023
10616a4
tools/power/turbostat: Add skeleton support for table driven feature …
zhang-rui Aug 27, 2023
fee91ef
tools/power/turbostat: Abstract MSR_MISC_FEATURE_CONTROL support
zhang-rui Aug 21, 2023
d820946
tools/power/turbostat: Abstract MSR_MISC_PWR_MGMT support
zhang-rui Aug 21, 2023
0628596
tools/power/turbostat: Abstract BCLK frequency support
zhang-rui Aug 21, 2023
4ed4c34
tools/power/turbostat: Abstract Package cstate limit decoding support
zhang-rui Aug 27, 2023
053d9fe
tools/power/turbostat: Abstract Nehalem MSRs support
zhang-rui Aug 25, 2023
242d899
tools/power/turbostat: Remove a redundant check
zhang-rui Mar 27, 2023
1943e10
tools/power/turbostat: Rename some functions
zhang-rui Mar 27, 2023
14757de
tools/power/turbostat: Abstract Turbo Ratio Limit MSRs support
zhang-rui Sep 8, 2023
146305a
tools/power/turbostat: Rename some TRL functions
zhang-rui Jul 30, 2023
6acbaaf
tools/power/turbostat: Abstract Config TDP MSRs support
zhang-rui Aug 31, 2023
9e14fec
tools/power/turbostat: Abstract TCC Offset bits support
zhang-rui Aug 25, 2023
cb2d065
tools/power/turbostat: Abstract Perf Limit Reasons MSRs support
zhang-rui Jul 30, 2023
7d4f8df
tools/power/turbostat: Abstract Automatic Cstate Conversion support
zhang-rui Apr 22, 2023
b93303b
tools/power/turbostat: Abstract hardcoded Crystal Clock frequency
zhang-rui Apr 22, 2023
7efdad0
tools/power/turbostat: Redefine RAPL macros
zhang-rui Aug 26, 2023
2230273
tools/power/turbostat: Simplify the logic for RAPL enumeration
zhang-rui Aug 26, 2023
1395677
tools/power/turbostat: Abstract RAPL MSRs support
zhang-rui Aug 28, 2023
8e8d075
tools/power/turbostat: Abstract Per Core RAPL support
zhang-rui Aug 27, 2023
4594779
tools/power/turbostat: Abstract RAPL divisor support
zhang-rui Apr 22, 2023
adbed64
tools/power/turbostat: Abstract fixed DRAM Energy unit support
zhang-rui Apr 22, 2023
a237029
tools/power/turbostat: Abstract hardcoded TDP value
zhang-rui Aug 27, 2023
bc9a3bc
tools/power/turbostat: Remove unused family/model parameters for RAPL…
zhang-rui Aug 27, 2023
75df0df
tools/power/turbostat: Abstract TSC tweak support
zhang-rui Aug 27, 2023
8feb8d8
tools/power/turbostat: Add skeleton support for cstate enumeration
zhang-rui Aug 27, 2023
58db7c2
tools/power/turbostat: Adjust cstate for models with .has_nhm_msrs set
zhang-rui Sep 8, 2023
4a5359d
tools/power/turbostat: Adjust cstate for has_snb_msrs() models
zhang-rui Sep 8, 2023
fa86e90
tools/power/turbostat: Adjust cstate for models with .cst_limit set
zhang-rui Sep 8, 2023
7e46625
tools/power/turbostat: Adjust cstate for has_snb_msrs() models
zhang-rui Sep 8, 2023
174e40b
tools/power/turbostat: Adjust cstate for has_slv_msrs() models
zhang-rui Aug 27, 2023
cfdf603
tools/power/turbostat: Adjust cstate for is_jvl() models
zhang-rui Aug 27, 2023
47bea8c
tools/power/turbostat: Adjust cstate for is_dnv() models
zhang-rui Aug 27, 2023
231d194
tools/power/turbostat: Adjust cstate for is_skx()/is_icx()/is_spr() m…
zhang-rui Sep 8, 2023
fa2793d
tools/power/turbostat: Adjust cstate for is_bdx() models
zhang-rui Aug 27, 2023
f10620e
tools/power/turbostat: Adjust cstate for has_c8910_msrs() models
zhang-rui Aug 27, 2023
1da4ec0
tools/power/turbostat: Adjust cstate for is_slm()/is_knl()/is_cnl()/i…
zhang-rui Aug 27, 2023
0a9f292
tools/power/turbostat: Use fine grained IRTL output
zhang-rui Aug 27, 2023
023ebcd
tools/power/turbostat: Abstract IRTL support
zhang-rui Sep 8, 2023
6030372
tools/power/turbostat: Abstract MSR_CORE_C1_RES support
zhang-rui Aug 27, 2023
5c66265
tools/power/turbostat: Abstract MSR_MODULE_C6_RES_MS support
zhang-rui Aug 27, 2023
fef38da
tools/power/turbostat: Abstract MSR_CC6/MC6_DEMOTION_POLICY_CONFIG su…
zhang-rui Aug 27, 2023
673088d
tools/power/turbostat: Abstract MSR_ATOM_PKG_C6_RESIDENCY support
zhang-rui Aug 27, 2023
0958868
tools/power/turbostat: Abstract MSR_KNL_CORE_C6_RESIDENCY support
zhang-rui Aug 27, 2023
3db6932
tools/power/turbostat: Abstract extended cstate MSRs support
zhang-rui Aug 27, 2023
f7561df
tools/power/turbostat: Abstract aperf/mperf multiplier support
zhang-rui Aug 31, 2023
23229ab
tools/power/turbostat: Abstract cstate prewake bit support
zhang-rui Aug 31, 2023
4c193eb
tools/power/turbostat: Delete intel_model_duplicates()
zhang-rui Aug 27, 2023
57c480b
tools/power/turbostat: Improve probe_platform_features() logic
zhang-rui Aug 31, 2023
0bcc113
tools/power/turbostat: Relocate cstate probing code
zhang-rui Aug 29, 2023
68a6003
tools/power/turbostat: Relocate pstate probing code
zhang-rui Aug 31, 2023
66f3681
tools/power/turbostat: Rename uncore probing function
zhang-rui Aug 31, 2023
676f418
tools/power/turbostat: Rename rapl probing function
zhang-rui Aug 31, 2023
172b979
tools/power/turbostat: Relocate graphics probing code
zhang-rui Aug 31, 2023
a3ba3f6
tools/power/turbostat: Relocate lpi probing code
zhang-rui Aug 31, 2023
f121b27
tools/power/turbostat: Relocate thermal probing code
zhang-rui Aug 31, 2023
3b40772
tools/power/turbostat: Reorder some functions
zhang-rui Aug 30, 2023
2eda336
tools/power/turbostat: Relocate more probing related code
zhang-rui Aug 30, 2023
784695e
tools/power/turbostat: Introduce probe_pm_features()
zhang-rui Sep 13, 2023
2f47225
tools/power/turbostat: Enable MSR_CORE_C1_RES on recent Intel client …
zhang-rui Aug 27, 2023
d5d46da
tools/power/turbostat: Remove PC7/PC9 support on ADL/RPL
zhang-rui Sep 9, 2023
e4510cd
tools/power/turbostat: Introduce cpu_allowed_set
zhang-rui Oct 6, 2023
8abaff2
tools/power/turbostat: Obey allowed CPUs when accessing CPU counters
zhang-rui Oct 4, 2023
aaeca2c
tools/power/turbostat: Obey allowed CPUs during startup
zhang-rui Oct 4, 2023
c8fdebc
tools/power/turbostat: Abstract several functions
zhang-rui Oct 4, 2023
c6e0d4c
tools/power/turbostat: Obey allowed CPUs for primary thread/core dete…
zhang-rui Oct 6, 2023
7299b89
tools/power/turbostat: Obey allowed CPUs for system summary
zhang-rui Oct 6, 2023
b23ecb8
tools/power/turbostat: Handle offlined CPUs in cpu_subset
zhang-rui Oct 20, 2023
ca3401b
tools/power/turbostat: Abstrct function for parsing cpu string
zhang-rui Oct 20, 2023
857e7f7
tools/power/turbostat: Handle cgroup v2 cpu limitation
zhang-rui Oct 20, 2023
338c5f3
tools/power/turbostat: Move process to root cgroup
spandruvada Jan 24, 2023
71d5abe
tools/power/turbostat: Add MSR_CORE_C1_RES support for spr_features
zhang-rui Oct 19, 2023
09f1ac5
tools/power/turbostat: Add initial support for GraniteRapids
zhang-rui Sep 9, 2023
17a099d
tools/power/turbostat: Add initial support for SierraForest
zhang-rui Sep 28, 2023
08b0401
tools/power/turbostat: Add initial support for GrandRidge
zhang-rui Oct 19, 2023
ca23a55
tools/power/turbostat: Add initial support for ArrowLake
sumeetpawnikar May 23, 2023
5d394a8
tools/power/turbostat: Add initial support for LunarLake
sumeetpawnikar May 23, 2023
34cbeae
tools/power/turbostat: bugfix "--show IPC"
lenb Jun 28, 2023
f7b040e
tools/power turbostat: version 2023.11.07
lenb Nov 8, 2023
c003e99
tools/power turbostat: Do not print negative LPI residency
yu-chen-surf Oct 22, 2023
9c37874
tools/power turbostat: Expand probe_intel_uncore_frequency()
lenb Dec 20, 2023
c7cd6bf
tools/power turbostat: Read base_hz and bclk from CPUID.16H if available
Jan 22, 2024
b829553
tools/power turbostat: enhance -D (debug counter dump) output
lenb Feb 5, 2024
23ce02a
tools/power turbostat: Add --no-msr option
Jan 11, 2024
8b88350
tools/power turbostat: Add --no-perf option
Jan 11, 2024
eed0719
tools/power turbostat: Add reading aperf and mperf via perf API
Jan 11, 2024
3dce4b3
tools/power turbostat: detect and disable unavailable BICs at runtime
Jan 15, 2024
a6fc9f0
tools/power turbostat: add early exits for permission checks
Jan 30, 2024
f129560
tools/power turbostat: Clear added counters when in no-msr mode
Mar 14, 2024
234daaf
tools/power turbostat: Add proper re-initialization for perf file des…
Feb 15, 2024
2ac4975
tools/power turbostat: read RAPL counters via perf
Mar 5, 2024
b6f38dd
tools/power/turbostat: Enable MSR_CORE_C1_RES support for ICX
zhang-rui Mar 12, 2024
8fe40f9
tools/power/turbostat: Cache graphics sysfs path
zhang-rui Mar 12, 2024
d7fc18e
tools/power/turbostat: Unify graphics sysfs snapshots
zhang-rui Mar 13, 2024
20064b2
tools/power/turbostat: Introduce BIC_SAM_mc6/BIC_SAMMHz/BIC_SAMACTMHz
zhang-rui Mar 13, 2024
6b2e13b
tools/power/turbostat: Add support for new i915 sysfs knobs
zhang-rui Mar 22, 2024
14cf5ed
tools/power/turbostat: Add support for Xe sysfs knobs
zhang-rui Mar 12, 2024
63c4afb
tools/power turbostat: v2024.04.10
lenb Apr 8, 2024
b37aa10
tools/power turbostat: Add "snapshot:" Makefile target
lenb Apr 21, 2024
890ba51
tools/power turbostat: Harden probe_intel_uncore_frequency()
lenb Apr 21, 2024
46cb816
tools/power turbostat: Survive sparse die_id
lenb Apr 21, 2024
4d0628c
tools/power turbostat: Enhance ARL/LNL support
zhang-rui Mar 27, 2024
2e1f7b2
tools/power turbostat: Add ARL-H support
zhang-rui Mar 27, 2024
b16fceb
tools/power turbostat: Replace _Static_assert with BUILD_BUG_ON
Apr 23, 2024
d1876b9
tools/power turbostat: Enable non-privileged users to read sysfs coun…
Apr 25, 2024
35e973b
tools/power turbostat: Add columns for clustered uncore frequency
lenb Apr 25, 2024
e1acb25
tools/power turbostat: Avoid possible memory corruption due to sparse…
May 6, 2024
a075169
tools/power turbostat: Read Core-cstates via perf
Mar 11, 2024
bcd3a34
tools/power turbostat: Read Package-cstates via perf
May 8, 2024
48e7d00
tools/power turbostat: Fix order of strings in pkg_cstate_limit_strings
May 9, 2024
f45eaa6
tools/power turbostat: Ignore pkg_cstate_limit when it is not available
May 9, 2024
2fa00c5
tools/power turbostat: version 2024.05.10
lenb Apr 28, 2024
631451e
tools/power turbostat: option '-n' is ambiguous
darcari May 20, 2024
09094d4
tools/power turbostat: Fix unc freq columns not showing with '-q' or …
adamjhawley May 22, 2024
d57b95b
tools/power/turbostat: Switch to new Intel CPU model defines
aegl Jun 11, 2024
1eaccb6
tools/power turbostat: Add local build_bug.h header for snapshot target
May 30, 2024
9d03a03
tools/power turbostat: Remove anonymous union from rapl_counter_info_t
May 24, 2024
0ccbb79
tools/power turbostat: Replace enum rapl_source and cstate_source wit…
May 24, 2024
475b5b6
tools/power turbostat: Add ZERO_ARRAY for zero initializing builtin a…
May 24, 2024
58b3f23
tools/power turbostat: Group SMI counter with APERF and MPERF
May 24, 2024
117b1b6
tools/power turbostat: Extend --add option with perf counters
May 28, 2024
8699454
tools/power turbostat: Fix formatting in turbostat.8
Jul 9, 2024
c5296cc
tools/power turbostat: Add perf added counter example to turbostat.8
Jul 9, 2024
592ec55
tools/power turbostat: Fix typo in turbostat.8
Jul 9, 2024
f3bd9d2
tools/power turbostat: Move debug prints from stdout to stderr
Jul 10, 2024
61fdedf
tools/power turbostat: Move verbose counter messages to level 2
Jul 10, 2024
811a035
tools/power turbostat: Add early support for PMT counters
Jul 22, 2024
c6c1d56
tools/power turbostat: Add MTL's PMT DC6 builtin counter
Jul 22, 2024
9acdfed
tools/power turbostat: Document PMT in turbostat.8
Jul 23, 2024
48f5ed7
tools/power turbostat: Include umask=%x in perf counter's config
Jul 24, 2024
39efa0e
tools/power turbostat: version 2024.07.26
lenb Jul 26, 2024
692c1a6
tools/power turbostat: fix GCC9 build regression
tebrandt Jul 31, 2024
c6a54b2
tools/power turbostat: Fix column printing for PMT xtal_time counters
Aug 7, 2024
1652702
tools/power turbostat: Allow using cpu device in perf counters on hyb…
Aug 20, 2024
4343594
tools/power turbostat: Fix trailing '\n' parsing
zhang-rui Aug 27, 2024
b73e832
tools/power turbostat: Honor --show CPU, even when even when num_cpus=1
Sep 17, 2024
ff3a24a
tools/power turbostat: Remove PC7/PC9 support on MTL
zhang-rui Nov 14, 2024
1ac57a7
tools/power turbostat: Add back PC8 support on Arrowlake
zhang-rui Nov 14, 2024
4c50ab2
tools/power turbostat: Rename arl_features to lnl_features
zhang-rui Nov 14, 2024
1fd8ea1
tools/power turbostat: Remove PC3 support on Lunarlake
zhang-rui Nov 14, 2024
6ab6905
tools/power turbostat: Add initial support for GraniteRapids-D
zhang-rui Nov 14, 2024
2cc7705
tools/power turbostat: Enhance platform divergence description
zhang-rui Nov 14, 2024
fca321d
tools/power turbostat: Remove unnecessary fflush() call
zhang-rui Nov 14, 2024
429af86
tools/power turbostat: Consolidate graphics sysfs access
zhang-rui Nov 14, 2024
12c547e
tools/power turbostat: Cache graphics sysfs file descriptors during p…
zhang-rui Nov 14, 2024
bf6cc6a
tools/power turbostat: Add support for /sys/class/drm/card1
zhang-rui Nov 14, 2024
e53d852
tools/power turbostat: Force --no-perf in --dump mode
Oct 24, 2024
426a7b1
tools/power turbostat: Fix child's argument forwarding
Nov 13, 2024
06053c9
tools/power turbostat: Add RAPL psys as a built-in counter
Oct 2, 2024
fd593b7
tools/power turbostat: 2024.11.30
lenb Nov 30, 2024
8b91385
tools/power turbostat: Add initial support for PantherLake
zhang-rui Dec 3, 2024
430d7c1
tools/power turbostat: Add initial support for ClearwaterForest
zhang-rui Dec 3, 2024
bfe679c
tools/power turbostat: update turbostat(8)
lenb Dec 3, 2024
dbb2157
tools/power turbostat: Exit on unsupported Intel models
zhang-rui Dec 3, 2024
890aac5
tools/power turbostat: Exit on unsupported Vendors
zhang-rui Dec 3, 2024
4c4c640
tools/power turbostat: Improve --help output
zhang-rui Dec 3, 2024
e8260b5
tools/power turbostat: Introduce --force parameter
zhang-rui Dec 3, 2024
8b46a49
tools/power turbostat: add Busy% to "show idle"
lenb Dec 10, 2024
09e8f02
tools/power turbostat: Add an NMI column
lenb Dec 17, 2024
c016076
tools/power turbostat: Remove SysWatt from DISABLED_BY_DEFAULT
Dec 18, 2024
b872a0f
tools/power turbostat: Fix PMT mmaped file size rounding
Dec 20, 2024
49bf40d
tools/power turbostat: Add fixed RAPL PSYS divisor for SPR
Dec 5, 2024
7d2bf1a
tools/power turbostat: Enhance turbostat self-performance visibility
zhang-rui Jan 8, 2025
6101e95
tools/power turbostat: Check for non-zero value when MSR probing
Jan 14, 2025
52d30f7
tools/power turbostat: Return default value for unmapped PMT domains
Dec 10, 2024
86d3e43
tools/power turbostat: Extend PMT identification with a sequence number
Dec 10, 2024
b69cc8a
tools/power turbostat: Add PMT directory iterator helper
Dec 12, 2024
4334238
tools/power turbostat: Allow mapping multiple PMT files with the same…
Dec 6, 2024
17c4563
tools/power turbostat: Allow adding PMT counters directly by sysfs path
Dec 12, 2024
5fa20b6
tools/power turbostat: version 2025.01.14
lenb Dec 3, 2024
46f34ab
tools/power turbostat: Add tcore clock PMT type
Jan 17, 2025
0a867c4
tools/power turbostat: Fix forked child affinity regression
lenb Jan 27, 2025
adc9aad
tools/power turbostat: Harden one-shot mode against cpu offline
lenb Jan 28, 2025
4a02ebe
tools/power turbostat: Add CPU%c1e BIC for CWF
Jan 17, 2025
c6e6187
tools/power turbostat: version 2025.02.02
lenb Feb 2, 2025
7b9ce30
x86/cpu: Fix #define name for Intel CPU model 0x5A
aegl Oct 7, 2024
fa35115
tools/power turbostat: Clustered Uncore MHz counters should honor sho…
lenb Feb 7, 2025
9b76c80
tools/power turbostat: Allow Zero return value for some RAPL registers
zhang-rui Feb 8, 2025
a44648b
tools/power turbostat: Fix names matching
dedekind Feb 8, 2025
26b0d47
tools/power turbostat: Add idle governor statistics reporting
dedekind Feb 8, 2025
28a1c52
tools/power turbostat: Increase CPU_SUBSET_MAXCPUS to 8192
justinrernst Mar 19, 2025
d194f7f
tools/power turbostat: report CoreThr per measurement interval
lenb Apr 6, 2025
5fc8b4d
tools/power turbostat: Document GNR UncMHz domain convention
lenb Apr 6, 2025
d561a19
tools/power turbostat: Restore GFX sysfs fflush() call
zhang-rui Mar 19, 2025
c7405b1
tools/power turbostat: re-factor sysfs code
lenb Apr 6, 2025
ad0e5cf
tools/power turbostat: disable "cpuidle" invocation counters, by default
lenb Apr 6, 2025
19fa853
tools/power turbostat: v2025.05.06
lenb Apr 6, 2025
2f85042
tools/power turbostat.8: fix typo: idle_pct should be pct_idle
lenb Apr 9, 2025
1bee2b2
tools/power turbostat.8: pm_domain wording fix
lenb Apr 18, 2025
5d8f63d
tools/power turbostat: Add Android support for MSR device handling
kaushlen May 22, 2025
29aaaa8
tools/power turbostat: Fix RAPL_GFX_ALL typo
kaushlen May 23, 2025
7eac789
tools/power turbostat: Fix AMD package-energy reporting
gautshen May 29, 2025
45ee7d8
tools/power turbostat: Always check rapl_joules flag
zhang-rui May 30, 2025
097344b
tools/power turbostat: Quit early for unsupported RAPL counters
zhang-rui May 17, 2025
489cfb1
tools/power turbostat: Remove add_rapl_perf_counter_()
zhang-rui May 17, 2025
48fedc2
tools/power turbostat: Remove add_cstate_perf_counter_()
zhang-rui May 17, 2025
099a3db
tools/power turbostat: Remove add_msr_perf_counter_()
zhang-rui May 17, 2025
a3e166c
tools/power turbostat: Introduce add_msr_counter()
zhang-rui May 17, 2025
4f79a27
tools/power turbostat: Clean up add perf/msr counter logic
zhang-rui May 17, 2025
1187349
tools/power turbostat: Allow probing RAPL with platform_features->rap…
zhang-rui May 17, 2025
6e03e14
tools/power turbostat: Avoid probing the same perf counters
zhang-rui May 30, 2025
3c91e45
tools/power turbostat: Dump RAPL sysfs info
zhang-rui May 30, 2025
b802fd3
tools/power turbostat: Add initial support for DMR
zhang-rui Mar 4, 2024
32801a7
tools/power turbostat: Add initial support for BartlettLake
zhang-rui Apr 18, 2025
029e5fd
tools/power turbostat: version 2025.06.08
lenb Jun 8, 2025
e30bf6a
tools/power turbostat: regression fix: --show C1E%
lenb Jun 10, 2025
f3c0510
x86/cpu: Add new Intel CPU model numbers for Wildcatlake and Novalake
aegl Jul 30, 2025
8896d06
tools/power turbostat: verify arguments to params --show and --hide
lenb Jun 10, 2025
84a630a
tools/power turbostat: Fix build with musl
jcalvinowens Jun 13, 2025
3d77579
tools/power turbostat: Handle cap_get_proc() ENOSYS
jcalvinowens Jun 14, 2025
6249075
tools/power turbostat: Fix bogus SysWatt for forked program
zhang-rui Jun 17, 2025
81d5869
tools/power turbostat.8: Document Totl%C0, Any%C0, GFX%C0, CPUGFX% co…
lenb Jun 23, 2025
6028158
tools/power turbostat: Support more than 64 built-in-counters
lenb Jul 12, 2025
86d49b3
tools/power turbostat: probe and display L3 cache topology
lenb Jul 15, 2025
934a8a1
tools/power turbostat: delete GET_PKG()
lenb Jul 22, 2025
d35831e
tools/power turbostat: add format "average" for external attributes
intel-hm Aug 8, 2025
e91fb33
tools/power turbostat: Fix DMR support
zhang-rui Jun 11, 2025
0ec8966
tools/power turbostat: standardize PER_THREAD_PARAMS
lenb Aug 8, 2025
436f75b
tools/power turbostat: Handle non-root legacy-uncore sysfs permissions
lenb Aug 9, 2025
ad07e49
tools/power turbostat: version 2025.09.09
lenb Aug 10, 2025
f9b1369
tools/power turbostat: Fix incorrect sorting of PMT telemetry
kaushlen Aug 9, 2025
ea7a860
tools/power turbostat: Regression fix Uncore MHz printed in hex
lenb Oct 20, 2025
076910f
tools/power turbostat: Add Wildcat Lake and Nova Lake support
lenb Aug 15, 2025
3d90253
tools/power turbostat: Refactor added column header printing
lenb Oct 20, 2025
56d53b1
tools/power turbostat: Refactor added-counter value printing code
lenb Oct 20, 2025
779a88d
tools/power turbostat.8: Update example
lenb Oct 20, 2025
50b1f25
tools/power turbostat: Refactor floating point printout code
lenb Oct 20, 2025
e856a1e
tools/power turbostat: Remove dead code
lenb Oct 22, 2025
0657bb0
tools/power turbostat: Add LLC stats
lenb Oct 21, 2025
f60d973
tools/power turbostat: Set per_cpu_msr_sum to NULL after free
Nov 13, 2025
063ab16
tools/power turbostat: Add run-time MSR driver probe
lenb Nov 30, 2025
5460aab
tools/power turbostat: Validate RAPL MSRs for AWS Nitro Hypervisor
lenb Nov 30, 2025
bbf344b
tools/power turbostat: Enhance perf probe
lenb Dec 2, 2025
e54b2be
tools/power turbostat: Validate APERF access for VMWARE
lenb Dec 2, 2025
4158827
tools/power turbostat: Print "nan" for out of range percentages
lenb Dec 2, 2025
da0d58a
tools/power turbostat: Print percentages in 8-columns
lenb Dec 2, 2025
5662636
tools/power turbostat: Print wide names only for RAW 64-bit columns
lenb Dec 2, 2025
eed46f6
tools/power turbostat: version 2025.12.02
lenb Dec 2, 2025
7501114
tools/power turbostat: AMD: msr offset 0x611 read failed: Input/outpu…
lenb Feb 4, 2026
2a757f2
tools/power turbostat: Harden against unexpected values
lenb Dec 8, 2025
1ad2cb9
tools/power turbostat: Fix swidle header vs data display
lenb Mar 8, 2026
a845c74
tools/power/turbostat: Fix microcode patch level output for AMD/Hygon
spievniev Feb 25, 2026
7d1bb58
tools/power turbostat: Fix incorrect format variable
dedekind Mar 11, 2026
84cbc9f
tools/power turbostat: Fix --show/--hide for individual cpuidle counters
dedekind Mar 11, 2026
da721fa
tools/power turbostat: Fix delimiter bug in print functions
dedekind Mar 11, 2026
ef4d1bd
tools/power turbostat: Fix unrecognized option '-P'
darcari Apr 21, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions MAINTAINERS
Original file line number Diff line number Diff line change
Expand Up @@ -22003,6 +22003,7 @@ Q: https://patchwork.kernel.org/project/linux-pm/list/
B: https://bugzilla.kernel.org
T: git git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux.git turbostat
F: tools/power/x86/turbostat/
F: tools/testing/selftests/turbostat/

TW5864 VIDEO4LINUX DRIVER
M: Bluecherry Maintainers <maintainers@bluecherrydvr.com>
Expand Down
2 changes: 1 addition & 1 deletion arch/x86/events/intel/core.c
Original file line number Diff line number Diff line change
Expand Up @@ -7325,7 +7325,7 @@ __init int intel_pmu_init(void)
case INTEL_FAM6_ATOM_SILVERMONT_D:
case INTEL_FAM6_ATOM_SILVERMONT_MID:
case INTEL_FAM6_ATOM_AIRMONT:
case INTEL_FAM6_ATOM_AIRMONT_MID:
case INTEL_FAM6_ATOM_SILVERMONT_MID2:
memcpy(hw_cache_event_ids, slm_hw_cache_event_ids,
sizeof(hw_cache_event_ids));
memcpy(hw_cache_extra_regs, slm_hw_cache_extra_regs,
Expand Down
9 changes: 7 additions & 2 deletions arch/x86/include/asm/intel-family.h
Original file line number Diff line number Diff line change
Expand Up @@ -199,6 +199,11 @@

#define INTEL_PANTHERLAKE_L IFM(6, 0xCC)

#define INTEL_WILDCATLAKE_L IFM(6, 0xD5)

#define INTEL_NOVALAKE IFM(18, 0x01)
#define INTEL_NOVALAKE_L IFM(18, 0x03)

/* "Small Core" Processors (Atom/E-Core) */

#define INTEL_FAM6_ATOM_BONNELL 0x1C /* Diamondville, Pineview */
Expand All @@ -219,11 +224,11 @@
#define INTEL_ATOM_SILVERMONT_D IFM(6, 0x4D) /* Avaton, Rangely */
#define INTEL_FAM6_ATOM_SILVERMONT_MID 0x4A /* Merriefield */
#define INTEL_ATOM_SILVERMONT_MID IFM(6, 0x4A) /* Merriefield */
#define INTEL_FAM6_ATOM_SILVERMONT_MID2 0x5A /* Anniedale */
#define INTEL_ATOM_SILVERMONT_MID2 IFM(6, 0x5A) /* Anniedale */

#define INTEL_FAM6_ATOM_AIRMONT 0x4C /* Cherry Trail, Braswell */
#define INTEL_ATOM_AIRMONT IFM(6, 0x4C) /* Cherry Trail, Braswell */
#define INTEL_FAM6_ATOM_AIRMONT_MID 0x5A /* Moorefield */
#define INTEL_ATOM_AIRMONT_MID IFM(6, 0x5A) /* Moorefield */
#define INTEL_FAM6_ATOM_AIRMONT_NP 0x75 /* Lightning Mountain */
#define INTEL_ATOM_AIRMONT_NP IFM(6, 0x75) /* Lightning Mountain */

Expand Down
2 changes: 1 addition & 1 deletion arch/x86/kernel/cpu/common.c
Original file line number Diff line number Diff line change
Expand Up @@ -1168,7 +1168,7 @@ static const __initconst struct x86_cpu_id cpu_vuln_whitelist[] = {

VULNWL_INTEL(CORE_YONAH, NO_SSB),

VULNWL_INTEL(ATOM_AIRMONT_MID, NO_L1TF | MSBDS_ONLY | NO_SWAPGS | NO_ITLB_MULTIHIT),
VULNWL_INTEL(ATOM_SILVERMONT_MID2, NO_L1TF | MSBDS_ONLY | NO_SWAPGS | NO_ITLB_MULTIHIT),
VULNWL_INTEL(ATOM_AIRMONT_NP, NO_L1TF | NO_SWAPGS | NO_ITLB_MULTIHIT),

VULNWL_INTEL(ATOM_GOLDMONT, NO_MDS | NO_L1TF | NO_SWAPGS | NO_ITLB_MULTIHIT | NO_MMIO),
Expand Down
2 changes: 1 addition & 1 deletion arch/x86/kernel/tsc_msr.c
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@ static const struct x86_cpu_id tsc_msr_cpu_ids[] = {
X86_MATCH_INTEL_FAM6_MODEL(ATOM_SILVERMONT, &freq_desc_byt),
X86_MATCH_INTEL_FAM6_MODEL(ATOM_SILVERMONT_MID, &freq_desc_tng),
X86_MATCH_INTEL_FAM6_MODEL(ATOM_AIRMONT, &freq_desc_cht),
X86_MATCH_INTEL_FAM6_MODEL(ATOM_AIRMONT_MID, &freq_desc_ann),
X86_MATCH_INTEL_FAM6_MODEL(ATOM_SILVERMONT_MID2, &freq_desc_ann),
X86_MATCH_INTEL_FAM6_MODEL(ATOM_AIRMONT_NP, &freq_desc_lgm),
{}
};
Expand Down
2 changes: 1 addition & 1 deletion drivers/powercap/intel_rapl_common.c
Original file line number Diff line number Diff line change
Expand Up @@ -1285,7 +1285,7 @@ static const struct x86_cpu_id rapl_ids[] __initconst = {
X86_MATCH_INTEL_FAM6_MODEL(ATOM_SILVERMONT, &rapl_defaults_byt),
X86_MATCH_INTEL_FAM6_MODEL(ATOM_AIRMONT, &rapl_defaults_cht),
X86_MATCH_INTEL_FAM6_MODEL(ATOM_SILVERMONT_MID, &rapl_defaults_tng),
X86_MATCH_INTEL_FAM6_MODEL(ATOM_AIRMONT_MID, &rapl_defaults_ann),
X86_MATCH_INTEL_FAM6_MODEL(ATOM_SILVERMONT_MID2, &rapl_defaults_ann),
X86_MATCH_INTEL_FAM6_MODEL(ATOM_GOLDMONT, &rapl_defaults_core),
X86_MATCH_INTEL_FAM6_MODEL(ATOM_GOLDMONT_PLUS, &rapl_defaults_core),
X86_MATCH_INTEL_FAM6_MODEL(ATOM_GOLDMONT_D, &rapl_defaults_core),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -229,10 +229,10 @@ int v4l2_get_acpi_sensor_info(struct device *dev, char **module_id_str);
#define IS_BYT __IS_SOC(INTEL_FAM6_ATOM_SILVERMONT)
#define IS_CHT __IS_SOC(INTEL_FAM6_ATOM_AIRMONT)
#define IS_MRFD __IS_SOC(INTEL_FAM6_ATOM_SILVERMONT_MID)
#define IS_MOFD __IS_SOC(INTEL_FAM6_ATOM_AIRMONT_MID)
#define IS_MOFD __IS_SOC(INTEL_FAM6_ATOM_SILVERMONT_MID2)

/* Both CHT and MOFD come with ISP2401 */
#define IS_ISP2401 __IS_SOCS(INTEL_FAM6_ATOM_AIRMONT, \
INTEL_FAM6_ATOM_AIRMONT_MID)
INTEL_FAM6_ATOM_SILVERMONT_MID2)

#endif /* ATOMISP_PLATFORM_H_ */
32 changes: 30 additions & 2 deletions tools/power/x86/turbostat/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@ CC = $(CROSS_COMPILE)gcc
BUILD_OUTPUT := $(CURDIR)
PREFIX ?= /usr
DESTDIR ?=
DAY := $(shell date +%Y.%m.%d)
SNAPSHOT = turbostat-$(DAY)

ifeq ("$(origin O)", "command line")
BUILD_OUTPUT := $(O)
Expand All @@ -12,6 +14,7 @@ turbostat : turbostat.c
override CFLAGS += -O2 -Wall -Wextra -I../../../include
override CFLAGS += -DMSRHEADER='"../../../../arch/x86/include/asm/msr-index.h"'
override CFLAGS += -DINTEL_FAMILY_HEADER='"../../../../arch/x86/include/asm/intel-family.h"'
override CFLAGS += -DBUILD_BUG_HEADER='"../../../../include/linux/build_bug.h"'
override CFLAGS += -D_FILE_OFFSET_BITS=64
override CFLAGS += -D_FORTIFY_SOURCE=2

Expand All @@ -22,9 +25,34 @@ override CFLAGS += -D_FORTIFY_SOURCE=2
.PHONY : clean
clean :
@rm -f $(BUILD_OUTPUT)/turbostat
@rm -f $(SNAPSHOT).tar.gz

install : turbostat
install -d $(DESTDIR)$(PREFIX)/bin
install -d $(DESTDIR)$(PREFIX)/bin
install $(BUILD_OUTPUT)/turbostat $(DESTDIR)$(PREFIX)/bin/turbostat
install -d $(DESTDIR)$(PREFIX)/share/man/man8
install -d $(DESTDIR)$(PREFIX)/share/man/man8
install -m 644 turbostat.8 $(DESTDIR)$(PREFIX)/share/man/man8

snapshot: turbostat
@rm -rf $(SNAPSHOT)
@mkdir $(SNAPSHOT)
@cp turbostat Makefile turbostat.c turbostat.8 ../../../../arch/x86/include/asm/intel-family.h $(SNAPSHOT)

@sed -e 's/^#include <linux\/bits.h>/#include "bits.h"/' ../../../../arch/x86/include/asm/msr-index.h > $(SNAPSHOT)/msr-index.h
@echo '#define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]))' >> $(SNAPSHOT)/msr-index.h
@echo "#define BIT(x) (1 << (x))" > $(SNAPSHOT)/bits.h
@echo "#define BIT_ULL(nr) (1ULL << (nr))" >> $(SNAPSHOT)/bits.h
@echo "#define GENMASK(h, l) (((~0UL) << (l)) & (~0UL >> (sizeof(long) * 8 - 1 - (h))))" >> $(SNAPSHOT)/bits.h
@echo "#define GENMASK_ULL(h, l) (((~0ULL) << (l)) & (~0ULL >> (sizeof(long long) * 8 - 1 - (h))))" >> $(SNAPSHOT)/bits.h

@echo '#define BUILD_BUG_ON(cond) do { enum { compile_time_check ## __COUNTER__ = 1/(!(cond)) }; } while (0)' > $(SNAPSHOT)/build_bug.h
@echo '#define __must_be_array(arr) 0' >> $(SNAPSHOT)/build_bug.h

@echo PWD=. > $(SNAPSHOT)/Makefile
@echo "CFLAGS += -DMSRHEADER='\"msr-index.h\"'" >> $(SNAPSHOT)/Makefile
@echo "CFLAGS += -DINTEL_FAMILY_HEADER='\"intel-family.h\"'" >> $(SNAPSHOT)/Makefile
@echo "CFLAGS += -DBUILD_BUG_HEADER='\"build_bug.h\"'" >> $(SNAPSHOT)/Makefile
@sed -e's/.*MSRHEADER.*//' -e's/.*INTEL_FAMILY_HEADER.*//' -e's/.*BUILD_BUG_HEADER.*//' Makefile >> $(SNAPSHOT)/Makefile

@rm -f $(SNAPSHOT).tar.gz
tar cvzf $(SNAPSHOT).tar.gz $(SNAPSHOT)
Loading