baytrail: SMM support

Initialize SMM on all CPUs by relocating the SMM region
and setting SMRR on all the cores. Additionally SMI
is enabled in the south cluster.

BUG=chrome-os-partner:22862
BRANCH=None
TEST=Built and booted rambi. Tested with DEBUG_SMI and noted
     power button turns off board while in firmware.

Change-Id: I92e3460572feeb67d4a3d4d26af5f0ecaf7d3dd5
Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/173983
Reviewed-on: http://review.coreboot.org/4892
Tested-by: build bot (Jenkins)
Reviewed-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
This commit is contained in:
Aaron Durbin
2013-10-21 22:32:00 -05:00
committed by Aaron Durbin
parent 6a360048a1
commit 7837be6cbb
11 changed files with 1135 additions and 13 deletions

View File

@@ -20,8 +20,14 @@
#include <arch/io.h>
#include <cbmem.h>
#include <baytrail/iosf.h>
#include <baytrail/smm.h>
void *smm_region_start(void)
{
return (void *)(iosf_bunit_read(BUNIT_SMRRL) << 20);
}
unsigned long get_top_of_ram(void)
{
return (unsigned long)(iosf_bunit_read(BUNIT_SMRRL) << 20);
return (unsigned long)smm_region_start();
}