From 526bef08021c62233717c4aad8b48650f73c3180 Mon Sep 17 00:00:00 2001 From: Zane Shelley Date: Mon, 23 Apr 2018 16:21:18 -0500 Subject: PRD: add files for Centaur rule plugins Change-Id: I9c1ba69149ea9596ba93f9971d8a91469ff98845 RTC: 187481 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/57694 Tested-by: Jenkins Server Reviewed-by: Caleb N. Palmer Reviewed-by: Matt Derksen Reviewed-by: Benjamin J. Weisenbeck Reviewed-by: Zane C. Shelley Squashed: I665d708dbaa460001c2af53ec693b8b2afc1eaf2 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/57882 CI-Ready: Zane C. Shelley Tested-by: Jenkins OP Build CI Tested-by: FSP CI Jenkins Tested-by: Jenkins OP HW --- .../prdf/common/plat/cen/prdfCenMembuf_common.C | 85 ++++++++++++++++++++++ src/usr/diag/prdf/common/plat/cen/prdf_plat_cen.mk | 1 + src/usr/diag/prdf/common/plat/mem/prdfCenMembuf.C | 85 ---------------------- src/usr/diag/prdf/common/plat/mem/prdf_plat_mem.mk | 3 +- src/usr/diag/prdf/makefile | 3 +- src/usr/diag/prdf/plat/cen/prdfCenMembuf.C | 47 ++++++++++++ .../diag/prdf/plat/cen/prdf_plat_cen_hb_only.mk | 58 +++++++++++++++ src/usr/diag/prdf/runtime/makefile | 1 + 8 files changed, 195 insertions(+), 88 deletions(-) create mode 100644 src/usr/diag/prdf/common/plat/cen/prdfCenMembuf_common.C delete mode 100644 src/usr/diag/prdf/common/plat/mem/prdfCenMembuf.C create mode 100644 src/usr/diag/prdf/plat/cen/prdfCenMembuf.C create mode 100644 src/usr/diag/prdf/plat/cen/prdf_plat_cen_hb_only.mk diff --git a/src/usr/diag/prdf/common/plat/cen/prdfCenMembuf_common.C b/src/usr/diag/prdf/common/plat/cen/prdfCenMembuf_common.C new file mode 100644 index 000000000..102967617 --- /dev/null +++ b/src/usr/diag/prdf/common/plat/cen/prdfCenMembuf_common.C @@ -0,0 +1,85 @@ +/* IBM_PROLOG_BEGIN_TAG */ +/* This is an automatically generated prolog. */ +/* */ +/* $Source: src/usr/diag/prdf/common/plat/cen/prdfCenMembuf_common.C $ */ +/* */ +/* OpenPOWER HostBoot Project */ +/* */ +/* Contributors Listed Below - COPYRIGHT 2017,2018 */ +/* [+] 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 */ + +// Framework includes +#include +#include +#include +#include + +// Platform includes +#include + +using namespace TARGETING; + +namespace PRDF +{ + +using namespace PlatServices; + +namespace cen_centaur +{ + +//############################################################################## +// +// Special plugins +// +//############################################################################## + +/** + * @brief Plugin function called after analysis is complete but before PRD + * exits. + * @param i_mbChip A Centaur chip. + * @param io_sc The step code data struct. + * @note This is especially useful for any analysis that still needs to be + * done after the framework clears the FIR bits that were at attention. + * @return SUCCESS. + */ +int32_t PostAnalysis( ExtensibleChip * i_mbChip, STEP_CODE_DATA_STRUCT & io_sc ) +{ + #define PRDF_FUNC "[cen_centaur::PostAnalysis] " + + if ( CHECK_STOP != io_sc.service_data->getPrimaryAttnType() ) + { + // Cleanup processor FIR bits on the other side of the channel. + if ( SUCCESS != MemUtils::chnlFirCleanup(i_mbChip) ) + { + PRDF_ERR( PRDF_FUNC "chnlFirCleanup(0x%08x) failed", + i_mbChip->getHuid() ); + } + } + + return SUCCESS; + + #undef PRDF_FUNC +} +PRDF_PLUGIN_DEFINE( cen_centaur, PostAnalysis ); + +//------------------------------------------------------------------------------ + +} // end namespace cen_centaur + +} // end namespace PRDF + diff --git a/src/usr/diag/prdf/common/plat/cen/prdf_plat_cen.mk b/src/usr/diag/prdf/common/plat/cen/prdf_plat_cen.mk index f9d2d62ba..0d5b7b5f6 100644 --- a/src/usr/diag/prdf/common/plat/cen/prdf_plat_cen.mk +++ b/src/usr/diag/prdf/common/plat/cen/prdf_plat_cen.mk @@ -42,4 +42,5 @@ prd_obj += prdfCenMbaDomain.o # plat/cen/ (rule plugin related) prd_rule_plugin += prdfCenMba_common.o +prd_rule_plugin += prdfCenMembuf_common.o diff --git a/src/usr/diag/prdf/common/plat/mem/prdfCenMembuf.C b/src/usr/diag/prdf/common/plat/mem/prdfCenMembuf.C deleted file mode 100644 index 8c57b4baf..000000000 --- a/src/usr/diag/prdf/common/plat/mem/prdfCenMembuf.C +++ /dev/null @@ -1,85 +0,0 @@ -/* IBM_PROLOG_BEGIN_TAG */ -/* This is an automatically generated prolog. */ -/* */ -/* $Source: src/usr/diag/prdf/common/plat/mem/prdfCenMembuf.C $ */ -/* */ -/* 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 */ - -// Framework includes -#include -#include -#include -#include - -// Platform includes -#include - -using namespace TARGETING; - -namespace PRDF -{ - -using namespace PlatServices; - -namespace cen_centaur -{ - -//############################################################################## -// -// Special plugins -// -//############################################################################## - -/** - * @brief Plugin function called after analysis is complete but before PRD - * exits. - * @param i_mbChip A Centaur chip. - * @param io_sc The step code data struct. - * @note This is especially useful for any analysis that still needs to be - * done after the framework clears the FIR bits that were at attention. - * @return SUCCESS. - */ -int32_t PostAnalysis( ExtensibleChip * i_mbChip, STEP_CODE_DATA_STRUCT & io_sc ) -{ - #define PRDF_FUNC "[cen_centaur::PostAnalysis] " - - if ( CHECK_STOP != io_sc.service_data->getPrimaryAttnType() ) - { - // Cleanup processor FIR bits on the other side of the channel. - if ( SUCCESS != MemUtils::chnlFirCleanup(i_mbChip) ) - { - PRDF_ERR( PRDF_FUNC "chnlFirCleanup(0x%08x) failed", - i_mbChip->getHuid() ); - } - } - - return SUCCESS; - - #undef PRDF_FUNC -} -PRDF_PLUGIN_DEFINE( cen_centaur, PostAnalysis ); - -//------------------------------------------------------------------------------ - -} // end namespace cen_centaur - -} // end namespace PRDF - diff --git a/src/usr/diag/prdf/common/plat/mem/prdf_plat_mem.mk b/src/usr/diag/prdf/common/plat/mem/prdf_plat_mem.mk index c3a1c3340..771f3359e 100644 --- a/src/usr/diag/prdf/common/plat/mem/prdf_plat_mem.mk +++ b/src/usr/diag/prdf/common/plat/mem/prdf_plat_mem.mk @@ -5,7 +5,7 @@ # # OpenPOWER HostBoot Project # -# Contributors Listed Below - COPYRIGHT 2016,2017 +# Contributors Listed Below - COPYRIGHT 2016,2018 # [+] International Business Machines Corp. # # @@ -51,7 +51,6 @@ prd_obj += prdfMemUtils.o prd_obj += prdfMemThresholds.o # rule plugin related -prd_rule_plugin += prdfCenMembuf.o prd_rule_plugin += prdfP9Mca_common.o prd_rule_plugin += prdfP9Mcbist_common.o diff --git a/src/usr/diag/prdf/makefile b/src/usr/diag/prdf/makefile index bcca55bf8..01c0d7d26 100755 --- a/src/usr/diag/prdf/makefile +++ b/src/usr/diag/prdf/makefile @@ -5,7 +5,7 @@ # # OpenPOWER HostBoot Project # -# Contributors Listed Below - COPYRIGHT 2012,2016 +# Contributors Listed Below - COPYRIGHT 2012,2018 # [+] International Business Machines Corp. # # @@ -41,6 +41,7 @@ include common/framework/prdf_framework.mk include common/plat/p9/prdf_plat_p9.mk include common/plat/cen/prdf_plat_cen.mk include common/plat/mem/prdf_plat_mem.mk +include plat/cen/prdf_plat_cen_hb_only.mk include plat/mem/prdf_plat_mem_hb_only.mk VPATH += ${prd_vpath} diff --git a/src/usr/diag/prdf/plat/cen/prdfCenMembuf.C b/src/usr/diag/prdf/plat/cen/prdfCenMembuf.C new file mode 100644 index 000000000..bcc13efc9 --- /dev/null +++ b/src/usr/diag/prdf/plat/cen/prdfCenMembuf.C @@ -0,0 +1,47 @@ +/* IBM_PROLOG_BEGIN_TAG */ +/* This is an automatically generated prolog. */ +/* */ +/* $Source: src/usr/diag/prdf/plat/cen/prdfCenMembuf.C $ */ +/* */ +/* OpenPOWER HostBoot Project */ +/* */ +/* Contributors Listed Below - COPYRIGHT 2018 */ +/* [+] 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 */ + +// Framework includes +#include +#include +#include +#include + +// Platform includes + +using namespace TARGETING; + +namespace PRDF +{ + +using namespace PlatServices; + +namespace cen_centaur +{ + +} // end namespace cen_centaur + +} // end namespace PRDF + diff --git a/src/usr/diag/prdf/plat/cen/prdf_plat_cen_hb_only.mk b/src/usr/diag/prdf/plat/cen/prdf_plat_cen_hb_only.mk new file mode 100644 index 000000000..cd4246b74 --- /dev/null +++ b/src/usr/diag/prdf/plat/cen/prdf_plat_cen_hb_only.mk @@ -0,0 +1,58 @@ +# IBM_PROLOG_BEGIN_TAG +# This is an automatically generated prolog. +# +# $Source: src/usr/diag/prdf/plat/cen/prdf_plat_cen_hb_only.mk $ +# +# OpenPOWER HostBoot Project +# +# Contributors Listed Below - COPYRIGHT 2016,2018 +# [+] 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 + +# NOTE: PRD_SRC_PATH and PRD_INC_PATH must be defined before including this file + +################################################################################ +# Paths common to both IPL and runtime +################################################################################ + +prd_vpath += ${PRD_SRC_PATH}/plat/cen + +prd_incpath += ${PRD_SRC_PATH}/plat/cen + +################################################################################ +# Hostboot only object files common to both IPL and runtime +################################################################################ + +# plat/cen/ (rule plugin related) +prd_rule_plugin += prdfCenMembuf.o + +################################################################################ +# Hostboot only object files (IPL only) +################################################################################ + +ifneq (${HOSTBOOT_RUNTIME},1) + +endif + +################################################################################ +# Hostboot only object files (runtime only) +################################################################################ + +ifeq (${HOSTBOOT_RUNTIME},1) + +endif + diff --git a/src/usr/diag/prdf/runtime/makefile b/src/usr/diag/prdf/runtime/makefile index 494d052bb..a012700f4 100644 --- a/src/usr/diag/prdf/runtime/makefile +++ b/src/usr/diag/prdf/runtime/makefile @@ -40,6 +40,7 @@ include ../common/framework/prdf_framework.mk include ../common/plat/p9/prdf_plat_p9.mk include ../common/plat/cen/prdf_plat_cen.mk include ../common/plat/mem/prdf_plat_mem.mk +include ../plat/cen/prdf_plat_cen_hb_only.mk include ../plat/mem/prdf_plat_mem_hb_only.mk include ../plat/p9/prdf_plat_p9_hb_only.mk -- cgit v1.2.1