diff options
author | Chris Cain <cjcain@us.ibm.com> | 2017-02-06 10:04:54 -0600 |
---|---|---|
committer | Christopher J. Cain <cjcain@us.ibm.com> | 2017-02-14 12:32:31 -0500 |
commit | 1747f6fbb5ad8e61e31c4c320bbff01e5636da62 (patch) | |
tree | 25191de8d8aa007ad32a65cee1370b82d0c09899 /src/occ_405/dimm | |
parent | 9405a91ef65ac39eb27cda9c5db52c20cc4cc30b (diff) | |
download | talos-occ-1747f6fbb5ad8e61e31c4c320bbff01e5636da62.tar.gz talos-occ-1747f6fbb5ad8e61e31c4c320bbff01e5636da62.zip |
Fix DIMM temperature reads
FIFO4 register requires a 4 byte read or will hang.
OCC will request 4 byte read, but only look at first 2 for temperature.
FIFO register can only read one byte per request which is less efficient.
Change-Id: Ia0bbbc70f5b7de76f1bea64279b2ff7dd5b5a861
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/35974
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Martha Broyles <mbroyles@us.ibm.com>
Reviewed-by: William A. Bryan <wilbryan@us.ibm.com>
Reviewed-by: Christopher J. Cain <cjcain@us.ibm.com>
Diffstat (limited to 'src/occ_405/dimm')
-rwxr-xr-x | src/occ_405/dimm/dimm.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/occ_405/dimm/dimm.c b/src/occ_405/dimm/dimm.c index fb62d6b..496814b 100755 --- a/src/occ_405/dimm/dimm.c +++ b/src/occ_405/dimm/dimm.c @@ -44,6 +44,7 @@ #include "common.h" #include "memory.h" #include "centaur_data.h" +#include "amec_health.h" extern bool G_mem_monitoring_allowed; extern memory_control_task_t G_memory_control_task; @@ -308,7 +309,7 @@ void mark_dimm_failed() l_err = createErrl(DIMM_MID_MARK_DIMM_FAILED, DIMM_GPE_FAILURE, ERC_DIMM_COMPLETE_FAILURE, - ERRL_SEV_INFORMATIONAL, + ERRL_SEV_PREDICTIVE, NULL, DEFAULT_TRACE_SIZE, G_dimm_sm_args.error.rc, @@ -322,6 +323,10 @@ void mark_dimm_failed() ERRL_CALLOUT_TYPE_HUID, G_sysConfigData.dimm_huids[port][dimm], ERRL_CALLOUT_PRIORITY_HIGH); + //Mark DIMM as logged so we don't log it again + amec_mem_mark_logged(port, dimm, + &G_cent_timeout_logged_bitmap, + &G_dimm_timeout_logged_bitmap.bytes[port]); commitErrl(&l_err); } |