From 8e7e2adfdfe90a1061ce87b8a657bab152a73358 Mon Sep 17 00:00:00 2001 From: Zane Shelley Date: Mon, 25 Sep 2017 11:48:43 -0500 Subject: [PATCH] PRD: Nimbus rule file updates Change-Id: Ic87ecbe0fc90c91ad54769264d4b0b400f3ee5fd Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/46761 Tested-by: Jenkins Server Reviewed-by: Caleb N. Palmer Reviewed-by: Benjamin J. Weisenbeck Reviewed-by: Brian J. Stegmiller Reviewed-by: Zane C. Shelley Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/46947 --- src/usr/diag/prdf/common/plat/p9/p9_capp.rule | 37 --- .../prdf/common/plat/p9/p9_capp_regs.rule | 68 +++++ src/usr/diag/prdf/common/plat/p9/p9_ec.rule | 183 +------------ .../diag/prdf/common/plat/p9/p9_ec_regs.rule | 181 +++++++++++++ src/usr/diag/prdf/common/plat/p9/p9_ex.rule | 68 ----- .../diag/prdf/common/plat/p9/p9_ex_regs.rule | 72 ++++- src/usr/diag/prdf/common/plat/p9/p9_mcs.rule | 53 ---- .../diag/prdf/common/plat/p9/p9_mcs_regs.rule | 82 ++++++ .../diag/prdf/common/plat/p9/p9_nimbus.rule | 249 ------------------ .../common/plat/p9/p9_nimbus_actions.rule | 41 +++ .../prdf/common/plat/p9/p9_nimbus_regs.rule | 207 +++++++++++++++ src/usr/diag/prdf/common/plat/p9/p9_obus.rule | 17 -- .../prdf/common/plat/p9/p9_obus_regs.rule | 19 ++ src/usr/diag/prdf/common/plat/p9/p9_phb.rule | 12 - .../diag/prdf/common/plat/p9/p9_phb_regs.rule | 36 +++ src/usr/diag/prdf/common/plat/p9/p9_xbus.rule | 18 -- .../prdf/common/plat/p9/p9_xbus_regs.rule | 19 ++ 17 files changed, 725 insertions(+), 637 deletions(-) create mode 100644 src/usr/diag/prdf/common/plat/p9/p9_capp_regs.rule create mode 100644 src/usr/diag/prdf/common/plat/p9/p9_mcs_regs.rule create mode 100644 src/usr/diag/prdf/common/plat/p9/p9_phb_regs.rule diff --git a/src/usr/diag/prdf/common/plat/p9/p9_capp.rule b/src/usr/diag/prdf/common/plat/p9/p9_capp.rule index fc3da3fa2b6..77e59aaf7a8 100644 --- a/src/usr/diag/prdf/common/plat/p9/p9_capp.rule +++ b/src/usr/diag/prdf/common/plat/p9/p9_capp.rule @@ -79,43 +79,6 @@ chip p9_capp capture req nonzero("CXAFIR"); }; - ############################################################################ - # P9 CAPP target HDCT additions (open power chkstop analysis) - ############################################################################ - register SNOOP_ERR_RPT - { - name "P9 CAPP target Snoop Error Report"; - scomaddr 0x0201080a; - capture group default; - }; - - register APC_CERR - { - name "P9 CAPP target APC CERR"; - scomaddr 0x0201080b; - capture group default; - }; - - register XPT_ERR_RPT - { - name "P9 CAPP target XPT Error Report"; - scomaddr 0x0201080c; - capture group default; - }; - - register TLBI_ERR_RPT - { - name "P9 CAPP target TLBI Error Report"; - scomaddr 0x0201080d; - capture group default; - }; - - register CAPP_ERRSTAT_CTRL_REG - { - name "P9 CAPP target ErrorStatus and Ctrl Reg"; - scomaddr 0x0201080e; - capture group default; - }; # Include registers not defined by the xml .include "p9_capp_regs.rule"; diff --git a/src/usr/diag/prdf/common/plat/p9/p9_capp_regs.rule b/src/usr/diag/prdf/common/plat/p9/p9_capp_regs.rule new file mode 100644 index 00000000000..bd0a74808d2 --- /dev/null +++ b/src/usr/diag/prdf/common/plat/p9/p9_capp_regs.rule @@ -0,0 +1,68 @@ +# IBM_PROLOG_BEGIN_TAG +# This is an automatically generated prolog. +# +# $Source: src/usr/diag/prdf/common/plat/p9/p9_capp_regs.rule $ +# +# OpenPOWER HostBoot Project +# +# Contributors Listed Below - COPYRIGHT 2017 +# [+] International Business Machines Corp. +# +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. See the License for the specific language governing +# permissions and limitations under the License. +# +# IBM_PROLOG_END_TAG + +############################################################################### +# Additional registers for CAPP, not defined in XML +############################################################################### + + ############################################################################ + # P9 CAPP target HDCT additions (open power checkstop analysis) + ############################################################################ + + register SNOOP_ERR_RPT + { + name "P9 CAPP target Snoop Error Report"; + scomaddr 0x0201080a; + capture group default; + }; + + register APC_CERR + { + name "P9 CAPP target APC CERR"; + scomaddr 0x0201080b; + capture group default; + }; + + register XPT_ERR_RPT + { + name "P9 CAPP target XPT Error Report"; + scomaddr 0x0201080c; + capture group default; + }; + + register TLBI_ERR_RPT + { + name "P9 CAPP target TLBI Error Report"; + scomaddr 0x0201080d; + capture group default; + }; + + register CAPP_ERRSTAT_CTRL_REG + { + name "P9 CAPP target ErrorStatus and Ctrl Reg"; + scomaddr 0x0201080e; + capture group default; + }; + diff --git a/src/usr/diag/prdf/common/plat/p9/p9_ec.rule b/src/usr/diag/prdf/common/plat/p9/p9_ec.rule index 34fee098391..b0869c6a58d 100644 --- a/src/usr/diag/prdf/common/plat/p9/p9_ec.rule +++ b/src/usr/diag/prdf/common/plat/p9/p9_ec.rule @@ -163,187 +163,6 @@ chip p9_ec capture group default; }; - ############################################################################ - # P9 EC target HOMER Enable Reg - ############################################################################ - - register HOMER_ENABLE - { - name "P9 EC target HOMER ENABLE"; - capture group default; - scomaddr 0x20010a96; - }; - - ############################################################################ - # P9 EC target Spec Att Reason - ############################################################################ - - register SPEC_ATTN_REASON - { - name "P9 EC target SPEC ATTN REASON"; - scomaddr 0x20010a99; - capture group default; - }; - - register SPEC_ATTN_REASON_MASK - { - name "P9 EC target SPEC ATTN REASON MASK"; - scomaddr 0x20010a9a; - capture group default; - }; - - ############################################################################ - # P9 EC target CERR Holdout Regs - ############################################################################ - - register SPR_CORE_ERR_HOLDOUT - { - name "P9 EC target SPR CORE ERR HOLDOUT"; - scomaddr 0x20010ab5; - capture group default; - }; - - register PMU_ERR_HOLDOUT - { - name "P9 EC target PMU ERR HOLDOUT"; - scomaddr 0x20010ab6; - capture group default; - }; - - register TFAC_ERR_HOLDOUT - { - name "P9 EC target TFAC ERR HOLDOUT"; - scomaddr 0x20010ab7; - capture group default; - }; - - register SPR_COMMON_ERR_HOLDOUT - { - name "P9 EC target SPR COMMON ERR HOLDOUT"; - scomaddr 0x20010ab8; - capture group default; - }; - - register IFU_ERR_HOLDOUT0 - { - name "P9 EC target IFU ERR HOLDOUT 0"; - scomaddr 0x20010c00; - capture group default; - }; - - register IFU_ERR_HOLDOUT1 - { - name "P9 EC target IFU ERR HOLDOUT 1"; - scomaddr 0x20010c01; - capture group default; - }; - - register IFU_ERR_HOLDOUT2 - { - name "P9 EC target IFU ERR HOLDOUT 2"; - scomaddr 0x20010c02; - capture group default; - }; - - register IFU_ERR_HOLDOUT3 - { - name "P9 EC target IFU ERR HOLDOUT 3"; - scomaddr 0x20010c03; - capture group default; - }; - - register ISU_ERR_HOLDOUT0 - { - name "P9 EC target ISU ERR HOLDOUT 0"; - scomaddr 0x20010c40; - capture group default; - }; - - register ISU_ERR_HOLDOUT1 - { - name "P9 EC target ISU ERR HOLDOUT 1"; - scomaddr 0x20010c41; - capture group default; - }; - - register ISU_ERR_HOLDOUT2 - { - name "P9 EC target ISU ERR HOLDOUT 2"; - scomaddr 0x20010c42; - capture group default; - }; - - register ISU_ERR_HOLDOUT3 - { - name "P9 EC target ISU ERR HOLDOUT 3"; - scomaddr 0x20010c43; - capture group default; - }; - - register ISU_ERR_HOLDOUT4 - { - name "P9 EC target ISU ERR HOLDOUT 4"; - scomaddr 0x20010c44; - capture group default; - }; - - register ISU_ERR_HOLDOUT5 - { - name "P9 EC target ISU ERR HOLDOUT 5"; - scomaddr 0x20010c45; - capture group default; - }; - - register LSU_ERR_HOLDOUT0 - { - name "P9 EC target LSU ERR HOLDOUT 0"; - scomaddr 0x20010c80; - capture group default; - }; - - register LSU_ERR_HOLDOUT1 - { - name "P9 EC target LSU ERR HOLDOUT 1"; - scomaddr 0x20010c81; - capture group default; - }; - - register LSU_ERR_HOLDOUT2 - { - name "P9 EC target LSU ERR HOLDOUT 2"; - scomaddr 0x20010c82; - capture group default; - }; - - register LSU_ERR_HOLDOUT3 - { - name "P9 EC target LSU ERR HOLDOUT 3"; - scomaddr 0x20010c83; - capture group default; - }; - - register FIR_ERR_HOLDOUT - { - name "P9 EC target FIR ERR HOLDOUT"; - scomaddr 0x20010a51; - capture group default; - }; - - register THREAD_CTRL_ERR_HOLDOUT - { - name "P9 EC target THREAD CTRL ERR HOLDOUT"; - scomaddr 0x20010a03; - capture group default; - }; - - register PPM_STOP_STATE_HISTORY - { - name "P9 EC target PPM STOP STATE HISTORY"; - scomaddr 0x200f0110; - capture group default; - }; - - # Include registers not defined by the xml .include "p9_ec_regs.rule"; @@ -769,7 +588,7 @@ group gCOREFIR filter singlebit, cs_root_cause /** COREFIR[60] * debug checkstop on trigger */ - (rCOREFIR, bit(60)) ? self_th_32perDay; + (rCOREFIR, bit(60)) ? defaultMaskedError; /** COREFIR[61] * SCOM or Recoverable error inject diff --git a/src/usr/diag/prdf/common/plat/p9/p9_ec_regs.rule b/src/usr/diag/prdf/common/plat/p9/p9_ec_regs.rule index fe701ced621..4a85056dcf5 100644 --- a/src/usr/diag/prdf/common/plat/p9/p9_ec_regs.rule +++ b/src/usr/diag/prdf/common/plat/p9/p9_ec_regs.rule @@ -22,6 +22,7 @@ # permissions and limitations under the License. # # IBM_PROLOG_END_TAG + ############################################################################### # Additional registers for EC, not defined in XML ############################################################################### @@ -44,3 +45,183 @@ capture group PllFIRs; }; + ############################################################################ + # P9 EC target HOMER Enable Reg + ############################################################################ + + register HOMER_ENABLE + { + name "P9 EC target HOMER ENABLE"; + capture group default; + scomaddr 0x20010a96; + }; + + ############################################################################ + # P9 EC target Spec Att Reason + ############################################################################ + + register SPEC_ATTN_REASON + { + name "P9 EC target SPEC ATTN REASON"; + scomaddr 0x20010a99; + capture group default; + }; + + register SPEC_ATTN_REASON_MASK + { + name "P9 EC target SPEC ATTN REASON MASK"; + scomaddr 0x20010a9a; + capture group default; + }; + + ############################################################################ + # P9 EC target CERR Holdout Regs + ############################################################################ + + register SPR_CORE_ERR_HOLDOUT + { + name "P9 EC target SPR CORE ERR HOLDOUT"; + scomaddr 0x20010ab5; + capture group default; + }; + + register PMU_ERR_HOLDOUT + { + name "P9 EC target PMU ERR HOLDOUT"; + scomaddr 0x20010ab6; + capture group default; + }; + + register TFAC_ERR_HOLDOUT + { + name "P9 EC target TFAC ERR HOLDOUT"; + scomaddr 0x20010ab7; + capture group default; + }; + + register SPR_COMMON_ERR_HOLDOUT + { + name "P9 EC target SPR COMMON ERR HOLDOUT"; + scomaddr 0x20010ab8; + capture group default; + }; + + register IFU_ERR_HOLDOUT0 + { + name "P9 EC target IFU ERR HOLDOUT 0"; + scomaddr 0x20010c00; + capture group default; + }; + + register IFU_ERR_HOLDOUT1 + { + name "P9 EC target IFU ERR HOLDOUT 1"; + scomaddr 0x20010c01; + capture group default; + }; + + register IFU_ERR_HOLDOUT2 + { + name "P9 EC target IFU ERR HOLDOUT 2"; + scomaddr 0x20010c02; + capture group default; + }; + + register IFU_ERR_HOLDOUT3 + { + name "P9 EC target IFU ERR HOLDOUT 3"; + scomaddr 0x20010c03; + capture group default; + }; + + register ISU_ERR_HOLDOUT0 + { + name "P9 EC target ISU ERR HOLDOUT 0"; + scomaddr 0x20010c40; + capture group default; + }; + + register ISU_ERR_HOLDOUT1 + { + name "P9 EC target ISU ERR HOLDOUT 1"; + scomaddr 0x20010c41; + capture group default; + }; + + register ISU_ERR_HOLDOUT2 + { + name "P9 EC target ISU ERR HOLDOUT 2"; + scomaddr 0x20010c42; + capture group default; + }; + + register ISU_ERR_HOLDOUT3 + { + name "P9 EC target ISU ERR HOLDOUT 3"; + scomaddr 0x20010c43; + capture group default; + }; + + register ISU_ERR_HOLDOUT4 + { + name "P9 EC target ISU ERR HOLDOUT 4"; + scomaddr 0x20010c44; + capture group default; + }; + + register ISU_ERR_HOLDOUT5 + { + name "P9 EC target ISU ERR HOLDOUT 5"; + scomaddr 0x20010c45; + capture group default; + }; + + register LSU_ERR_HOLDOUT0 + { + name "P9 EC target LSU ERR HOLDOUT 0"; + scomaddr 0x20010c80; + capture group default; + }; + + register LSU_ERR_HOLDOUT1 + { + name "P9 EC target LSU ERR HOLDOUT 1"; + scomaddr 0x20010c81; + capture group default; + }; + + register LSU_ERR_HOLDOUT2 + { + name "P9 EC target LSU ERR HOLDOUT 2"; + scomaddr 0x20010c82; + capture group default; + }; + + register LSU_ERR_HOLDOUT3 + { + name "P9 EC target LSU ERR HOLDOUT 3"; + scomaddr 0x20010c83; + capture group default; + }; + + register FIR_ERR_HOLDOUT + { + name "P9 EC target FIR ERR HOLDOUT"; + scomaddr 0x20010a51; + capture group default; + }; + + register THREAD_CTRL_ERR_HOLDOUT + { + name "P9 EC target THREAD CTRL ERR HOLDOUT"; + scomaddr 0x20010a03; + capture group default; + }; + + register PPM_STOP_STATE_HISTORY + { + name "P9 EC target PPM STOP STATE HISTORY"; + scomaddr 0x200f0110; + capture group default; + }; + diff --git a/src/usr/diag/prdf/common/plat/p9/p9_ex.rule b/src/usr/diag/prdf/common/plat/p9/p9_ex.rule index 4cd52900f52..29af06d0081 100644 --- a/src/usr/diag/prdf/common/plat/p9/p9_ex.rule +++ b/src/usr/diag/prdf/common/plat/p9/p9_ex.rule @@ -190,74 +190,6 @@ chip p9_ex }; - ############################################################################ - # P9 EX target ERROR REPORTING REGS - ############################################################################ - - register ERR_REPORT_REG0 - { - name "P9 EX target ERR REPORT REG0"; - scomaddr 0x10010812; - capture group default; - }; - - register ERR_REPORT_REG1 - { - name "P9 EX target ERR REPORT REG1"; - scomaddr 0x10010813; - capture group default; - }; - - register NCU_ERROR_REPORT_REG - { - name "P9 EX target NCU ERROR REPORT REG"; - scomaddr 0x1001100e; - capture group default; - }; - - register L3_PRD_PURGE_REG - { - name "P9 EX target L3 PRD PURGE REG"; - scomaddr 0x1001180e; - capture group default; - }; - - register L3_ERR_REPORT0 - { - name "P9 EX target L3 ERR REPORT 0"; - scomaddr 0x10011810; - capture group default; - }; - - register L3_ERR_REPORT1 - { - name "P9 EX target L3 ERR REPORT 1"; - scomaddr 0x10011817; - capture group default; - }; - - register L3_EDRAM_ERRSTAT_REG0 - { - name "P9 EX target L3 EDRAM ERRSTAT REG 0"; - scomaddr 0x10011819; - capture group default; - }; - - register L3_EDRAM_ERRSTAT_REG1 - { - name "P9 EX target L3 EDRAM ERRSTAT REG 1"; - scomaddr 0x1001181a; - capture group default; - }; - - register L3_EDRAM_BANK_FAIL - { - name "P9 EX target L3 EDRAM BANK FAIL"; - scomaddr 0x1001181b; - capture group default; - }; - - # Include registers not defined by the xml .include "p9_ex_regs.rule"; diff --git a/src/usr/diag/prdf/common/plat/p9/p9_ex_regs.rule b/src/usr/diag/prdf/common/plat/p9/p9_ex_regs.rule index cc05b34256c..352d5792e7b 100644 --- a/src/usr/diag/prdf/common/plat/p9/p9_ex_regs.rule +++ b/src/usr/diag/prdf/common/plat/p9/p9_ex_regs.rule @@ -5,7 +5,7 @@ # # OpenPOWER HostBoot Project # -# Contributors Listed Below - COPYRIGHT 2016 +# Contributors Listed Below - COPYRIGHT 2016,2017 # [+] International Business Machines Corp. # # @@ -22,6 +22,7 @@ # permissions and limitations under the License. # # IBM_PROLOG_END_TAG + ############################################################################### # Additional registers for EX, not defined in XML ############################################################################### @@ -36,6 +37,7 @@ ############################################################################ # P9 EX target L2FIR ############################################################################ + register L2FIR_AND { name "P9 EX target L2FIR AND"; @@ -51,3 +53,71 @@ capture group never; access write_only; }; + + ############################################################################ + # P9 EX target ERROR REPORTING REGS + ############################################################################ + + register ERR_REPORT_REG0 + { + name "P9 EX target ERR REPORT REG0"; + scomaddr 0x10010812; + capture group default; + }; + + register ERR_REPORT_REG1 + { + name "P9 EX target ERR REPORT REG1"; + scomaddr 0x10010813; + capture group default; + }; + + register NCU_ERROR_REPORT_REG + { + name "P9 EX target NCU ERROR REPORT REG"; + scomaddr 0x1001100e; + capture group default; + }; + + register L3_PRD_PURGE_REG + { + name "P9 EX target L3 PRD PURGE REG"; + scomaddr 0x1001180e; + capture group default; + }; + + register L3_ERR_REPORT0 + { + name "P9 EX target L3 ERR REPORT 0"; + scomaddr 0x10011810; + capture group default; + }; + + register L3_ERR_REPORT1 + { + name "P9 EX target L3 ERR REPORT 1"; + scomaddr 0x10011817; + capture group default; + }; + + register L3_EDRAM_ERRSTAT_REG0 + { + name "P9 EX target L3 EDRAM ERRSTAT REG 0"; + scomaddr 0x10011819; + capture group default; + }; + + register L3_EDRAM_ERRSTAT_REG1 + { + name "P9 EX target L3 EDRAM ERRSTAT REG 1"; + scomaddr 0x1001181a; + capture group default; + }; + + register L3_EDRAM_BANK_FAIL + { + name "P9 EX target L3 EDRAM BANK FAIL"; + scomaddr 0x1001181b; + capture group default; + }; + diff --git a/src/usr/diag/prdf/common/plat/p9/p9_mcs.rule b/src/usr/diag/prdf/common/plat/p9/p9_mcs.rule index e528dface5d..9a972b7c4fa 100644 --- a/src/usr/diag/prdf/common/plat/p9/p9_mcs.rule +++ b/src/usr/diag/prdf/common/plat/p9/p9_mcs.rule @@ -79,59 +79,6 @@ chip p9_mcs capture req nonzero("MCFIR"); }; - ############################################################################ - # P9 MCS target HDCT additions (open power chkstop analysis) - ############################################################################ - register MC_ERR_REPORT2 - { - name "P9 MCS target MC ERR REPORT2"; - scomaddr 0x0501081a; - capture group default; - }; - - register MC_ERR_REPORT0 - { - name "P9 MCS target MC ERR REPORT0"; - scomaddr 0x0501081e; - capture group default; - }; - - register MC_ERR_REPORT1 - { - name "P9 MCS target MC ERR REPORT1"; - scomaddr 0x0501081f; - capture group default; - }; - - register MEMCFG_REG - { - name "P9 MCS target MEMCFG REG"; - scomaddr 0x0501080a; - capture group default; - }; - - register MCFGPA - { - name "P9 MCS target MCFGPA"; - scomaddr 0x0501080b; - capture group default; - }; - - register MCFGPM - { - name "P9 MCS target MCFGPM"; - scomaddr 0x0501080c; - capture group default; - }; - - register MCFGPMA - { - name "P9 MCS target MCFGPMA"; - scomaddr 0x0501080d; - capture group default; - }; - - # Include registers not defined by the xml .include "p9_mcs_regs.rule"; diff --git a/src/usr/diag/prdf/common/plat/p9/p9_mcs_regs.rule b/src/usr/diag/prdf/common/plat/p9/p9_mcs_regs.rule new file mode 100644 index 00000000000..dc35a0a642a --- /dev/null +++ b/src/usr/diag/prdf/common/plat/p9/p9_mcs_regs.rule @@ -0,0 +1,82 @@ +# IBM_PROLOG_BEGIN_TAG +# This is an automatically generated prolog. +# +# $Source: src/usr/diag/prdf/common/plat/p9/p9_mcs_regs.rule $ +# +# OpenPOWER HostBoot Project +# +# Contributors Listed Below - COPYRIGHT 2017 +# [+] International Business Machines Corp. +# +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. See the License for the specific language governing +# permissions and limitations under the License. +# +# IBM_PROLOG_END_TAG + +################################################################################ +# Additional registers for MCS, not defined in XML +################################################################################ + + ############################################################################ + # P9 MCS target HDCT additions (open power chkstop analysis) + ############################################################################ + + register MC_ERR_REPORT2 + { + name "P9 MCS target MC ERR REPORT2"; + scomaddr 0x0501081a; + capture group default; + }; + + register MC_ERR_REPORT0 + { + name "P9 MCS target MC ERR REPORT0"; + scomaddr 0x0501081e; + capture group default; + }; + + register MC_ERR_REPORT1 + { + name "P9 MCS target MC ERR REPORT1"; + scomaddr 0x0501081f; + capture group default; + }; + + register MEMCFG_REG + { + name "P9 MCS target MEMCFG REG"; + scomaddr 0x0501080a; + capture group default; + }; + + register MCFGPA + { + name "P9 MCS target MCFGPA"; + scomaddr 0x0501080b; + capture group default; + }; + + register MCFGPM + { + name "P9 MCS target MCFGPM"; + scomaddr 0x0501080c; + capture group default; + }; + + register MCFGPMA + { + name "P9 MCS target MCFGPMA"; + scomaddr 0x0501080d; + capture group default; + }; + diff --git a/src/usr/diag/prdf/common/plat/p9/p9_nimbus.rule b/src/usr/diag/prdf/common/plat/p9/p9_nimbus.rule index 5c556c37af3..1b716e68c37 100644 --- a/src/usr/diag/prdf/common/plat/p9/p9_nimbus.rule +++ b/src/usr/diag/prdf/common/plat/p9/p9_nimbus.rule @@ -1598,213 +1598,6 @@ chip p9_nimbus capture group PciChipletFir2; }; - ############################################################################ - # P9 PROC target HDCT additions (open power chkstop analysis) - ############################################################################ - - register OCC_ERROR_REPORT_REG - { - name "OCC ERROR REPORT REG"; - scomaddr 0x0101080a; - capture group default; - }; - - register PB_ERROR_REPORT - { - name "PB ERROR REPORT REG"; - scomaddr 0x020110a1; - capture group default; - }; - - register PB_PTY_ERROR_REPORT - { - name "PB PTY ERROR REPORT REG"; - scomaddr 0x020110a2; - capture group default; - }; - - register DMA_CERR_0 - { - name "DMA CERR 0"; - scomaddr 0x02011057; - capture group default; - }; - - register DMA_CERR_1 - { - name "DMA CERR 1"; - scomaddr 0x02011058; - capture group default; - }; - - register PB_CENT_CR_ERROR - { - name "PB CENT CR ERROR"; - scomaddr 0x05011c2c; - capture group default; - }; - - register PBA_ERR_REPORT_0 - { - name "PBA ERROR REPORT 0"; - scomaddr 0x0501284c; - capture group default; - }; - - register PBA_ERR_REPORT_1 - { - name "PBA ERROR REPORT 1"; - scomaddr 0x0501284d; - capture group default; - }; - - register PBA_ERR_REPORT_2 - { - name "PBA ERROR REPORT 2"; - scomaddr 0x0501284e; - capture group default; - }; - - register PB_PTY_ERR_REPORT - { - name "PB PTY ERROR REPORT"; - scomaddr 0x05012C22; - capture group default; - }; - - register TOD_SLAVE_PATH_CTRL - { - name "TOD SLAVE PATH CTRL"; - scomaddr 0x00040005; - capture group default; - }; - - register TOD_INTERNAL_PATH_CTRL - { - name "TOD INTERNAL PATH CTRL"; - scomaddr 0x00040006; - capture group default; - }; - - register TOD_CONFIG_CTRL - { - name "TOD Prim Sec Config Control"; - scomaddr 0x00040007; - capture group default; - }; - - register TOD_PSS_MSS_STATUS - { - name "TOD PSS MSS Status Reg"; - scomaddr 0x00040008; - capture group default; - }; - - register TOD_MASTER_PATH_STATUS - { - name "TOD Master Path Status Reg"; - scomaddr 0x00040009; - capture group default; - }; - - register TOD_MASTER_PATH0_STEP_STEERING - { - name "TOD Master Path0 Step Steering"; - scomaddr 0x0004000E; - capture group default; - }; - - register TOD_MASTER_PATH1_STEP_STEERING - { - name "TOD Master Path1 Step Steering"; - scomaddr 0x0004000F; - capture group default; - }; - - register TOD_TRACE_DATASET_1 - { - name "TOD Trace Dataset 1"; - scomaddr 0x0004001D; - capture group default; - }; - - register TOD_TRACE_DATASET_2 - { - name "TOD Trace Dataset 2"; - scomaddr 0x0004001E; - capture group default; - }; - - register TOD_TRACE_DATASET_3 - { - name "TOD Trace Dataset 3"; - scomaddr 0x0004001F; - capture group default; - }; - - register OSC_ERROR_HOLD - { - name "OSC ERROR HOLD"; - scomaddr 0x01020019; - capture group default; - }; - - register OSC_ERROR_MASK - { - name "OSC ERROR MASK"; - scomaddr 0x0102001A; - capture group default; - }; - - register OSC_ERROR_MODE - { - name "OSC ERROR MODE"; - scomaddr 0x0102001B; - capture group default; - }; - - register TOD_FSM_REGISTER - { - name "TOD FSM Register"; - scomaddr 0x00040024; - capture group default; - }; - - register TOD_TX_TTYPE_CTRL_REG - { - name "TOD TX TType Ctrl reg"; - scomaddr 0x00040027; - capture group default; - }; - - register TOD_RX_TTYPE_CTRL_REG - { - name "TOD RX TType Ctrl reg"; - scomaddr 0x00040029; - capture group default; - }; - - register TOD_ERROR_INTERRUPTS - { - name "TOD Error and Interrupts"; - scomaddr 0x00040030; - capture group default; - }; - - register TOD_CERR_REPORT - { - name "TOD CERR Report"; - scomaddr 0x00040032; - capture group default; - }; - - register TOD_ROUTE_ERRORS_TO_CORE - { - name "TOD Route Errors to Core"; - scomaddr 0x00040033; - capture group default; - }; - # Include registers not defined by the xml .include "p9_nimbus_regs.rule"; @@ -8682,42 +8475,6 @@ group gPCI2_CHIPLET_FIR filter singlebit # Include the chip-specific action set. .include "p9_nimbus_actions.rule"; -actionclass analyzePciChipletFir0 -{ - capture(PciChipletFir0); - analyze(gPCI0_CHIPLET_FIR); -}; - -actionclass analyzePciChipletFir1 -{ - capture(PciChipletFir1); - analyze(gPCI1_CHIPLET_FIR); -}; - -actionclass analyzePciChipletFir2 -{ - capture(PciChipletFir2); - analyze(gPCI2_CHIPLET_FIR); -}; - -actionclass aNPU0FIR_NDD10 {capture(cNPU0FIR_NDD10); analyze(gNPU0FIR_NDD10);}; -actionclass aNPU1FIR_NDD10 {capture(cNPU1FIR_NDD10); analyze(gNPU1FIR_NDD10);}; -actionclass aNPU0FIR {capture(cNPU0FIR); analyze(gNPU0FIR); }; -actionclass aNPU1FIR {capture(cNPU1FIR); analyze(gNPU1FIR); }; -actionclass analyzeNPU2FIR {capture(cNPU2FIR); analyze(gNPU2FIR); }; - -actionclass analyzeNPU0FIR -{ - try( funccall("checkNimbusDD10" ), aNPU0FIR_NDD10 ); - try( funccall("checkNotNimbusDD10"), aNPU0FIR ); -}; - -actionclass analyzeNPU1FIR -{ - try( funccall("checkNimbusDD10" ), aNPU1FIR_NDD10 ); - try( funccall("checkNotNimbusDD10"), aNPU1FIR ); -}; - actionclass analyzeConnectedEQ0 { analyze(connected(TYPE_EQ, 0)); }; actionclass analyzeConnectedEQ1 { analyze(connected(TYPE_EQ, 1)); }; actionclass analyzeConnectedEQ2 { analyze(connected(TYPE_EQ, 2)); }; @@ -8769,9 +8526,3 @@ actionclass analyzeConnectedMCS0 { analyze(connected(TYPE_MCS, 0)); }; actionclass analyzeConnectedMCS1 { analyze(connected(TYPE_MCS, 1)); }; actionclass analyzeConnectedMCS2 { analyze(connected(TYPE_MCS, 2)); }; actionclass analyzeConnectedMCS3 { analyze(connected(TYPE_MCS, 3)); }; - -actionclass deadmanTimer -{ - funccall("handleDeadmanTimer"); -}; - diff --git a/src/usr/diag/prdf/common/plat/p9/p9_nimbus_actions.rule b/src/usr/diag/prdf/common/plat/p9/p9_nimbus_actions.rule index 899393c1eea..8472e9cce28 100644 --- a/src/usr/diag/prdf/common/plat/p9/p9_nimbus_actions.rule +++ b/src/usr/diag/prdf/common/plat/p9/p9_nimbus_actions.rule @@ -79,3 +79,44 @@ actionclass nx_th_1 /** Callout connected NX, threshold 1, SUE originated from somewhere else */ actionclass nx_th_1_SUE { nx_th_1; SueSeen; }; +actionclass analyzePciChipletFir0 +{ + capture(PciChipletFir0); + analyze(gPCI0_CHIPLET_FIR); +}; + +actionclass analyzePciChipletFir1 +{ + capture(PciChipletFir1); + analyze(gPCI1_CHIPLET_FIR); +}; + +actionclass analyzePciChipletFir2 +{ + capture(PciChipletFir2); + analyze(gPCI2_CHIPLET_FIR); +}; + +actionclass aNPU0FIR_NDD10 {capture(cNPU0FIR_NDD10); analyze(gNPU0FIR_NDD10);}; +actionclass aNPU1FIR_NDD10 {capture(cNPU1FIR_NDD10); analyze(gNPU1FIR_NDD10);}; +actionclass aNPU0FIR {capture(cNPU0FIR); analyze(gNPU0FIR); }; +actionclass aNPU1FIR {capture(cNPU1FIR); analyze(gNPU1FIR); }; +actionclass analyzeNPU2FIR {capture(cNPU2FIR); analyze(gNPU2FIR); }; + +actionclass analyzeNPU0FIR +{ + try( funccall("checkNimbusDD10" ), aNPU0FIR_NDD10 ); + try( funccall("checkNotNimbusDD10"), aNPU0FIR ); +}; + +actionclass analyzeNPU1FIR +{ + try( funccall("checkNimbusDD10" ), aNPU1FIR_NDD10 ); + try( funccall("checkNotNimbusDD10"), aNPU1FIR ); +}; + +actionclass deadmanTimer +{ + funccall("handleDeadmanTimer"); +}; + diff --git a/src/usr/diag/prdf/common/plat/p9/p9_nimbus_regs.rule b/src/usr/diag/prdf/common/plat/p9/p9_nimbus_regs.rule index c281e032377..e615e13bb5e 100644 --- a/src/usr/diag/prdf/common/plat/p9/p9_nimbus_regs.rule +++ b/src/usr/diag/prdf/common/plat/p9/p9_nimbus_regs.rule @@ -109,3 +109,210 @@ capture group PllFIRs; }; + ############################################################################ + # P9 PROC target HDCT additions (open power chkstop analysis) + ############################################################################ + + register OCC_ERROR_REPORT_REG + { + name "OCC ERROR REPORT REG"; + scomaddr 0x0101080a; + capture group default; + }; + + register PB_ERROR_REPORT + { + name "PB ERROR REPORT REG"; + scomaddr 0x020110a1; + capture group default; + }; + + register PB_PTY_ERROR_REPORT + { + name "PB PTY ERROR REPORT REG"; + scomaddr 0x020110a2; + capture group default; + }; + + register DMA_CERR_0 + { + name "DMA CERR 0"; + scomaddr 0x02011057; + capture group default; + }; + + register DMA_CERR_1 + { + name "DMA CERR 1"; + scomaddr 0x02011058; + capture group default; + }; + + register PB_CENT_CR_ERROR + { + name "PB CENT CR ERROR"; + scomaddr 0x05011c2c; + capture group default; + }; + + register PBA_ERR_REPORT_0 + { + name "PBA ERROR REPORT 0"; + scomaddr 0x0501284c; + capture group default; + }; + + register PBA_ERR_REPORT_1 + { + name "PBA ERROR REPORT 1"; + scomaddr 0x0501284d; + capture group default; + }; + + register PBA_ERR_REPORT_2 + { + name "PBA ERROR REPORT 2"; + scomaddr 0x0501284e; + capture group default; + }; + + register PB_PTY_ERR_REPORT + { + name "PB PTY ERROR REPORT"; + scomaddr 0x05012C22; + capture group default; + }; + + register TOD_SLAVE_PATH_CTRL + { + name "TOD SLAVE PATH CTRL"; + scomaddr 0x00040005; + capture group default; + }; + + register TOD_INTERNAL_PATH_CTRL + { + name "TOD INTERNAL PATH CTRL"; + scomaddr 0x00040006; + capture group default; + }; + + register TOD_CONFIG_CTRL + { + name "TOD Prim Sec Config Control"; + scomaddr 0x00040007; + capture group default; + }; + + register TOD_PSS_MSS_STATUS + { + name "TOD PSS MSS Status Reg"; + scomaddr 0x00040008; + capture group default; + }; + + register TOD_MASTER_PATH_STATUS + { + name "TOD Master Path Status Reg"; + scomaddr 0x00040009; + capture group default; + }; + + register TOD_MASTER_PATH0_STEP_STEERING + { + name "TOD Master Path0 Step Steering"; + scomaddr 0x0004000E; + capture group default; + }; + + register TOD_MASTER_PATH1_STEP_STEERING + { + name "TOD Master Path1 Step Steering"; + scomaddr 0x0004000F; + capture group default; + }; + + register TOD_TRACE_DATASET_1 + { + name "TOD Trace Dataset 1"; + scomaddr 0x0004001D; + capture group default; + }; + + register TOD_TRACE_DATASET_2 + { + name "TOD Trace Dataset 2"; + scomaddr 0x0004001E; + capture group default; + }; + + register TOD_TRACE_DATASET_3 + { + name "TOD Trace Dataset 3"; + scomaddr 0x0004001F; + capture group default; + }; + + register OSC_ERROR_HOLD + { + name "OSC ERROR HOLD"; + scomaddr 0x01020019; + capture group default; + }; + + register OSC_ERROR_MASK + { + name "OSC ERROR MASK"; + scomaddr 0x0102001A; + capture group default; + }; + + register OSC_ERROR_MODE + { + name "OSC ERROR MODE"; + scomaddr 0x0102001B; + capture group default; + }; + + register TOD_FSM_REGISTER + { + name "TOD FSM Register"; + scomaddr 0x00040024; + capture group default; + }; + + register TOD_TX_TTYPE_CTRL_REG + { + name "TOD TX TType Ctrl reg"; + scomaddr 0x00040027; + capture group default; + }; + + register TOD_RX_TTYPE_CTRL_REG + { + name "TOD RX TType Ctrl reg"; + scomaddr 0x00040029; + capture group default; + }; + + register TOD_ERROR_INTERRUPTS + { + name "TOD Error and Interrupts"; + scomaddr 0x00040030; + capture group default; + }; + + register TOD_CERR_REPORT + { + name "TOD CERR Report"; + scomaddr 0x00040032; + capture group default; + }; + + register TOD_ROUTE_ERRORS_TO_CORE + { + name "TOD Route Errors to Core"; + scomaddr 0x00040033; + capture group default; + }; + diff --git a/src/usr/diag/prdf/common/plat/p9/p9_obus.rule b/src/usr/diag/prdf/common/plat/p9/p9_obus.rule index 86669fd7777..d79c25ede3d 100644 --- a/src/usr/diag/prdf/common/plat/p9/p9_obus.rule +++ b/src/usr/diag/prdf/common/plat/p9/p9_obus.rule @@ -230,23 +230,6 @@ chip p9_obus capture req nonzero("OBPPEFIR"); }; - ############################################################################ - # P9 OBUS target HDCT additions (open power chkstop analysis) - ############################################################################ - register PBOLL_LINK0_ERRSTAT - { - name "P9 OBUS target PB OLL Link0 ErrStatus"; - scomaddr 0x09010816; - capture group default; - }; - - register PBOLL_LINK1_ERRSTAT - { - name "P9 OBUS target PB OLL Link1 ErrStatus"; - scomaddr 0x09010817; - capture group default; - }; - # Include registers not defined by the xml .include "p9_obus_regs.rule"; diff --git a/src/usr/diag/prdf/common/plat/p9/p9_obus_regs.rule b/src/usr/diag/prdf/common/plat/p9/p9_obus_regs.rule index 217530f0792..d3721f8d4e0 100644 --- a/src/usr/diag/prdf/common/plat/p9/p9_obus_regs.rule +++ b/src/usr/diag/prdf/common/plat/p9/p9_obus_regs.rule @@ -22,6 +22,7 @@ # permissions and limitations under the License. # # IBM_PROLOG_END_TAG + register OBUS_ERROR_REG { name "OBUS PCB Slave error reg"; @@ -36,3 +37,21 @@ capture group PllFIRs; }; + ############################################################################ + # P9 OBUS target HDCT additions (open power chkstop analysis) + ############################################################################ + + register PBOLL_LINK0_ERRSTAT + { + name "P9 OBUS target PB OLL Link0 ErrStatus"; + scomaddr 0x09010816; + capture group default; + }; + + register PBOLL_LINK1_ERRSTAT + { + name "P9 OBUS target PB OLL Link1 ErrStatus"; + scomaddr 0x09010817; + capture group default; + }; + diff --git a/src/usr/diag/prdf/common/plat/p9/p9_phb.rule b/src/usr/diag/prdf/common/plat/p9/p9_phb.rule index 2e458a4c3d8..dfefee072fa 100644 --- a/src/usr/diag/prdf/common/plat/p9/p9_phb.rule +++ b/src/usr/diag/prdf/common/plat/p9/p9_phb.rule @@ -151,18 +151,6 @@ chip p9_phb capture req nonzero("ETUFIR"); }; - ############################################################################ - # P9 PHB target CERR Report Hold Reg - ############################################################################ - - register PBAIB_CERR - { - name "P9 PHB target PBAIB CERR Report Reg"; - scomaddr 0x0d01084b; - capture group default; - }; - - # Include registers not defined by the xml .include "p9_phb_regs.rule"; diff --git a/src/usr/diag/prdf/common/plat/p9/p9_phb_regs.rule b/src/usr/diag/prdf/common/plat/p9/p9_phb_regs.rule new file mode 100644 index 00000000000..c5c04d5c201 --- /dev/null +++ b/src/usr/diag/prdf/common/plat/p9/p9_phb_regs.rule @@ -0,0 +1,36 @@ +# IBM_PROLOG_BEGIN_TAG +# This is an automatically generated prolog. +# +# $Source: src/usr/diag/prdf/common/plat/p9/p9_phb_regs.rule $ +# +# OpenPOWER HostBoot Project +# +# Contributors Listed Below - COPYRIGHT 2017 +# [+] International Business Machines Corp. +# +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. See the License for the specific language governing +# permissions and limitations under the License. +# +# IBM_PROLOG_END_TAG + + ############################################################################ + # P9 PHB target CERR Report Hold Reg + ############################################################################ + + register PBAIB_CERR + { + name "P9 PHB target PBAIB CERR Report Reg"; + scomaddr 0x0d01084b; + capture group default; + }; + diff --git a/src/usr/diag/prdf/common/plat/p9/p9_xbus.rule b/src/usr/diag/prdf/common/plat/p9/p9_xbus.rule index 6fb9e4a0b5d..a793d38558a 100644 --- a/src/usr/diag/prdf/common/plat/p9/p9_xbus.rule +++ b/src/usr/diag/prdf/common/plat/p9/p9_xbus.rule @@ -118,24 +118,6 @@ chip p9_xbus capture req nonzero("IOELFIR"); }; - ############################################################################ - # P9 XBUS target HDCT additions (open power chkstop analysis) - ############################################################################ - register PBELL_LINK0_ERRSTAT - { - name "P9 XBUS target PB ELL Link0 ErrStatus"; - scomaddr 0x06011816; - capture group default; - }; - - register PBELL_LINK1_ERRSTAT - { - name "P9 XBUS target PB ELL Link1 ErrStatus"; - scomaddr 0x06011817; - capture group default; - }; - - # Include registers not defined by the xml .include "p9_xbus_regs.rule"; diff --git a/src/usr/diag/prdf/common/plat/p9/p9_xbus_regs.rule b/src/usr/diag/prdf/common/plat/p9/p9_xbus_regs.rule index 7b9103562f0..db314a7776e 100644 --- a/src/usr/diag/prdf/common/plat/p9/p9_xbus_regs.rule +++ b/src/usr/diag/prdf/common/plat/p9/p9_xbus_regs.rule @@ -22,6 +22,7 @@ # permissions and limitations under the License. # # IBM_PROLOG_END_TAG + ############################################################################### # Additional registers for XBUS, not defined in XML ############################################################################### @@ -60,3 +61,21 @@ access no_access; capture group never; }; + + ############################################################################ + # P9 XBUS target HDCT additions (open power chkstop analysis) + ############################################################################ + register PBELL_LINK0_ERRSTAT + { + name "P9 XBUS target PB ELL Link0 ErrStatus"; + scomaddr 0x06011816; + capture group default; + }; + + register PBELL_LINK1_ERRSTAT + { + name "P9 XBUS target PB ELL Link1 ErrStatus"; + scomaddr 0x06011817; + capture group default; + }; +