diff options
author | Dmitry Adamushko <dmitry.adamushko@gmail.com> | 2008-09-11 17:27:52 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-09-12 06:20:27 -0400 |
commit | a0a29b62a9cac6b7d83b7514679f2ed8d33d4372 (patch) | |
tree | e07ab66cbe3c90da70a7195104413cae00104de6 /include/asm-x86 | |
parent | 5b792d320f28ff83dd4c13f984807e26235f7703 (diff) |
x86, microcode rework, v2
this is a rework of the microcode splitup in tip/x86/microcode
(1) I think this new interface is cleaner (look at the changes
in 'struct microcode_ops' in microcode.h);
(2) it's -64 lines of code;
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include/asm-x86')
-rw-r--r-- | include/asm-x86/microcode.h | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/include/asm-x86/microcode.h b/include/asm-x86/microcode.h index 7ceff48fa657..e2887facdb4a 100644 --- a/include/asm-x86/microcode.h +++ b/include/asm-x86/microcode.h | |||
@@ -5,17 +5,16 @@ extern int microcode_init(void *opaque, struct module *module); | |||
5 | extern void microcode_exit(void); | 5 | extern void microcode_exit(void); |
6 | 6 | ||
7 | struct cpu_signature; | 7 | struct cpu_signature; |
8 | struct device; | ||
8 | 9 | ||
9 | struct microcode_ops { | 10 | struct microcode_ops { |
10 | long (*get_next_ucode)(void **mc, long offset); | 11 | int (*request_microcode_user) (int cpu, const void __user *buf, size_t size); |
11 | long (*microcode_get_next_ucode)(void **mc, long offset); | 12 | int (*request_microcode_fw) (int cpu, struct device *device); |
12 | int (*get_matching_microcode)(void *mc, int cpu); | 13 | |
13 | int (*microcode_sanity_check)(void *mc); | 14 | void (*apply_microcode) (int cpu); |
14 | int (*cpu_request_microcode)(int cpu); | 15 | |
15 | int (*collect_cpu_info)(int cpu_num, struct cpu_signature *csig); | 16 | int (*collect_cpu_info) (int cpu, struct cpu_signature *csig); |
16 | void (*apply_microcode)(int cpu); | 17 | void (*microcode_fini_cpu) (int cpu); |
17 | void (*microcode_fini_cpu)(int cpu); | ||
18 | void (*clear_patch)(void *data); | ||
19 | }; | 18 | }; |
20 | 19 | ||
21 | struct microcode_header_intel { | 20 | struct microcode_header_intel { |