diff options
author | Andres Lugo-Reyes <aalugore@us.ibm.com> | 2017-10-17 15:15:12 -0500 |
---|---|---|
committer | Martha Broyles <mbroyles@us.ibm.com> | 2017-10-19 11:13:08 -0400 |
commit | 53f78dee6ba23104bae04d18c386c5b2323274e7 (patch) | |
tree | 5cf563651a295aacf03bf9bf30cb7ac1efc6c7e2 /src/occ_405/wof | |
parent | bcc1e17b10e570791acb64649bbb7bd5e4d9348d (diff) | |
download | talos-occ-53f78dee6ba23104bae04d18c386c5b2323274e7.tar.gz talos-occ-53f78dee6ba23104bae04d18c386c5b2323274e7.zip |
Request WOF resets on OpenPower systems only.
Change-Id: I93a93b9bb87da2e43f0874732e1c031d46608498
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/48523
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Christopher J. Cain <cjcain@us.ibm.com>
Reviewed-by: William A. Bryan <wilbryan@us.ibm.com>
Reviewed-by: Martha Broyles <mbroyles@us.ibm.com>
Diffstat (limited to 'src/occ_405/wof')
-rw-r--r-- | src/occ_405/wof/wof.c | 15 | ||||
-rw-r--r-- | src/occ_405/wof/wof.h | 10 |
2 files changed, 21 insertions, 4 deletions
diff --git a/src/occ_405/wof/wof.c b/src/occ_405/wof/wof.c index ae8d732..2e3d66d 100644 --- a/src/occ_405/wof/wof.c +++ b/src/occ_405/wof/wof.c @@ -1415,8 +1415,19 @@ void set_clear_wof_disabled( uint8_t i_action, g_wof->wof_disabled, i_bit_mask ); - // commit the error log - commitErrl( &l_errl ); + // Reset if on OpenPower + if( (G_sysConfigData.system_type.kvm) ) + { + if(i_bit_mask & ~(IGNORE_WOF_RESET) ) + { + REQUEST_WOF_RESET( l_errl ); + } + } + else // Otherwise, just commit + { + commitErrl( &l_errl ); + } + L_errorLogged = true; } } diff --git a/src/occ_405/wof/wof.h b/src/occ_405/wof/wof.h index f923f57..41a20fc 100644 --- a/src/occ_405/wof/wof.h +++ b/src/occ_405/wof/wof.h @@ -79,8 +79,14 @@ #define ERRL_RETURN_CODES ~(WOF_RC_MODE_CHANGE | \ WOF_RC_STATE_CHANGE | \ WOF_RC_MODE_NO_SUPPORT_MASK | \ - WOF_RC_NO_CONFIGURED_CORES) - + WOF_RC_NO_CONFIGURED_CORES | \ + WOF_RC_RESET_LIMIT_REACHED | \ + WOF_RC_UTURBO_IS_ZERO | \ + WOF_RC_PSTATE_PROTOCOL_OFF ) + +// Reason codes that should NOT request a reset should be added here +#define IGNORE_WOF_RESET (WOF_RC_SYSTEM_WOF_DISABLE | \ + WOF_RC_UNSUPPORTED_FREQUENCIES ) // Enumeration to define the WOF initialization steps enum wof_init_states { |