summaryrefslogtreecommitdiffstats
path: root/src/occ_405/errl/errl.c
diff options
context:
space:
mode:
authorWael El-Essawy <welessa@us.ibm.com>2017-04-04 15:50:58 -0500
committerWael El-Essawy <welessa@us.ibm.com>2017-04-25 14:31:42 -0400
commite0db9bf273420ef90e63815a5af2170f5e346cd0 (patch)
tree9bad1c0a2d7e40913573e82db2c39bd1779f28b9 /src/occ_405/errl/errl.c
parent1f9e535d685528d666561d71518f85a571af057c (diff)
downloadtalos-occ-e0db9bf273420ef90e63815a5af2170f5e346cd0.tar.gz
talos-occ-e0db9bf273420ef90e63815a5af2170f5e346cd0.zip
setup the GPE0/1 Halt and the System Checkstop interrupts properly
Fix the ownership of these interrupts (assign it to the OCC), and set the interrupt type to level, and the interrupt polarity to high. Change-Id: I00c045736f4c3b196a95fdb9aa07f6f4dd66c8c6 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/38898 Reviewed-by: Wael El-Essawy <welessa@us.ibm.com> Tested-by: Wael El-Essawy <welessa@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Diffstat (limited to 'src/occ_405/errl/errl.c')
-rwxr-xr-xsrc/occ_405/errl/errl.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/src/occ_405/errl/errl.c b/src/occ_405/errl/errl.c
index 07b5e6e..8076163 100755
--- a/src/occ_405/errl/errl.c
+++ b/src/occ_405/errl/errl.c
@@ -372,18 +372,20 @@ void addTraceToErrl(
void * l_traceAddr = io_err;
uint16_t l_actualSizeOfUsrDtls = 0;
- ocb_oisr0_t l_oisr0_status;
- static bool L_sys_checkstop_traced = FALSE;
+ ocb_oisr0_t l_oisr0_status; // OCC Interrupt Source 0 Register
+ static bool L_sys_checkstop_traced = FALSE;
// Check if there is any system checkstop
- l_oisr0_status.value = in32(OCB_OISR0);
+ l_oisr0_status.value = in32(OCB_OISR0);
- if (l_oisr0_status.fields.check_stop_ppc405 && !L_sys_checkstop_traced)
+ // Level triggered interrupts?
+ if (l_oisr0_status.fields.check_stop_ppc405 &&
+ !L_sys_checkstop_traced)
{
- L_sys_checkstop_traced = TRUE;
- TRAC_IMP("addTraceToErrl: System checkstop detected: ppc405, OISR0[0x%08x]",
- l_oisr0_status.value);
+ L_sys_checkstop_traced = TRUE;
+ TRAC_IMP("addTraceToErrl: System checkstop detected: ppc405, OISR0[0x%08x]",
+ l_oisr0_status.value);
}
// 1. Check if error log is not null
OpenPOWER on IntegriCloud