public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [patch 0/9] x86: AMD microcode patch loading support
@ 2008-07-25 16:17 Peter Oruba
  2008-07-25 16:17 ` [patch 1/9] [PATCH 1/9] x86: Moved Intel microcode patch loader declarations to seperate header file Peter Oruba
                   ` (10 more replies)
  0 siblings, 11 replies; 14+ messages in thread
From: Peter Oruba @ 2008-07-25 16:17 UTC (permalink / raw)
  To: Ingo Molnar, Thomas Gleixner, Tigran Aivazian; +Cc: LKML

This patch set introduces microcode patch loading support for AMD processors. It includes refactoring
of existing code to allow code sharing. Vendor specific code has been split off, leading to a
multi-module solution as compared to the current single-module approach.

Thanks,

Peter Oruba

--
Advanced Micro Devices, Inc.
Operating System Research Center
email: peter.oruba@amd.com
>From peter.oruba@amd.com Fri Jul 25 18:20:02 2008
Message-Id: <20080725162001.917239960@amd.com>
User-Agent: quilt/0.46_cvs20080326-19.1
Date: Fri, 25 Jul 2008 18:17:24 +0200
From: Peter Oruba <peter.oruba@amd.com>
To: Ingo Molnar <mingo@elte.hu>,
 Thomas Gleixner <tglx@linutronix.de>,
 Tigran Aivazian <tigran@aivazian.fsnet.co.uk>
Cc: LKML <linux-kernel@vger.kernel.org>,
 Peter Oruba <peter.oruba@amd.com>
Bcc: osrc-patches@elbe.amd.com
Subject: [patch 1/9] [PATCH 1/9] x86: Moved Intel microcode patch loader declarations to seperate header file.
References: <20080725161723.636932280@amd.com>
Content-Disposition: inline; filename=0001-x86-Moved-Intel-microcode-patch-loader-declarations.patch

Intel specific microcode declarations have been moved to a seperate header file.
There are no code changes to the code itself and no side effects to other parts.

Signed-off-by: Peter Oruba <peter.oruba@amd.com>
---
 arch/x86/kernel/microcode.c |    1 +
 include/asm-x86/microcode.h |   34 ++++++++++++++++++++++++++++++++++
 include/asm-x86/processor.h |   35 -----------------------------------
 3 files changed, 35 insertions(+), 35 deletions(-)
 create mode 100644 include/asm-x86/microcode.h

diff --git a/arch/x86/kernel/microcode.c b/arch/x86/kernel/microcode.c
index 56b9331..230ca7e 100644
--- a/arch/x86/kernel/microcode.c
+++ b/arch/x86/kernel/microcode.c
@@ -93,6 +93,7 @@
 #include <asm/msr.h>
 #include <asm/uaccess.h>
 #include <asm/processor.h>
+#include <asm/microcode.h>
 
 MODULE_DESCRIPTION("Intel CPU (IA-32) Microcode Update Driver");
 MODULE_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 0000000..5a05568
--- /dev/null
+++ b/include/asm-x86/microcode.h
@@ -0,0 +1,34 @@
+struct microcode_header {
+	unsigned int            hdrver;
+	unsigned int            rev;
+	unsigned int            date;
+	unsigned int            sig;
+	unsigned int            cksum;
+	unsigned int            ldrver;
+	unsigned int            pf;
+	unsigned int            datasize;
+	unsigned int            totalsize;
+	unsigned int            reserved[3];
+};
+
+struct microcode {
+	struct microcode_header hdr;
+	unsigned int            bits[0];
+};
+
+typedef struct microcode          microcode_t;
+typedef struct microcode_header   microcode_header_t;
+
+/* microcode format is extended from prescott processors */
+struct extended_signature {
+	unsigned int            sig;
+	unsigned int            pf;
+	unsigned int            cksum;
+};
+
+struct extended_sigtable {
+	unsigned int            count;
+	unsigned int            cksum;
+	unsigned int            reserved[3];
+	struct extended_signature sigs[0];
+};
diff --git a/include/asm-x86/processor.h b/include/asm-x86/processor.h
index 15cb82a..f3c5c93 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)
 	write_cr4(cr4);
 }
 
-struct microcode_header {
-	unsigned int		hdrver;
-	unsigned int		rev;
-	unsigned int		date;
-	unsigned int		sig;
-	unsigned int		cksum;
-	unsigned int		ldrver;
-	unsigned int		pf;
-	unsigned int		datasize;
-	unsigned int		totalsize;
-	unsigned int		reserved[3];
-};
-
-struct microcode {
-	struct microcode_header	hdr;
-	unsigned int		bits[0];
-};
-
-typedef struct microcode	microcode_t;
-typedef struct microcode_header	microcode_header_t;
-
-/* microcode format is extended from prescott processors */
-struct extended_signature {
-	unsigned int		sig;
-	unsigned int		pf;
-	unsigned int		cksum;
-};
-
-struct extended_sigtable {
-	unsigned int		count;
-	unsigned int		cksum;
-	unsigned int		reserved[3];
-	struct extended_signature sigs[0];
-};
-
 typedef struct {
 	unsigned long		seg;
 } mm_segment_t;
-- 
1.5.4.5





^ permalink raw reply related	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2008-07-26 13:38 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-07-25 16:17 [patch 0/9] x86: AMD microcode patch loading support Peter Oruba
2008-07-25 16:17 ` [patch 1/9] [PATCH 1/9] x86: Moved Intel microcode patch loader declarations to seperate header file Peter Oruba
2008-07-25 16:17 ` [patch 2/9] [PATCH 2/9] x86: Typedef removal Peter Oruba
2008-07-25 16:17 ` [patch 3/9] [PATCH 3/9] x86: Moved per CPU microcode structure declaration to header file Peter Oruba
2008-07-25 16:17 ` [patch 4/9] [PATCH 4/9] x86: Code split to two parts Peter Oruba
2008-07-25 16:17 ` [patch 5/9] [PATCH 5/9] x86: Structure declaration renaming Peter Oruba
2008-07-25 16:17 ` [patch 6/9] [PATCH 6/9] x86: Add AMD specific declarations Peter Oruba
2008-07-25 16:17 ` [patch 7/9] [PATCH 7/9] x86: First step of refactoring, introducing microcode_ops Peter Oruba
2008-07-25 16:17 ` [patch 8/9] [PATCH 8/9] x86: Major refactoring Peter Oruba
2008-07-26  9:11   ` Daniel K.
2008-07-25 16:17 ` [patch 9/9] [PATCH 9/9] x86: AMD microcode patch loading support Peter Oruba
2008-07-26  8:00   ` Rabin Vincent
2008-07-25 16:44 ` [PATCH] x86: Add entry to MAINTAINERS file Peter Oruba
2008-07-26 13:37 ` [patch 0/9] x86: AMD microcode patch loading support Ingo Molnar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox