aboutsummaryrefslogtreecommitdiff
path: root/src/cpu/amd
diff options
context:
space:
mode:
Diffstat (limited to 'src/cpu/amd')
-rwxr-xr-xsrc/cpu/amd/agesa/cache_as_ram.inc5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/cpu/amd/agesa/cache_as_ram.inc b/src/cpu/amd/agesa/cache_as_ram.inc
index c645a1e517..449cf693f2 100755
--- a/src/cpu/amd/agesa/cache_as_ram.inc
+++ b/src/cpu/amd/agesa/cache_as_ram.inc
@@ -85,6 +85,7 @@ stop:
disable_cache_as_ram:
/* Save return stack */
+ movd 0(%esp), %xmm1
movd %esp, %xmm0
/* Disable cache */
@@ -92,8 +93,6 @@ disable_cache_as_ram:
orl $CR0_CacheDisable, %eax
movl %eax, %cr0
- invd
-
AMD_DISABLE_STACK
/* enable cache */
@@ -103,7 +102,9 @@ disable_cache_as_ram:
xorl %eax, %eax
/* Restore the return stack */
+ wbinvd
movd %xmm0, %esp
+ movd %xmm1, (%esp)
ret
cache_as_ram_setup_out: