forked from luck/tmp_suning_uos_patched
tools/power turbostat: Read extended processor family from CPUID
This fixes the reported family on modern AMD processors (e.g. Ryzen, which is family 0x17). Previously these processors all showed up as family 0xf. See the document https://support.amd.com/TechDocs/56255_OSRR.pdf section CPUID_Fn00000001_EAX for how to calculate the family from the BaseFamily and ExtFamily values. This matches the code in arch/x86/lib/cpu.c Signed-off-by: Calvin Walton <calvin.walton@kepstin.ca> Signed-off-by: Len Brown <len.brown@intel.com>
This commit is contained in:
parent
2ffbb22406
commit
5aa3d1a20a
|
@ -4457,7 +4457,9 @@ void process_cpuid()
|
||||||
family = (fms >> 8) & 0xf;
|
family = (fms >> 8) & 0xf;
|
||||||
model = (fms >> 4) & 0xf;
|
model = (fms >> 4) & 0xf;
|
||||||
stepping = fms & 0xf;
|
stepping = fms & 0xf;
|
||||||
if (family == 6 || family == 0xf)
|
if (family == 0xf)
|
||||||
|
family += (fms >> 20) & 0xff;
|
||||||
|
if (family >= 6)
|
||||||
model += ((fms >> 16) & 0xf) << 4;
|
model += ((fms >> 16) & 0xf) << 4;
|
||||||
|
|
||||||
if (!quiet) {
|
if (!quiet) {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user