aboutsummaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authorReza Arbab <arbab@linux.ibm.com>2019-08-05 15:33:27 -0500
committerOliver O'Halloran <oohall@gmail.com>2019-08-16 15:51:55 +1000
commit82b576886fd6d2bda3e27b0949a972c18b5a9fbf (patch)
tree63e0e30f2e7ff2e40129f9a509c2d2c11e4193b9 /hw
parent3e334fbb85417da0dae045fcec350efc3dae206b (diff)
downloadskiboot-82b576886fd6d2bda3e27b0949a972c18b5a9fbf.zip
skiboot-82b576886fd6d2bda3e27b0949a972c18b5a9fbf.tar.gz
skiboot-82b576886fd6d2bda3e27b0949a972c18b5a9fbf.tar.bz2
npu3: Initialize NPU3_SNP_MISC_CFG0
Enable powerbus snooping here, or else MMIO to any NTL/NDL registers will cause a checkstop. This was not an issue in Simics simulation, but discovered rather quickly during bringup on a real Axone chip. Signed-off-by: Reza Arbab <arbab@linux.ibm.com> Reviewed-by: Christophe Lombard <clombard@linux.vnet.ibm.com> Signed-off-by: Oliver O'Halloran <oohall@gmail.com>
Diffstat (limited to 'hw')
-rw-r--r--hw/npu3.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/hw/npu3.c b/hw/npu3.c
index ea687f4..4d396b0 100644
--- a/hw/npu3.c
+++ b/hw/npu3.c
@@ -309,6 +309,13 @@ static void npu3_misc_config(struct npu3 *npu)
val = SETFIELD(NPU3_MCP_MISC_CFG0_OCAPI_MODE, val, ~typemap);
npu3_write(npu, reg, val);
+ reg = NPU3_SNP_MISC_CFG0;
+ val = npu3_read(npu, reg);
+ val |= NPU3_SNP_MISC_CFG0_ENABLE_PBUS;
+ val = SETFIELD(NPU3_SNP_MISC_CFG0_NVLINK_MODE, val, typemap);
+ val = SETFIELD(NPU3_SNP_MISC_CFG0_OCAPI_MODE, val, ~typemap);
+ npu3_write(npu, reg, val);
+
reg = NPU3_CTL_MISC_CFG2;
val = npu3_read(npu, reg);
val = SETFIELD(NPU3_CTL_MISC_CFG2_NVLINK_MODE, val, typemap);