diff options
| author | Yue Du <daviddu@us.ibm.com> | 2018-11-09 16:34:54 -0600 |
|---|---|---|
| committer | hostboot <hostboot@us.ibm.com> | 2019-05-10 10:55:04 -0500 |
| commit | f52ed17d38e2db55d094f95f6607a343dcfd75dd (patch) | |
| tree | 6c0b4a5a02a6c9357cd04bdc8cd429d8f0e85539 /import/chips/p9/procedures/ppe_closed | |
| parent | d0888141f218cb29655fd0fa0d213e09325546c6 (diff) | |
| download | talos-hcode-f52ed17d38e2db55d094f95f6607a343dcfd75dd.tar.gz talos-hcode-f52ed17d38e2db55d094f95f6607a343dcfd75dd.zip | |
PM: Handle PIB Reset with data check handler on all GPEs
Key_Cronus_Test=PM_REGRESS
Change-Id: I121aaf5efb579fde88829f2ef5354ad4c8b6d77b
CQ:SW447494
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/68622
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: PPE CI <ppe-ci+hostboot@us.ibm.com>
Reviewed-by: Douglas R. Gilbert <dgilbert@us.ibm.com>
Tested-by: Cronus HW CI <cronushw-ci+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Gregory S. Still <stillgs@us.ibm.com>
Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com>
Diffstat (limited to 'import/chips/p9/procedures/ppe_closed')
6 files changed, 23 insertions, 4 deletions
diff --git a/import/chips/p9/procedures/ppe_closed/cme/pk_app_cfg.h b/import/chips/p9/procedures/ppe_closed/cme/pk_app_cfg.h index 1124ed8a..f11d4639 100644 --- a/import/chips/p9/procedures/ppe_closed/cme/pk_app_cfg.h +++ b/import/chips/p9/procedures/ppe_closed/cme/pk_app_cfg.h @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HCODE Project */ /* */ -/* COPYRIGHT 2015,2018 */ +/* COPYRIGHT 2015,2019 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -104,6 +104,8 @@ #error "USE_PPE_IMPRECISE_MODE must be defined in order to enable USE_CME_QUEUED_SCOM or USE_CME_QUEUED_SCAN" #endif +#define PK_MACHINE_HANDLER_SUPPORT 0 + // -------------------- #if NIMBUS_DD_LEVEL == 10 diff --git a/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_fit.c b/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_fit.c index f8834fcc..cb42d9ad 100644 --- a/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_fit.c +++ b/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/p9_pgpe_fit.c @@ -382,6 +382,7 @@ __attribute__((always_inline)) inline void handle_fit_timebase_sync() G_tb_sync_count++; } } +extern uint32_t G_pib_reset_flag; // // handle_undervolt @@ -409,6 +410,8 @@ void p9_pgpe_fit_handler(void* arg, PkIrqId irq) { mtmsr(PPE42_MSR_INITIAL); + PK_TRACE_DBG("IPB reset flag value %x", G_pib_reset_flag); + G_pib_reset_flag = 0; handle_occ_beacon(); handle_core_throttle(); handle_occflg_requests(); diff --git a/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/pk_app_cfg.h b/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/pk_app_cfg.h index b5cfb41b..a188452e 100644 --- a/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/pk_app_cfg.h +++ b/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/pk_app_cfg.h @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HCODE Project */ /* */ -/* COPYRIGHT 2015,2018 */ +/* COPYRIGHT 2015,2019 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -107,6 +107,11 @@ /// using the table defined in pk_app_irq_table.c. #define STATIC_IRQ_TABLE +#define PK_MACHINE_HANDLER_SUPPORT 1 + +#define PPE42_MACHINE_CHECK_HANDLER \ + b __special_machine_check_handler + /// Static configuration data for external interrupts: /// diff --git a/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/pstate_common.mk b/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/pstate_common.mk index 04c17452..5bc7623c 100644 --- a/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/pstate_common.mk +++ b/import/chips/p9/procedures/ppe_closed/pgpe/pstate_gpe/pstate_common.mk @@ -90,6 +90,7 @@ PSTATE_COMMONFLAGS+= -DPK_THREAD_SUPPORT=1 PSTATE_COMMONFLAGS+= -DPK_TRACE_SUPPORT=1 PSTATE_COMMONFLAGS+= -DUSE_PK_APP_CFG_H=1 PSTATE_COMMONFLAGS+= -D__PPE_PLAT +PSTATE_COMMONFLAGS+= -D__PPE__ PSTATE_COMMONFLAGS+= -D__PK__=1 PSTATE_COMMONFLAGS+= -DPK_TRACE_SZ=2048 PSTATE_COMMONFLAGS+= -DPSTATE_GPE diff --git a/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_sgpe_stop_irq_handlers.c b/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_sgpe_stop_irq_handlers.c index 0a691912..70aabe8b 100644 --- a/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_sgpe_stop_irq_handlers.c +++ b/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_sgpe_stop_irq_handlers.c @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HCODE Project */ /* */ -/* COPYRIGHT 2015,2018 */ +/* COPYRIGHT 2015,2019 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -71,6 +71,7 @@ SgpeStopRecord G_sgpe_stop_record __attribute__((section (".dump_ptrs"))) = {{0, 0, 0}} }; +extern uint32_t G_pib_reset_flag; void @@ -78,6 +79,8 @@ p9_sgpe_fit_handler() { PK_TRACE("FIT: Handler Fired"); + PK_TRACE_DBG("IPB reset flag value %x", G_pib_reset_flag); + G_pib_reset_flag = 0; uint32_t tpending = in32(G_OCB_OPIT0PRA) | in32(G_OCB_OPIT3PRA) | in32(G_OCB_OPIT6PRB); diff --git a/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/pk_app_cfg.h b/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/pk_app_cfg.h index d087066b..c4adedec 100644 --- a/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/pk_app_cfg.h +++ b/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/pk_app_cfg.h @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HCODE Project */ /* */ -/* COPYRIGHT 2015,2018 */ +/* COPYRIGHT 2015,2019 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -156,4 +156,9 @@ /// This file provides platform specific panic codes #define PLATFORM_PANIC_CODES_H "sgpe_panic_codes.h" +#define PK_MACHINE_HANDLER_SUPPORT 1 + +#define PPE42_MACHINE_CHECK_HANDLER \ + b __special_machine_check_handler + #endif /*__PK_APP_CFG_H__*/ |

