From 2d3e83abcf16b9122fd35a2881eea8cea70d82e0 Mon Sep 17 00:00:00 2001 From: Andre Marin Date: Fri, 10 Aug 2018 08:29:49 -0500 Subject: [PATCH] Implement exp_check_for_ready Change-Id: I8f6bf16ea1f4ed2ef27d96eea49bf4c43304189f Original-Change-Id: I11e80e70c411ec0f5a1891e078b669f176658c34 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/61972 Tested-by: Jenkins Server Tested-by: HWSV CI Tested-by: Hostboot CI Reviewed-by: Louis Stermole Reviewed-by: RYAN P. KING Reviewed-by: ANDRE A. MARIN Reviewed-by: Jennifer A. Stofer Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/80961 Reviewed-by: RAJA DAS --- .../xml/error_info/mss_exp_errors.xml | 38 +++++++++++++ .../lib/utils/shared/mss_generic_consts.H | 57 ++++++++++++------- 2 files changed, 74 insertions(+), 21 deletions(-) diff --git a/src/import/chips/ocmb/explorer/procedures/xml/error_info/mss_exp_errors.xml b/src/import/chips/ocmb/explorer/procedures/xml/error_info/mss_exp_errors.xml index 05492570b..c5061b457 100644 --- a/src/import/chips/ocmb/explorer/procedures/xml/error_info/mss_exp_errors.xml +++ b/src/import/chips/ocmb/explorer/procedures/xml/error_info/mss_exp_errors.xml @@ -60,4 +60,42 @@ + + RC_MSS_EXP_I2C_POLLING_TIMEOUT + + Polling the explorer I2C slave interface for an ACK + timed out. + + + CODE + MEDIUM + + + TARGET + HIGH + + + TARGET + + + + + RC_MSS_EXP_STATUS_POLLING_TIMEOUT + + Polling the explorer for successful return code + timed out. + + + CODE + MEDIUM + + + TARGET + HIGH + + + TARGET + + + diff --git a/src/import/generic/memory/lib/utils/shared/mss_generic_consts.H b/src/import/generic/memory/lib/utils/shared/mss_generic_consts.H index 8c3498c23..cb8ff8c70 100644 --- a/src/import/generic/memory/lib/utils/shared/mss_generic_consts.H +++ b/src/import/generic/memory/lib/utils/shared/mss_generic_consts.H @@ -42,6 +42,42 @@ namespace mss { +/// +/// @brief Common constants +/// +enum common_consts +{ + DEFAULT_POLL_LIMIT = 50, ///< the number of poll attempts in the event we can't calculate another +}; + +/// +/// @brief Common timings +/// +enum common_timings +{ + DELAY_1NS = 1, + DELAY_10NS = 10 , ///< general purpose 10 ns delay for HW mode + DELAY_100NS = 100, ///< general purpose 100 ns delay for HW mode + DELAY_1US = 1000, ///< general purpose 1 usec delay for HW mode + DELAY_10US = 10000, ///< general purpose 1 usec delay for HW mode + DELAY_100US = 100000, ///< general purpose 100 usec delay for HW mode + DELAY_1MS = 1000000, ///< general purpose 1 ms delay for HW mode +}; + +/// +/// @brief Common conversions +/// +enum conversions +{ + CONVERT_PS_IN_A_NS = 1000, ///< 1000 pico in an nano + CONVERT_PS_IN_A_US = 1000000, ///< 1000000 picos in a micro + MHZ_TO_KHZ = 1000, + SEC_IN_HOUR = 60 * 60, ///< seconds in an hour, used for scrub times + NIBBLES_PER_BYTE = 2, + BITS_PER_NIBBLE = 4, + BITS_PER_BYTE = 8, +}; + /// /// @brief FFDC generic codes /// @@ -191,27 +227,6 @@ enum guard_band : uint16_t }// spd -enum conversions -{ - NIBBLES_PER_BYTE = 2, - BITS_PER_NIBBLE = 4, - BITS_PER_BYTE = 8, - - CONVERT_PS_IN_A_NS = 1000, ///< 1000 pico in an nano - CONVERT_PS_IN_A_US = 1000000, ///< 1000000 picos in a micro - - DELAY_1NS = 1, - DELAY_10NS = 10 , ///< general purpose 10 ns delay for HW mode - DELAY_100NS = 100, ///< general purpose 100 ns delay for HW mode - DELAY_1US = 1000, ///< general purpose 1 usec delay for HW mode - DELAY_10US = 10000, ///< general purpose 1 usec delay for HW mode - DELAY_100US = 100000, ///< general purpose 100 usec delay for HW mode - DELAY_1MS = 1000000, ///< general purpose 1 ms delay for HW mode - - MHZ_TO_KHZ = 1000, - SEC_IN_HOUR = 60 * 60, ///< seconds in an hour, used for scrub times -}; - }// mss #endif