aboutsummaryrefslogtreecommitdiff
path: root/src/cpu
diff options
context:
space:
mode:
Diffstat (limited to 'src/cpu')
-rw-r--r--src/cpu/cpu.cpp5
-rw-r--r--src/cpu/cpu.h1
2 files changed, 6 insertions, 0 deletions
diff --git a/src/cpu/cpu.cpp b/src/cpu/cpu.cpp
index eb0a46c..63e48ee 100644
--- a/src/cpu/cpu.cpp
+++ b/src/cpu/cpu.cpp
@@ -626,6 +626,8 @@ void report_display_cpu_pstates(void)
_core = _package->children[core];
if (!_core)
continue;
+ if (!_core->has_pstates())
+ continue;
for (line = LEVEL_HEADER; line < (int)pstates_num; line++) {
int first = 1;
@@ -821,6 +823,9 @@ void impl_w_display_cpu_states(int state)
_core = _package->children[core];
if (!_core)
continue;
+ if (!_core->has_pstates() && state == PSTATE)
+ continue;
+
for (line = LEVEL_HEADER; line < 10; line++) {
int first = 1;
diff --git a/src/cpu/cpu.h b/src/cpu/cpu.h
index d51e3b2..ec9dbfc 100644
--- a/src/cpu/cpu.h
+++ b/src/cpu/cpu.h
@@ -130,6 +130,7 @@ public:
virtual char * fill_pstate_line(int line_nr, char *buffer) { return buffer;};
virtual char * fill_pstate_name(int line_nr, char *buffer) { return buffer;};
virtual int has_pstate_level(int level);
+ virtual int has_pstates(void) { return 1; };
/* Frequency micro accounting methods */
virtual void calculate_freq(uint64_t time);