aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Neuling <mikey@neuling.org>2017-07-26 20:50:04 +1000
committerStewart Smith <stewart@linux.vnet.ibm.com>2017-07-28 14:03:59 +1000
commit6b6488dd4ac11c15fb39deca92ee92650d1778a0 (patch)
tree6312359fe4e999356eb21b70eef04afa4ec8f702
parent16f7b3b2e7f890b4cc511ade3fe931a2511011f4 (diff)
downloadskiboot-6b6488dd4ac11c15fb39deca92ee92650d1778a0.zip
skiboot-6b6488dd4ac11c15fb39deca92ee92650d1778a0.tar.gz
skiboot-6b6488dd4ac11c15fb39deca92ee92650d1778a0.tar.bz2
phb4: Clear more error registers
Clears log and err1 registers. These are coming in the next spec. Signed-off-by: Michael Neuling <mikey@neuling.org> Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
-rw-r--r--hw/phb4.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/hw/phb4.c b/hw/phb4.c
index 4fc9237..250e1e8 100644
--- a/hw/phb4.c
+++ b/hw/phb4.c
@@ -1704,15 +1704,21 @@ static void phb4_err_clear(struct phb4 *p)
/* Rec 2...15: Clear error status in RC config space */
phb4_rc_err_clear(p);
- /* Rec 16/17: Clear PBL errors */
+ /* Rec 16...23: Clear PBL errors */
val64 = phb4_read_reg(p, PHB_PBL_ERR_STATUS);
phb4_write_reg(p, PHB_PBL_ERR_STATUS, val64);
+ phb4_write_reg(p, PHB_PBL_ERR1_STATUS, 0x0ul);
+ phb4_write_reg(p, PHB_PBL_ERR_LOG_0, 0x0ul);
+ phb4_write_reg(p, PHB_PBL_ERR_LOG_1, 0x0ul);
- /* Rec 18/19: Clear REGB errors */
+ /* Rec 24...31: Clear REGB errors */
val64 = phb4_read_reg(p, PHB_REGB_ERR_STATUS);
phb4_write_reg(p, PHB_REGB_ERR_STATUS, val64);
+ phb4_write_reg(p, PHB_REGB_ERR1_STATUS, 0x0ul);
+ phb4_write_reg(p, PHB_REGB_ERR_LOG_0, 0x0ul);
+ phb4_write_reg(p, PHB_REGB_ERR_LOG_1, 0x0ul);
- /* Rec 20...59: Clear PHB error trap */
+ /* Rec 32...59: Clear PHB error trap */
val64 = phb4_read_reg(p, PHB_TXE_ERR_STATUS);
phb4_write_reg(p, PHB_TXE_ERR_STATUS, val64);
phb4_write_reg(p, PHB_TXE_ERR1_STATUS, 0x0ul);