diff mbox series

phb4: Update inits so cfg_wr_timeout is Fatal

Message ID 20180430051359.11979-1-ruscur@russell.cc
State Superseded
Headers show
Series phb4: Update inits so cfg_wr_timeout is Fatal | expand

Commit Message

Russell Currey April 30, 2018, 5:13 a.m. UTC
The hardware documentation incorrectly had a bit missing.

This fixes a niche bug in escalation (which is necessary on
pre-DD2.2) that can cause a checkstop due to a NCU timeout.

Signed-off-by: Russell Currey <ruscur@russell.cc>
---
 hw/phb4.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Andrew Donnellan April 30, 2018, 6:23 a.m. UTC | #1
On 30/04/18 15:13, Russell Currey wrote:
> The hardware documentation incorrectly had a bit missing.
> 
> This fixes a niche bug in escalation (which is necessary on
> pre-DD2.2) that can cause a checkstop due to a NCU timeout.
> 
> Signed-off-by: Russell Currey <ruscur@russell.cc>

CAPI has a different init for this in phb4_init_capp_errors(), does it 
need this bit as well?

(cc Christophe)

Andrew
Russell Currey April 30, 2018, 6:38 a.m. UTC | #2
On Mon, 2018-04-30 at 16:23 +1000, Andrew Donnellan wrote:
> On 30/04/18 15:13, Russell Currey wrote:
> > The hardware documentation incorrectly had a bit missing.
> > 
> > This fixes a niche bug in escalation (which is necessary on
> > pre-DD2.2) that can cause a checkstop due to a NCU timeout.
> > 
> > Signed-off-by: Russell Currey <ruscur@russell.cc>
> 
> CAPI has a different init for this in phb4_init_capp_errors(), does
> it 
> need this bit as well?

CAPI is also missing bit 29, I would guess that CAPI also needs this to
be Fatal and not INF but maybe there's some reason it shouldn't.  If it
does I can resend with the CAPI init updated too.

> 
> (cc Christophe)
> 
> Andrew
>
diff mbox series

Patch

diff --git a/hw/phb4.c b/hw/phb4.c
index 50e1be1c..3ee702e2 100644
--- a/hw/phb4.c
+++ b/hw/phb4.c
@@ -4463,7 +4463,7 @@  static void phb4_init_errors(struct phb4 *p)
 	out_be64(p->regs + 0x0d08,	0x0000000000000000ull);
 	out_be64(p->regs + 0x0d18,	0xffffff0fffffffffull);
 	out_be64(p->regs + 0x0d28,	0x0000400a00000000ull);
-	out_be64(p->regs + 0x0d30,	0xdff7bd01f7ddfff0ull); /* XXX CAPI has diff. value */
+	out_be64(p->regs + 0x0d30,	0xdff7bd05f7ddfff0ull); /* XXX CAPI has diff. value */
 	out_be64(p->regs + 0x0d40,	0x0000000000000000ull);
 	out_be64(p->regs + 0x0d48,	0x0000000000000000ull);
 	out_be64(p->regs + 0x0d50,	0x0000000000000000ull);