summaryrefslogtreecommitdiffstats
path: root/src/usr
diff options
context:
space:
mode:
authorCaleb Palmer <cnpalmer@us.ibm.com>2019-01-25 09:44:27 -0600
committerZane C. Shelley <zshelle@us.ibm.com>2019-02-14 14:32:22 -0600
commit3229ca9f881b69e6e8df5ff0fabfd30ec1cbb964 (patch)
treeb721417eada9f56b3fb064ba5b5b3cf11f6f920d /src/usr
parent8928ba6507627814964fc3fe5c41375c2f8881f5 (diff)
downloadblackbird-hostboot-3229ca9f881b69e6e8df5ff0fabfd30ec1cbb964.tar.gz
blackbird-hostboot-3229ca9f881b69e6e8df5ff0fabfd30ec1cbb964.zip
PRD: PlatServices support for NVDIMM persistency lost msg
Change-Id: Ifc2029d18052b9bc2b44a5636ec7d0707d31b3b1 RTC: 204394 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/71617 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Brian J. Stegmiller <bjs@us.ibm.com> Reviewed-by: Zane C. Shelley <zshelle@us.ibm.com> Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/71868 Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Diffstat (limited to 'src/usr')
-rw-r--r--src/usr/diag/prdf/plat/prdfPlatServices_rt.C24
-rw-r--r--src/usr/diag/prdf/plat/prdfPlatServices_rt.H12
-rw-r--r--src/usr/diag/prdf/prdf_hb_only.mk8
3 files changed, 41 insertions, 3 deletions
diff --git a/src/usr/diag/prdf/plat/prdfPlatServices_rt.C b/src/usr/diag/prdf/plat/prdfPlatServices_rt.C
index b8a0fbf01..23926f9bb 100644
--- a/src/usr/diag/prdf/plat/prdfPlatServices_rt.C
+++ b/src/usr/diag/prdf/plat/prdfPlatServices_rt.C
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2016,2018 */
+/* Contributors Listed Below - COPYRIGHT 2016,2019 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -105,6 +105,28 @@ void sendPredDeallocRequest( uint64_t i_saddr, uint64_t i_eaddr )
__dyndealloc( i_saddr, i_eaddr, MEMORY_ERROR_PREDICTIVE );
}
+uint32_t nvdimmNotifyPhypProtChange( TARGETING::TargetHandle_t i_target,
+ const NVDIMM::nvdimm_protection_t i_state )
+{
+ #define PRDF_FUNC "[PlatServices::nvdimmNotifyPhypProtChange] "
+
+ uint32_t o_rc = SUCCESS;
+
+ errlHndl_t errl = NVDIMM::notifyNvdimmProtectionChange( i_target, i_state );
+ if ( nullptr != errl )
+ {
+ PRDF_ERR( PRDF_FUNC "NVDIMM::notifyNvdimmProtectionChange(0x%08x) "
+ "failed.", getHuid(i_target) );
+ PRDF_COMMIT_ERRL( errl, ERRL_ACTION_REPORT );
+ o_rc = FAIL;
+ }
+
+ return o_rc;
+
+ #undef PRDF_FUNC
+
+}
+
//##############################################################################
//## Nimbus Maintenance Command wrappers
//##############################################################################
diff --git a/src/usr/diag/prdf/plat/prdfPlatServices_rt.H b/src/usr/diag/prdf/plat/prdfPlatServices_rt.H
index ad2ea5553..f152175f6 100644
--- a/src/usr/diag/prdf/plat/prdfPlatServices_rt.H
+++ b/src/usr/diag/prdf/plat/prdfPlatServices_rt.H
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2016,2018 */
+/* Contributors Listed Below - COPYRIGHT 2016,2019 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -30,6 +30,7 @@
#include <p9_l2err_extract.H>
#include <p9_pm_callout.H>
#include <prdfMemAddress.H>
+#include <isteps/nvdimm/nvdimm.H>
namespace PRDF
{
@@ -64,6 +65,15 @@ void sendDynMemDeallocRequest( uint64_t i_saddr, uint64_t i_eaddr );
*/
void sendPredDeallocRequest( uint64_t i_saddr, uint64_t i_eaddr );
+/**
+ * @brief Notify PHYP of NVDIMM protection status
+ *
+ * @param i_target Processor with NVDIMM
+ * @param i_state Protection state of NVDIMM
+ */
+uint32_t nvdimmNotifyPhypProtChange( TARGETING::Target * i_target,
+ const NVDIMM::nvdimm_protection_t i_state );
+
//##############################################################################
//## Nimbus/Centaur Maintenance Command wrappers
//##############################################################################
diff --git a/src/usr/diag/prdf/prdf_hb_only.mk b/src/usr/diag/prdf/prdf_hb_only.mk
index b52a0e1e8..73168a875 100644
--- a/src/usr/diag/prdf/prdf_hb_only.mk
+++ b/src/usr/diag/prdf/prdf_hb_only.mk
@@ -5,7 +5,7 @@
#
# OpenPOWER HostBoot Project
#
-# Contributors Listed Below - COPYRIGHT 2013,2018
+# Contributors Listed Below - COPYRIGHT 2013,2019
# [+] International Business Machines Corp.
#
#
@@ -130,6 +130,12 @@ ifeq (${HOSTBOOT_RUNTIME},1)
# plat/
prd_obj += prdfPlatServices_rt.o
+# nvdimm
+prd_vpath += ${ROOTPATH}/src/usr/isteps/nvdimm/
+prd_vpath += ${ROOTPATH}/src/usr/isteps/nvdimm/runtime
+prd_obj_no_sim += nvdimm.o
+prd_obj_no_sim += nvdimm_rt.o
+
endif
################################################################################
OpenPOWER on IntegriCloud