diff options
-rw-r--r-- | hw/nx-842.c | 17 | ||||
-rw-r--r-- | hw/nx-crypto.c | 25 | ||||
-rw-r--r-- | hw/nx-rng.c | 23 |
3 files changed, 51 insertions, 14 deletions
diff --git a/hw/nx-842.c b/hw/nx-842.c index 21bc2fd..8009f03 100644 --- a/hw/nx-842.c +++ b/hw/nx-842.c @@ -40,8 +40,11 @@ static int nx_cfg_842(u32 gcid, u64 xcfg) BUILD_ASSERT(MAX_CHIPS < NX_842_CFG_CI_MAX); rc = xscom_read(gcid, xcfg, &cfg); - if (rc) + if (rc) { + prerror("NX%d: ERROR: XSCOM 842 config read failure %d\n", + gcid, rc); return rc; + } ct = GETFIELD(NX_842_CFG_CT, cfg); if (!ct) @@ -118,8 +121,11 @@ static int nx_cfg_842_dma(u32 gcid, u64 xcfg) int rc; rc = xscom_read(gcid, xcfg, &cfg); - if (rc) - return rc; + if (rc) { + prerror("NX%d: ERROR: XSCOM DMA config read failure %d\n", + gcid, rc); + return rc; + } if (proc_gen >= proc_gen_p8) { cfg = SETFIELD(NX_DMA_CFG_842_COMPRESS_PREFETCH, cfg, @@ -161,8 +167,11 @@ static int nx_cfg_842_ee(u32 gcid, u64 xcfg) int rc; rc = xscom_read(gcid, xcfg, &cfg); - if (rc) + if (rc) { + prerror("NX%d: ERROR: XSCOM EE config read failure %d\n", + gcid, rc); return rc; + } cfg = SETFIELD(NX_EE_CFG_CH1, cfg, EE_1); cfg = SETFIELD(NX_EE_CFG_CH0, cfg, EE_0); diff --git a/hw/nx-crypto.c b/hw/nx-crypto.c index 9699892..769112f 100644 --- a/hw/nx-crypto.c +++ b/hw/nx-crypto.c @@ -53,8 +53,11 @@ static int nx_cfg_sym(u32 gcid, u64 xcfg) BUILD_ASSERT(MAX_CHIPS < NX_SYM_CFG_CI_MAX); rc = xscom_read(gcid, xcfg, &cfg); - if (rc) + if (rc) { + prerror("NX%d: ERROR: XSCOM SYM config read failure %d\n", + gcid, rc); return rc; + } ct = GETFIELD(NX_SYM_CFG_CT, cfg); if (!ct) @@ -106,8 +109,11 @@ static int nx_cfg_asym(u32 gcid, u64 xcfg) BUILD_ASSERT(MAX_CHIPS < NX_ASYM_CFG_CI_MAX); rc = xscom_read(gcid, xcfg, &cfg); - if (rc) + if (rc) { + prerror("NX%d: ERROR: XSCOM ASYM config read failure %d\n", + gcid, rc); return rc; + } ct = GETFIELD(NX_ASYM_CFG_CT, cfg); if (!ct) @@ -158,8 +164,11 @@ static int nx_cfg_dma(u32 gcid, u64 xcfg) int rc; rc = xscom_read(gcid, xcfg, &cfg); - if (rc) + if (rc) { + prerror("NX%d: ERROR: XSCOM DMA config read failure %d\n", + gcid, rc); return rc; + } cfg = SETFIELD(NX_DMA_CFG_AES_SHA_MAX_RR, cfg, AES_SHA_MAX_RR); @@ -199,8 +208,11 @@ static int nx_cfg_iq(u32 gcid, u64 xcfg) int rc; rc = xscom_read(gcid, xcfg, &cfg); - if (rc) + if (rc) { + prerror("NX%d: ERROR: XSCOM CRB IQ config read failure %d\n", + gcid, rc); return rc; + } cfg = SETFIELD(NX_CRB_IQ_SYM, cfg, CFG_CRB_IQ_SYM); cfg = SETFIELD(NX_CRB_IQ_ASYM, cfg, CFG_CRB_IQ_ASYM); @@ -221,8 +233,11 @@ static int nx_cfg_ee(u32 gcid, u64 xcfg) int rc; rc = xscom_read(gcid, xcfg, &cfg); - if (rc) + if (rc) { + prerror("NX%d: ERROR: XSCOM EE config read failure %d\n", + gcid, rc); return rc; + } cfg = SETFIELD(NX_EE_CFG_CH7, cfg, EE_CH7); cfg = SETFIELD(NX_EE_CFG_CH6, cfg, EE_CH6); 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; |