diff options
author | William Bryan <wilbryan@us.ibm.com> | 2017-02-15 16:55:11 -0600 |
---|---|---|
committer | William A. Bryan <wilbryan@us.ibm.com> | 2017-02-15 21:37:26 -0500 |
commit | 6f66b8c9d7c34088bfa68d75da0155e24919b8b0 (patch) | |
tree | eb081e1649d581434c68c1215675b806d7e7290c /src/occ_405/amec/amec_sensors_fw.c | |
parent | 61ebd774170f72a53a838944f6d3204c87638694 (diff) | |
download | talos-occ-6f66b8c9d7c34088bfa68d75da0155e24919b8b0.tar.gz talos-occ-6f66b8c9d7c34088bfa68d75da0155e24919b8b0.zip |
Fix GPE debug regs access width
Change-Id: Ib69a5e1f6748d160d09ea69e07423dc3b0bc6253
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/36535
Reviewed-by: Christopher J. Cain <cjcain@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Wael El-Essawy <welessa@us.ibm.com>
Reviewed-by: William A. Bryan <wilbryan@us.ibm.com>
Diffstat (limited to 'src/occ_405/amec/amec_sensors_fw.c')
-rw-r--r-- | src/occ_405/amec/amec_sensors_fw.c | 36 |
1 files changed, 16 insertions, 20 deletions
diff --git a/src/occ_405/amec/amec_sensors_fw.c b/src/occ_405/amec/amec_sensors_fw.c index 2854b8b..426df3d 100644 --- a/src/occ_405/amec/amec_sensors_fw.c +++ b/src/occ_405/amec/amec_sensors_fw.c @@ -209,31 +209,27 @@ void amec_update_fw_sensors(void) // will tell us what GPE job is currently executing. if(!l_gpe0_idle) { -// TODO: Will need to figure out how to get this debug info. Currently causes a machine check -// when we try to read them. -// xsr_sprg0.value = in64(GPE_GPE0XIRAMDBG); -// ir_edr.value = in64(GPE_GPE0XIRAMEDR); -// iar_xsr.value = in64(GPE_GPE0XIDBGPRO); + xsr_sprg0.fields.xsr = in32(GPE_GPE0XIXSR); + xsr_sprg0.fields.sprg0 = in32(GPE_GPE0XISPRG0); + ir_edr.fields.edr = in32(GPE_GPE0XIEDR); + ir_edr.fields.ir = in32(GPE_GPE0XIIR); + iar_xsr.fields.iar = in32(GPE_GPE0XIIAR); TRAC_ERR("GPE0 programs did not complete within one tick. " - "XSR[0x%08x] IAR[0x%08x] IR[0x%08x] EDR[0x%08x]", - iar_xsr.fields.xsr, iar_xsr.fields.iar, - ir_edr.fields.ir, ir_edr.fields.edr); - TRAC_ERR("Additional GPE0 debug data: RAM_XSR[0x%08x] RAM_SPRG0[0x%08x]", - xsr_sprg0.fields.xsr, xsr_sprg0.fields.sprg0); + "XSR[0x%08x] IAR[0x%08x] IR[0x%08x] EDR[0x%08x] SPRG0[0x%08X]", + xsr_sprg0.fields.xsr, iar_xsr.fields.iar, + ir_edr.fields.ir, ir_edr.fields.edr, xsr_sprg0.fields.sprg0); } if(!l_gpe1_idle) { -// TODO: Will need to figure out how to get this debug info. Currently causes a machine check -// when we try to read them. -// xsr_sprg0.value = in64(GPE_GPE1XIRAMDBG); -// ir_edr.value = in64(GPE_GPE1XIRAMEDR); -// iar_xsr.value = in64(GPE_GPE1XIDBGPRO); + xsr_sprg0.fields.xsr = in32(GPE_GPE1XIXSR); + xsr_sprg0.fields.sprg0 = in32(GPE_GPE1XISPRG0); + ir_edr.fields.edr = in32(GPE_GPE1XIEDR); + ir_edr.fields.ir = in32(GPE_GPE1XIIR); + iar_xsr.fields.iar = in32(GPE_GPE1XIIAR); TRAC_ERR("GPE1 programs did not complete within one tick. " - "XSR[0x%08x] IAR[0x%08x] IR[0x%08x] EDR[0x%08x]", - iar_xsr.fields.xsr, iar_xsr.fields.iar, - ir_edr.fields.ir, ir_edr.fields.edr); - TRAC_ERR("Additional GPE1 debug data: RAM_XSR[0x%08x] RAM_SPRG0[0x%08x]", - xsr_sprg0.fields.xsr, xsr_sprg0.fields.sprg0); + "XSR[0x%08x] IAR[0x%08x] IR[0x%08x] EDR[0x%08x] SPRG0[0x%08X]", + xsr_sprg0.fields.xsr, iar_xsr.fields.iar, + ir_edr.fields.ir, ir_edr.fields.edr, xsr_sprg0.fields.sprg0); } L_consec_trace_count++; } |