18#ifndef __HASWELL_MSR_H__
19#define __HASWELL_MSR_H__
32#define IS_HASWELL_PROCESSOR(DisplayFamily, DisplayModel) \
33 (DisplayFamily == 0x06 && \
35 DisplayModel == 0x3C || \
36 DisplayModel == 0x45 || \
37 DisplayModel == 0x46 \
59#define MSR_HASWELL_PLATFORM_INFO 0x000000CE
76 UINT32 Reserved2 : 12;
104 UINT32 Reserved4 : 5;
116 UINT32 Reserved5 : 8;
146#define MSR_HASWELL_IA32_PERFEVTSEL0 0x00000186
147#define MSR_HASWELL_IA32_PERFEVTSEL1 0x00000187
148#define MSR_HASWELL_IA32_PERFEVTSEL3 0x00000189
212 UINT32 Reserved : 32;
218 UINT32 Reserved2 : 31;
245#define MSR_HASWELL_IA32_PERFEVTSEL2 0x00000188
307 UINT32 Reserved : 32;
323 UINT32 Reserved2 : 30;
349#define MSR_HASWELL_LBR_SELECT 0x000001C8
399 UINT32 Reserved1 : 22;
400 UINT32 Reserved2 : 32;
435#define MSR_HASWELL_PKGC_IRTL1 0x0000060B
457 UINT32 Reserved1 : 2;
463 UINT32 Reserved2 : 16;
464 UINT32 Reserved3 : 32;
499#define MSR_HASWELL_PKGC_IRTL2 0x0000060C
521 UINT32 Reserved1 : 2;
527 UINT32 Reserved2 : 16;
528 UINT32 Reserved3 : 32;
555#define MSR_HASWELL_PKG_PERF_STATUS 0x00000613
572#define MSR_HASWELL_DRAM_ENERGY_STATUS 0x00000619
590#define MSR_HASWELL_DRAM_PERF_STATUS 0x0000061B
609#define MSR_HASWELL_CONFIG_TDP_NOMINAL 0x00000648
624 UINT32 Reserved1 : 24;
625 UINT32 Reserved2 : 32;
654#define MSR_HASWELL_CONFIG_TDP_LEVEL1 0x00000649
668 UINT32 Reserved1 : 1;
674 UINT32 Reserved2 : 8;
685 UINT32 Reserved3 : 1;
710#define MSR_HASWELL_CONFIG_TDP_LEVEL2 0x0000064A
724 UINT32 Reserved1 : 1;
730 UINT32 Reserved2 : 8;
741 UINT32 Reserved3 : 1;
767#define MSR_HASWELL_CONFIG_TDP_CONTROL 0x0000064B
781 UINT32 Reserved1 : 29;
787 UINT32 Reserved2 : 32;
817#define MSR_HASWELL_TURBO_ACTIVATION_RATIO 0x0000064C
832 UINT32 Reserved1 : 23;
838 UINT32 Reserved2 : 32;
870#define MSR_HASWELL_PKG_CST_CONFIG_CONTROL 0x000000E2
890 UINT32 Reserved1 : 6;
895 UINT32 Reserved2 : 4;
900 UINT32 Reserved3 : 9;
917 UINT32 Reserved4 : 3;
918 UINT32 Reserved5 : 32;
949#define MSR_HASWELL_SMM_MCA_CAP 0x0000017D
959 UINT32 Reserved1 : 32;
960 UINT32 Reserved2 : 26;
973 UINT32 Reserved3 : 4;
999#define MSR_HASWELL_TURBO_RATIO_LIMIT 0x000001AD
1029 UINT32 Reserved : 32;
1059#define MSR_HASWELL_UNC_PERF_GLOBAL_CTRL 0x00000391
1085 UINT32 Reserved1 : 15;
1086 UINT32 Reserved2 : 10;
1099 UINT32 Reserved3 : 32;
1129#define MSR_HASWELL_UNC_PERF_GLOBAL_STATUS 0x00000392
1147 UINT32 Reserved1 : 1;
1152 UINT32 Reserved2 : 28;
1153 UINT32 Reserved3 : 32;
1183#define MSR_HASWELL_UNC_PERF_FIXED_CTRL 0x00000394
1193 UINT32 Reserved1 : 20;
1198 UINT32 Reserved2 : 1;
1203 UINT32 Reserved3 : 9;
1204 UINT32 Reserved4 : 32;
1234#define MSR_HASWELL_UNC_PERF_FIXED_CTR 0x00000395
1252 UINT32 Reserved : 16;
1277#define MSR_HASWELL_UNC_CBO_CONFIG 0x00000396
1291 UINT32 Reserved1 : 28;
1292 UINT32 Reserved2 : 32;
1320#define MSR_HASWELL_UNC_ARB_PERFCTR0 0x000003B0
1338#define MSR_HASWELL_UNC_ARB_PERFCTR1 0x000003B1
1356#define MSR_HASWELL_UNC_ARB_PERFEVTSEL0 0x000003B2
1374#define MSR_HASWELL_UNC_ARB_PERFEVTSEL1 0x000003B3
1395#define MSR_HASWELL_SMM_FEATURE_CONTROL 0x000004E0
1410 UINT32 Reserved1 : 1;
1420 UINT32 Reserved2 : 29;
1421 UINT32 Reserved3 : 32;
1468#define MSR_HASWELL_SMM_DELAYED 0x000004E2
1501#define MSR_HASWELL_SMM_BLOCKED 0x000004E3
1520#define MSR_HASWELL_RAPL_POWER_UNIT 0x00000606
1534 UINT32 Reserved1 : 4;
1542 UINT32 Reserved2 : 3;
1548 UINT32 Reserved3 : 12;
1549 UINT32 Reserved4 : 32;
1577#define MSR_HASWELL_PP0_ENERGY_STATUS 0x00000639
1596#define MSR_HASWELL_PP1_POWER_LIMIT 0x00000640
1614#define MSR_HASWELL_PP1_ENERGY_STATUS 0x00000641
1633#define MSR_HASWELL_PP1_POLICY 0x00000642
1654#define MSR_HASWELL_CORE_PERF_LIMIT_REASONS 0x00000690
1675 UINT32 Reserved1 : 2;
1694 UINT32 Reserved2 : 1;
1730 UINT32 Reserved3 : 2;
1743 UINT32 Reserved4 : 2;
1763 UINT32 Reserved5 : 1;
1804 UINT32 Reserved6 : 2;
1805 UINT32 Reserved7 : 32;
1836#define MSR_HASWELL_GRAPHICS_PERF_LIMIT_REASONS 0x000006B0
1857 UINT32 Reserved1 : 2;
1876 UINT32 Reserved2 : 1;
1901 UINT32 Reserved3 : 4;
1914 UINT32 Reserved4 : 2;
1934 UINT32 Reserved5 : 1;
1975 UINT32 Reserved6 : 2;
1976 UINT32 Reserved7 : 32;
2007#define MSR_HASWELL_RING_PERF_LIMIT_REASONS 0x000006B1
2027 UINT32 Reserved1 : 4;
2034 UINT32 Reserved2 : 1;
2041 UINT32 Reserved3 : 1;
2054 UINT32 Reserved4 : 4;
2067 UINT32 Reserved5 : 2;
2087 UINT32 Reserved6 : 1;
2128 UINT32 Reserved7 : 2;
2129 UINT32 Reserved8 : 32;
2157#define MSR_HASWELL_UNC_CBO_0_PERFEVTSEL0 0x00000700
2175#define MSR_HASWELL_UNC_CBO_0_PERFEVTSEL1 0x00000701
2193#define MSR_HASWELL_UNC_CBO_0_PERFCTR0 0x00000706
2211#define MSR_HASWELL_UNC_CBO_0_PERFCTR1 0x00000707
2229#define MSR_HASWELL_UNC_CBO_1_PERFEVTSEL0 0x00000710
2247#define MSR_HASWELL_UNC_CBO_1_PERFEVTSEL1 0x00000711
2265#define MSR_HASWELL_UNC_CBO_1_PERFCTR0 0x00000716
2283#define MSR_HASWELL_UNC_CBO_1_PERFCTR1 0x00000717
2301#define MSR_HASWELL_UNC_CBO_2_PERFEVTSEL0 0x00000720
2319#define MSR_HASWELL_UNC_CBO_2_PERFEVTSEL1 0x00000721
2337#define MSR_HASWELL_UNC_CBO_2_PERFCTR0 0x00000726
2355#define MSR_HASWELL_UNC_CBO_2_PERFCTR1 0x00000727
2373#define MSR_HASWELL_UNC_CBO_3_PERFEVTSEL0 0x00000730
2391#define MSR_HASWELL_UNC_CBO_3_PERFEVTSEL1 0x00000731
2409#define MSR_HASWELL_UNC_CBO_3_PERFCTR0 0x00000736
2427#define MSR_HASWELL_UNC_CBO_3_PERFCTR1 0x00000737
2448#define MSR_HASWELL_PKG_C8_RESIDENCY 0x00000630
2470 UINT32 Reserved : 4;
2497#define MSR_HASWELL_PKG_C9_RESIDENCY 0x00000631
2519 UINT32 Reserved : 4;
2546#define MSR_HASWELL_PKG_C10_RESIDENCY 0x00000632
2568 UINT32 Reserved : 4;
UINT32 Config_TDP_LVL1_Ratio
UINT32 Config_TDP_LVL2_Ratio
UINT32 TurboTransitionAttenuationStatus
UINT32 TurboTransitionAttenuationLog
UINT32 MaxTurboLimitStatus
UINT32 AutonomousUtilizationBasedFrequencyControlStatus
UINT32 GraphicsDriverStatus
UINT32 ElectricalDesignPointLog
UINT32 VRThermAlertStatus
UINT32 AutonomousUtilizationBasedFrequencyControlLog
UINT32 ElectricalDesignPointStatus
UINT32 ElectricalDesignPointStatus
UINT32 TurboTransitionAttenuationLog
UINT32 VRThermAlertStatus
UINT32 AutonomousUtilizationBasedFrequencyControlStatus
UINT32 AutonomousUtilizationBasedFrequencyControlLog
UINT32 CorePowerLimitingLog
UINT32 GraphicsPowerLimitingStatus
UINT32 GraphicsDriverStatus
UINT32 ElectricalDesignPointLog
UINT32 C10ResidencyCounterHi
UINT32 C10ResidencyCounter
UINT32 C8ResidencyCounterHi
UINT32 C8ResidencyCounter
UINT32 C9ResidencyCounter
UINT32 C9ResidencyCounterHi
UINT32 InterruptResponseTimeLimit
UINT32 InterruptResponseTimeLimit
UINT32 MaximumEfficiencyRatio
UINT32 MaximumNonTurboRatio
UINT32 MinimumOperatingRatio
UINT32 LowPowerModeSupport
UINT32 ElectricalDesignPointStatus
UINT32 TurboTransitionAttenuationLog
UINT32 AutonomousUtilizationBasedFrequencyControlLog
UINT32 CorePowerLimitingLog
UINT32 ElectricalDesignPointLog
UINT32 VRThermAlertStatus
UINT32 SMM_Code_Access_Chk
UINT32 Long_Flow_Indication
UINT32 TURBO_ACTIVATION_RATIO_Lock
UINT32 MAX_NON_TURBO_RATIO