aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/arch/x86/include/asm/microcode.h
diff options
context:
space:
mode:
authorFenghua Yu <fenghua.yu@intel.com>2012-12-20 23:44:25 -0800
committerH. Peter Anvin <hpa@linux.intel.com>2013-01-31 13:19:12 -0800
commita8ebf6d1d6971b90a20f5bd0465e6d520377e33b (patch)
tree94a38bdf06e32d6b4d20b68da6ee007734e0e374 /arch/x86/include/asm/microcode.h
parentx86/common.c: load ucode in 64 bit or show loading ucode info in 32 bit on AP (diff)
downloadwireguard-linux-a8ebf6d1d6971b90a20f5bd0465e6d520377e33b.tar.xz
wireguard-linux-a8ebf6d1d6971b90a20f5bd0465e6d520377e33b.zip
x86/microcode_core_early.c: Define interfaces for early loading ucode
Define interfaces load_ucode_bsp() and load_ucode_ap() to load ucode on BSP and AP in early boot time. These are generic interfaces. Internally they call vendor specific implementations. Signed-off-by: Fenghua Yu <fenghua.yu@intel.com> Link: http://lkml.kernel.org/r/1356075872-3054-6-git-send-email-fenghua.yu@intel.com Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Diffstat (limited to 'arch/x86/include/asm/microcode.h')
-rw-r--r--arch/x86/include/asm/microcode.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/arch/x86/include/asm/microcode.h b/arch/x86/include/asm/microcode.h
index 43d921b4752c..6825e2efd1b4 100644
--- a/arch/x86/include/asm/microcode.h
+++ b/arch/x86/include/asm/microcode.h
@@ -57,4 +57,18 @@ static inline struct microcode_ops * __init init_amd_microcode(void)
static inline void __exit exit_amd_microcode(void) {}
#endif
+#ifdef CONFIG_MICROCODE_EARLY
+#define MAX_UCODE_COUNT 128
+extern void __init load_ucode_bsp(void);
+extern __init void load_ucode_ap(void);
+extern int __init save_microcode_in_initrd(void);
+#else
+static inline void __init load_ucode_bsp(void) {}
+static inline __init void load_ucode_ap(void) {}
+static inline int __init save_microcode_in_initrd(void)
+{
+ return 0;
+}
+#endif
+
#endif /* _ASM_X86_MICROCODE_H */