aboutsummaryrefslogtreecommitdiff
path: root/core/hmi.c
diff options
context:
space:
mode:
authorMahesh Salgaonkar <mahesh@linux.vnet.ibm.com>2018-05-31 14:04:33 +0530
committerStewart Smith <stewart@linux.ibm.com>2018-06-04 00:02:26 -0500
commitfa82d360a73a5e52131d8a19e9fdb9d6e9c2eeb9 (patch)
tree2a3870572223608fcee877fe9e7b279d704a5409 /core/hmi.c
parente6e74c53ed64eb029cb669fbb6715ee4077cf0b2 (diff)
downloadskiboot-fa82d360a73a5e52131d8a19e9fdb9d6e9c2eeb9.zip
skiboot-fa82d360a73a5e52131d8a19e9fdb9d6e9c2eeb9.tar.gz
skiboot-fa82d360a73a5e52131d8a19e9fdb9d6e9c2eeb9.tar.bz2
opal/hmi: Display correct chip id while printing NPU FIRs.
HMIs for NPU xstops are broadcasted to all chips. All cores on all the chips receive HMI. HMI handler correctly identifies and extracts the NPU FIR details from affected chip, but while printing FIR data it prints chip id and location code details of this_cpu()->chip_id which may not be correct. This patch fixes this issue. CC: stable # v6.0+ Fixes: 7bcbc78c ("Add location code to NPU2 HMI logging") Signed-off-by: Mahesh Salgaonkar <mahesh@linux.vnet.ibm.com> [stewart: add fixes and cc stable] Signed-off-by: Stewart Smith <stewart@linux.ibm.com>
Diffstat (limited to 'core/hmi.c')
-rw-r--r--core/hmi.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/core/hmi.c b/core/hmi.c
index c0e2354..3bbdb2a 100644
--- a/core/hmi.c
+++ b/core/hmi.c
@@ -634,7 +634,7 @@ static void dump_scoms(int flat_chip_id, const char *unit, uint32_t *scoms,
if (r != OPAL_SUCCESS)
continue;
prlog(PR_ERR, "%s: [Loc: %s] P:%d 0x%08x=0x%016llx\n",
- unit, loc, this_cpu()->chip_id, *scoms, value);
+ unit, loc, flat_chip_id, *scoms, value);
scoms++;
}
}
@@ -691,13 +691,13 @@ static void find_npu2_checkstop_reason(int flat_chip_id,
fatal_errors = npu2_fir & ~npu2_fir_mask & npu2_fir_action0 & npu2_fir_action1;
if (fatal_errors) {
- loc = chip_loc_code(this_cpu()->chip_id);
+ loc = chip_loc_code(flat_chip_id);
if (!loc)
loc = "Not Available";
prlog(PR_ERR, "NPU2: [Loc: %s] P:%d FIR#%d FIR 0x%016llx mask 0x%016llx\n",
- loc, this_cpu()->chip_id, i, npu2_fir, npu2_fir_mask);
+ loc, flat_chip_id, i, npu2_fir, npu2_fir_mask);
prlog(PR_ERR, "NPU2: [Loc: %s] P:%d ACTION0 0x%016llx, ACTION1 0x%016llx\n",
- loc, this_cpu()->chip_id, npu2_fir_action0, npu2_fir_action1);
+ loc, flat_chip_id, npu2_fir_action0, npu2_fir_action1);
total_errors++;
}