diff options
author | Mahesh Salgaonkar <mahesh@linux.vnet.ibm.com> | 2015-10-28 17:35:47 +0530 |
---|---|---|
committer | Stewart Smith <stewart@linux.vnet.ibm.com> | 2015-10-30 11:02:44 +1100 |
commit | 888abee28e260d38c6de8b38d329ebac6a81fd8f (patch) | |
tree | b7b0af707b093b915791088f5e156794f0ff161b | |
parent | be37433aac780e06b159c6b16712db4f64ed7abc (diff) | |
download | skiboot-888abee28e260d38c6de8b38d329ebac6a81fd8f.zip skiboot-888abee28e260d38c6de8b38d329ebac6a81fd8f.tar.gz skiboot-888abee28e260d38c6de8b38d329ebac6a81fd8f.tar.bz2 |
opal/hmi: Signal PRD about NX unit checkstop.
On NX checkstop OPAL need to signal PRD about it by setting NXDMAENGFIR[38]
bit. Otherwise PRD will not be able to do NX unit checkstop error
analysis. NXDMAENGFIR[38] is a spare bit and used to report a software
initiated attention for NX checkstop.
The behavior of this bit and all FIR bits are documented in RAS
spreadsheet.
Signed-off-by: Mahesh Salgaonkar <mahesh@linux.vnet.ibm.com>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
-rw-r--r-- | core/hmi.c | 11 |
1 files changed, 11 insertions, 0 deletions
@@ -406,6 +406,17 @@ static void find_nx_checkstop_reason(int flat_chip_id, hmi_evt->u.xstop_error.xstop_reason |= nx_pbi_xstop_bits[i].reason; + /* + * Set NXDMAENGFIR[38] to signal PRD that service action is required. + * Without this inject, PRD will not be able to do NX unit checkstop + * error analysis. NXDMAENGFIR[38] is a spare bit and used to report + * a software initiated attention. + * + * The behavior of this bit and all FIR bits are documented in + * RAS spreadsheet. + */ + xscom_write(flat_chip_id, NX_DMA_ENGINE_FIR, PPC_BIT(38)); + /* Send an HMI event. */ queue_hmi_event(hmi_evt, 0); *event_generated = 1; |