diff options
author | Stefan Reinauer <stepan@coresystems.de> | 2010-02-22 09:32:33 +0000 |
---|---|---|
committer | Stefan Reinauer <stepan@openbios.org> | 2010-02-22 09:32:33 +0000 |
commit | 881a553000d001bc62085d3055c8e19075e898e2 (patch) | |
tree | bb80538407d85934cbcdfe7438a0b75f27926f93 /src/cpu/x86/smm/smihandler.c | |
parent | 6363050c3f9c450417bcb860b878891adc0f42bd (diff) |
mini update SMM:
- allow northbridge and cpu handlers, too
- support for older rev 2 cpus
Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@5141 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src/cpu/x86/smm/smihandler.c')
-rw-r--r-- | src/cpu/x86/smm/smihandler.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/cpu/x86/smm/smihandler.c b/src/cpu/x86/smm/smihandler.c index 7d6dfe4100..bb58140c67 100644 --- a/src/cpu/x86/smm/smihandler.c +++ b/src/cpu/x86/smm/smihandler.c @@ -118,6 +118,7 @@ void smi_handler(u32 smm_revision) printk_spew("\nSMI# #%d\n", node); switch (smm_revision) { + case 0x00030002: case 0x00030007: state_save.type = LEGACY; state_save.legacy_state_save = (legacy_smm_state_save_area_t *) @@ -145,8 +146,12 @@ void smi_handler(u32 smm_revision) /* Call chipset specific SMI handlers. This would be the place to * add a CPU or northbridge specific SMI handler, too */ - - southbridge_smi_handler(node, &state_save); + if (cpu_smi_handler) + cpu_smi_handler(node, &state_save); + if (northbridge_smi_handler) + northbridge_smi_handler(node, &state_save); + if (southbridge_smi_handler) + southbridge_smi_handler(node, &state_save); smi_release_lock(); |