aboutsummaryrefslogtreecommitdiff
path: root/hw/nx-rng.c
diff options
context:
space:
mode:
authorPridhiviraj Paidipeddi <ppaidipe@linux.vnet.ibm.com>2017-02-21 19:21:13 +0530
committerStewart Smith <stewart@linux.vnet.ibm.com>2017-11-30 23:46:28 -0600
commit78168d1bad23c3877bac284eb7c4b259bc022a38 (patch)
tree7d5b606011ffec94ee1f7c0de75c7f61cabb829b /hw/nx-rng.c
parent92813a8bf9f3658dac5315c0c02025b74a8b0533 (diff)
downloadskiboot-78168d1bad23c3877bac284eb7c4b259bc022a38.zip
skiboot-78168d1bad23c3877bac284eb7c4b259bc022a38.tar.gz
skiboot-78168d1bad23c3877bac284eb7c4b259bc022a38.tar.bz2
NX: Print read xscom config failures.
Currently in NX, only write xscom config failures are tracing. Add trace statements for read xscom config failures too. No functional changes. Signed-off-by: Pridhiviraj Paidipeddi <ppaidipe@linux.vnet.ibm.com> Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'hw/nx-rng.c')
-rw-r--r--hw/nx-rng.c23
1 files changed, 18 insertions, 5 deletions
diff --git a/hw/nx-rng.c b/hw/nx-rng.c
index a74fa45..c0c90f5 100644
--- a/hw/nx-rng.c
+++ b/hw/nx-rng.c
@@ -75,12 +75,18 @@ void nx_create_rng_node(struct dt_node *node)
}
rc = xscom_read(gcid, xbar, &bar); /* Get RNG BAR */
- if (rc)
- return; /* Hope xscom always prints error message */
+ if (rc) {
+ prerror("NX%d: ERROR: XSCOM RNG BAR read failure %d\n",
+ gcid, rc);
+ return;
+ }
rc = xscom_read(gcid, xcfg, &cfg); /* Get RNG CFG */
- if (rc)
+ if (rc) {
+ prerror("NX%d: ERROR: XSCOM RNG config read failure %d\n",
+ gcid, rc);
return;
+ }
/*
* We mask in-place rather than using GETFIELD for the base address
@@ -106,13 +112,20 @@ void nx_create_rng_node(struct dt_node *node)
/* RNG must be enabled before MMIO is enabled */
rc = xscom_write(gcid, xcfg, cfg | NX_RNG_CFG_ENABLE);
- if (rc)
+ if (rc) {
+ prerror("NX%d: ERROR: XSCOM RNG config enable failure %d\n",
+ gcid, rc);
return;
+ }
/* The BAR needs to be enabled too */
rc = xscom_write(gcid, xbar, bar | NX_RNG_BAR_ENABLE);
- if (rc)
+ if (rc) {
+ prerror("NX%d: ERROR: XSCOM RNG config enable failure %d\n",
+ gcid, rc);
return;
+ }
+
rng = dt_new_addr(dt_root, "hwrng", rng_addr);
if (!rng)
return;