From f0eb99996d0baa7b0c09027f542a17d01c570a47 Mon Sep 17 00:00:00 2001 From: Lijian Zhao Date: Thu, 14 Sep 2017 14:51:12 -0700 Subject: soc/intel/cannonlake: Fill the SMI usage Add SMM support for Cannonlake on top of common SMM, also include the SMM relocate support. Change-Id: I9aab141c528709b30804d327804c4031c59fcfff Signed-off-by: Lijian Zhao Reviewed-on: https://review.coreboot.org/21543 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin --- .../intel/common/block/include/intelblocks/smihandler.h | 15 +++++++++++++++ src/soc/intel/common/block/smm/smitraphandler.c | 2 ++ 2 files changed, 17 insertions(+) (limited to 'src/soc/intel/common/block') diff --git a/src/soc/intel/common/block/include/intelblocks/smihandler.h b/src/soc/intel/common/block/include/intelblocks/smihandler.h index 389d2415b8..5df5552685 100644 --- a/src/soc/intel/common/block/include/intelblocks/smihandler.h +++ b/src/soc/intel/common/block/include/intelblocks/smihandler.h @@ -92,6 +92,21 @@ void smihandler_southbridge_pm1( void smihandler_southbridge_gpe0( const struct smm_save_state_ops *save_state_ops); +/* + * This function should be implemented in SOC specific code to handle + * MC event. The default functionality is provided in + * soc/intel/common/block/smm/smihandler.c + */ +void smihandler_southbridge_mc( + const struct smm_save_state_ops *save_state_ops); + +/* + * This function should be implemented in SOC specific code to handle + * minitor event. The default functionality is provided in + * soc/intel/common/block/smm/smihandler.c + */ +void smihandler_southbridge_monitor( + const struct smm_save_state_ops *save_state_ops); /* * This function should be implemented in SOC specific code to handle * SMI_TCO event. The default functionality is provided in diff --git a/src/soc/intel/common/block/smm/smitraphandler.c b/src/soc/intel/common/block/smm/smitraphandler.c index 4a51cdebfc..bfa984651e 100644 --- a/src/soc/intel/common/block/smm/smitraphandler.c +++ b/src/soc/intel/common/block/smm/smitraphandler.c @@ -75,6 +75,8 @@ void smihandler_southbridge_monitor( u32 data, mask = 0; u8 trap_sts; int i; + global_nvs_t *gnvs = smm_get_gnvs(); + /* TRSR - Trap Status Register */ trap_sts = pcr_read8(PID_PSTH, PCR_PSTH_TRPST); /* Clear trap(s) in TRSR */ -- cgit v1.2.3