coreboot/src
Stefan Reinauer 3128685a91 SMM: Move wbinvd after pmode jump
According to Rudolf Marek putting a memory instruction between
the CR0 write and the jmp in protected mode switching might hang the
machine. Move it after the jmp.

There might be a better solution for this, such as enabling the cache, as
keeping it disabled does not prevent cache poisoning attacks, so there is no
real point.

However, Intel docs say that SMM code in ASEG is always running uncached, so
we might want to consider running SMM out of TSEG instead, as well.

Signed-off-by: Stefan Reinauer <reinauer@google.com>
Change-Id: Id396acf3c8a79a9f1abcc557af6e0cce099955ec
Reviewed-on: http://review.coreboot.org/283
Reviewed-by: Sven Schnelle <svens@stackframe.org>
Tested-by: build bot (Jenkins)
2011-10-15 21:16:37 +02:00
..
arch/x86 cbfs_and_run_core() is not part of the API, make it static. 2011-10-15 12:27:52 +02:00
boot use byteorder.h instead of implementing another byte swap function 2011-10-15 16:21:06 +02:00
console Add support for the tracing infastructure in coreboot. 2011-09-07 01:26:47 +02:00
cpu SMM: Move wbinvd after pmode jump 2011-10-15 21:16:37 +02:00
devices Fix compilation of x86emu with gcc 4.6.x 2011-10-13 20:01:47 +02:00
drivers Add support for memory mapped UARTs to coreboot and add the OXPCIe952 as an 2011-04-26 23:47:04 +00:00
ec Lenovo H8: Always clear audio mute 2011-08-19 14:17:06 +02:00
include Enable/fix compilation of i8254 code in ram stage. 2011-10-13 20:00:22 +02:00
lib refactor vesa mode setting code and bootsplash code 2011-10-13 20:00:50 +02:00
mainboard Refactor option rom initialization code in coreboot. 2011-10-13 20:00:37 +02:00
northbridge AMD CPU and chipset fixes for compilation with gcc 4.6 2011-10-15 13:40:17 +02:00
pc80 Enable/fix compilation of i8254 code in ram stage. 2011-10-13 20:00:22 +02:00
southbridge AMD CPU and chipset fixes for compilation with gcc 4.6 2011-10-15 13:40:17 +02:00
superio w83627hf: ASL include containing virtual device tree of the SuperIO 2011-10-12 07:56:29 +02:00
vendorcode Fix AMD SB800 (cimx) southbridge code to compile with gcc 4.6 2011-10-14 22:57:11 +02:00
Kconfig refactor vesa mode setting code and bootsplash code 2011-10-13 20:00:50 +02:00
Kconfig.deprecated_options some ifdef --> if fixes 2011-04-21 20:24:43 +00:00