Added support for Intel Core M-5xxx (14nm) Broadwell CPUs (Fixed Issue 646).

This commit is contained in:
Michael Möller 2014-12-28 15:34:37 +00:00
parent fdc917d504
commit ce61b81e50
2 changed files with 16 additions and 8 deletions

View File

@ -23,7 +23,8 @@ namespace OpenHardwareMonitor.Hardware.CPU {
Nehalem,
SandyBridge,
IvyBridge,
Haswell
Haswell,
Broadwell
}
private readonly Sensor[] coreTemperatures;
@ -136,14 +137,18 @@ namespace OpenHardwareMonitor.Hardware.CPU {
microarchitecture = Microarchitecture.IvyBridge;
tjMax = GetTjMaxFromMSR();
break;
case 0x3C: // Intel Core i5, i7 4xxx LGA1150 (22nm)
case 0x3C: // Intel Core i5, i7 4xxx LGA1150 (22nm)
case 0x3F: // Intel Xeon E5-2600/1600 v3, Core i7-59xx
// LGA2011-v3, Haswell-E (22nm)
case 0x45:
case 0x45: // Intel Core i5, i7 4xxxU (22nm)
case 0x46:
microarchitecture = Microarchitecture.Haswell;
tjMax = GetTjMaxFromMSR();
break;
case 0x3D: // Intel Core M-5xxx (14nm)
microarchitecture = Microarchitecture.Broadwell;
tjMax = GetTjMaxFromMSR();
break;
default:
microarchitecture = Microarchitecture.Unknown;
tjMax = Floats(100);
@ -187,7 +192,8 @@ namespace OpenHardwareMonitor.Hardware.CPU {
case Microarchitecture.Nehalem:
case Microarchitecture.SandyBridge:
case Microarchitecture.IvyBridge:
case Microarchitecture.Haswell: {
case Microarchitecture.Haswell:
case Microarchitecture.Broadwell: {
uint eax, edx;
if (Ring0.Rdmsr(MSR_PLATFORM_INFO, out eax, out edx)) {
timeStampCounterMultiplier = (eax >> 8) & 0xff;
@ -246,7 +252,8 @@ namespace OpenHardwareMonitor.Hardware.CPU {
if (microarchitecture == Microarchitecture.SandyBridge ||
microarchitecture == Microarchitecture.IvyBridge ||
microarchitecture == Microarchitecture.Haswell)
microarchitecture == Microarchitecture.Haswell ||
microarchitecture == Microarchitecture.Broadwell)
{
powerSensors = new Sensor[energyStatusMSRs.Length];
lastEnergyTime = new DateTime[energyStatusMSRs.Length];
@ -353,7 +360,8 @@ namespace OpenHardwareMonitor.Hardware.CPU {
} break;
case Microarchitecture.SandyBridge:
case Microarchitecture.IvyBridge:
case Microarchitecture.Haswell: {
case Microarchitecture.Haswell:
case Microarchitecture.Broadwell: {
uint multiplier = (eax >> 8) & 0xff;
coreClocks[i].Value = (float)(multiplier * newBusClock);
} break;

View File

@ -10,5 +10,5 @@
using System.Reflection;
[assembly: AssemblyVersion("0.6.0.12")]
[assembly: AssemblyInformationalVersion("0.6.0.12 Alpha")]
[assembly: AssemblyVersion("0.6.0.13")]
[assembly: AssemblyInformationalVersion("0.6.0.13 Alpha")]