Commit a5ad9213 authored by Borislav Petkov (AMD)'s avatar Borislav Petkov (AMD)

x86/microcode/AMD: Add a @cpu parameter to the reloading functions

Will be used in a subsequent change.
Signed-off-by: default avatarBorislav Petkov (AMD) <bp@alien8.de>
Link: https://lore.kernel.org/r/20230130161709.11615-3-bp@alien8.de
parent 2355370c
...@@ -125,13 +125,13 @@ static inline unsigned int x86_cpuid_family(void) ...@@ -125,13 +125,13 @@ static inline unsigned int x86_cpuid_family(void)
#ifdef CONFIG_MICROCODE #ifdef CONFIG_MICROCODE
extern void __init load_ucode_bsp(void); extern void __init load_ucode_bsp(void);
extern void load_ucode_ap(void); extern void load_ucode_ap(void);
void reload_early_microcode(void); void reload_early_microcode(unsigned int cpu);
extern bool initrd_gone; extern bool initrd_gone;
void microcode_bsp_resume(void); void microcode_bsp_resume(void);
#else #else
static inline void __init load_ucode_bsp(void) { } static inline void __init load_ucode_bsp(void) { }
static inline void load_ucode_ap(void) { } static inline void load_ucode_ap(void) { }
static inline void reload_early_microcode(void) { } static inline void reload_early_microcode(unsigned int cpu) { }
static inline void microcode_bsp_resume(void) { } static inline void microcode_bsp_resume(void) { }
#endif #endif
......
...@@ -47,12 +47,12 @@ struct microcode_amd { ...@@ -47,12 +47,12 @@ struct microcode_amd {
extern void __init load_ucode_amd_bsp(unsigned int family); extern void __init load_ucode_amd_bsp(unsigned int family);
extern void load_ucode_amd_ap(unsigned int family); extern void load_ucode_amd_ap(unsigned int family);
extern int __init save_microcode_in_initrd_amd(unsigned int family); extern int __init save_microcode_in_initrd_amd(unsigned int family);
void reload_ucode_amd(void); void reload_ucode_amd(unsigned int cpu);
#else #else
static inline void __init load_ucode_amd_bsp(unsigned int family) {} static inline void __init load_ucode_amd_bsp(unsigned int family) {}
static inline void load_ucode_amd_ap(unsigned int family) {} static inline void load_ucode_amd_ap(unsigned int family) {}
static inline int __init static inline int __init
save_microcode_in_initrd_amd(unsigned int family) { return -EINVAL; } save_microcode_in_initrd_amd(unsigned int family) { return -EINVAL; }
static inline void reload_ucode_amd(void) {} static inline void reload_ucode_amd(unsigned int cpu) {}
#endif #endif
#endif /* _ASM_X86_MICROCODE_AMD_H */ #endif /* _ASM_X86_MICROCODE_AMD_H */
...@@ -578,7 +578,7 @@ int __init save_microcode_in_initrd_amd(unsigned int cpuid_1_eax) ...@@ -578,7 +578,7 @@ int __init save_microcode_in_initrd_amd(unsigned int cpuid_1_eax)
return 0; return 0;
} }
void reload_ucode_amd(void) void reload_ucode_amd(unsigned int cpu)
{ {
struct microcode_amd *mc; struct microcode_amd *mc;
u32 rev, dummy __always_unused; u32 rev, dummy __always_unused;
......
...@@ -298,7 +298,7 @@ struct cpio_data find_microcode_in_initrd(const char *path, bool use_pa) ...@@ -298,7 +298,7 @@ struct cpio_data find_microcode_in_initrd(const char *path, bool use_pa)
#endif #endif
} }
void reload_early_microcode(void) void reload_early_microcode(unsigned int cpu)
{ {
int vendor, family; int vendor, family;
...@@ -312,7 +312,7 @@ void reload_early_microcode(void) ...@@ -312,7 +312,7 @@ void reload_early_microcode(void)
break; break;
case X86_VENDOR_AMD: case X86_VENDOR_AMD:
if (family >= 0x10) if (family >= 0x10)
reload_ucode_amd(); reload_ucode_amd(cpu);
break; break;
default: default:
break; break;
...@@ -564,7 +564,7 @@ void microcode_bsp_resume(void) ...@@ -564,7 +564,7 @@ void microcode_bsp_resume(void)
if (uci->mc) if (uci->mc)
microcode_ops->apply_microcode(cpu); microcode_ops->apply_microcode(cpu);
else else
reload_early_microcode(); reload_early_microcode(cpu);
} }
static struct syscore_ops mc_syscore_ops = { static struct syscore_ops mc_syscore_ops = {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment