diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/asm-i386/msr.h | 11 | ||||
-rw-r--r-- | include/asm-x86_64/msr.h | 11 |
2 files changed, 22 insertions, 0 deletions
diff --git a/include/asm-i386/msr.h b/include/asm-i386/msr.h index 3516a1fb38e0..8c35f3d90a89 100644 --- a/include/asm-i386/msr.h +++ b/include/asm-i386/msr.h | |||
@@ -83,8 +83,19 @@ static inline void wrmsrl (unsigned long msr, unsigned long long val) | |||
83 | : "c" (counter)) | 83 | : "c" (counter)) |
84 | #endif /* !CONFIG_PARAVIRT */ | 84 | #endif /* !CONFIG_PARAVIRT */ |
85 | 85 | ||
86 | #ifdef CONFIG_SMP | ||
86 | void rdmsr_on_cpu(unsigned int cpu, u32 msr_no, u32 *l, u32 *h); | 87 | void rdmsr_on_cpu(unsigned int cpu, u32 msr_no, u32 *l, u32 *h); |
87 | void wrmsr_on_cpu(unsigned int cpu, u32 msr_no, u32 l, u32 h); | 88 | void wrmsr_on_cpu(unsigned int cpu, u32 msr_no, u32 l, u32 h); |
89 | #else /* CONFIG_SMP */ | ||
90 | static inline void rdmsr_on_cpu(unsigned int cpu, u32 msr_no, u32 *l, u32 *h) | ||
91 | { | ||
92 | rdmsr(msr_no, *l, *h); | ||
93 | } | ||
94 | static inline void wrmsr_on_cpu(unsigned int cpu, u32 msr_no, u32 l, u32 h) | ||
95 | { | ||
96 | wrmsr(msr_no, l, h); | ||
97 | } | ||
98 | #endif /* CONFIG_SMP */ | ||
88 | 99 | ||
89 | /* symbolic names for some interesting MSRs */ | 100 | /* symbolic names for some interesting MSRs */ |
90 | /* Intel defined MSRs. */ | 101 | /* Intel defined MSRs. */ |
diff --git a/include/asm-x86_64/msr.h b/include/asm-x86_64/msr.h index 995a2b5fb26b..902f9a58617e 100644 --- a/include/asm-x86_64/msr.h +++ b/include/asm-x86_64/msr.h | |||
@@ -160,8 +160,19 @@ static inline unsigned int cpuid_edx(unsigned int op) | |||
160 | #define MSR_IA32_UCODE_WRITE 0x79 | 160 | #define MSR_IA32_UCODE_WRITE 0x79 |
161 | #define MSR_IA32_UCODE_REV 0x8b | 161 | #define MSR_IA32_UCODE_REV 0x8b |
162 | 162 | ||
163 | #ifdef CONFIG_SMP | ||
163 | void rdmsr_on_cpu(unsigned int cpu, u32 msr_no, u32 *l, u32 *h); | 164 | void rdmsr_on_cpu(unsigned int cpu, u32 msr_no, u32 *l, u32 *h); |
164 | void wrmsr_on_cpu(unsigned int cpu, u32 msr_no, u32 l, u32 h); | 165 | void wrmsr_on_cpu(unsigned int cpu, u32 msr_no, u32 l, u32 h); |
166 | #else /* CONFIG_SMP */ | ||
167 | static inline void rdmsr_on_cpu(unsigned int cpu, u32 msr_no, u32 *l, u32 *h) | ||
168 | { | ||
169 | rdmsr(msr_no, *l, *h); | ||
170 | } | ||
171 | static inline void wrmsr_on_cpu(unsigned int cpu, u32 msr_no, u32 l, u32 h) | ||
172 | { | ||
173 | wrmsr(msr_no, l, h); | ||
174 | } | ||
175 | #endif /* CONFIG_SMP */ | ||
165 | 176 | ||
166 | #endif | 177 | #endif |
167 | 178 | ||