coreboot/src
Aaron Durbin af3158c0cf lynxpoint: split clearing and enabling of smm
Previously southbridge_smm_init() was provided that did both
the clearing of the SMM state and enabling SMIs. This is
troublesome in how haswell machines bring up the APs. The BSP
enters SMM once to determine if parallel SMM relocation is possible.
If it is possible the BSP releases the APs to do SMM relocation.
Normally, after the APs complete the SMM relocation, the BSP would then
re-enter the relocation handler to relocate its own SMM space.
However, because SMIs were previously enabled it is possible for an SMI
event to occur before the APs are complete or have entered the
relocation handler. This is bad because the BSP will turn off parallel
SMM save state. Additionally, this is a problem because the relocation
handler is not written to handle regular SMIs which can cause an
SMI storm which effectively looks like a hung machine. Correct these
issues by turning on SMIs after all the SMM relocation has occurred.

Change-Id: Id4f07553b110b9664d51d2e670a14e6617591500
Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: http://review.coreboot.org/2977
Tested-by: build bot (Jenkins)
Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
2013-04-01 23:24:32 +02:00
..
arch x86: Drop BOARD_HAS_FADT 2013-03-30 19:33:49 +01:00
console console: Make use of CONFIG_USE_OPTION_TABLE 2013-04-01 20:54:48 +02:00
cpu lynxpoint: split clearing and enabling of smm 2013-04-01 23:24:32 +02:00
device pci: don't load vga option rom before S3 check 2013-04-01 20:55:56 +02:00
drivers x86: Unify arch/io.h and arch/romcc_io.h 2013-03-22 00:00:09 +01:00
ec x86: Unify arch/io.h and arch/romcc_io.h 2013-03-22 00:00:09 +01:00
include memrange: add 2 new range_entry routines 2013-03-29 20:11:28 +01:00
lib memrange: add 2 new range_entry routines 2013-03-29 20:11:28 +01:00
mainboard ASRock E350M1: mptable.c: Remove unused variable dev 2013-04-01 21:07:46 +02:00
northbridge sandybridge: add option to mark graphics memory write-combining. 2013-03-29 20:00:39 +01:00
southbridge lynxpoint: split clearing and enabling of smm 2013-04-01 23:24:32 +02:00
superio Winbond W83627HF: Rename and move ASL snippet to acpi/superio.asl 2013-04-01 21:09:24 +02:00
vendorcode chromeos: remove CACHE_ROM automatic selection 2013-03-29 20:10:57 +01:00
Kconfig dynamic cbmem: fix memconsole and timestamps 2013-03-23 19:44:25 +01:00