summaryrefslogtreecommitdiff
path: root/src/soc/intel/apollolake/acpi.c
diff options
context:
space:
mode:
authorAaron Durbin <adurbin@chromium.org>2016-06-10 15:50:34 -0500
committerMartin Roth <martinroth@google.com>2016-06-12 12:55:04 +0200
commit1ee6f0bdc826a13c7c52d82bd3d918b24de5eec0 (patch)
tree65498d8a26f253d2f14b362f7eac9853e529ef6d /src/soc/intel/apollolake/acpi.c
parentac57f084a24dbb035893ec5344e111e4e63f5114 (diff)
soc/intel/apollolake: save GNVS pointer to SMM handler
Like other boards there will likely be information needed from GNVS in the SMM handler. Therefore, it's important that the point is stashed accordingly. BUG=chrome-os-partner:54275 TEST=Noted GNVS messages from SMM console on reef. Change-Id: If12b69731330a1e0af7f8fe880635e5ffd02d715 Signed-off-by: Aaron Durbin <adurbin@chromium.org> Reviewed-on: https://review.coreboot.org/15152 Tested-by: build bot (Jenkins) Reviewed-by: Furquan Shaikh <furquan@google.com>
Diffstat (limited to 'src/soc/intel/apollolake/acpi.c')
-rw-r--r--src/soc/intel/apollolake/acpi.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/soc/intel/apollolake/acpi.c b/src/soc/intel/apollolake/acpi.c
index 07a5fcbf88..c950255e73 100644
--- a/src/soc/intel/apollolake/acpi.c
+++ b/src/soc/intel/apollolake/acpi.c
@@ -21,6 +21,7 @@
#include <arch/smp/mpspec.h>
#include <cbmem.h>
#include <cpu/x86/smm.h>
+#include <cpu/cpu.h>
#include <soc/acpi.h>
#include <soc/intel/common/acpi.h>
#include <soc/iomap.h>
@@ -159,6 +160,8 @@ void southbridge_inject_dsdt(device_t device)
if (gnvs) {
acpi_create_gnvs(gnvs);
acpi_save_gnvs((uintptr_t)gnvs);
+ /* And tell SMI about it */
+ smm_setup_structures(gnvs, NULL, NULL);
/* Add it to DSDT. */
acpigen_write_scope("\\");