summaryrefslogtreecommitdiff
path: root/src/include
diff options
context:
space:
mode:
authorAaron Durbin <adurbin@chromium.org>2014-02-13 10:26:18 -0600
committerAaron Durbin <adurbin@google.com>2014-02-16 20:42:07 +0100
commitb4b9eb399ef2f5539afce6e43b49d4cf1613ae9e (patch)
tree363bfb9ef15b247fbc9f1de2aca8941422acba4e /src/include
parentaf5ca44784618aec5474991ac50adc3c73020f45 (diff)
x86: provide infrastructure to backup default SMM region
Certain CPUs require the default SMM region to be backed up on resume after a suspend. The reason is that in order to relocate the SMM region the default SMM region has to be used. As coreboot is unaware of how that memory is used it needs to be backed up. Therefore provide a common method for doing this. Change-Id: I65fe1317dc0b2203cb29118564fdba995770ffea Signed-off-by: Aaron Durbin <adurbin@chromium.org> Reviewed-on: http://review.coreboot.org/5216 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin <adurbin@google.com>
Diffstat (limited to 'src/include')
-rw-r--r--src/include/cbmem.h1
-rw-r--r--src/include/cpu/x86/smm.h4
2 files changed, 5 insertions, 0 deletions
diff --git a/src/include/cbmem.h b/src/include/cbmem.h
index b47a847718..eb307d49bb 100644
--- a/src/include/cbmem.h
+++ b/src/include/cbmem.h
@@ -61,6 +61,7 @@
#define CBMEM_ID_EHCI_DEBUG 0xe4c1deb9
#define CBMEM_ID_REFCODE 0x04efc0de
#define CBMEM_ID_REFCODE_CACHE 0x4efc0de5
+#define CBMEM_ID_SMM_SAVE_SPACE 0x07e9acee
#define CBMEM_ID_NONE 0x00000000
#define CBMEM_ID_AGESA_RUNTIME 0x41474553
#define CBMEM_ID_HOB_POINTER 0x484f4221
diff --git a/src/include/cpu/x86/smm.h b/src/include/cpu/x86/smm.h
index bda1413938..3ab43ff2ce 100644
--- a/src/include/cpu/x86/smm.h
+++ b/src/include/cpu/x86/smm.h
@@ -571,4 +571,8 @@ int smm_load_module(void *smram, int size, struct smm_loader_params *params);
#endif /* __SMM__ */
#endif /* CONFIG_SMM_MODULES */
+/* Backup and restore default SMM region. */
+void *backup_default_smm_area(void);
+void restore_default_smm_area(void *smm_save_area);
+
#endif