[SerialICE] Patch set updated for serialice: 7577517 Make the CPU microcode filter generic (not CPU model specific).
Denis Carikli (GNUtoo@no-log.org)
gerrit at coreboot.org
Sat Dec 1 12:31:50 CET 2012
Denis Carikli (GNUtoo at no-log.org) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/1948
-gerrit
commit 757751745141a9d906cb3c669bdcde7e67745a41
Author: Denis 'GNUtoo' Carikli <GNUtoo at no-log.org>
Date: Fri Nov 30 12:35:51 2012 +0100
Make the CPU microcode filter generic (not CPU model specific).
The microcode updating filter can be used this way:
For AMD:
--------
In your mainboard file add something like that:
microcode_patchlevel_eax = 0x010000b7
function do_mainboard_setup()
[...]
enable_hook(cpumsr_hooks, filter_amd_microcode)
end
0x010000b7 is what corresponds to the microcode patch level.
For Intel:
----------
In your mainboard file add something like that:
microcode_patchlevel_edx = 0xc7
function do_mainboard_setup()
[...]
enable_hook(cpumsr_hooks, filter_intel_microcode)
end
Change-Id: I370b80a341820ab070f97cc578eb43d5aca192ad
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo at no-log.org>
---
SerialICE/simba/cpu.lua | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/SerialICE/simba/cpu.lua b/SerialICE/simba/cpu.lua
index c440b4b..9c2c72b 100644
--- a/SerialICE/simba/cpu.lua
+++ b/SerialICE/simba/cpu.lua
@@ -57,6 +57,9 @@ filter_cpumsr_fallback = {
-- **********************************************************
-- CPUID filters
+microcode_patchlevel_eax = 0
+microcode_patchlevel_edx = 0
+
function cpuid_pre(f, action)
return handle_action(f, action)
end
@@ -116,8 +119,8 @@ end
-- Fakes microcode revision of my 0x6f6 Core 2 Duo Mobile
function intel_microcode_post(f, action)
if action.rin.ecx == 0x8b then
- action.rout.edx = 0xc7
- action.rout.eax = 0
+ action.rout.edx = microcode_patchlevel_edx
+ action.rout.eax = microcode_patchlevel_eax
return fake_action(f, action, 0)
end
return skip_filter(f, action)
@@ -145,7 +148,8 @@ end
-- Fakes microcode revision.
function amd_microcode_post(f, action)
if action.rin.ecx == 0x8b then
- action.rout.eax = 0x010000b7
+ action.rout.eax = microcode_patchlevel_eax
+ action.rout.edx = microcode_patchlevel_edx
return fake_action(f, action, 0)
end
return skip_filter(f, action)
More information about the SerialICE
mailing list