From 8938d83bd9621ceb53bbf6dd38fd62c9e24aad08 Mon Sep 17 00:00:00 2001 From: Stefan Hirschmann Date: Wed, 12 Oct 2016 13:19:45 +0200 Subject: [PATCH] Add support for Intel Kaby Lake microarchitecture --- Hardware/CPU/IntelCPU.cs | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/Hardware/CPU/IntelCPU.cs b/Hardware/CPU/IntelCPU.cs index 5d18fa1..6c2f7a2 100644 --- a/Hardware/CPU/IntelCPU.cs +++ b/Hardware/CPU/IntelCPU.cs @@ -26,7 +26,8 @@ namespace OpenHardwareMonitor.Hardware.CPU { Haswell, Broadwell, Silvermont, - Skylake + Skylake, + KabyLake } private readonly Sensor[] coreTemperatures; @@ -171,6 +172,10 @@ namespace OpenHardwareMonitor.Hardware.CPU { microarchitecture = Microarchitecture.Skylake; tjMax = GetTjMaxFromMSR(); break; + case 0x8E: // Intel Core i5, i7 7xxxx (14nm) + microarchitecture = Microarchitecture.KabyLake; + tjMax = GetTjMaxFromMSR(); + break; default: microarchitecture = Microarchitecture.Unknown; tjMax = Floats(100); @@ -217,7 +222,8 @@ namespace OpenHardwareMonitor.Hardware.CPU { case Microarchitecture.Haswell: case Microarchitecture.Broadwell: case Microarchitecture.Silvermont: - case Microarchitecture.Skylake: { + case Microarchitecture.Skylake: + case Microarchitecture.KabyLake: { uint eax, edx; if (Ring0.Rdmsr(MSR_PLATFORM_INFO, out eax, out edx)) { timeStampCounterMultiplier = (eax >> 8) & 0xff; @@ -279,7 +285,8 @@ namespace OpenHardwareMonitor.Hardware.CPU { microarchitecture == Microarchitecture.Haswell || microarchitecture == Microarchitecture.Broadwell || microarchitecture == Microarchitecture.Skylake || - microarchitecture == Microarchitecture.Silvermont) + microarchitecture == Microarchitecture.Silvermont || + microarchitecture == Microarchitecture.KabyLake) { powerSensors = new Sensor[energyStatusMSRs.Length]; lastEnergyTime = new DateTime[energyStatusMSRs.Length];