summaryrefslogtreecommitdiffstats
path: root/import/chips/p9
diff options
context:
space:
mode:
authorGreg Still <stillgs@us.ibm.com>2016-01-15 11:49:49 -0600
committerSachin Gupta <sgupta2m@in.ibm.com>2016-05-09 09:17:53 -0400
commit614bd1165a0f52e4a91335c2a0d3c9527d8a84ac (patch)
tree0295bd4593dee0797d4325a154fea39e802f1f1d /import/chips/p9
parent7c983a1352406bd864f017649c702bd3f622cf40 (diff)
downloadtalos-sbe-614bd1165a0f52e4a91335c2a0d3c9527d8a84ac.tar.gz
talos-sbe-614bd1165a0f52e4a91335c2a0d3c9527d8a84ac.zip
p9_block_wakeup_intr Level 2
- Fixed problems with Cronus to ungate testing - Ran on Awan and SUET - Wrapper has ability to just to -set and -clear but also tests all supported options - Added a "no special wakeup" option (parm) has there may be use cases with it as P8 did NOT perform Special Wake-up to set the bit while P9 Hcode is stating this requirement. - Has a placeholder for special wakeup inclusion later. - Address Gerrit comments (round 2) - Rebased (4) Change-Id: I86ae0ab4128246012a357289ae2b3c469e78619b Original-Change-Id: I0722065ce59a2c6ebfdc6c8cf77cb5746c3db7aa RTC: 136783 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/23347 Tested-by: Jenkins Server Tested-by: Auto Mirror Tested-by: Hostboot CI Tested-by: PPE CI Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/24248 Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com>
Diffstat (limited to 'import/chips/p9')
-rw-r--r--import/chips/p9/procedures/hwp/pm/p9_block_wakeup_intr.H37
-rw-r--r--import/chips/p9/procedures/xml/error_info/p9_block_wakeup_intr_errors.xml9
2 files changed, 32 insertions, 14 deletions
diff --git a/import/chips/p9/procedures/hwp/pm/p9_block_wakeup_intr.H b/import/chips/p9/procedures/hwp/pm/p9_block_wakeup_intr.H
index 5f080ec6..a9ae0053 100644
--- a/import/chips/p9/procedures/hwp/pm/p9_block_wakeup_intr.H
+++ b/import/chips/p9/procedures/hwp/pm/p9_block_wakeup_intr.H
@@ -37,10 +37,9 @@
// Includes
//------------------------------------------------------------------------------
-#include <p9_pm.H>
#include <fapi2.H>
-#include <p9_misc_scom_addresses.H>
-
+#include <p9_quad_scom_addresses.H>
+#include <p9_quad_scom_addresses_fld.H>
//------------------------------------------------------------------------------
// Constant definitions
@@ -49,22 +48,35 @@
namespace p9pmblockwkup
{
-static const uint8_t NUM_OPS = 2;
-
enum OP_TYPE
{
- SET,
- CLEAR
+ SET = 0,
+ SET_NOSPWUP = 1,
+ CLEAR = 2
};
+// Used by checking infrasture checking code
+static const uint32_t END_OP = CLEAR;
+
} // namespace p9pmblockwkup
+
+//
+// CPMMR Bit definitions
+const uint32_t BLOCK_REG_WKUP_EVENTS = 6;
+
+// GPMMR Address mappings (for clarity)
+static const uint64_t C_PPM_GPMMR = C_PPM_GPMMR_SCOM;
+static const uint64_t C_PPM_GPMMR_CLEAR = C_PPM_GPMMR_SCOM1;
+static const uint64_t C_PPM_GPMMR_OR = C_PPM_GPMMR_SCOM2;
+
// function pointer typedef definition for HWP call support
typedef fapi2::ReturnCode (*p9_block_wakeup_intr_FP_t) (
const fapi2::Target<fapi2::TARGET_TYPE_CORE>&,
const p9pmblockwkup::OP_TYPE);
-extern "C" {
+extern "C"
+{
//------------------------------------------------------------------------------
// Function prototype
@@ -76,13 +88,12 @@ extern "C" {
/// @param[in] i_core_target Core target
/// @param[in] i_operation SET, CLEAR
///
-/// @retval ECMD_SUCCESS
-/// @retval ERROR only those from called functions or MACROs
+/// @return FAPI2_RC_SUCCESS if success, else error code.
fapi2::ReturnCode
- p9_block_wakeup_intr( const fapi2::Target<fapi2::TARGET_TYPE_CORE>&
- i_core_target,
- p9pmblockwkup::OP_TYPE i_operation);
+ p9_block_wakeup_intr(
+ const fapi2::Target<fapi2::TARGET_TYPE_CORE>& i_core_target,
+ const p9pmblockwkup::OP_TYPE i_operation);
} // extern "C"
diff --git a/import/chips/p9/procedures/xml/error_info/p9_block_wakeup_intr_errors.xml b/import/chips/p9/procedures/xml/error_info/p9_block_wakeup_intr_errors.xml
index 377fd052..dfc0e2fa 100644
--- a/import/chips/p9/procedures/xml/error_info/p9_block_wakeup_intr_errors.xml
+++ b/import/chips/p9/procedures/xml/error_info/p9_block_wakeup_intr_errors.xml
@@ -7,7 +7,7 @@
<!-- -->
<!-- EKB Project -->
<!-- -->
-<!-- COPYRIGHT 2015 -->
+<!-- COPYRIGHT 2015,2016 -->
<!-- [+] International Business Machines Corp. -->
<!-- -->
<!-- -->
@@ -26,4 +26,11 @@
<ffdc>OPERATION</ffdc>
</hwpError>
<!-- ********************************************************************* -->
+ <hwpError>
+ <rc>RC_BLOCK_WAKEUP_INTR_CHECK_FAIL</rc>
+ <description>Test of p9_block_wakeup_intr failed. Note: this is NOT
+ a production error definition; used by test infrastructure.
+ </description>
+ </hwpError>
+ <!-- ********************************************************************* -->
</hwpErrors>
OpenPOWER on IntegriCloud