aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/x86/include/asm/msr-index.h7
-rw-r--r--arch/x86/kernel/cpu/perf_event_intel_lbr.c18
2 files changed, 16 insertions, 9 deletions
diff --git a/arch/x86/include/asm/msr-index.h b/arch/x86/include/asm/msr-index.h
index a6962d9161a0..ccb805966f68 100644
--- a/arch/x86/include/asm/msr-index.h
+++ b/arch/x86/include/asm/msr-index.h
@@ -56,6 +56,13 @@
56#define MSR_OFFCORE_RSP_0 0x000001a6 56#define MSR_OFFCORE_RSP_0 0x000001a6
57#define MSR_OFFCORE_RSP_1 0x000001a7 57#define MSR_OFFCORE_RSP_1 0x000001a7
58 58
59#define MSR_LBR_SELECT 0x000001c8
60#define MSR_LBR_TOS 0x000001c9
61#define MSR_LBR_NHM_FROM 0x00000680
62#define MSR_LBR_NHM_TO 0x000006c0
63#define MSR_LBR_CORE_FROM 0x00000040
64#define MSR_LBR_CORE_TO 0x00000060
65
59#define MSR_IA32_PEBS_ENABLE 0x000003f1 66#define MSR_IA32_PEBS_ENABLE 0x000003f1
60#define MSR_IA32_DS_AREA 0x00000600 67#define MSR_IA32_DS_AREA 0x00000600
61#define MSR_IA32_PERF_CAPABILITIES 0x00000345 68#define MSR_IA32_PERF_CAPABILITIES 0x00000345
diff --git a/arch/x86/kernel/cpu/perf_event_intel_lbr.c b/arch/x86/kernel/cpu/perf_event_intel_lbr.c
index 309d0cc69163..6710a5116ebd 100644
--- a/arch/x86/kernel/cpu/perf_event_intel_lbr.c
+++ b/arch/x86/kernel/cpu/perf_event_intel_lbr.c
@@ -203,23 +203,23 @@ void intel_pmu_lbr_read(void)
203void intel_pmu_lbr_init_core(void) 203void intel_pmu_lbr_init_core(void)
204{ 204{
205 x86_pmu.lbr_nr = 4; 205 x86_pmu.lbr_nr = 4;
206 x86_pmu.lbr_tos = 0x01c9; 206 x86_pmu.lbr_tos = MSR_LBR_TOS;
207 x86_pmu.lbr_from = 0x40; 207 x86_pmu.lbr_from = MSR_LBR_CORE_FROM;
208 x86_pmu.lbr_to = 0x60; 208 x86_pmu.lbr_to = MSR_LBR_CORE_TO;
209} 209}
210 210
211void intel_pmu_lbr_init_nhm(void) 211void intel_pmu_lbr_init_nhm(void)
212{ 212{
213 x86_pmu.lbr_nr = 16; 213 x86_pmu.lbr_nr = 16;
214 x86_pmu.lbr_tos = 0x01c9; 214 x86_pmu.lbr_tos = MSR_LBR_TOS;
215 x86_pmu.lbr_from = 0x680; 215 x86_pmu.lbr_from = MSR_LBR_NHM_FROM;
216 x86_pmu.lbr_to = 0x6c0; 216 x86_pmu.lbr_to = MSR_LBR_NHM_TO;
217} 217}
218 218
219void intel_pmu_lbr_init_atom(void) 219void intel_pmu_lbr_init_atom(void)
220{ 220{
221 x86_pmu.lbr_nr = 8; 221 x86_pmu.lbr_nr = 8;
222 x86_pmu.lbr_tos = 0x01c9; 222 x86_pmu.lbr_tos = MSR_LBR_TOS;
223 x86_pmu.lbr_from = 0x40; 223 x86_pmu.lbr_from = MSR_LBR_CORE_FROM;
224 x86_pmu.lbr_to = 0x60; 224 x86_pmu.lbr_to = MSR_LBR_CORE_TO;
225} 225}