aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/x86/kernel/microcode.c1
-rw-r--r--include/asm-x86/microcode.h34
-rw-r--r--include/asm-x86/processor.h35
3 files changed, 35 insertions, 35 deletions
diff --git a/arch/x86/kernel/microcode.c b/arch/x86/kernel/microcode.c
index 6994c751590e..0d654bd32928 100644
--- a/arch/x86/kernel/microcode.c
+++ b/arch/x86/kernel/microcode.c
@@ -93,6 +93,7 @@
93#include <asm/msr.h> 93#include <asm/msr.h>
94#include <asm/uaccess.h> 94#include <asm/uaccess.h>
95#include <asm/processor.h> 95#include <asm/processor.h>
96#include <asm/microcode.h>
96 97
97MODULE_DESCRIPTION("Intel CPU (IA-32) Microcode Update Driver"); 98MODULE_DESCRIPTION("Intel CPU (IA-32) Microcode Update Driver");
98MODULE_AUTHOR("Tigran Aivazian <tigran@aivazian.fsnet.co.uk>"); 99MODULE_AUTHOR("Tigran Aivazian <tigran@aivazian.fsnet.co.uk>");
diff --git a/include/asm-x86/microcode.h b/include/asm-x86/microcode.h
new file mode 100644
index 000000000000..5a0556855154
--- /dev/null
+++ b/include/asm-x86/microcode.h
@@ -0,0 +1,34 @@
1struct microcode_header {
2 unsigned int hdrver;
3 unsigned int rev;
4 unsigned int date;
5 unsigned int sig;
6 unsigned int cksum;
7 unsigned int ldrver;
8 unsigned int pf;
9 unsigned int datasize;
10 unsigned int totalsize;
11 unsigned int reserved[3];
12};
13
14struct microcode {
15 struct microcode_header hdr;
16 unsigned int bits[0];
17};
18
19typedef struct microcode microcode_t;
20typedef struct microcode_header microcode_header_t;
21
22/* microcode format is extended from prescott processors */
23struct extended_signature {
24 unsigned int sig;
25 unsigned int pf;
26 unsigned int cksum;
27};
28
29struct extended_sigtable {
30 unsigned int count;
31 unsigned int cksum;
32 unsigned int reserved[3];
33 struct extended_signature sigs[0];
34};
diff --git a/include/asm-x86/processor.h b/include/asm-x86/processor.h
index 5f58da401b43..58a76f69ee31 100644
--- a/include/asm-x86/processor.h
+++ b/include/asm-x86/processor.h
@@ -561,41 +561,6 @@ static inline void clear_in_cr4(unsigned long mask)
561 write_cr4(cr4); 561 write_cr4(cr4);
562} 562}
563 563
564struct microcode_header {
565 unsigned int hdrver;
566 unsigned int rev;
567 unsigned int date;
568 unsigned int sig;
569 unsigned int cksum;
570 unsigned int ldrver;
571 unsigned int pf;
572 unsigned int datasize;
573 unsigned int totalsize;
574 unsigned int reserved[3];
575};
576
577struct microcode {
578 struct microcode_header hdr;
579 unsigned int bits[0];
580};
581
582typedef struct microcode microcode_t;
583typedef struct microcode_header microcode_header_t;
584
585/* microcode format is extended from prescott processors */
586struct extended_signature {
587 unsigned int sig;
588 unsigned int pf;
589 unsigned int cksum;
590};
591
592struct extended_sigtable {
593 unsigned int count;
594 unsigned int cksum;
595 unsigned int reserved[3];
596 struct extended_signature sigs[0];
597};
598
599typedef struct { 564typedef struct {
600 unsigned long seg; 565 unsigned long seg;
601} mm_segment_t; 566} mm_segment_t;