diff options
author | Michael Neuling <mikey@neuling.org> | 2017-09-22 12:59:50 +1000 |
---|---|---|
committer | Stewart Smith <stewart@linux.vnet.ibm.com> | 2017-09-27 23:02:52 -0500 |
commit | cb99c9d8bb8b59d2d10fe4088f50a2893643a94d (patch) | |
tree | 01249561719396f604a7822c2b4b6d4c9ea21114 /hw | |
parent | d5c09eba4d809839e34865b6dc22e8bc2d77a087 (diff) | |
download | skiboot-cb99c9d8bb8b59d2d10fe4088f50a2893643a94d.zip skiboot-cb99c9d8bb8b59d2d10fe4088f50a2893643a94d.tar.gz skiboot-cb99c9d8bb8b59d2d10fe4088f50a2893643a94d.tar.bz2 |
phb4: Additional RXE_ARB: DEC Stage Valid Error fix
In this recent fix:
8b4c7a3cef phb4: Mask RXE_ARB: DEC Stage Valid Error
We worked around a problem but the workaround wasn't complete.
Now that we have full documentation and details on the issue, we have
additional registers we need to change inits on.
Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'hw')
-rw-r--r-- | hw/phb4.c | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -4198,7 +4198,7 @@ static void phb4_init_errors(struct phb4 *p) /* Init_82..90 - RXE_ARB errors */ out_be64(p->regs + 0x0d80, 0xffffffffffffffffull); out_be64(p->regs + 0x0d88, 0x0000000000000000ull); - out_be64(p->regs + 0x0d98, 0xffffffffffffffffull); + out_be64(p->regs + 0x0d98, 0xfffffffffbffffffull); if (p->rev == PHB4_REV_NIMBUS_DD10) out_be64(p->regs + 0x0da8, 0xc00000b801000060ull); else @@ -4213,7 +4213,7 @@ static void phb4_init_errors(struct phb4 *p) out_be64(p->regs + 0x0dc0, 0x0000000000000000ull); out_be64(p->regs + 0x0dc8, 0x0000000000000000ull); out_be64(p->regs + 0x0dd0, 0x0000000000000000ull); - out_be64(p->regs + 0x0dd8, 0x0000000000000000ull); + out_be64(p->regs + 0x0dd8, 0x0000000004000000ull); /* Init_91..99 - RXE_MRG errors */ out_be64(p->regs + 0x0e00, 0xffffffffffffffffull); @@ -4434,7 +4434,7 @@ static void phb4_init_hw(struct phb4 *p, bool first_init) /* Init_132 - Enable DMA address speculation */ - out_be64(p->regs + PHB_TCE_SPEC_CTL, 0xf000000000000000ull); + out_be64(p->regs + PHB_TCE_SPEC_CTL, 0x0000000000000000ull); /* Init_133 - Timeout Control Register 1 */ out_be64(p->regs + PHB_TIMEOUT_CTRL1, 0x0018150000200000ull); |